@charset "utf-8";
/* CSS Document */

.boxMain{ width:1024px; margin:0 auto; }
@media only screen and (max-width: 1024px){ .boxMain{ width:90%; }}
.boxMain .block{ margin:0 auto 60px;}
@media only screen and (max-width: 1024px){ .boxMain .block{ margin:0 auto 40px;}}
@media only screen and (max-width: 600px){ .boxMain .block{ margin:0 auto 30px;}}
.boxMain h3{ font-size:28px; line-height:1.6; text-align:center; letter-spacing:0.1em; margin-bottom:30px; font-family: 'Noto Sans JP', sans-serif;}
@media only screen and (max-width: 1024px){ .boxMain h3{ font-size:24px; margin-bottom:20px;} }
@media only screen and (max-width: 600px){ .boxMain h3{ font-size:18px;} }
.boxMain h4{ font-size:18px; line-height:2; text-align:justify; letter-spacing:0.2em; margin-bottom:30px;}
@media only screen and (max-width: 1024px){ .boxMain h4 {
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0.1em;
}}
/*.boxMain h5{ font-size:30px; border-bottom:solid 2px #97CBD9; font-weight:700; text-align:center; padding:0 0 20px 0; margin-bottom:40px;}*/

/*----------ヘッダー----------*/

/* ヘッダー
-------------------------------------------------*/

#top-head {
    top: -100px;
    width:100%;
    margin: 0 auto;
    /*padding: 0;*/
    z-index: 999;
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing: border-box !important;
    box-sizing: border-box !important;
}

#top-head.fixed {
    margin: 0 auto;
    width: 100%;
    top: 0px;
    position: fixed;
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
    background-color: #fff;
    /*padding: 30px 0 26px;*/
	-webkit-box-shadow: 0px 2px 4px -1px rgb(0 0 0 / 20%);
    -moz-box-shadow: 0px 2px 4px -1px rgba(0,0,0,0.20);
    box-shadow: 0px 2px 4px -1px rgb(0 0 0 / 20%);
}

header{ padding:0; margin:0; }
header .header-cont{ display: flex; justify-content: space-between; padding:20px; }
header .header-cont .header-cont-l{
    display: flex;
    flex-direction: column;
    justify-content: center;
	}
header .header-cont .header-logo{ width:302px;}
@media only screen and (max-width: 1024px){ header .header-cont .header-logo{ width:260px;} }
@media only screen and (max-width: 600px){ header .header-cont .header-logo{ width:220px;} }
header .header-cont .header-cont-r{
	display: flex;
    flex-direction: column;
    justify-content: center;
	}
