﻿/* =============================================
　　loading
============================================= */	
#loading{
position: fixed;
	height: 100%;
	width: 100%;
	z-index: 999999;
	background-color: #fff;
top:0;
}
#loading_line{
	position: absolute;
	top: 0;
	margin: auto;
	width: 100%;
	height: 100%;
}
#loading_line .line{
	position: absolute;
	top: 0;
	width: 0;
	height: 100%;
	z-index: 1;
    background: -moz-linear-gradient(-60deg, #e5fff5, #5fdca9);
    background: -webkit-linear-gradient(-60deg, #e5fff5, #5fdca9); 
    background: linear-gradient(-60deg, #e5fff5, #5fdca9);
}
#loading_line .line2{
	position: absolute;
	top: 0;
	width: 0;
	height: 100%;
	z-index: 2;
	background-color: #fff;
}
#loading_logo{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 60%;
	max-width: 350px;
	z-index: 3;
}


/* ----------　基本カラー　---------- */
.bg_color1 {
    background-color: #5fdca9;
}
.bg_color3 {
    background-color: #48cc96;
}
.txt_color1 {
    color: #10c078;
}
.txt_color2 {
    color: #d084d0;
}
.txt_color3 {
    color: #ca69ca;
}
.txt_color4 {
    color: #ca69ca;
}
.border_color1 {
    border-color: #ca69ca;
}
.border_color3 {
    border-color: #ca69ca;
}
.border_color4 {
    border-color: #cacaca;
}

/* ----------　全体共通部分　---------- */
.linkStyle{
	color:#d084d0;
}
.linkStyle:hover{
	color:#d084d0;
	opacity: 0.7;
	transition: all 0.5s;
}
#fakeloader,header{
    background: -moz-linear-gradient(-60deg, #e5fff5, #5fdca9);
    background: -webkit-linear-gradient(-60deg, #e5fff5, #5fdca9); 
    background: linear-gradient(-60deg, #e5fff5, #5fdca9);
}
#main_menu ul li a::before {
    background-color: #ca69ca;
}
#main_menu ul li a {
    color: #fff;
}
.button:hover::after {
   box-shadow: inset 0 0 0 15em #ca69ca;
}
header{
margin-top: 80px;
    height: 85%;
    margin-left: 20px;
    background-color: transparent!important;
background: -moz-linear-gradient(-60deg, rgba(229 ,255 ,245,0.7), rgba(63 ,220 ,155,0.9));
    background: -webkit-linear-gradient(-60deg, rgba(229 ,255 ,245,0.7), rgba(63 ,220 ,155,0.9));
    background: linear-gradient(-60deg, rgba(229 ,255 ,245,0.7), rgba(63 ,220 ,155,0.9));
}
header .button:hover::after {
    box-shadow: inset 0 0 0 15em #ffffff96;
}
header .tel_bt a:hover{
color: #d084d0;
}
.txt_shadow-b {
    text-shadow: none;
}
.footer_back{
    background-color: #efefef;
}
footer .foot_tel_bt a{
    z-index: 1;
}
#contents1,#contents2,#contents3,.top_cms_wrap,footer,.sab_page{
    width: 75%!important;
    margin-left:25%!important;
}
#page_title .page_box{
    width: 55%!important;
    margin-left:25%!important;
}
.footer_cms {
color: #333;
}


/* ----------　TOP　---------- */
#main_img h2{
   color: #10c078;
    text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
}
.main_box{
    width: 100%!important;
    margin-left: 0%;
}
#contents_box{
    position: relative;
    z-index: 0;
}
#contents_box:after {
    content: '';
    position: absolute;
    left: 0;
    top: 800px;
    transform: skewY(-5deg);
    transform-origin: bottom left;
    z-index: -5555;
    width: 100%;
    height: 50%;
    background: #efefef;
}

.cms_title::before {
    background-color: #ca69ca;
}




/* ----------　下層ページ　---------- */
#page_title .page_box::before {
    background-color: #daa5da;
}
.cate_title{
    background-color: #5fdca9;
    color: #fff;
    border: none;
    padding: 5px 10px;
    text-align: left;
}
.cate_list li a{
    padding-left: 5px;
    padding-right: 5px;
}
.button2:hover {
    box-shadow: none;
    background-color: #ca69ca;
    color: #fff;
}
#cms_5-c .box_txt1::before {
    color: #ca69ca;
}

/* ----------　IE　---------- */
@media all and (-ms-high-contrast: none){
.cate_title {
    padding: 12px 10px 5px;
}

}


/* ----------　タブレット　---------- */
@media screen and (max-width: 768px){
header {
    margin-top: 0px;
    height: auto;
    margin-left: 0px;
padding-top: 20px!important;
    padding-bottom: 20px!important;
}
header .head_box{
    max-width: 350px;
}
header #logo{
    max-width: 350px;
}
#contents1, #contents2, #contents3, .top_cms_wrap, footer, #page_title .page_box, .sab_page {
    width: 90%!important;
margin-left: auto!important;
    margin: auto;
}
#contents_box:after {
    top: 650px;
    height: 35%;
}
.main_box {
    padding-top: 73px;
}
#page_title .page_box{
margin-top: 50px;
    margin-bottom: 50px;
    width: 80%!important;
}
.sp_tel a{
    padding-left: 50px;
    padding-right: 50px;
}
}


/* ----------　スマホ　---------- */
@media screen and (max-width: 667px){

header {
padding-top: 15px!important;
    padding-bottom: 15px!important;
}
header .head_box {
    max-width: 280px;
}
#main_img h2 {
    font-size: 14px;
    width: 70%;
}
.main_box {
    padding-top: 55px;
}
#contents_box:after {
    top: 850px;
    height: 15%;
}
#page_title .page_box {
    width: 75%!important;
}
.sab_page {
    width: 100%!important;
}
#cms_1-e{
padding-left: 0px;
    padding-right: 0px;
}
}