@charset "utf-8";

/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

html{
	 scroll-padding-top: 80px;
}

body {
	width: 100% !important;
	color: #707070;
	line-height: 1.8125;
	overflow: hidden;
	font-size: 1.6rem;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: "Zen Maru Gothic", serif!important;
	font-weight: 500;
	background: #DDECF0;
	position: relative;
	z-index:1;
}

body:before{
	position:absolute;
	content:"";
	width:100%;
	height:100%;
	background:url(../img/bg1.png)no-repeat top center;
	top:0;
	left:0;
	z-index:-1;
	background-size:initial;
}

.noth{
	font-family: "Nothing You Could Do", cursive!important;
	font-weight: 400;
}

/* color */
.white{
	color: #ffffff!important;
}
.blue{
	color: #65ADBB;
}
.red{
	color: #F28293;
}
.green{
	color: green;
}
.yellow{
	color: #FBF9F3;
}
.black{
	color: #070203;
}

.bgwh{
	background: #ffffff;
}
.bgblu{
	background: #65ADBB;
}
.bgblu2{
	background: #DDECF0;
}
.bgbla{
	background:#070203;
}
.bgred{
	background: #F28293;
}
.bggre{
	background: green;
}
.bgyel{
	background: #FBF9F3;
}

/*リンク表示方法*/

a {
	text-decoration: none;	
}

a:link {
	color: #707070;
}

a:visited {
	color: #707070;
}

a:active {
	color: #707070;
}

a:hover {
	opacity: 0.7;
}

a:hover img {
	opacity: 1;
}

.hLogo a:hover{
	opacity: 1;
}

:has( > .lista){
	position: relative;
}

.lista{
	position: absolute;
	left: 0;
	top:0;
	width:100%;
	height:100%;
	z-index: 1;
}

a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
/*-----------------------------------------------------------
PCサイズ
-----------------------------------------------------------*/

.pc,.pc2 {
	display: block;
}

.sp,.sp2, .spTel {
	display: none;
}

.pcTel {
	display: inline;
}


/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

header {
	padding: 0;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 9999;
	transition: .4s;
	top: 0;
}


.hLogo{
	max-width: 146px;
	width: 15%;
	margin-left: 3.8%;
}


.logo a:hover img {
	opacity: 1;
}

.headerTel {
	margin: 0 0 0 0;
	padding: 0px 0 0;
	font-weight: 900;
}

.off_img{
	display:block;
}

.on_img{
	display:none;
}

.headerScroll .off_img{
	display:none;
}

.headerScroll .on_img{
	display:block;
}

/*-----------------------------------------------------------
テーブル共通
-----------------------------------------------------------*/

table {
	border-collapse: separate;
}

th {
	background: #555;
	color: #fff;
}

td {
	background: #ddd;
	color: #555;
}


/*-----------------------------------------------------------
 nav
-----------------------------------------------------------*/

.pc_nav{
	width: 80%;
	display: flex;
	max-width: 1260px;
	align-items: center;
	justify-content: flex-end;
	margin-bottom: 10px;
	background: #FFFFFF;
	border-radius: 0 0 0 29px;
	padding: 20px 0;
	padding: 17px 1.472% 17px 1.367%;
}

.nav_list1{
	display: flex;
	justify-content: flex-end;
	max-width: 952px;
	width: 77%;
}

.nav_list1 li {
	margin-left:auto;
}

.nav_list1 li:first-child{
	margin:0;
}

.nav_list1 a {
	display: block;
	text-decoration: none;
	font-size: clamp(1.1rem,1.2vw,1.8rem);
	color: #333333;
}

.pc_nav .tel_btn{
	margin-left: auto;
	width: 21%;
}

.tel_btn{
	display:flex;
	align-items:center;
	justify-content:space-between;
	max-width:211px;
	width: 100%;
	font-size: clamp(2rem,2vw,2.5rem);
	font-weight:900;
}

/*-----------------------------------------------------------
#slide
-----------------------------------------------------------*/

#modal {
	display: none;
}

/*-----------------------------------------------------------
#cover
-----------------------------------------------------------*/

#cover {
	max-width: 1920px;
	width: 100%;
	margin: 0px auto 0;
}


.cov-div{
	display:flex;
	justify-content:space-between;
	align-items: center;
	height: 70vw;
	max-height: 1072px;
	min-height: 610px;
}

.cov-div .text_area{
	max-width: 731px;
	width: 40%;
	margin-left: 5%;
	position: relative;
}

.cov-div .img{
	max-width:1001px;
	width: 53%;
}


.cov-div .text_area .ab_img{
	position:absolute;
	max-width:259px;
	width: 40%;
	top: 7%;
	left: 50%;
}

