@charset "UTF-8";
/* CSS Document */

/* main-img-top */

.main-img-top {
	width: 94%;
	position: relative;
}

.main-img-top > img {
	width: 100%;
height: 768px;
	object-fit: cover;
	border-radius: 20px;
}

.main-img-top h2 {
	position: absolute;
right: 30px;
bottom: 30px;
}


/* contents-top */

.contents-top {
	width: 100%;
	background-image: url("top/images/back01.png");
background-position: center 600px;
background-repeat: no-repeat;
	position: relative;
}

.contents-top::after {
	content: "";
	position: absolute;
left: 15px;
top: 170px;
	background-image: url("common/images/copy.svg");
background-position: left top;
background-repeat: no-repeat;
	width: 14px;
	height: 402px;
}

.contents-top p.text001 {
	width: 890px;
	margin: auto;
}

.contents-top p.text002 {
	margin-top: 30px;
}

.contents-top p.text002 span {
	color: #f5911e;
	font-size: 18px;
	font-weight: bold;
}

.contents-top .midashi001, .contents-top .midashi002 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 30px;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	margin: auto;
	text-align: center;
}

.contents-top .midashi001 {
color: #FFF;
	padding: 20px 0px;
	border-radius: 80px;
	background-color: #ffb18c;
	width: 940px;
	margin-bottom: 40px;
}

.contents-top .midashi002 {
	color: #ffb18c;
	padding-bottom: 20px;
	width: 920px;
	margin-bottom: 30px;
	border-bottom-style : solid;
border-bottom-color : #cccccc;
border-bottom-width : 1px;
}


/* contents01 */

.contents01 {
	margin-bottom: 100px;
	padding-top: 160px;
}

.contents01 h3 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 39px;
color: #ffb18c;
line-height: 1.4;
letter-spacing: 0.1em;
font-weight: 400;
	text-align: center;
	position: relative;
	display: inline-block;
	margin-bottom: 50px;
}

.contents01 h3::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/icon01.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 56px;
	height: 68px;
	margin-left: -45px;
	margin-top: -42px;
}

.contents01 h3::after {
	content: "";
	position: absolute;
right: 0px;
bottom: 0px;
	background-image: url("top/images/icon02.svg");
background-position: right bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 63px;
	height: 93px;
	margin-right: -70px;
}

.contents01 .box01 {
	width: 1050px;
	text-align: center;
	margin-bottom: 90px;
}

.contents01 .box01 img {
	border-radius: 20px;
}

.contents01 .box01 p {
	margin-bottom: 40px;
	text-align: left;
}

.contents01 .box02 .box, .contents02 .box05 .box {
	margin-bottom: 60px;
}

.contents01 .box02 .box:last-child, .contents02 .box05 .box:last-child {
	margin-bottom: 0px;
}


/* contents02 */

.contents02 {
	margin-bottom: 260px;
}

.contents02a {
	margin-bottom: 200px;
}

.contents02 .box01 {
	margin-bottom: 130px;
	width: 970px;
	position: relative;
}

.contents02a .box01 {
	margin-bottom: 80px;
}

.contents02 .box01 {
	padding-top: 95px;
	position: relative;
}

.contents02 .box01::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/midashi01a.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 388px;
	height: 376px;
}

.contents02a .box01::before {
	background-image: url("top/images/midashi02a.svg");
}

.contents02 .box01::after {
	content: "";
	position: absolute;
right: 100px;
top: 20px;
	background-image: url("top/images/midashi01b.svg");
background-position: right top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 435px;
	height: 66px;
}

.contents02a .box01::after {
right: 40px;
	background-image: url("top/images/midashi02b.svg");
	width: 539px;
}

.contents02 .box01 h3 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 30px;
color: #ffb18c;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	background-color: #feeed7;
	padding: 40px 140px;
	text-align: right;
	border-radius: 80px;
	margin-left: 300px;
	
}

.contents02 .box01 p {
	padding-top: 20px;
	padding-left: 360px;
}

.contents02 .box02 {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	width: 910px;
	margin-bottom: 40px;
}

.contents02 .box02 .box {
	width: 48%;
	margin-bottom: 40px;
}

.contents02 .box02 .box p {
	width: 96%;
	margin: auto;
}

.contents02 .box02 h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 24px;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	padding: 15px 0px;
	border-radius: 12px;
	text-align: center;
	margin-bottom: 20px;
	position: relative;
}

.contents02 .box02 h6::before {
	content: "";
	position: absolute;
left: 30px;
top: 0px;
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
}

.contents02 .box02 h6.c01 {
color: #39b34a;
	background : rgba(215, 222, 33, 0.8);
}

.contents02 .box02 h6.c02 {
color: #f45378;
	background : rgba(244, 83, 120, 0.45);
}

.contents02 .box02 h6.c03 {
color: #007187;
	background : rgba(0, 169, 157, 0.5);
}

.contents02 .box02 h6.c04 {
color: #662d8f;
	background : rgba(145, 39, 141, 0.5);
}

.contents02 .box02 h6.c05 {
color: #2e3190;
	background : rgba(41, 169, 224, 0.8);
}

