/* CSS Document */
/*design*/

@charset "UTF-8";
@import "https://use.fontawesome.com/releases/v5.8.2/css/all.css";


*{
	margin:0;
	padding:0;
	line-height:1.0;
}


@media(min-width:751px){
.sp{
display:none !important;
}
}
@media(max-width:750px){
.pc{
display: none !important;
}
}


html,body{
	background-color:#F7F7F7;
	font-size:14px;
	font-family:'Noto Sans JP', sans-serif;
	/* font-family :YuMincho,'Yu Mincho',serif;*/
	color:#000;
	margin:0 auto;
	padding:0;
	height:100%;
	width:100%;
	max-width:750px;
}
@media screen and (max-width:750px) {
body{
font-size:16px;
text-align:center;
}
}
body,h1,h2,h3,h4,p,li{
    letter-spacing:0.1em;
    line-height:1.8;
	margin:0;
}


.main{
 	background-color:#fff;
}


img{
    width:100%;
    height:auto;
}
p{
    margin:0;
    font-size:24px;
    line-height:1.7;
    padding:0;
}
@media screen and (max-width:750px) {
p{
font-size:16px;
text-align:center;
}
}


/*見出し*/
.h2__title{
	padding:10px 0;
}


/*voice*/
.voice{
	margin:30px 10px 60px;
}
.voice__cont{
	background:#fff;
	border:4px solid #152f50;
	box-shadow:5px 5px 0px 0 rgb(21 47 80);
	margin:20px;
	padding:20px 10px;
	display:flex;
	justify-content:center;
	align-items:center;
}
.voice__cont .voice__img{
	width:10%;
}
.voice__txt{
	color:#000;
	font-size:24px;
	font-weight:bold;
	letter-spacing:0;
	line-height:1.6;
	padding-left:20px;
	width:70%;
}
.red{
	color:#cb3a3a;
}
@media screen and (max-width:750px) {
.voice{
margin:10px 10px 30px;
}
.voice__cont{
background:#fff;
border:2px solid #152f50;
margin:10px;
padding:15px;
display:flex;
justify-content:center;
}
.voice__cont .voice__img{
width:15%;
}
.voice__txt{
color:#000;
font-size:15px;
font-weight:bold;
letter-spacing:0;
line-height:1.6;
width:70%;
text-align:left;
}
}


/*what*/
section.what{
	background:#e1faff;
	padding:50px 0 0;
}
@media screen and (max-width:750px) {
section.what{
padding:30px 0 0;
}
}