.cov-div .text_area .text{
	font-size: clamp(2rem,2vw,3.1rem);
	font-weight:700;
	line-height:1.45;
	margin-bottom:24px;
}

.cov-div .text_area .text span{
	font-size: clamp(1.6rem,2vw,1.8rem);
}


.cov-div .text_area .title{
	font-size: clamp(2.4rem,2.3vw,4.3rem);
	font-weight:700;
	line-height:1.79;
	margin-bottom: 5.7%;
}

.mv_list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	max-width:649px;
	width:100%;
}


.mv_list li{
	width:48%;
	max-width:302px;
	margin-top:18px;
}

/*-----------------------------------------------------------
 #main
-----------------------------------------------------------*/

#main {
	width: 100%;
	margin: 0px auto 0;
}

.flex{
	display: flex;
	justify-content: space-between;
}

.inner{
	width: 95%;
	max-width: 1300px;
	margin: 0 auto;
}

.inner2{
	width: 95%;
	max-width: 1450px;
	margin: 0 auto;
}

.inner3{
	width: 95%;
	max-width: 1450px;
	margin: 0 auto;
}

.content09 .mainTit{
	font-size: clamp(3rem,4vw,4.5rem);
}

.mainTit{
	line-height: 1.4444;
	font-weight:700;
	font-size: clamp(2.2rem,3vw,4.5rem);
	text-align:center;
}

.mainTit.big{
	line-height: 1.4545;
	font-size: clamp(3.4rem,4vw,5.5rem);
}

.mainTit .en_tit{
	font-size: clamp(3.4rem,3vw,5.5rem);
	color:#65ADBB;
	margin-top:11px;
	display:block;
	line-height: 1.34545;
}

.mainTit .en_tit2{
	font-size: clamp(1.8rem,2vw,2.5rem);
	color:#65ADBB;
	display:block;
	line-height: 1.32;
}

.mainTit2{
	font-size: 1.8rem;
	line-height: 1;
	font-weight:500;
	font-size: clamp(1.6rem,4vw,1.8rem);
}

.mainTit2 span{

}

.subTit{
	font-size: 2.4rem;
	line-height:1.2;
	font-weight:700;
	font-size: clamp(2rem,4vw,2.4rem);
}

.content01{
	max-width: 1920px;
	width: 100%;
	margin: 0 auto;
	position: relative;
	padding: 144px 0 57px;
}

.content01 .ab_img1{
	position:absolute;
	max-width:501px;
	width: 27%;
	left: -2%;
	top: -2.589%;
	z-index: -1;
}

.content01 .ab_img2{
	position:absolute;
	max-width:241px;
	width: 13%;
	left:0;
	top: 63%;
	z-index: -1;
}

.content01 .ab_img3{
	position:absolute;
	max-width:501px;
	width: 27%;
	right: -3%;
	top: 43%;
	z-index: -1;
}

.content01 .inner{
	max-width:720px;
}

.content01 p{
	font-size: clamp(1.6rem,2vw,2rem);
	line-height:2;
	text-align:center;
	margin-top:68px;
}



.content02{
	padding:190px 0 0;
	position: relative;
	z-index: 2;
}

.co2{
	background:#fff;
	position:relative;
	padding:32px 0 116px;
	border-radius:51px;
	box-shadow: 0 3px 6px #00000029;
}

.co2 .ab_img{
	position:absolute;
	left:0;
	right:0;
	margin:auto;
	max-width:183px;
	width: 100%;
	top: -190px;
}

.co2_list{
	display:flex;
	justify-content:space-between;
	max-width:1300px;
	width:95%;
	margin: 42px auto 0;
}

.co2_list li{
	max-width:400px;
	width:32%;
}

.co2_list li .subTit1{
	margin:9px auto;
	text-align:center;
	font-size: clamp(1.8rem,2vw,2.6rem);
	line-height:1.42;
	font-weight:700;
	min-height:74px;
	display:flex;
	align-items:center;
	justify-content:center;
}

.sections{
	position:relative;
	z-index:1;
	max-width:1790px;
	width:98%;
	margin:0 auto;
}

.sections:before{
	position:absolute;
	z-index:-1;
	content:"";
	width:100%;
	height:100%;
	background:#FBF9F3;
	bottom:0;
	left:0;
	border-radius:35px;
}


.sections1:before{
	height:105%;
}

.sections1{
	margin:0 auto 142px;
}

.sections2{
	margin:158px auto 142px;
}

.content03{
	padding: 106px 0 144px;
}

.co31{
	margin-bottom: 182px;
}

.co31 .flex{
	margin-bottom: 7.4%;
}

.co31 .flex .img{
	max-width:605px;
	width: 42%;
}