header .header-cont .header-cont-r .header-cont-r-main{ overflow:hidden;}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1){ display:inline-block; vertical-align: middle; }
@media only screen and (max-width: 1024px){ header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1){ display:none; } }
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1) ul{ overflow:hidden; }
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1) ul li{ float:left; position:relative; padding: 0 10px 0 10px; }
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1) ul li a{ color:#333; text-decoration:none; position:relative; font-weight:600; font-size:14px; }
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1) ul li a:hover{ color:#999; transition: all 0.3s ease 0s; }
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1) ul li:after{
	position:relative;
	display: inline-block;
	content:'|';
    font-size: 15px;
	left: 10px;
	z-index: 10;}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(1) ul li:last-child:after{ content: none;}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2){ display:inline-block; /*vertical-align: middle;*/ }
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a{ color:#333; text-decoration:none; font-weight:600; font-size:17px;}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(1){ position:relative; padding:0 0 0 30px; margin:0 10px 0 0; }
@media only screen and (max-width: 600px){ header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(1){ display:none; }}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(1):after {
    background-image: url(../img/common/ic-tel1.png);
    position: absolute;
    display: inline-block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
    width: 20px;
    height: 20px;
    z-index: 10;
}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(2){ position:relative; padding:0 0 0 30px; margin: 0 10px 0 0; }
@media only screen and (max-width: 600px){ header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(2){ display:none; }}
header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(2):after {
    background-image: url(../img/common/ic-mail1.png);
    position: absolute;
    display: inline-block;
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
    width: 20px;
    height: 20px;
    z-index: 10;
}

header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(3) { display:none; }
@media only screen and (max-width: 1024px){ header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(3) {
    position: relative;
    display: inline-block;
    width: 30px;
	cursor:pointer;
}}
/*header .header-cont .header-cont-r .header-cont-r-main div:nth-of-type(2) a:nth-of-type(3):after{ position:absolute; display:inline-block; z-index:10; content:''; background-image:url(../img/common/sp-menu.png); background-size:cover; width:30px; height:30px;}*/

.header-title{
	margin:100px auto 160px;
	position:relative;
	width:100%;
	background: rgb(76,200,174);
	background: linear-gradient(90deg, rgba(76,200,174,1) 0%, rgba(127,206,221,1) 100%);
}
@media only screen and (max-width: 1024px){ .header-title{ margin:100px auto 100px;}}
@media only screen and (max-width: 600px){ .header-title{ margin:40px auto 50px;}}
.header-title .header-title-img img{
	mask-size: cover;
	-webkit-mask-size: cover;
	mask-image: url('../img/common/mask.png');
	-webkit-mask-image: url('../img/common/mask.png');
	mask-mode: alpha;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-position: center;
	/*opacity:0.8;
	background-color:#000;*/
	}

.header-title p.header-title-eng{ position:absolute; z-index:10; right:100px; top:-60px; }
@media only screen and (max-width: 1024px){ .header-title p.header-title-eng{ width:500px; right: 40px;}}
@media only screen and (max-width: 600px){ .header-title p.header-title-eng { width: 200px; right: 20px; top: -20px;}}
.header-title p.header-title-txt{ position:absolute; z-index:10; left:25%; top:150px; }
@media only screen and (max-width: 1024px){ .header-title p.header-title-txt{ left:5%; top:100px;}}
@media only screen and (max-width: 600px){ .header-title p.header-title-txt { top:60px; }}

.header-title p.header-title-txt span.jpn{ position:relative; background-color:#fff; font-size:40px; color: #4dc8af; padding: 8px 16px 10px 16px; font-weight:700; font-family: 'Noto Sans JP', sans-serif; line-height:1; letter-spacing:0.2em;}
@media only screen and (max-width: 1024px){ .header-title p.header-title-txt span.jpn{ font-size: 30px; padding: 4px 10px 6px 16px; } }
@media only screen and (max-width: 600px){.header-title p.header-title-txt span.jpn { font-size: 17px; padding: 3px 10px 4px; letter-spacing: 0.1em; }}
.header-title p.header-title-txt span.eng{ position:absolute; top:-60px; left:0; color:#fff; z-index:10; font-family: 'Noto Sans JP', sans-serif; font-size:20px; letter-spacing:0.1em; }
@media only screen and (max-width: 1024px){ .header-title p.header-title-txt span.eng { top: -50px; }}
@media only screen and (max-width: 600px){ .header-title p.header-title-txt span.eng { font-size: 11px; top: -30px;}}
.header-title:before {
    position: absolute;
    content: '';
    bottom: -60px;
    background-color: #ccc;
    height: 120px;
    left: 50%;
    width: 1px;
    display: inline-block;
    /* transform: translate(-50%, 0); */
    z-index: 10;
}
@media only screen and (max-width: 600px){ .header-title:before{ bottom: -30px; height:60px;}}

/*----------フッター----------*/

footer{ margin:120px auto 0;}
@media only screen and (max-width: 600px){ footer{ margin:60px auto 0;}}
footer .foot-contact{ text-align:center; width:70%; border-top: dotted 1px #999; margin:0 auto; padding:60px 0; }
@media only screen and (max-width: 1024px){ footer .foot-contact { width: 90%; }}
@media only screen and (max-width: 600px){ footer .foot-contact { padding: 40px 0; }}
footer .foot-contact h6{ font-size:24px; font-weight:700; letter-spacing:0.1em; margin-bottom:30px; }
@media only screen and (max-width: 1024px){ footer .foot-contact h6{ font-size:20px;}}
@media only screen and (max-width: 600px){ footer .foot-contact h6{ font-size:14px; margin-bottom:20px;}}
footer .foot-contact ul{ overflow:hidden; padding:0; margin:0; font-size:0;}
footer .foot-contact ul li{ display:inline-block; /*border:solid 5px #6EA6AB;*/
	border: 5px solid #91cbcd;
    border-image: linear-gradient(to right, #7fc7ad 0%, #8ccad9 100%);
    border-image-slice: 1;
	}
@media only screen and (max-width: 600px){ footer .foot-contact ul li{ display:block;}}
footer .foot-contact ul li a{ padding:24px 0 20px 0; width:340px; text-decoration:none; color:#333; display:block; }
@media only screen and (max-width: 1024px){ footer .foot-contact ul li a { padding: 16px 0 16px 0; width: auto; width: 300px;}}
@media only screen and (max-width: 600px){ footer .foot-contact ul li a { width:100%; display:block;}}
footer .foot-contact ul li a:hover{ background-color: #feffef; transition: all 0.3s ease 0s; }
footer .foot-contact ul li:nth-of-type(1){ margin-right:20px; }
@media only screen and (max-width: 600px){ footer .foot-contact ul li:nth-of-type(1){ margin:0 0 20px 0;}}
footer .foot-contact ul li span:nth-of-type(1){ font-size:17px; font-weight:700; display:block; letter-spacing:0.1em; margin-bottom:6px;}
@media only screen and (max-width: 1024px){ footer .foot-contact ul li span:nth-of-type(1){ font-size:15px;}}
@media only screen and (max-width: 600px){ footer .foot-contact ul li span:nth-of-type(1){ letter-spacing:0; font-size:14px; }}
footer .foot-contact ul li span:nth-of-type(2){ font-family: 'Bebas Neue', cursive;  font-size:40px; line-height:1; letter-spacing:0.1em; }
@media only screen and (max-width: 1024px){ footer .foot-contact ul li span:nth-of-type(2){ font-size:36px; letter-spacing: 0;}}
@media only screen and (max-width: 600px){ footer .foot-contact ul li span:nth-of-type(2){ font-size:30px;}}
footer .foot-contact ul li span em{ display:inline-block; vertical-align:middle; margin:0 16px 0 0; }
footer .foot-contact ul li span em img{ width:46px;}
@media only screen and (max-width: 1024px){ footer .foot-contact ul li span em img { width: 30px;}}
@media only screen and (max-width: 600px){ footer .foot-contact ul li span em img{ width:26px;} }

.foot-main{
	color:#fff;
	padding:40px;
	background: rgb(76,200,174);
	background: linear-gradient(90deg, rgba(76,200,174,1) 0%, rgba(127,206,221,1) 100%);
	}
@media only screen and (max-width: 600px){.foot-main{ padding:7% 5%;}}
footer .foot-main .footer-menu{ overflow:hidden; margin-bottom:20px;}
footer .foot-main .footer-menu div:nth-of-type(1){ float:left; }

@media only screen and (max-width: 600px){ footer .foot-main .footer-menu div:nth-of-type(1) {
    float: none;
    display: block;
    margin-bottom: 0px;
}}

footer .foot-main .footer-menu div:nth-of-type(1) img{ width:301px;}
@media only screen and (max-width: 1024px){ footer .foot-main .footer-menu div:nth-of-type(1) img{ width:240px;}}
@media only screen and (max-width: 600px){ footer .foot-main .footer-menu div:nth-of-type(1) img{ width:200px;}}
footer .foot-main .footer-menu div:nth-of-type(2){ float:right; text-align:right; }
@media only screen and (max-width: 600px){ footer .foot-main .footer-menu div:nth-of-type(2){ float:none; display:none; }}
footer .foot-main .footer-menu div:nth-of-type(2) ul{ overflow:hidden; margin-bottom:10px;}
footer .foot-main .footer-menu div:nth-of-type(2) ul li{ float:left; margin:0 16px 0 0;}
footer .foot-main .footer-menu div:nth-of-type(2) ul li:last-child{ margin:0;}
footer .foot-main .footer-menu div:nth-of-type(2) ul li a{ color:#fff; text-decoration:none; font-size:14px; }

footer .foot-main .footer-menu div:nth-of-type(2) ul:nth-of-type(2){ display:inline-block; margin-bottom: 0px; }
footer .foot-main .footer-menu div:nth-of-type(2) ul:nth-of-type(2) a{ border:solid 2px #fff; padding:10px 30px; display:block; border-radius:22px; font-size:15px; font-weight:600;}
footer .foot-main .footer-menu div:nth-of-type(2) ul:nth-of-type(2) a:hover {
    transition: all 0.3s ease 0s;
    background-color: #fff;
    color: #95ccd4;
}

footer .foot-main .footer-zip{}

footer .foot-main .footer-zip .footer-zip-main{ overflow:hidden; }
footer .foot-main .footer-zip .footer-zip-main .footer-zip-l{ float:left;}
@media only screen and (max-width: 600px){ footer .foot-main .footer-zip .footer-zip-main .footer-zip-l{ display:block; float:none; margin-bottom:10px;}}
footer .foot-main .footer-zip .footer-zip-main .footer-zip-r{ float:right;}
@media only screen and (max-width: 600px){ footer .foot-main .footer-zip .footer-zip-main .footer-zip-r{ display:block; float:none;}}
footer .foot-main .footer-zip .footer-zip-main .footer-zip-r img{ width:80px; vertical-align:top;}

footer .foot-main .footer-zip div:nth-of-type(1){ font-size:15px;}
@media only screen and (max-width: 600px){ footer .foot-main .footer-zip div:nth-of-type(1){ font-size:13px;} }
footer .foot-main .footer-zip div:nth-of-type(2) ul{ overflow:hidden;}
footer .foot-main .footer-zip div:nth-of-type(2) ul li{ float:left; margin:0 10px 0 0;}
footer .foot-main .footer-zip div:nth-of-type(2) ul li span{ display:inline-block; vertical-align:middle;}
footer .foot-main .footer-zip div:nth-of-type(2) ul li span:nth-of-type(1){ background-color:#fff; color:#34A58A; font-size:11px; line-height:1; padding:6px 10px 4px 10px; margin:0 10px 0 0; border-radius:10px;}
@media only screen and (max-width: 600px){ footer .foot-main .footer-zip div:nth-of-type(2) ul li span:nth-of-type(1) {
    font-size: 10px;
    padding: 4px 6px 2px 6px;
    margin: 0 4px 0 0;
    border-radius: 3px;
}}

footer .foot-main .footer-zip div:nth-of-type(2) ul li span:nth-of-type(2){ font-size:26px; font-weight:600;}
@media only screen and (max-width: 600px){ footer .foot-main .footer-zip div:nth-of-type(2) ul li span:nth-of-type(2) { font-size: 18px; letter-spacing: 0;}}


footer .foot-main  .footer-copy {
    font-size: 13px;
    margin-top: 20px;
    border-top: solid 1px rgb(255 255 255 / 50%);
    padding: 20px 0 0 0;
}
@media only screen and (max-width: 600px){ footer .foot-main  .footer-copy{ font-size:11px; letter-spacing: 0; }}