/*ideal*/
.ideal .block__inner{
	background:linear-gradient(70deg, #0b90dc, #20b2ca);
}
.block__title{
	background:#fff;
}
.ideal__catch--txt{
	margin-top:20px;
}
.idealBox{
	border-radius:5px;
	margin:65px 30px 40px;
	position:relative;
}
.idealBox__num{
	width:216px;
	height:70px;
	position:absolute;
	top:-38px;
	left:30px;
}
.idealBox__title{
	background:#0076da;
	color:#fff;
	font-weight:bold;
	padding:60px 40px 30px;
	text-align:center;
}
.idealBox__detail{
	background:#fff;
	font-weight:bold;
	font-size:32px;
	line-height:1.5;
	letter-spacing:0;
	padding:40px 15px;
	text-align:center;
}
@media screen and (max-width:750px) {
.idealBox{
margin:8.6vw 4vw 5.3vw;
}
.ideal__catch{
font-size:18px;
}
.idealBox__title{
padding:8vw 5vw 3.9vw;
}
.idealBox__detail{
font-size:4.2vw;
padding:6vw 1.2vw;
}
.idealBox__num{
width:31vw;
height:auto;
top:-5vw;
left:5.3vw;
}
}

/* ------------------------------

phone

------------------------------ */
.phone{
	display: flex;
	justify-content: space-around;
	margin: 30px 30px 50px;
}
.phone__wrap01,.phone__wrap03{
	width: 44%;
}
.phone__wrap02{
	width: 12%;
	padding: 250px 0 0;
	margin: 15px;
}


/* スマホ下吹き出し */
.phone__wrap__fukidashi{
	position: relative;
	display: inline-block;
	margin: 30px 0 0;
	padding: 10px;
	min-width: 120px;
	max-width: 100%;
	color: #555;
	background: #e0edff;
}
.phone__wrap__fukidashi:before {
	content: "";
	position: absolute;
	top: -30px;
	left: 50%;
	margin: 0 0 -5px -15px;
	border: 15px solid transparent;
	border-bottom: 15px solid #e0edff;
}
.phone__wrap__fukidashi__txt{
	margin: 0 0 5px 0;
	padding: 0;
	font-size: 13px;
	text-align: left;
	font-weight: bold;
	line-height: 1.5;
}
.mini{
	font-size: 11px;
	line-height: 1.4;
	font-weight: normal;
	margin: 0;
}
.gr{
	background: #11ca33;
	padding: 3px;
	color: #ffffff;
}
.mg{
	margin: 0;
}

@media screen and (max-width:500px) {
	.phone{
		margin: 10px 10px 25px;
	}
	.phone__wrap01,.phone__wrap03{
		width: 44%;
	}
	.phone__wrap02{
		width: 12%;
		padding: 100px 0 0;
		margin: 8px;
	}

	/* スマホ下吹き出し */
	.phone__wrap__fukidashi{
		margin: 30px 0 0;
		padding: 10px;
		min-width: 120px;
		max-width: 100%;
		font-size: 16px;
	}
	.phone__wrap__fukidashi:before {
		margin: 0 0 -3px -15px;
		border: 15px solid transparent;
		border-bottom: 15px solid #e0edff;
	}
	.phone__wrap__fukidashi__txt{
		font-size: 12px;
	}
	.mini{
		font-size: 10px;
		line-height: 1.4;
		font-weight: normal;
		margin: 0;
	}
}

/*coupon*/
.coupon{
	background:#152f50;
	padding:30px;
	text-align: center;
}
@media screen and (max-width:750px) {
.coupon{
padding:4.2vw;
}
}

/* 吹き出し */
.catch {
	position: relative;
	display: inline-block;
	margin: 50px 20px 20px;
	padding: 20px 40px;
	min-width: 120px;
	max-width: 100%;
	color: #555;
	font-size: 16px;
	background: #ffffff;
	border-radius: 50px;
	box-shadow: 5px 5px 10px #000000b8;
}
.catch:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 30px solid #ffffff;
	margin-top: -3px;
}
.catch__txt {
	margin: 0;
	padding: 0;
	font-size: 35px;
	font-weight: bold;
	color: #152f50;
}
@media screen and (max-width:500px) {
	.catch {
		position: relative;
		display: inline-block;
		margin: 30px 20px 20px;
		padding: 15px 30px;
		min-width: 120px;
		max-width: 100%;
		color: #555;
		font-size: 16px;
		background: #ffffff;
		border-radius: 50px;
		box-shadow: 5px 5px 10px #000000b8;
	}
	.catch:before {
		content: "";
		position: absolute;
		top: 100%;
		left: 50%;
		margin: 0 0 -3px -15px;
		border: 15px solid transparent;
		border-top: 20px solid #ffffff;
	}
	.catch__txt {
		font-size: 20px;
	}	
}


.couponBtn__catch__img{
	width: 90%;
	text-align: center;
	margin: 0 auto;
}
.couponBtn__btn{
	animation:btn 0.8s infinite alternate;
}
@keyframes btn{
  from{transform:scale(0.95);}
  to{transform:scale(1.02);}
}

.couponBtn__line_block{
	margin:15px 0 25px;
}