.co31 .flex .text_area{
	max-width:726px;
	width: 56%;
}

.co31 .flex .text_area .title{
	font-size: clamp(3rem,4vw,7rem);
	font-weight:700;
	padding-left:5%;
	position:relative;
	line-height:1.4428;
	margin-bottom: 24px;
}

.co31 .flex .text_area .title:before{
	position:absolute;
	content:"";
	width: 21%;
	height:133px;
	background: url(../img/title_sou.svg)no-repeat top left;
	background-size:contain;
	left: -4%;
	top: -45%;
	z-index:-1;
	max-width: 140px;
	max-height: 133px;
}

.co31 .flex .text_area .text{
	font-size:1.8rem;
	font-weight:500;
	line-height:2.222;
}

.co31 .flex .text_area .text2{
	margin-top:24px;
}

.co311{
	background:#fff;
	border:7px solid #DDECF1;
	border-radius:20px;
	position:relative;
	padding: 74px 3.449% 44px;
}

.co311 .subTit2{
	position:absolute;
	left:0;
	right:0;
	margin:auto;
	top: -40px;
	min-height: 84px;
	display:flex;
	align-items:center;
	justify-content:center;
	max-width:675px;
	width: 60%;
	min-width: 280px;
}

.co311 .subTit2 span{
	background:#77BCDF;
	font-size: clamp(2rem,3vw,2.5rem);
	font-weight:700;
	width: 100%;
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
}

.co311 .subTit2 span:before,
.co311 .subTit2 span:after{
	position:absolute;
	content:"";
	width:49px;
	height:84px;
	top:0;
	bottom:0;
	margin:auto;
	background: url(../img/bone_sou_blu.svg)no-repeat;
	background-size: contain;
}


.co311 .subTit2 span:before{
	left: -8px;
}

.co311 .subTit2 span:after{
	right: -8px;
}