.contents02 .box02 h6.c06 {
color: #f5911e;
	background : rgba(255, 255, 0, 0.4);
}

.contents02 .box02 h6.c01::before {
	background-image: url("top/images/icon03.svg");
	width: 64px;
	height: 91px;
	margin-top: -20px;
}

.contents02 .box02 h6.c02::before {
	background-image: url("top/images/icon04.svg");
	width: 98px;
	height: 71px;
	margin-top: -20px;
}

.contents02 .box02 h6.c03::before {
	background-image: url("top/images/icon05.svg");
	width: 108px;
	height: 56px;
	margin-top: -6px;
}

.contents02 .box02 h6.c04::before {
	background-image: url("top/images/icon06.svg");
	width: 61px;
	height: 70px;
	margin-top: -15px;
}

.contents02 .box02 h6.c05::before {
	background-image: url("top/images/icon07.svg");
	width: 57px;
	height: 81px;
	margin-top: -20px;
}

.contents02 .box02 h6.c06::before {
	background-image: url("top/images/icon08.svg");
	width: 60px;
	height: 57px;
	margin-top: -10px;
	left: 10px;
}

.contents02 .box03 {
	margin-bottom: 50px;
}

.contents02 .box04 {
	margin-bottom: 70px;
	text-align: center;
	width: 940px;
}

.contents02 .box04 h4 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 25px;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	padding: 15px 0px;
	border-radius: 80px;
	text-align: center;
	background-color: #ffb19f;
	color: #FFF;
	position: relative;
}

.contents02 .box04 h4::before {
	content: "";
	position: absolute;
left: 60px;
top: 0px;
	background-image: url("top/images/icon09.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 129px;
	height: 88px;
	margin-top: -40px;
}

.contents02 .box04 h4::after {
	content: "";
	position: absolute;
right: 60px;
top: 0px;
	background-image: url("top/images/icon10.svg");
background-position: right top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 69px;
	height: 90px;
	margin-top: -40px;
}

.contents02 .box04 h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 25px;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	color: #808080;
	padding-top: 10px;
}

.contents02 .box04 .box001, .boxa01, .boxa02, .boxa03 {
	padding: 30px 60px;
	background-color: #f2f2f2;
	width: 92%;
	margin: auto;
}

.boxa01 {
	width: 890px;
	padding-bottom: 10px;
	border-radius: 5px;
	margin-bottom: 30px;
	background-image: url("top/images/icon11.svg");
background-position: right 30px center;
background-repeat: no-repeat;
}

.boxa01a {
	background-image: none;
}

.boxa02, .boxa03 {
	width: 890px;
	padding-bottom: 10px;
	border-radius: 5px;
	margin: 30px 0px;
	background : rgba(255, 177, 140, 0.3);
}

.boxa03 {
	margin-top: 30px;
	margin-bottom: 0px;
	padding-left: 240px;
	background-image: url("top/images/merit.svg");
background-position: left 50px center;
background-repeat: no-repeat;
}

.boxa03a {
	margin-top: 20px;
	background-color: #f2f2f2;
	background-image: url("top/images/demerit.svg");
}


.contents02 .box04 .box001 ul, .boxa01 ul, .boxa02 ul {
	display: flex;
  justify-content: flex-start;
flex-wrap: wrap;
}

.contents02 .box04 .box001 ul li, .boxa01 ul li, .boxa02 ul li, .boxa03 ul li {
	font-size: 18px;
color: #4d4d4d;
line-height: 1.4;
letter-spacing: 0.05em;
font-weight: 400;
	position: relative;
	margin-right: 30px;
	margin-bottom: 20px;
	padding-left: 35px;
}

.boxa02 ul li, .boxa03 ul li {
	padding-left: 0px;
	text-indent: -18px;
	margin-left: 36px;
}

.contents02 .box04 .box001 ul li::before, .boxa01 ul li::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/check.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 30px;
	height: 24px;
}

.boxa02 ul li::before, .boxa03 ul li::before {
	content: "○ ";
}



/* faq-box-wrap */

.contents02a .faq-box-wrap {
	margin-bottom: 80px;
}

.faq-box-wrap .box {
	margin-bottom: 20px;
	width: 910px;
}

.faq-box-wrap .box:last-child {
	margin-bottom: 0px;
}


.faq-box {
	position: relative;
	padding: 15px 0px;
	margin-top: 10px;
	display: none;/*はじめは非表示*/
}

.faq {
	position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
	padding: 12px 50px;
	background-color: #FFF;
    transition: all .5s ease;
	border-style : solid;
border-color : #ffb18c;
border-width : 3px;
	border-radius: 12px;
	text-align: center;
	background-image: url("top/images/faq-back.svg");
background-position: right 20px center;
background-repeat: no-repeat;
}

.faq  h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 24px;
color: #808080;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
}

.faq::before,
.faq::after{
    position: absolute;
    content:'';
    width: 20px;
    height: 2px;
    background-color: #FFF;
	 transition: all .5s ease;
    
}
.faq::before{
    top:48%;
    right: 26px;
    transform: rotate(0deg);
    
}
.faq::after{    
    top:48%;
    right: 26px;
    transform: rotate(90deg);

}
/*　closeというクラスがついたら形状変化　*/
.faq.close::before{
  transform: rotate(45deg);
}

.faq.close::after{
  transform: rotate(135deg);
}


/* fee */

.fee {
	padding: 20px 0px 10px;
	text-align: center;
}

.fee h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 36px;
color: #333;
line-height: 1.2;
font-weight: 400;
	display: flex;
  justify-content: center;
	align-items: center;
	letter-spacing: 0.05em;
}

.fee h6::before {
	content: "費用";
	font-size: 20px;
	margin-right: 10px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
	padding: 6px 30px;
	border-radius: 60px;
	background-color: #ffb18c;
	margin-top: 3px;
}

.fee h6::after {
	content: "円(税込)";
	font-size: 20px;
	margin-left: 10px;
	margin-top: 10px;
}

.text003 {
	text-align: center;
	padding-top: 30px;
}

.text003 h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 26px;
color: #FFF;
line-height: 1.2;
font-weight: 400;
	letter-spacing: 0.1em;
	background-color: #9cdb68;
	padding: 8px 60px 9px;
	display: inline-block;
	border-radius: 60px;
}



/* contents03 */

.contents03 {
	margin-bottom: 120px;
}

.contents03 .box01 {
	margin-bottom: 70px;
	display: flex;
  justify-content: flex-start;
	align-items: center;
}

.contents03 .box01 .box001 {
	width: 50%;
}

.contents03 .box01 .box001 img {
	width: 100%;
	height: 548px;
	object-fit: cover;
	border-radius: 0px 45px 45px 0px;
}

.contents03 .box01 .box002 {
	padding-left: 90px;
	width: 500px;
}

.contents03 .box01 .box002 h4 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 30px;
color: #ffb18c;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	margin: 30px 0px;
}

.contents03 .box02 {
	margin-bottom: 70px;
}

.contents03 .box03 {
	width: 940px;
	text-align: center;
}

.contents03 .box03 .box {
	position: relative;
	margin-bottom: 50px;
}

.contents03 .box03 .box:last-child {
	margin-bottom: 0px;
}

.contents03 .box03 .box::after {
	content: "";
	position: absolute;
left: 0px;
bottom: 0px;
	background-image: url("top/images/arrow.svg");
background-position: center bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 34px;
	margin-bottom: -25px;
}

.contents03 .box03 .box:last-child::after {
	display: none;
}

.contents03 .box03 h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 25px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	padding: 12px 0px;
	border-radius: 60px;
	background-color: #aad474;
}

.contents03 .box03 h6 span {
color: #faec21;
}

.contents03 .box03 p {
	padding: 17px 0px 25px;
	background-color: #f2f2f2;
	width: 90%;
	margin: auto;
}

.contents03 .box04 {
	display: flex;
  justify-content: center;
flex-wrap: wrap;
	text-align: center;
}

.contents03 .box04 .box {
	margin: 0px 30px;
}

.contents03 .box04 .box img {
	border-radius: 50%;
}

.contents03 .box04 h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 22px;
color: #ffb18c;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	margin: 15px 0px;
}

.contents03 .box04 .box p {
	width: 230px;
	margin: auto;
	text-align: left;
}

.contents03 .box05 {
	display: flex;
  justify-content: center;
	margin-bottom: 50px;
}

.contents03 .box05 .box001 {
	width: 450px;
	margin-right: 70px;
}

.contents03 .box05 .box001 img {
	border-radius: 50%;
}

.contents03 .box05 .box002 {
	display: flex;
  justify-content: center;
	align-items: center;
	text-align: left;
}

.contents03 .box05 h5 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 36px;
color: #ffb18c;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	position: relative;
}

.contents03 .box05 h5 span {
	font-size: 18px;
	display: inline-block;
	padding-left: 20px;	
}

.contents03 .box05 h5::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/doctor.svg");
background-position: left top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 172px;
	height: 37px;
	margin-top: -50px;
}

.contents03 .box06 {
	margin-bottom: 70px;
}

.contents03 .box07 {
	width: 100%;
	padding: 50px 0px;
	background-color: #feeed7;
}

.contents03 .box07 .box-in {
	width: 940px;
	display: flex;
  justify-content: space-between;
}

.contents03 .box07 .box {
	width: 450px;
	background-color: #FFF;
	border-radius: 30px;
	padding: 30px 40px;
}

.contents03 .box07 .box-box {
	padding-bottom: 30px;
	margin-bottom: 20px;
	border-bottom-style : solid;
border-bottom-color : #cccccc;
border-bottom-width : 1px;
}

.contents03 .box07 .box-box:last-child {
	padding-bottom: 0px;
	margin-bottom: 0px;
	border-bottom-style : none;
}

.contents03 .box07 h6 {
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 22px;
color: #ffb18c;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	margin-bottom: 10px;
}

.contents03 .box07 table td {
	line-height: 1.6;
	letter-spacing: 0.05em;
	padding: 5px;
}

.contents03 .box07 table td:first-child {
	white-space: nowrap;
}


    .sp-view {
        display: none;
    }