/*faq*/
.faq{
	padding:30px;
	background:#eef7f9;
}
.faq__accordion .accordion{
	margin:40px 0;
}
.faq__accordion .accordion__title{
	background:#1260bc;
	background:linear-gradient(70deg, #0b90dc, #20b2ca);
	background-position:left top;
	border-radius:10px;
	color:#fff;
	font-size:27px;
	font-weight:bold;
	line-height:1.5;
	padding:40px 64px 40px 30px;
	transition:.3s;
	position:relative;
}
.faq__accordion .open.accordion__title{
	border-radius:10px 10px 0 0;
	transition:.3s;
}
.faq__accordion .accordion__title::after{
	background:url("../img/ver26/ic_arrow.png") no-repeat;
	background-size:30px 17px;
	content:"";
	width:30px;
	height:17px;
	transform:rotate(0deg);
	transition:.3s;
	position:absolute;
	right:28px;
	top:50%;
	margin-top:-9px;
}
.faq__accordion .open.accordion__title::after{
	background:url("../img/ver26/ic_arrow.png") no-repeat;
	background-size:30px 17px;
	content:"";
	width:30px;
	height:17px;
	transform:rotate(180deg);
	transition:.3s;
	position:absolute;
	right:28px;
	top:50%;
	margin-top:-9px;
}
.faq__accordion .accordion__detail{
	background:#fff;
	border-radius:0 0 10px 10px;
	padding:40px 30px;
}
.faq__text--point{
	background:linear-gradient(transparent 70%, #cbf7e2 30%);
	color:#1260BC;
	font-weight:bold;
}
@media screen and (max-width:750px) {
.faq{
padding:4.2vw;
}
.faq__accordion .accordion{
margin:5vw 0;
}
.faq__accordion .accordion__title{
font-size:3.3vw;
padding:5vw 8vw 5vw 3vw;
text-align:left;
}
.faq__accordion .accordion__title::after{
background-size:4.2vw 2.5vw;
content:"";
width:4.2vw;
height:2.5vw;
right:2.5vw;
margin-top:-1vw;
transform:rotate(0deg);
}
.faq__accordion .open.accordion__title::after{
background-size:4.2vw 2.5vw;
content:"";
margin-top:-1vw;
width:4.2vw;
height:2.5vw;
right:3.8vw;
transform:rotate(180deg);
}
.faq__accordion .accordion__detail{
padding:5vw 4.2vw;
}
.faq__accordion .accordion__detail p{
text-align:left;
}
}


/*flow*/
.flow__inner{
	margin:40px 0 60px;
}
div.flow_1{
	position:relative;
}
div.flow_1 div.flow_1video{
	width:31.3%;
	height:auto;
	position:absolute;
	left:10.08%;
	bottom:0;
}
div.flow_1video video{
	width:100%;
	height:auto;
}


/*doctor*/
.doctor__inner{
	margin:30px 0 60px;
	padding:0;/*0 30px*/
}
@media screen and (max-width:750px) {
.doctor__inner{
margin:4.2vw 0 8vw;
padding:0;/*0 4.2vw*/
}
}


/*about*/
.about p{
	text-align:left;
}
.about__inner{
	margin:30px 30px 60px;
}
.about__title--h3{
	font-size:30px;
	font-weight:bold;
	margin:40px 0;
	text-align:center;
  padding-bottom: 10px;
  border-bottom: 2px solid #152f50;
}
.about__title--h3sub {
	font-weight: bold;
	text-align: center;
	font-size: 25px;
	margin: 0 0 20px;
}
.about__inner .block__text{
	border:3px solid #152f50;
	padding:20px;
}
.about__img{
	margin-bottom:30px;
}
.about .block__table table{
	margin-bottom:30px;
	width:100%;
}
.about .block__table th,
.about .block__table td{
	padding:20px 0;
}
.about .block__table tr{
	border-bottom:2px dotted #c4c4c4;
}
.about .block__table tr:last-child{
	border-bottom:0;
}
.about__map{
	margin-bottom:30px;
	width:100%;
	height:500px;
}
@media screen and (max-width:750px) {
.about__inner{
margin:4.2vw 4.2vw 8vw;
}
.about__title--h3{
border-bottom:2px solid #152f50;
font-size:5.2vw;
margin:5vw 0;
}
.about__title--h3sub {
	font-size: 4vw;
	margin: 0 0 5vw;
}
.about__img{
margin-bottom:4.2vw;
}
.about .block__table table{
margin-bottom:4.2vw;
}
.about .block__table th,
.about .block__table td{
padding:2.6vw 0;
}
.about__map{
margin-bottom:4.2vw;
width:100%;
height:60vw;
}
}


/*footer*/
.footer__inner{
	background-image:linear-gradient(90deg, rgba(0, 0, 0, 1), rgba(38, 36, 32, 1) 50%, rgba(0, 0, 0, 1));
	padding: 45px;
}
.footer__logo img{
	width:141px;
	height:69px;
	margin:0 auto;
}
.footer__link{
	margin-top:30px;
	text-align:center;
}
.footer__link a{
	color:#1260bc;
	text-decoration:underline;
}
.footer__copy{
	background:#002d60;
	padding:30px;
	color:#fff;
	text-align:center;
	font-size:18px;
}
@media screen and (max-width:750px) {
.footer__inner{
padding:5.6vw;
}
.footer__logo img{
width:20vw;
height:auto;
}
.footer__link{
margin-top:4.2vw;
}
.footer__copy{
padding:4.2vw;
font-size:1.4vw;
}
}