.co31_list{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

.co31_list li{
	width:32%;
	margin-bottom:30px;
	font-size: clamp(1.6rem,1.3vw,2rem);
}

.co31_list li:last-child{
	margin-bottom:0px;
}

.co32{
	background:#F8F2E1;
	position:relative;
	border-radius:46px;
	box-shadow:inset 0 0 12px #00000029;
	padding:115px 2.5% 50px;
}

.co32 .title{
	position:absolute;
	display:flex;
	align-items:center;
	justify-content:center;
	background:#FBF9F3;
	border-radius:54px;
	max-width:750px;
	width: 70%;
	left:0;
	right:0;
	margin:auto;
	font-size: clamp(2rem,4vw,4.4rem);
	font-weight:700;
	top:-33px;
	padding: 12px 0px;
}

.co32_list{
	display:flex;
	justify-content:space-between;
	max-width:975px;
	width:100%;
	margin: 0 auto 0;
	flex-wrap: wrap;
}

.co32_list li{
	width:48%;
	max-width:400px;
	margin-top: 23px;
}

.co32_list li:nth-child(1),
.co32_list li:nth-child(2){
	margin-top: 0px;
}

.co32_list li .subTit1{
	margin:27px auto 17px;
	text-align:center;
	font-size: clamp(1.8rem,2vw,2.6rem);
	line-height:1.42;
	font-weight:700;
	display:flex;
	align-items:center;
	justify-content:center;
}

.content04{
	background:#fff;
	padding:50px 0 150px;
	border-top:10px solid #DDECF0;
}


.content04 .mainTit .en_tit2{
	margin-top:6px;
}

.co41{
	margin-bottom: 122px;
}

.co41 .title1{
	margin-top:57px;
	padding:17px 0;
	border-top:1px solid #707070;
	border-bottom:1px solid #707070;
	text-align:center;
	font-size: clamp(1.8rem,2vw,2.5rem);
	font-weight:500;
}

.co4_list1{
	display:flex;
	justify-content:space-between;
}

.co4_list1 li{
	background:#EAF7FC;
	max-width: 611px;
	width: 60%;
	margin-top:84px;
	position:relative;
	border-radius: 80px;
	padding: 0 1.69% 19px;
}

.co4_list1 li .img{
	width: 92px;
	height: 92px;
	margin: -32px auto 0;
}

.co4_list1 li .title{
	margin-top:4px;
	font-size: clamp(2rem,2.4vw,3rem);
	font-weight:700;
	text-align:center;
	line-height:1.46667;
	min-height: 65px;
}


.content07 .co4_list1 li .title{
	min-height:initial;
}

.co4_list1 li .title span{
	display:block;
	font-size: clamp(1.3rem,1.3vw,1.5rem);
	color:#707070;
	font-weight:500;
	line-height:1.4;
}


.co4_list1 li .text{
	margin-top:21px;
	background:#FFFFFF;
	border-radius:44px;
	min-height:88px;
	display: flex;
	align-items: center;
	padding: 5px 2% 5px 5%;
	word-break: auto-phrase;
	/* justify-content: center; */
}

.co42{
	margin-bottom: 145px;
}

.co42 .title{
	text-align:center;
	font-size: clamp(2.4rem,4vw,4rem);
	font-weight:700;
	line-height:1.45;
	margin-bottom:46px;
}

.co42_list{
	display:flex;
	justify-content:space-between;
}

.co42_list li{
	width:24%;
	background:#FBF9F3;
	border:1px solid #E0DCCF;
	border-radius:12px;
	text-align:center;
	max-width:276px;
	padding:20px 2% 16px;
}

.co42_list li .img{
	max-width:119px;
	margin: 0 auto 9px;
	width: 50%;
}


.co42_list li p{
	display:flex;
	align-items:center;
	justify-content:center;
	min-height: 55px;
	flex-direction: column;
	font-weight: 700;
	font-size: clamp(1.4rem,1.8vw,2rem);
}

.co43{
	margin-bottom: 95px;
}

.co43 .title2{
	text-align:center;
	font-size: clamp(2.4rem,4vw,4rem);
	font-weight:700;
	line-height:1.45;
	margin-bottom:9px;
}

.co43 .text1{
	font-size: clamp(1.6rem,2vw,2rem);
	font-weight:500;
	text-align:center;
	margin-bottom:61px;
}

.co43 .text2{
	font-size: 1.4rem;
	text-align: right;
	margin: 16px auto 50px;
}

.co431{
	border:1px solid #77BCDF;
	border-radius: 17px 17px 9px 9px;
	margin-bottom: 66px;
}

.co431 .title3{
	font-size: clamp(2rem,3vw,3rem);
	font-weight:700;
	line-height:1.46667;
	background:#B2DDFB;
	border-radius:15px 15px 0 0;
	min-height:79px;
	padding:5px 0;
	display:flex;
	align-items:center;
	justify-content:center;
}

.co431_list{
	padding: 19px 3% 12px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.co431_list li{
	display: flex;
	width:32%;
	margin-bottom:24px;
	font-size: clamp(1.5rem,1.2vw,2rem);
	line-height:1.45;
}

.co431_list li .left{
	max-width:241px;
	width: 78%;
	padding-left:35px;
	position:relative;
}


.co431_list li .right{
	flex-shrink:0;
}

.co431_list li .left:before{
	position:absolute;
	content:"";
	width:25px;
	height:20px;
	background:url(../img/co432.svg)no-repeat;
	background-size:contain;
	left:0;
	top: 6px;
}

.co431_list.col2 li{
	width: 49%;
}

.co431_list.col2 li .left{
	max-width:initial;
	width: 59%;
	padding-left:35px;
}

.co431_list.col2 li .right{
	flex-shrink:0;
}

.co432{
	display:flex;
	background:#FBF9F3;
	border-radius:12px;
	align-items:center;
	padding: 22px 3.077% 11px;
}

.co432 .left{
	flex-shrink:0;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	margin-right: 3%;
	font-size: 2rem;
	font-weight: 700;
}

.co432 .left .img{
	width:66px;
}

.co432 .right{
	font-size: clamp(1.5rem,1.7vw,1.8rem);
	line-height:2.2777;
}

.co44 .over_sld{
	margin:47px auto 48px;
}

.co43.co44{
	margin:0;
}

.content05{
	padding:154px 0 150px;
}

.content05 .blue{
	color:#77BCDF;
}

.content05 .text{
	font-size: clamp(1.6rem,2vw,2rem);
	line-height:1.85;
	font-weight:500;
	text-align:center;
	margin:12px auto 70px;
}

.sld_area{
	position:relative;
}

.slider_btn{
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
	width:100%;
	height:100%;
	display:flex;
	justify-content:space-between;
	pointer-events:none;
	align-items: flex-start;
	padding-top: 7%;
}

.slider_btn div{
	pointer-events:initial;
	cursor:pointer;
}

.slider_btn div:hover{
	opacity:0.7;
}

.sld{
	max-width:375px;
	width:95%;
	margin:0 auto;
}


.sld h3{
	margin-top:18px;
	font-size: clamp(2rem,2.4vw,3rem);
	font-weight:700;
	text-align:center;
	line-height:1.46667;
}

.sld p{
	margin-top:15px;
	font-size:1.6rem;
	font-weight:500;
	line-height:1.5;
}

.contact_div{
	background:#fff;
	border-radius:46px;
	padding:84px 0 56px;
}

.contact_div .flex{
	margin:56px auto 0;
}

.contact_div .flex a{
	max-width:622px;
	width: 49%;
}

.content03.content06 {
    padding: 158px 0 150px;
}

.content06  .co31 .flex .text_area .title:before {
    left: -4%;
    top: -29%;
}

.content06  .co31_list{
	justify-content:flex-start;
}

.content06  .co31_list li{
	width:48%;
	margin-bottom:30px;
}


.content06  .co31_list li:nth-child(1){
	width:60%;
	margin-right: 2%;
}

.content06  .co31_list li:nth-child(2){
		width:38%;
}

.content06  .co31_list li:nth-child(3){
	max-width:310px;
	margin-right: 11%;
}

.content07 .co4_list1{
	flex-wrap:wrap;
	justify-content:space-between;
	max-width:854px;
	width:100%;
	margin:0 auto;
}

.content07 .co4_list1 li{
	width:48%;
}

.content07 .co4_list1 li .text1{
	font-size: clamp(2.4rem,3vw,3.4rem);
	text-align:center;
	line-height:1;
}

.content07 .co42_list{
	width:100%;
	justify-content: center;
}

.content07 .co42_list li{
	width: 32%;
	margin-right: 30px;
	margin-top: 30px;
}

.content07 .co42_list li:last-child{
	margin-right:0;
}

.co42_list li p span{
	font-size: clamp(1.2rem,1.6vw,1.4rem);
}

.co433{
	background:#DDECF029;
	border-radius:10px;
	padding: 20px 3%;
	margin-top: 46px;
	font-size: 1.8rem;
	line-height: 2;
}

.content09{
	margin-top:149px;
	background:#FBF9F3;
	padding:150px 0;
}

.content09 .inner > .flex{
	margin:101px auto 92px;
	align-items:flex-end;
}

.content09 .flex .img{
	max-width:502px;
	width: 39%;
}

.content09 .flex .text_area{
	max-width:738px;
	width: 57%;
}

.content09 .flex .text_area .title{
	margin-bottom:42px;
	font-size: clamp(3rem,4vw,5rem);
	font-weight:700;
}

.content09 .flex .text_area .text{
	font-size: clamp(1.6rem,2vw,1.8rem);
	line-height:2.2222;
}

.content09 .flex .text_area .name{
	font-size: clamp(2.4rem,2.4vw,3.9rem);
	line-height:1.435897;
	margin-top:40px;
	text-align:right;
	font-weight:700;
}

.co9_list li{
	display:flex;
	padding:54px 0;
	border-top:1px solid #D6CEB4;
	align-items: center;
}

.co9_list li:last-child{
	border-bottom:1px solid #D6CEB4;
}

.co9_list li > .left{
	max-width:324px;
	flex-shrink: 0;
	width: 25%;
	text-align: center;
	font-size: clamp(1.6rem,2vw,2rem);
	font-weight: 700;
}

.co9_list li > .right{
	font-size: clamp(1.6rem,2vw,1.8rem);
	width: 75%;
}

.flex_link{
	display:flex;
	align-items:center;
	max-width: 453px;
	width: 100%;
	justify-content: space-between;
}

.co9_link{
	font-weight:700;
	display:flex;
	align-items:center;
}

.co9_link img{
	margin-right:8px;
}

.co9_list li > .right .flex{
	justify-content:flex-start;
}

.co9_list li > .right .flex .left{
	max-width:252px;
	width: 26%;
	margin-right: 10.258%;
}

.co9_list li > .right .flex .right{
	max-width:584px;
	width: 60%;
}

.co9_list li > .right .flex .right .text{
	margin-bottom:12px;
	font-size: clamp(1.6rem,2vw,1.8rem);
	line-height:1.333;
}


.btn1{
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:25px;
	background:#77BCDF;
	max-width:356px;
	height:50px;
	color:#fff!important;
	font-size: clamp(1.6rem,2vw,1.8rem);
	font-weight:700;
}


.content10{
	padding:150px 0 163px;
}

.qanda_list{
	margin:60px auto 0;
}

.qanda_list li{
	margin: 0 auto 40px;
	background: #fff;
	border: 1px solid #DBDBDB;
	border-radius: 10px;
	box-shadow: 0 6px 0 #52525229;
	padding: 0px 1.587%;
}

.qanda_list li:has(.open){
	padding: 0px 1.587% 15px;
}

.que{
	font-size: 3rem;
	background: #77BCDF;
	color:white;
	border-radius: 50%;
	width: 46px;
	height: 46px;
	text-align:center;
	flex-shrink: 0;
	margin-right: 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 5px;
	line-height: 1;
}

.ans{
	font-size: 3rem;
	background: #F28293;
	color:white;
	border-radius: 50%;
	width: 46px;
	height: 46px;
	text-align:center;
	flex-shrink: 0;
	margin-right: 17px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 5px;
	line-height: 1;
}

.qanda_list dt,.qanda_list dd{
	display: flex;
	align-items: center;
	color: #46403B;
	padding: 28px 1.213%;
}

.qanda_list dt{
	width: 100%;
	position: relative;
	font-weight: 700;
	font-size: clamp(1.6rem,2vw,2.5rem);
	line-height: 1.44;
}

.qanda_list dt p{
	width: 78%;
}

.qanda_list dt .pulu{
	position: absolute;
	display: flex;
	right: 5px;
}

.qanda_list dt .pulu span{
	width: 31px;
	background: #77BCDF;
	height: 4px;
	display: block;
	position: absolute;
	right: 0;
}

.qanda_list .open  .pulu span + span{transform: rotate(0deg);}

.qanda_list  .pulu span + span{transform: rotate(90deg);}

.qanda_list dd{
	align-items: baseline;
	background: #FBF9F3;
}

.qanda_list dd p{
	width: 100%;
	font-size: 1.8rem;
}


.side_btn{
	position:fixed;
	right:29px;
	bottom:23px;
	display:flex;
	flex-direction:column;
	width: 10%;
	max-width: 112px;
	z-index: 999;
	min-width: 80px;
}

.side_btn a:nth-child(2){
	margin-top:14px;
}


/*-----------------------------------------------------------
 footer
-----------------------------------------------------------*/

footer {margin: 135px auto 0;}


.copyright {
	background: #77BCDF;
	color: #fff;
	text-align: center;
	font-size: 1.8rem;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
}

/*-- 固定ここまで --*/


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width: 1921px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* min-width: 1921px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	
	.content01 .ab_img1{
	width: 23%;
}

.content01 .ab_img2{
	width: 11%;
}

.content01 .ab_img3{
	width: 23%;
	top: 33.44%;
}

.co431_list li .left:before{
	top:0px;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
	
	
		

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
	
.cov-div .text_area {
    width: 43%;
    margin-left: 2%;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
	
	
		

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

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

.pc_nav .tel_btn span{
	display:none;
}
	
.pc_nav .tel_btn{
	flex-shrink:0;
	width: 39px;
}

.nav_list1 {
    width: 92%;
}

.hLogo {
    max-width: 146px;
    width: 18%;
    margin:0 auto;
}


.cov-div .text_area {
	width: 54%;
	margin-left: 2%;
}

.cov-div .img {
    width: 42%;
}

.content01 .ab_img1{
	width: 21%;
}

.content01 .ab_img2{
	width: 15%;
	top: auto;
	bottom: -5%;
}

.content01 .ab_img3{
	width: 20%;
	top: 0;
}


.co2_list{
	flex-direction:column;
	margin: 0 auto 0;
}

.co2_list li{
	max-width: 500px;
	width:100%;
	margin:32px auto 0px;
}

.co2 .ab_img {
    width: 110px;
    top: -110px;
}

.co2_list li .subTit1 {
    font-size: clamp(2rem, 4vw, 2.2rem);
}

.co2 {
    padding: 32px 0;
}

.co31_list li {
    width: 49%;
    margin-bottom: 16px;
    font-size: 1.5rem;
}

.co4_list1{
	flex-direction:column;
}

.co4_list1 li{
	width: 100%;
	margin: 54px auto 0;
	max-width: initial;
	border-radius: 30px;
	padding: 0 3% 19px;
}

.content07 .co4_list1 li {
    width: 100%;
}

.co4_list1 li .title{
	min-height:initial;
	font-size: clamp(2rem, 4vw, 3rem);
}

.co4_list1 li .title span {
    font-size: clamp(1.3rem, 3vw, 1.5rem);
}

.co42_list {
	flex-wrap:wrap;
	max-width:500px;
	margin:0 auto;
}
	
.co42_list li {
    width: 48%;
    padding: 20px 2% 16px;
	margin-top:24px;
}

.content07 .co42_list {
	justify-content:space-between;
}

.content07 .co42_list li {
    width: 48%;
    padding: 20px 2% 16px;
	margin-top:24px;
	margin-right:0;
}

.co42_list li p {
    min-height: 55px;
    font-size: clamp(1.6rem, 3vw, 2rem);
}

.co42 .title {
    margin-bottom: 24px;
}

.co431_list li {
    width: 48%;
}

.content06 .co31_list {
    justify-content: space-between;
}

.content06  .co31_list li:nth-child(3){
	max-width: 550px;
	margin-right: initial;
}

.content06  .co31_list li:nth-child(1){
	width:48%;
	margin-right: 0;
}

.content06  .co31_list li:nth-child(2){
	width:48%;
}


	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1000px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc {
	display: none;
}

.sp {
	display: block;
}

nav li a {
	font-size: 1.5rem;
}


a[href*="tel:"] {
	pointer-events: initial;
	cursor: pointer;
	text-decoration: none;
	}

/* ヘッダー
----------------------------------------------------------- */



.headerUl{
	display: flex;
	justify-content: flex-end;
}

.menuBtn {
	display: flex;
	align-items: center;
	justify-content: center;
}


/*--- modal ---*/

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 36px;
  height: 24px;
  z-index: 9999;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #707070;
  border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 11px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger.active span,
.headerScroll .menu-trigger span{
	background:#111;
}
	
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(11px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-11px) rotate(45deg);
}

/*gnav*/
.gnav{
    background: #fff;
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 999;
    transition: 1s;
    left: 0;
    top: 0;
}

.gnav.active{
	display: block;
}

.gnav__menu{
    display: block;
    width: 100%;
    height: 100%;
    padding: 60px 0 60px;
    margin-bottom: 10px;
}

.gnav__wrap{
    align-items:center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: fixed;
    width: 100%;
	top: 0px;
    overflow: scroll;
}

nav .gnav__menu__item{
    margin: 10px auto 0;
    width: 95%;
    border-bottom: 1px solid #ccc;
}

nav .gnav__menu__item2{
    margin: 20px auto 0;
    width: 95%;
}

nav .gnav__menu__item2 .flex_link{
	max-width:370px;
	flex-direction:column;
	align-items:flex-start;
	margin-top: 10px;
}
	
nav .gnav__menu__item2 .flex_link a{
	margin-top:10px;
	font-size: 1.8rem;
}

nav .gnav__menu__item2 .co9_link img {
    margin-right: 8px;
    width: 39px;
}
	
nav .gnav__menu__item2 .tel_btn {
    max-width: 175px;
    /* margin: 0 auto; */
}

.gnav__menu__item a{
    color: #111;
    font-size: 1.8rem;
    font-weight: 500;
    padding: 0;
    text-decoration: none;
    transition: .5s;
    background: none;
    width: 100%;
    padding: 0 0 10px 0;
    display: block;
}

nav .gnav__menu__item a.btn03{
    padding: 0 5%;
    font-size: 2rem;
}

.pc_nav{
	display:none;
}

.hLogo {
	width: 50%;
	margin: 0;
}

header{
	padding: 10px 24px;
	align-items: center;
	position: fixed;
}


header.headerScroll{
	background:#fff;
}


.cov-div{
	min-height: 480px;
	flex-direction: column-reverse;
	margin-top: 90px;
	height: initial;
	margin-bottom: 60px;
}

.cov-div .text_area{
	max-width: initial;
	width: 95%;
	margin:0 auto;
}

.cov-div .img{
	width: 90%;
	margin-left: auto;
	margin-bottom: 12px;
}

.cov-div .text_area .ab_img {
    top: 9%;
    left: auto;
    right: 5%;
}

.cov-div .text_area .text {
    margin-bottom: 6px;
    font-size: clamp(2rem,4vw,3.1rem);
}

.cov-div .text_area .text span {
    font-size: clamp(1.6rem, 4vw, 1.8rem);
}
	
.cov-div .text_area .title {
    font-size: clamp(2.05rem, 5vw, 4.3rem);
    margin-bottom: 0%;
}

.mv_list li {
    margin-top: 8px;
}

.content01 .ab_img1{
	width: 26%;
	top: -5%;
	min-width: 140px;
}

.content01 .ab_img2{
	width: 26%;
	bottom: -12%;
	min-width: 120px;
}

.content01 .ab_img3{
	width: 26%;
	top: 0;
	min-width: 140px;
}

body:before {
}

.content01 p {
    margin-top: 32px;
}

.co311 .subTit2 span:before,
.co311 .subTit2 span:after{
	width: 40px;
	height: 72px;
}


.co31 .flex{
	margin-bottom: 40px;
	flex-direction:column-reverse;
}

.co31 .flex .img{
	max-width:400px;
	width: 90%;
	margin:24px auto;
}

.co31 .flex .text_area{
	max-width:initial;
	width: 100%;
}

.co31 .flex .text_area .title:before {
    width: 21%;
    height: 85px;
    left: -1%;
    max-width: 100px;
    top: -66%;
}


.co31_list li {
    width: 100%;
    max-width: 450px;
    margin:0 auto 16px;
    font-size: 1.5rem;
}

.co311 {
    padding: 50px 2% 32px;
}

.co31 {
    margin-bottom: 80px;
}


.co32_list li{
	width:100%;
	margin:24px auto 0!important;
}

.co32 {
    padding: 50px 2.5% 30px;
    border-radius: 20px;
}

.co32_list li .subTit1 {
    font-size: clamp(2rem, 5vw, 2.6rem);
}

.content03 {
    padding: 60px 0 60px;
}

.co32 .title {
    width: 80%;
    font-size: clamp(2rem, 4vw, 4.4rem);
}


.co41 {
    margin-bottom: 60px;
}

.co42 {
    margin-bottom: 60px;
}

.co43 .text1 {
    margin-bottom: 32px;
}

.co431 .title3 {
    min-height: 55px;
}

.co432{
	flex-direction:column;
}

.co432 .left{
	margin:0 auto 16px;
}

.co432 .right{
	font-size: clamp(1.5rem,1.7vw,1.8rem);
	line-height:2;
}

.co43 {
    margin-bottom: 60px;
}

.content04 {
    padding: 50px 0 60px;
}

.content05 {
    padding: 60px 0 60px;
}
	
.slider_btn {
    padding-top: 15%;
}



.sections1 {
    margin: 0 auto 60px;
}

.sections2 {
    margin: 60px auto;
}


.contact_div .flex{
	margin:0px auto 0;
	flex-direction:column;
}

.contact_div .flex a{
	max-width:400px;
	width: 100%;
	margin:24px auto 0;
}

.contact_div {
    padding: 40px 2% 32px;
    border-radius: 20px;
}

.content03.content06 {
    padding: 80px 0 60px;
}

.content06 .co31_list li {
    width: 100%!important;
    margin: 0 auto 16px!important;
    max-width: 550px;
}

.content06 .co31_list li:nth-child(3) {
    margin: 0 auto 16px;
}

.content09 {
    margin-top: 60px;
    padding: 60px 0;
}

.content09 .inner > .flex {
    margin: 40px auto 60px;
	flex-direction:column-reverse;
}

.content09 .flex .text_area {
    max-width: initial;
    width: 100%;
}

.content09 .flex .img {
    max-width: 300px;
    width: 100%;
	margin:32px auto 0;
}

.content09 .flex .text_area .title {
    margin-bottom: 16px;
}

.content09 .flex .text_area .name {
    margin-top: 20px;
}


.co9_list li{
	padding:24px 0;
	flex-direction:column;
	align-items:flex-start;
}


.co9_list li > .left{
	max-width:initial;
	width: 100%;
	text-align: left;
	margin-bottom:8px;
}

.co9_list li > .right{
	width: 100%;
}
	
.co9_list li > .right .flex .left {
    width: 33%;
    margin-right: 3%;
}

.content10 {
    padding: 60px 0;
}

.qanda_list {
    margin: 30px auto 0;
}

.que{
	font-size: 2rem;
	width: 32px;
	height: 32px;
	margin-right: 10px;
	padding-bottom: 2px;
}

.ans{
	font-size: 2rem;
	width: 32px;
	height: 32px;
	margin-right: 10px;
	padding-bottom: 2px;
}

.qanda_list dt, .qanda_list dd {
    padding: 16px 1.213%;
}

.qanda_list li {
    margin: 0 auto 20px;
}

.qanda_list dd p {
    font-size: 1.6rem;
}


.side_btn{
	right: 8px;
	bottom: 8px;
	min-width: 60px;
	display: none;
}

.copyright {
    font-size: 1.4rem;
}

.flex_link{
	flex-direction:column;
	align-items:flex-start;
}

.co431_list.col2 li {
    width: 100%;
}

.co431_list li .left:before{
	top:0px;
}

.co431_list.col2 li .right {margin-left: 10px;min-width: 150px;}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc2, .pcTel {
	display: none;
}

.sp2 {
	display: block;
}

.spTel  {
	display: inline;
}


/*-- テーブル --*/

table {
	width: 100%;
}

th, td {
	width: 96% !important;
	display: block;
}


/* フッター
----------------------------------------------------------- */

.sp nav {
	margin: 0 auto;
}


.over_sld{
	overflow-x:scroll;
	width:100%;
}

.over_sld .img{
	width:768px;
}

.co431_list li {
    width: 100%;
	justify-content:space-between;
}


.co431_list li .right{
	width:80px;
}


.slider_btn {
    padding-top: 25%;
}


.slider_btn div{
	width:46px;
}

.co9_list li > .right .flex {
	flex-direction:column;
}
	
.co9_list li > .right .flex .left {
    width: 100%;
	margin:16px 0 24px;
}

.co9_list li > .right .flex .right {
    max-width: initial;
    width: 100%;
}

.btn1{
	margin:24px auto 0;
}

.co4_list1 li .text{
	font-size: 1.4rem;
	padding: 5px 3% 5px 5%;
}
	
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 591px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

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

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 320px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */