
/*--common--*/
ul.remarks{color:#7e6b5a;font-size:1.1rem;line-height:1.36;}
ul.remarks li{display:flex;align-items:baseline;}
ul.remarks li:before{content:"※";display:block;}

.modal-contents{display:none;}



 /*--loading--*/
.mainimage{position:relative;}


#about,
#service,
#plan,
#flow,
#faq,
#notes{margin-top:-100px;padding-top:100px;}



.about{background:#7ecef4 url(../img/common/pattern01.png);color:#fff;}
.about .inner{padding:65px 15px 55px;}
.about h1{font-size:6.0rem;font-weight:700;line-height:1.16;margin-bottom:20px;}
.about p{font-size:2.4rem;letter-spacing:0.1em;line-height:1.5;font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;font-weight:bold;}
.about ul{display:flex;flex-flow:row wrap;}
.about ul li{width:20%;padding:15px;}
.about ul dl{text-align:center;}
.about ul dl dt{margin-bottom:20px;}
.about ul dl dd{text-align:center;font-weight:700;font-size:1.6rem;line-height:1.25;}



.required .inner{padding:120px 0 90px;}
.required h1{padding:0 15px;font-size:6.0rem;font-weight:700;line-height:1.16;margin-bottom:20px;letter-spacing:0.05em;}
.required h1 + p{font-size:2.4rem;letter-spacing:0.1em;line-height:1.5;font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;font-weight:bold;color:#448aca;margin-bottom:35px;padding:0 15px;}
.required .inner > ul{display:flex;flex-flow:row wrap;margin-bottom:50px;}
.required .inner > ul li{width:33.33%;padding:15px;}
.required .inner > ul dl dd{font-size:1.8rem;text-align:center;}
.required .inner > dl{padding:0 15px;margin-bottom:30px;}
.required .inner > dl dt{background:#7ecef4;color:#fff;display:inline-block;font-size:2.1rem;letter-spacing:0.05em;padding:10px;line-height:1.2;}
.required .inner > dl dd{color:#666;font-size:1.4rem;line-height:1.714;padding:10px 0;border-top:1px solid #7ecef4;}
.required .two-col{display:flex;flex-flow:row wrap;}
.required .two-col .row{width:50%;padding:15px;}
.required .two-col .row div{background:#fafafa;padding:20px;height:100%;}
.required .two-col .row h2{font-weight:700;font-size:2.4rem;color:#333;letter-spacing:0.05em;line-height:1.66;margin-bottom:15px;}
.required .two-col .row .catch{font-size:1.8rem;color:#448aca;letter-spacing:0.1em;line-height:1.33;margin-bottom:30px;}
.required .two-col .row p{font-size:1.4rem;color:#666;letter-spacing:0.05em;line-height:1.714;}
.required .two-col .row ul{font-size:1.4rem;color:#666;letter-spacing:0.05em;line-height:1.285;margin-bottom:30px;padding:0 15px;}
.required .two-col .row ul li{display:flex;align-items:baseline;margin-bottom:10px;}
.required .two-col .row ul li:before{content:"・";display:block;}



.service{background:#fafafa;}
.service .inner{padding:125px 0 60px;}
.service h1{font-size:5.0rem;color:#333;text-align:center;margin-bottom:60px;line-height:1.4;}
.service h1 small{display:block;font-size:1.8rem;color:#999;font-family: 'Poppins', sans-serif;}
.service ul{display:flex;flex-flow:row wrap;}
.service .inner > ul{margin-bottom:160px;}
.service .inner > ul li{width:25%;padding:15px;}
.service .inner > ul figure{margin-bottom:10px;}
.service .inner > ul dl dt{font-size:2.1rem;font-weight:700;margin-bottom:10px;color:#333;line-height:1.2;}
.service .inner > ul dl dt small{font-size:1.4rem;}
.service .inner > ul dl dd{font-size:1.3rem;color:#666;}
.service .option{background:#f3f3f3;margin:0 15px;padding:30px;}
.service .option h2{font-size:3.0rem;margin-bottom:15px;line-height:1.33;}
.service .option h2 small{font-size:1.8rem;display:inline-block;}
.service .option ul li{width:33.33%;padding:15px;}
.service .option ul dl dt{width:100%;height:40px;line-height:40px;letter-spacing:0.2em;text-align:center;background:#7ecef4 url(../img/common/pattern01.png);color:#fff;font-size:2.0rem;}
.service .option ul dl dd{font-size:1.2rem;text-align:center;}



.plan{background:#7ecef4 url(../img/common/pattern01.png);color:#fff;}
.plan .inner{padding:90px 15px 120px;}
.plan h1{font-size:5.0rem;text-align:center;margin-bottom:60px;line-height:1.4;}
.plan h1 small{display:block;font-size:1.8rem;font-family: 'Poppins', sans-serif;}
.plan ul li{padding:15px;}
.plan .tax{text-align:right;color:#448aca;}

.modaal-content-container{background:#7ecef4 url(../img/common/pattern01.png);}
.modaal-content-container h2{padding:5px;margin-bottom:15px;}
.service_list{display:flex;flex-flow:row wrap;line-height:1.33;}
.service_list li{width:33.33%;padding:15px;background:#fff;color:#333;font-size:1.8rem;border:5px solid #7ecef4;}
.service_list li:before{content:"\f058";font-family:FontAwesome;margin-right:5px;color:#448aca;}
.service_list li small{font-size:1.2rem;display:inline-block;}
.service_list .none{opacity:0.3;background:#ddd;}



.flow .inner{padding:120px 0 30px;}
.flow h1{font-size:5.0rem;color:#333;text-align:center;margin-bottom:60px;line-height:1.4;}
.flow h1 small{display:block;font-size:1.8rem;color:#999;font-family: 'Poppins', sans-serif;}
.flow ol{display:flex;flex-flow:row wrap;justify-content:space-between;}
.flow ol li{width:150px;height:150px;background:#fbf9f7;border-right:10px solid #e5f5fd;border-bottom:10px solid #e5f5fd;position:relative;}
.flow ol li small{display:block;font-size:1.6rem;}
.flow ol li div{width:100%;font-size:2.1rem;font-weight:700;color:#333;line-height:1.2;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
.flow ol li:not(:first-child):before{content:"\f0da";font-family:FontAwesome;color:#7ecef4;position:absolute;top:50%;left:0;transform:translate(-150%,-50%);font-size:4.0rem;}



.faq .inner{padding:60px 0 120px;}
.faq h1{font-size:5.0rem;color:#333;text-align:center;margin-bottom:60px;line-height:1.4;}
.faq h1 small{display:block;font-size:1.8rem;color:#999;font-family: 'Poppins', sans-serif;}
.faq ul{display:flex;flex-flow:row wrap;}
.faq ul li{width:50%;padding:15px;}
.faq ul dl{height:100%;background:#f0f6fb;}
.faq ul dl dt{display:flex;align-items:center;background:#c1d9ee;color:#5787a5;font-size:1.8rem;font-weight:700;line-height:1.11;}
.faq ul dl dt:before{content:"Q";display:block;width:60px;height:60px;background:#7eacc8;color:#fff;font-family: 'Poppins', sans-serif;font-size:4.0rem;text-align:center;line-height:60px;margin-right:15px;font-weight:400;flex-basis:60px;flex-shrink:0;}
.faq ul dl dd{display:flex;background:#f0f6fb;color:#6193b1;font-size:1.4rem;letter-spacing:0.05em;line-height:1.428;}
.faq ul dl dd small{font-size:1.1rem;}
.faq ul dl dd:before{content:"A";font-size:4.0rem;text-align:center;color:#5787a5;background:#d0ebf9;display:block;width:60px;flex-basis:60px;flex-shrink:0;min-height:150px;}
.faq ul dl dd div{padding:15px;}


.area{background:#0075a9;color:#fff;height:270px;padding:0 15px;line-height:1.2;}
.area .inner{display:flex;flex-flow:row wrap;align-items:center;}
.area h1{font-size:2.4rem;width:240px;height:270px;letter-spacing:0.72em;display:flex;align-items:center;justify-content:center;background:url(../img/index/map.png) no-repeat center center;}
.area dl{display:flex;flex-flow:row wrap;align-items:center;height:120px;border-left:1px solid #fafafa;}
.area dl dt{font-size:6.0rem;padding:0 30px;}
.area dl dd{font-size:2.1rem;line-height:1.42;letter-spacing:0.05em;}



.information{background:#f0f6fb;color:#0075a9;padding:0 15px;}
.information .inner{display:flex;flex-flow:row wrap;align-items:center;height:270px;}
.information h1{width:240px;line-height:1.66;padding:0 30px;}
.information h1 ul li{display:flex;justify-content:space-between;font-size:2.4rem;}
.information .inner > ul{display:flex;flex-flow:row wrap;align-items:center;justify-content:space-between;height:120px;border-left:1px solid #0075a9;}

.information .phone{padding:0 25px;}
.information .phone a{font-family: 'Oswald', sans-serif;font-weight:400;}
.information .phone dl{display:flex;align-items:baseline;}
.information .phone dl dt{font-size:4.0rem;}
.information .phone dl dd{font-size:7.0rem;line-height:1.2;}
.information .phone dl dd small{display:block;font-size:1.6rem;font-family: 'Noto Sans JP', "メイリオ", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Yu Gothic", sans-serif;font-weight:700;}
.information .contact a{display:block;width:300px;height:90px;text-align:center;line-height:90px;background:#0075a9;color:#fff;font-size:1.8rem;border:1px solid #0075a9;transition-duration:0.4s;}
.information .contact a:before{content:"\f0e0";font-family:FontAwesome;margin-right:5px;}
.information .contact a:hover{background:#fff;color:#0075a9;}



.notes{background:#d0ebf9;color:#0075a9;}
.notes .inner{padding:60px 15px 50px;}
.notes h1{font-size:3.0rem;margin-bottom:30px;}
.notes ul{line-height:1.33;}
.notes ul li{display:flex;align-items:baseline;margin-bottom:10px;}
.notes ul li:before{content:"●";margin-right:5px;}







/*****************************************************************************
 Responsive
 *****************************************************************************/

@media screen and (max-width: 768px) {
	#about,
	#service,
	#plan,
	#flow,
	#faq,
	#notes{margin-top:calc(-2.6875vw * 5);padding-top:calc(2.6875vw * 5);}

	.about ul li{width:33.33%;}

	.required .two-col .row{width:100%;}

	.service .inner > ul li{width:33.33%;}
	.service .option ul li{width:50%;}

	.flow ol{justify-content:center;padding:0 30px;}
	.flow ol li{margin-bottom:15px;}
	.flow ol li:not(:last-child){margin-right:30px;}

	.faq ul li{width:100%;}
	.faq ul dl dd::before{min-height:auto;padding-bottom:30px;}

	.area dl{flex-flow:column wrap;justify-content:center;align-items:flex-start;}
	.area dl dt{font-size:4.0rem;}
	.area dl dd{padding:0 30px;}

	.information .inner > ul{flex-flow:column wrap;flex:1;}
	.information .phone dl dt{font-size:2.4rem;}
	.information .phone dl dd{font-size:5.0rem;}
	.information .contact{width:100%;padding:0 25px;}
	.information .contact a{width:100%;height:auto;line-height:1.2;}




	.service h1,
	.plan h1,
	.flow h1,
	.faq h1{font-size:3.6rem;}
	.service h1 small,
	.plan h1 small,
	.flow h1 small,
	.faq h1 small{font-size:1.6rem;}

	.required h1,
	.about h1{font-size:4.2rem;}
	.about p,
	.required h1 + p{font-size:2.0rem;}


}


@media screen and (max-width: 600px) {
	.about ul li{width:50%;}

	.required .inner > ul li{width:50%;}

	.service .inner > ul li{width:50%;}
	.service .option ul dl dd{text-align:left;}

	.service_list li{width:50%;font-size:1.6rem;}

	.area{height:auto;padding:15px;}
	.area h1{background:none;width:auto;height:auto;padding:10px 0;}
	.area dl{width:100%;height:auto;border-left:0;border-top:1px solid #fafafa;padding:10px 0;}
	.area dl dt,
	.area dl dd{padding:0;}

	.information{padding:0;}
	.information .inner{height:auto;padding:15px;}
	.information h1{width:100%;padding:0;}
	.information h1 ul{display:flex;justify-content:center;}
	.information h1 ul li:not(:last-child):after{content:"/";}
	.information .inner > ul{height:auto;border-left:0;}
	.information .phone{margin-bottom:15px;}
	.information .contact a{padding:5px 0;}

	.notes h1{font-size:2.1rem;line-height:1.3;}

}


@media screen and (max-width: 480px) {

	.about ul dl dd{font-size:1.4rem;text-align:left;}
	.about ul dl dd br{display:none;}

	.service .option ul li{width:100%;}

	.service_list li{width:100%;font-size:1.4rem;}

	.flow ol{flex-flow:column wrap;align-items:center;}
	.flow ol li:not(:last-child){margin-right:0;margin-bottom:30px;}
	.flow ol li:not(:first-child):before{content:"\f0d7";font-family:FontAwesome;color:#7ecef4;position:absolute;bottom:0;left:50%;transform:translate(-50%,-170%);font-size:4.0rem;}

	.information h1 ul li{font-size:1.8rem;}
	.information .phone{padding:0;}
	.information .phone dl dt{font-size:2.0rem;}
	.information .phone dl dd{font-size:4.0rem;}
	.information .phone dl dd small{font-size:1.2rem;}
	.information .contact{padding:0;}

	.service h1,
	.plan h1,
	.flow h1,
	.faq h1{font-size:3.0rem;}
	.service h1 small,
	.plan h1 small,
	.flow h1 small,
	.faq h1 small{font-size:1.6rem;}

	.required h1,
	.about h1{font-size:3.6rem;}
	.about p,
	.required h1 + p{font-size:1.8rem;}



}


@media screen and (max-width: 375px) {

	.faq ul dl dt:before{height:auto;padding:5px 0;}

	.area dl dt{font-size:3.2rem;}
	.area dl dd{font-size:1.8rem;}

}


@media screen and (max-width: 320px) {


}


/* ----- 2020-02-28 追加 ----- */
.banner	{
	background:#b7dcef;
	width:100%;
	padding:30px 0;
	margin:0;
}

.banner img	{
	width:auto;
	height:75px;
	display:block;
	padding:0px;
	margin: 0;
}

@media screen and (max-width: 768px) {
.banner img	{
	width:90%;
	height:auto;
	margin:0 auto;
}
