@charset "utf-8";

.wrapper{
	color:#333333;
	font-size:1.125em;
	line-height:1.6;
}

.wrapper *{
	color:inherit;
	font-size:inherit;
	line-height:inherit;
}

.wrapper rt,
.wrapper rp{
	font-size:50%;
	}

.h1{
	background-color:#64DEE1;
	margin-bottom:40px;
}

.h1 h1{
	max-width:1100px;
	margin:0 auto;
}

.wrapper h2{
}

.wrapper .h2{
	background-color:#64DEE1;
	margin-bottom:40px;
	color:#ffffff;
	font-size:1.875rem;
	text-align:center;
	line-height:1.2;
}

.wrapper .bg-color .h2{
	overflow:hidden;
	display:flex;
	background-color:#2BAFB3;
	border-radius:20px;
	color:#2BAFB3;
}

.wrapper .bg-color .h2::before,
.wrapper .bg-color .h2::after{
	content:"";
	display:block;
	background:url(../images/pic-03.jpg) center center;
	background-size:cover;
	flex-grow:1;
	flex-shrink:1;
	flex-basis:100%;
}

.wrapper .bg-color .h2::after{
	background-image:url(../images/pic-01.jpg);
}

.wrapper .bg-color .h2 *{
	color:#2BAFB3;
}

.wrapper .bg-color .h2 h2{
	background-color:#ffffff;
	padding:1rem 1rem .625rem;
	flex-grow:1;
	flex-shrink:1;
	flex-basis:300%;
}

.wrapper h3{
	border-bottom:1px solid #2BAFB3;
	margin-bottom:20px;
	color:#2BAFB3;
	font-size:1.875rem;
}

.wrapper h3:first-child{
	margin-top:0;
}

.wrapper h4{
	margin-bottom:10px;
	font-size:1.625rem;
}

.wrapper a{
	color:#2BAFB3;
}

.wrapper a:hover{
	text-decoration:underline;
}

.wrapper img{
	max-width:100%;
	height:auto;
}

.wrapper sup{
	font-size:60%;
}

.wrapper ul > li{
	margin-left:1em;
	list-style:circle;
}

.section{
	max-width:1100px;
	margin:0 auto;
	padding:1px 0 40px;
}

.narrow{
	max-width:900px;
}

.left{text-align:left;}
.center{text-align:center;}
.right{text-align:right;}

.bg-white{background-color:#ffffff;padding:0 !important;margin-bottom:40px;}
.bg-blue{background-color:#D1F2FB;padding:0 !important;margin-bottom:40px;}
.bg-gray{background-color:#eeeeee;padding:0 !important;margin-bottom:40px;}
.bg-color{background-color:#2BAFB3;padding:0 !important;margin-bottom:40px;}

.c-color{color:#2BAFB3 !important;}

.bold{font-weight:bold;}

.fs12{font-size:.75rem;}
.fs16{font-size:1rem;}
.fs20{font-size:1.25rem;}
.fs24{font-size:1.5rem;}
.fs36{font-size:2.25rem;}
.fs48{font-size:3rem;}
.fs60{font-size:3.75rem;}

.mt40{margin-top:40px;}

.mb0{margin-bottom:0 !important;}
.mb10{margin-bottom:10px !important;}
.mb20{margin-bottom:20px !important;}
.mb40{margin-bottom:40px !important;}
.mb80{margin-bottom:80px !important;}

.p10{padding:10px !important;}
.p20{padding:20px !important;}

.pb0{padding-bottom:0 !important;}

.r20{border-radius:20px;overflow:hidden;}

.wrapper .bg-color *{
	color:#ffffff;
	border-color:#ffffff;
}

.wrapper .bg-white *{
	color:#000000;
	border-color:#000000;
}

.wrapper .bg-color a.btn{
	background-color:#ffffff;
	color:#2BAFB3;
}

.wrapper .bg-color a.btn::after{
	border-color:#2BAFB3;
}

.border{border:1px solid #cccccc;padding:20px;}

.indent{
	padding:20px;
}

a.btn{
	display:inline-block;
	background-color:#2BAFB3;
	padding:1rem 4.5rem .625rem;
	border-radius:4.5rem;
	box-shadow:0 0 8px 4px rgba(0,0,0,.2);
	color:#ffffff;
	font-size:2.25rem;
}

a.btn:hover{
	box-shadow:none;
	text-decoration:none;
	opacity:1;
}

a.btn::after{
	content:"";
	display:inline-block;
	height:.65em;
	width:.65em;
	border-top:2px solid #ffffff;
	border-right:2px solid #ffffff;
	-webkit-transform:webkit-rotate(45deg);
	transform:rotate(45deg);
}

.flex{
	display:flex;
}

.flex > *,
.flex > .col{
	flex-grow:1;
	flex-shrink:1;
	flex-basis:100%;
}

.flex > *{
	padding-left:12px;
	padding-right:12px;
	padding-bottom:20px;
}

.flex.column{flex-wrap:wrap;}

.flex.left{justify-content:flex-start;}
.flex.center{justify-content:center;}
.flex.right{justify-content:flex-end;}

.flex.top{align-items:flex-start;}
.flex.middle{align-items:center;}
.flex.bottom{align-items:flex-end;}

.flex > .col2{flex-basis:200%;}
.flex > .col3{flex-basis:300%;}
.flex > .col4{flex-basis:400%;}
.flex > .col5{flex-basis:500%;}
.flex > .col6{flex-basis:600%;}
.flex > .col7{flex-basis:700%;}
.flex > .col8{flex-basis:800%;}
.flex > .col9{flex-basis:900%;}

.note{
	text-indent:-1.5em;
	padding-left:1.5em;
}

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

#AS-wrapper{
	font-size:1em;
}

#AS-wrapper h2{
	font-size:1.625rem;
}

#AS-wrapper h2,
#AS-wrapper h3,
#AS-wrapper h4,
a.btn{
	font-size:1.375rem;
}

.fs24{font-size:1.125rem;}
.fs36{font-size:2.25rem;}
.fs40{font-size:1.875rem;}
.fs60{font-size:2.5rem;}

a.btn{
	padding:.825rem 2rem .625rem;
}

.section{padding-left:8px;padding-right:8px;}

.sp-center{justify-content:center !important;text-align:center !important;}

.wrapper .mark{
	flex-wrap:wrap;
}

.wrapper .mark > *{
	flex-basis:100%;
}

.wrapper .mark > *:nth-child(1){
	flex-basis:auto;
}

.wrapper .phone > *:nth-child(1){
	margin:1.4em 0;
}

.wrapper .phone > *:nth-child(1)::before{
	right:auto;
}


.flex{
	flex-wrap:wrap;
}

.flex > *{
	padding-left:0;
	padding-right:0;
}

.flex > .col2{flex-basis:100%;}
.flex > .col3{flex-basis:100%;}
.flex > .col4{flex-basis:100%;}
.flex > .col5{flex-basis:100%;}
.flex > .col6{flex-basis:100%;}
.flex > .col7{flex-basis:100%;}
.flex > .col8{flex-basis:100%;}
.flex > .col9{flex-basis:100%;}


.wrapper .bg-color .h2{
	flex-wrap:wrap;
}

.wrapper .bg-color .h2::before,
.wrapper .bg-color .h2::after{
	background-position:center bottom;
	height:3em;
}

.wrapper .bg-color .h2 h2 span{
	font-size:2rem !important;
}

}










