@charset "UTF-8";


header {
	background-color: var(--color-ivo);
}
/* 
------------------------------------------*/
@media only screen and (min-width: 1380px) {

header .h_left {
	width: 38%;
	padding: 0 4%;
}
}



/* ========================================================
  
  FV

======================================================== */
.m_img_area {
	display: flex;
	flex-direction: column;
	height: 100vh;
}
.m_img,
.m_slider,
.m_slider .swiper-wrapper,
.m_slider .swiper-slide {
	position: relative;
	height: 100%;
}
.m_slider {
	overflow: hidden;
}
.m_slider::before,
.m_slider::after {
	position: absolute;
	content: "";
	background: url(../images/top/m_frame.svg) no-repeat left top;
	background-size: 100% 100%;
	width: 8.2%;
	height: 100%;
	left: 0;
	top: 0;
}
.m_slider::before {
	z-index: 1;
}
.m_slider::after {
	inset: 0 -1px 0 auto;
	scale: -1 1;
}
.m_slider .swiper-slide::before {
	position: absolute;
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
    scale: 1.05;
	transition: all 1s;
	z-index: -1;
}
.m_slider .swiper-slide-active:before {
	animation: fadeZoom 6s ease-in forwards;
}
.m_slider .swiper-slide.slide1::before {background-image: url("../images/top/m_img1@2x.jpg");}
.m_slider .swiper-slide.slide2::before {background-image: url("../images/top/m_img2@2x.jpg");}
.m_slider .swiper-slide.slide3::before {background-image: url("../images/top/m_img3@2x.jpg");}
.m_slider .swiper-slide.slide4::before {background-image: url("../images/top/m_img4@2x.jpg");}

@keyframes fadeZoom {
  0% {
    scale: 1;
  }
  100% {
    scale: 1.05;
  }
}

/*メインコピー*/
/* .m_img .m_copy {
	position: absolute;
	width: 42%;
	max-width: max-content;
	inset: auto 0 0 0;
	margin: auto;
	z-index: 1;
}
.m_img .m_copy .copy1 {
	width: 93%;
}
.m_img .m_copy .copy2 {
	margin-bottom: -12%;
} */

.m_img .m_copy {
	position: absolute;
	width: 42%;
	height: 100%;
	inset: auto 0 0 0;
	margin: auto;
	z-index: 1;
}
.m_img .m_copy .copy1,
.m_img .m_copy .copy2 {
	position: absolute;
	width: 93%;
	left: 50%;
	translate: -50% -50%;
}
.m_img .m_copy .copy1 {
	width: 93%;
	top: 50%;
}
.m_img .m_copy .copy2 {
	bottom: 0;
	translate: -50% 20%;
}

/*ドット*/
.m_slider .swiper-pagination {
	position: absolute;
	right: 1.6%;
	top: 50%;
	translate: 0 -50%;
}
.m_slider .swiper-pagination-bullet {
	position: relative;
	cursor: pointer;
	display: block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: rgba(71,50,25,0.1);
	transition: all 0.4s;
	margin-top: 20px;
}
.m_slider .swiper-pagination-bullet:hover,
.m_slider .swiper-pagination-bullet-active {
	background: #ff8d5c !important;
}


/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.m_img_area {
	min-height: min(900px,calc(100vw * 0.6));
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_img_area {
	height: 100svh;
}
/*メインコピー*/
.m_img .m_copy {
	width: 60%;
}
}

/* Tablet,Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 959px) {

.m_slider::before,
.m_slider::after {
	background-image: url(../images/top/m_frame_sp.svg);
	width: 100%;
	height: 16vw;
	top: -1px;
}
.m_slider::after {
	top: auto;
	bottom: -1px;
	scale: 1 -1;
}
.m_slider .swiper-slide.slide1::before {background-image: url("../images/top/m_img1_sp@2x.jpg");}
.m_slider .swiper-slide.slide2::before {background-image: url("../images/top/m_img2_sp@2x.jpg");}
.m_slider .swiper-slide.slide3::before {background-image: url("../images/top/m_img3_sp@2x.jpg");}
.m_slider .swiper-slide.slide4::before {background-image: url("../images/top/m_img4_sp@2x.jpg");}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_img_area {
	height: calc(100svh - 16vw);
	min-height: 120vw;
}

.m_img .m_copy {
	width: 95%;
}
/*ドット*/
.m_slider .swiper-pagination {
	right: 3.6%;
}
.m_slider .swiper-pagination-bullet {
	width: 7px;
	height: 7px;
	background: #FFF;
	margin-top: 15px;
}
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 768px) and (min-aspect-ratio: 1024/750) {

}
@media only screen and (min-width: 768px) and (min-aspect-ratio: 1500/970) {

}


/*スライド
---------------------------------------------------------*/
.com_bx_wrap .com_bg_color {
	background: linear-gradient(to bottom, var(--color-lgry) 30%, #fff6e3 30%);
}

.com_bx_wrap ul li {
    display: none;
}
.com_bx_wrap .bx-viewport {
    overflow: visible !important;
}
.com_bx_wrap .bx-viewport ul li {
    display: block;
}
.bx_slide li {
	margin-right: 1.3vw;
}
.bx_slide li:nth-of-type(5n+1) {translate: 0 max(-2vw,-30px);}
.bx_slide li:nth-of-type(5n+3) {translate: 0 max(-5vw,-75px);}
.bx_slide li:nth-of-type(5n+4) {translate: 0 min(3vw,45px);}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.bx_slide li {
	width: 32vw;
}
}


/* ========================================================
  
  contents

======================================================== */


/*---------------------------------------------------------
 sp_menu_area
---------------------------------------------------------*/
.sp_menu_area {
	margin-bottom: 10%;
}
.sp_menu_area .open_box {
	display: none;
	position: absolute;
	width: 100vw;
	box-sizing: border-box;
	padding: 6vw 8%;
	background-color: var(--color-porg);
	left: 50%;
	transform: translateX(-50%);
	margin-top: 8px;
	z-index: 1;
}

/*---------------------------------------------------------
 INFO
---------------------------------------------------------*/
#info .com_contact {
	max-width: 730px;
	margin-top: 4%;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#info {
	padding-top: 16%;
}
#info .com_contact {
	width: 85%;
	margin-top: 8%;
}
}

/*INFO: info_box
---------------------------------------------------------*/
.info_copy {
	color: var(--color-org);
	font-size: 94%;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: .5em;
}
.info_add {
	margin-bottom: 1.4em;
}
.info_name {
	font-size: 122%;
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.4;
	white-space: nowrap;
}
.info_box address {
	font-size: 80%;
}
.info_box .com_timetable {
	width: auto;
	padding: 5% 4% 3%;
	margin: 0;
}
.info_box .com_time_txt {
	font-size: min(1.3vw,86%);
	letter-spacing: .1em;
	margin-top: 1.5em;
}

.info_acslist > li {
	position: relative;
	display: flex;
	align-items: center;
	gap: .6em;
	text-align: left;
	font-size: 80%;
	font-weight: bold;
	font-feature-settings: "halt";
	letter-spacing: .1em;
	line-height: 1.4;
	white-space: nowrap;
}
.info_acslist > li span {
	display: block;
	font-size: 116%;
	white-space: nowrap;
	margin-top: .2em;
}
.info_acslist > li img {
	display: block;
	min-width: 3.6em;
	margin: 0;
}
.info_acslist > li:nth-of-type(n+2) {
	padding-top: .8em;
	margin-top: .8em;
	border-top: 2px solid #FFF;
}

.info_map {
	position: relative;
	max-width: 400px;
}
.info_map .com_btn_ccl {
	--color-btn: #d3b36f;
	position: absolute;
	width: 6.5em;
	font-size: 86%;
	right: 0;
	bottom: 0;
}
.info_map .com_btn_ccl .com_arw1 {
	color: var(--color-base);
	font-size: 85%;
}

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.info_box {
	max-width: 1026px;
	display: grid;
	justify-content: space-between;
	align-items: flex-start;
	grid-template-columns: 58% 39%;
	margin-inline: auto;
}
.info_col_wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .5em 4%;
}
.info_add {
	flex-wrap: wrap;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

.info_box {
	grid-template-columns: 48% 48%;
}
.info_col_wrap {
	flex-wrap: wrap;
}
}

/* Tablet,Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 959px) {

.info_acslist {
	display: flex;
	align-items: center;
	column-gap: 6%;
	width: 100%;
	margin-top: 3%;
}
.info_acslist > li:nth-of-type(n+2) {
	padding-left: 5%;
	padding-top: 0;
	margin-top: 0;
	border-top: none;
	border-left: 2px solid #FFF;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.info_name {
	font-size: 110%;
	margin-bottom: .5em;
}
.info_box .com_timetable {
	padding: 6% 4% 4%;
}
.info_box .com_time_txt {
	font-size: 70%;
}
.info_map {
	margin-top: 6%;
}
}



/*---------------------------------------------------------
 MEDICAL
---------------------------------------------------------*/
#medical {
	color: #FFF;
	box-shadow: 0 70px 30px -50px rgba(0,0,0,0.15);
}
#medical .bg_img {
	position: relative;
	background: url("../images/top/med_bg@2x.jpg") no-repeat center top;
	background-size: 100% auto;
	padding-top: min(19vw,280px);
}
#medical .com_wave {
	position: absolute;
	left: 0;
	bottom: -1px;
}
#medical .bg {
	position: relative;
	background-color: var(--color-porg);
	padding-bottom: 120px;
}
#medical .com_deco_txt1 {
	position: relative;
	padding-bottom: .6em;
}
#medical .lead_box {
	text-align: center;
	margin-bottom: 2.8em;
}
#medical .lead_box p {
	font-size: 113%;
	font-weight: bold;
}
#medical .med_list {
	display: flex;
	flex-wrap: wrap;
}
#medical .med_list > li:not(:last-of-type) a {
	display: block;
	height: 100%;
	text-align: center;
	color: var(--color-base);
	font-size: min(1.35vw,133%);
	letter-spacing: .1em;
	line-height: 1.3;
	background-color: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	white-space: nowrap;
	padding: 1em;
	transition: all .4s;
}
#medical .med_list p {
	font-weight: bold;
}
#medical .med_list p:first-of-type {
	color: #877a69;
	font-size: 70%;
	margin-bottom: .5em;
}
#medical .med_list p:last-of-type {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 3.6em;
	padding-left: 3.8em;
	background: url("../images/top/med_icon_car.svg") no-repeat left center;
	background-size: contain;
}
#medical .med_list > li:not(:last-of-type) a::before {
	font-size: 88%;
	right: -0.7em;
	top: 60%;
}
#medical .med_list a:hover::before {
	background-color: #73603c;
}
#medical .med_list > li:nth-of-type(2) p:last-of-type {	background-image: url("../images/top/med_icon_per.svg");}
#medical .med_list > li:nth-of-type(3) p:last-of-type {	background-image: url("../images/top/med_icon_ort.svg");}
#medical .med_list > li:nth-of-type(4) p:last-of-type {	background-image: url("../images/top/med_icon_kid.svg");}
#medical .med_list > li:nth-of-type(5) p:last-of-type {	background-image: url("../images/top/med_icon_cer.svg");}
#medical .med_list > li:nth-of-type(6) p:last-of-type {	background-image: url("../images/top/med_icon_whi.svg");}
#medical .med_list > li:nth-of-type(7) p:last-of-type {	background-image: url("../images/top/med_icon_yob.svg");}
#medical .med_list > li:nth-of-type(8) p:last-of-type {	background-image: url("../images/top/med_icon_srg.svg");}
#medical .med_list > li:nth-of-type(9) p:last-of-type {	background-image: url("../images/top/med_icon_tmd.svg");}
#medical .med_list > li:nth-of-type(10) p:last-of-type {background-image: url("../images/top/med_icon_imp.svg");}
#medical .med_list > li:nth-of-type(11) p:last-of-type {background-image: url("../images/top/med_icon_den.svg");}
#medical .med_list > li:nth-of-type(12) p:last-of-type {background-image: url("../images/top/med_icon_roo.svg");}
#medical .med_list > li:nth-of-type(13) p:last-of-type {background-image: url("../images/top/med_icon_bre.svg");}

#medical .com_bnr_qa a {
	height: 100%;
	font-size: min(1.5vw,146%);
}

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

#medical .med_list > li {
	width: 19%;
	margin-right: 1.25%;
}
#medical .med_list > li:nth-of-type(5n) {
	margin-right: 0;
}
#medical .med_list > li:nth-of-type(n+6) {
	margin-top: 1.25%;
}
#medical .med_list .com_bnr_qa {
	width: 36%;
	margin-left: 1.5%;
	margin-right: 1.5%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#medical .bg {
	padding-bottom: 12%;
}
#medical .lead_box {
	margin-bottom: 2em;
}
#medical .lead_box p {
	font-size: 105%;
}
#medical .med_list a {
	letter-spacing: .06em;
}
#medical .med_list p:first-of-type {
	font-size: 90%;
}

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

#medical {
	box-shadow: 0 40px 20px -30px rgba(0,0,0,0.15);
}
#medical .bg_img {
	background-size: auto 100%;
	/* background-image: url("../images/top/med_bg_sp@2x.jpg"); */
	padding-top: 41%;
}
#medical .com_deco_txt1 {
	padding-bottom: 0;
}
#medical .bg {
	padding-top: 4%;
	padding-bottom: 14%;
}
#medical .lead_box {
	margin-bottom: 2em;
}
#medical .lead_box p {
	font-size: 100%;
}
#medical .med_list > li {
	width: 48.2%;
	margin-right: 3.6%;
}
#medical .med_list > li:nth-of-type(even) {
	margin-right: 0;
}
#medical .med_list > li:nth-of-type(n+3) {
	margin-top: 3.6%;
}
#medical .med_list > li:not(:last-of-type) a {
	font-size: 90%;
	letter-spacing: .08em;
	padding: .8em;
}
#medical .med_list p:first-of-type {
	font-size: 80%;
	letter-spacing: .05em;
}

#medical .com_bnr_qa a {
	display: block;
	width: 94%;
	font-size: 90%;
	letter-spacing: .1em;
	line-height: 1.3;
	padding: 1.5em 5%;
	border-radius: 2.4em;
	margin-left: auto;
}
#medical .med_list .com_bnr_qa a::after {
	width: 3.2em;
	left: -6%;
}
#medical .med_list .com_bnr_qa img {
	width: 5.2em;
	margin: auto;
	margin-bottom: .6em;
}
#medical .med_list .com_bnr_qa a::before {
	right: -0.7em;
	top: 60%;
}
}


/* MEDICAL: bnr_visit                          
---------------------------------------------------------*/
.bnr_visit a {
	position: relative;
	display: block;
	color: #FFF;
	font-size: min(2.4vw,160%);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.3;
	background: linear-gradient(90deg, rgba(165,204,94,1) 0%, rgba(125,199,6,1) 100%);
	box-sizing: border-box;
	padding: 35px 12%;
	transition: filter .5s;
}
.bnr_visit a,
.bnr_visit a::before,
.bnr_visit a::after {
	border-radius: 25px;
}
.bnr_visit a::before {
	position: absolute;
	display: block;
	content: "";
	background: url("../images/top/visit_bg@2x.png") no-repeat right top;
	background-size: contain;
	width: 100%;
	height: 100%;
	right: 0;
	top: 0;
	mix-blend-mode: multiply;
}
.bnr_visit a::after {
	position: absolute;
	display: block;
	content: "";
	background: url("../images/top/visit_bg1@2x.png") no-repeat right top,
				url("../images/top/visit_bg2@2x.png") no-repeat left bottom;
	background-size: auto 100%;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	mix-blend-mode: color-dodge;
}
.bnr_visit dl {
	position: relative;
	z-index: 1;
}
.bnr_visit dl dt span {
	display: inline-block;
	font-size: 75%;
	letter-spacing: .2em;
	vertical-align: 0.1em;
	background-color: #4f9431;
	padding: .2em 1em;
	border-radius: 9px;
	margin-left: .8em;
}
.bnr_visit dl dd {
	font-size: 200%;
	letter-spacing: .2em;
	margin-top: .1em;
}
.bnr_visit dl dd span {color: #ffff49;}

.bnr_visit .abs {
	position: absolute;
	width: 16%;
	max-width: 132px;
	left: 0;
	top: 0;
	translate: -30% -25%;
	z-index: 1;
}
.bnr_visit .com_arw1 {
	position: absolute;
	font-size: 105%;
	background-color: #7ce630;
	right: 0;
	top: 50%;
	translate: 30% -50%;
	border: .36em solid #FFF;
	z-index: 1;
}
.bnr_visit a:hover {
	filter: hue-rotate(-10deg);
}
.bnr_visit a:hover .com_arw1 {
	background-color: #5ace00;
}

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.bnr_visit {
	width: 85%;
	max-width: 870px;
	margin-left: auto;
	margin-right: auto;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.bnr_visit a {
	text-align: center;
	font-size: 110%;
	letter-spacing: .12em;
	padding: 12% 5% 8%;
}
.bnr_visit a::before {
	background-image: url("../images/top/visit_bg_sp@2x.png");
	width: 80%;
}
.bnr_visit a::after {
	background-size: 30% auto;
}
.bnr_visit dl dt span {
	margin: .4em auto;
}
.bnr_visit dl dd {
	font-size: 170%;
}

.bnr_visit .abs {
	width: 28%;
	left: 0;
	top: 0;
	translate: -10% -8%;
}
}



/*---------------------------------------------------------
 REASON
---------------------------------------------------------*/
.rsn_title {
	max-width: max-content;
	font-size: min(2vw,154%);
	font-weight: bold;
	letter-spacing: .18em;
	line-height: 1.3;
	margin: 0 auto 8%;
}
.rsn_title h2 {
	font-size: 270%;
	letter-spacing: .18em;
}
.rsn_title h2 span {
	position: relative;
	display: inline-block;
	color: var(--color-org);
	font: var(--font-eng);
	font-size: 231%;
	line-height: 0.6;
	vertical-align: -0.1em;
}
.rsn_title h2 span::before {
	position: absolute;
	content: "";
	background: url(../images/top/reason_tit_arch.svg) no-repeat center bottom;
	background-size: contain;
	width: 1.34em;
	height: .3em;
	left: -0.3em;
	bottom: -0.25em;
	opacity: 0;
	transform: scaleX(0.8);
	transition: opacity .8s, transform .8s;
}
.rsn_title.anime_on h2 span::before {
	opacity: 1;
	transform: scaleX(1);
}
.rsn_title h2 rt {
	color: var(--color-org);
	font: var(--font-eng);
	font-size: 30%;
	letter-spacing: .15em;
	margin-bottom: .5em;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.rsn_title {
	font-size: 105%;
	letter-spacing: .14em;
	line-height: 1.6;
	margin-bottom: 2em;
}
.rsn_title h2 {
	font-size: 180%;
	letter-spacing: .15em;
}
}

/*reason: rsn_list
---------------------------------------------------------*/
.rsn_list .box_img {
	position: relative;
	max-width: max-content;
	margin: 0 auto 6%;
}
.rsn_list .box_img .abs {
	position: absolute;
	width: 38.9%;
	right: 1.2%;
	top: -11%;
	pointer-events: none;
}
.rsn_list .no {
	position: absolute;
	width: 1.27em;
	text-align: center;
	color: #FFF;
	font: var(--font-eng);
	font-size: min(6vw,485%);
	line-height: 1;
	padding-bottom: .1em;
	margin: auto;
	inset: auto 0 -0.2em 0;
}
.rsn_list .no::before {
	position: absolute;
	content: "";
	background: url(../images/top/reason_arch.svg) no-repeat center bottom;
	background-size: contain;
	width: 100%;
	height: 100%;
	left: 0;
	bottom: 0;
	opacity: 0;
	transform: scaleX(0.5);
	transition: opacity .5s, transform .5s;
}
.rsn_list .no.anime_on::before {
	opacity: 1;
	transform: scaleX(1);
}
.rsn_list .fw_bold {
	text-align: center;
	font-size: min(2.4vw,193%);
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.4;
}
.rsn_list .com_btn_bg {
	text-align: center;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.rsn_list {
	max-width: 1100px;
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(3,31%);
	margin-inline: auto;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.rsn_list > li:nth-of-type(n+2) {
	margin-top: 10%;
}
.rsn_list .box_img {
	width: 80%;
}
.rsn_list .no {
	font-size: 12vw;
}
.rsn_list .fw_bold {
	font-size: 120%;
	letter-spacing: .15em;
}
}



/*---------------------------------------------------------
 POINT
---------------------------------------------------------*/
#point {
	position: relative;
	box-shadow: 0 50px 30px -40px rgba(0,0,0,0.15);
}
#point .com_bg_color {
	background-color: #ffffc9;
}
#point .bg_list > li {
	position: absolute;
	background: url("../images/top/poi_bg_wave@2x.png") no-repeat right top;
	background-size: 100% 100%;
	width: 100%;
	height: min(50vw,740px);
	right: 0;
	top: 1000px;
	opacity: 0;
	translate: 0 50px;
	transition: all 2s;
}
#point .bg_list > li:nth-of-type(2) {
	scale: -1 1;
	top: 1900px;
}
#point .bg_list > li.anime_on {
	opacity: 1;
	translate: none;
}
#point .com_wave {
	color: #ffffee;
	margin-top: -60px;
	z-index: -1;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

#point .com_wave {
	bottom: calc(100% + 24vw);
}
#point .bg_list > li {
	top: 400vw;
}
#point .bg_list > li:nth-of-type(2) {
	top: 660vw;
}
#point .com_wave {
	margin-top: -30px;
}
}


/*POINT: poi_lead_box
---------------------------------------------------------*/
.poi_lead_box {
	text-align: center;
}
.poi_lead_box .com_deco_txt1 {
	color: #fff29a;
	font-size: min(8vw,733%);
	translate: 0 -0.3em;
}
.poi_lead_box .lead_txt {
	font-size: min(2.8vw,213%);
	font-weight: bold;
	line-height: 1.6;
	letter-spacing: .2em;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.poi_lead_box .com_deco_txt1 {
	font-size: 250%;
}
.poi_lead_box .lead_txt {
	font-size: 110%;
	letter-spacing: .1em;
}
}


/*POINT: poi_list
---------------------------------------------------------*/
.poi_list_wrap {
	background-color: #ffffee;
	padding-bottom: min(10vw,120px);
}
.poi_list > li {
	position: relative;
	--poi-color-acc: var(--color-och);
}
.poi_list > li:last-of-type {
	margin-bottom: 0;
}
.poi_index,
.poi_index + p {
	position: relative;
}
.poi_index {
	font-size: min(3.1vw,266%);
	font-weight: bold;
	letter-spacing: .14em;
	line-height: 1.3;
	font-feature-settings: "halt";
	margin-bottom: .5em;
}
.poi_index span {
	display: block;
	color: var(--poi-color-acc);
	font-size: 67%;
	letter-spacing: .15em;
	margin-bottom: .4em;
}
.poi_list .box_img {
	position: relative;
	box-sizing: border-box;
	padding-left: 7%;
}
.poi_list .no {
	position: absolute;
	font-family: "agenda-one", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: min(1.3vw,120%);
	letter-spacing: .2em;
	line-height: 1;
	left: 0;
	top: 0;
}
.poi_list .no span:first-of-type {
	color: var(--poi-color-acc);
	font-size: 638%;
	letter-spacing: .05em;
}
.poi_list .no span:last-of-type {
	position: absolute;
	display: block;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	padding: 0 .5em;
	left: 0;
	top: 100%;
}
.poi_list > li.half .box_img {
	margin-bottom: 5%;
}
.poi_list .com_btn1 span::before {
	background-color: var(--poi-color-acc);
}
.poi_list .com_btn1 a:hover {
	background-color: var(--poi-color-acc);
	border-color: var(--poi-color-acc);
}
.poi_list .com_btn1 a:hover span::before {
	color: var(--poi-color-acc);
}
.poi_bg_img {
	position: absolute;
	width: 29.6vw;
	max-width: 443px;
	right: -4.4%;
	top: 0;
	margin-right: calc(50% - 50vw);	
}

/*point1*/
#point1 .box_img {
	max-width: 620px;
	padding-left: 3.7%;
}
#point1 .poi_col2 > li {
	display: flex;
	box-sizing: border-box;
}
#point1 .poi_col2 .img {
	position: relative;
	width: 42%;
	max-width: 260px;
	margin-right: 5%;
	z-index: 1;
}
#point1 .poi_col2 dl {
	width: 53%;
}
#point1 .poi_col2 dl dt {
	font-size: min(2.5vw,193%);
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.3;
	white-space: nowrap;
	margin-bottom: .4em;
}
#point1 .poi_col2 .com_arw1 {
	background-color: var(--poi-color-acc);
	vertical-align: 0.2em;
	margin-left: .4em;
}
#point1 .poi_col2 > li:hover dl .com_arw1 {
	background-color: var(--color-base);
}
#point1 .sdn_box {
	position: relative;
	color: #FFF;
	background-color: var(--poi-color-acc);
	box-sizing: border-box;
	padding: 5.3% 6%;
}
#point1 .sdn_box::before {
	position: absolute;
	content: "";
	background: linear-gradient(180deg, rgba(255,195,143,0.8) 0%, rgba(255,153,0,0.5) 64%, rgba(255,153,0,0) 100%);
	width: 44%;
	height: 100%;
	opacity: 0.7;
	left: 0;
	top: 0;
	clip-path: polygon(0 0, 100% 0, 85% 100%, 0 100%);
}
#point1 .sdn_box > * {
	position: relative;
	z-index: 1;
}
#point1 .sdn_box ul li {
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.2));
}
#point1 .sdn_box dl dt {
	font-size: min(4vw,333%);
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.3;
	margin-bottom: .3em;
}
#point1 .sdn_box dl dt span {
	color: #ffff00;
}
#point1 .sdn_box dl dd {
	font-weight: bold;
}
/*poi_clinic*/
.poi_clinic .box_img > img {
	max-width: 700px;
}
.poi_clinic .box_img ul {
	display: flex;
	justify-content: space-between;
	max-width: 611px;
	margin-top: -8%;
}
.poi_clinic .box_img ul > li {
	width: 32%;
	max-width: 195px;
}

#point2 {--poi-color-acc: var(--color-blu);}
#point3 {--poi-color-acc: var(--color-grn);}
#point4 {--poi-color-acc: var(--color-ppl);}
#point5 {--poi-color-acc: var(--color-pnk);}
#point6 {--poi-color-acc: var(--color-org);}


/* PC調整
------------------------------------------*/
@media only screen and (min-width: 1500px) {
#point1 .sdn_box::after {
	width: 36vw;
}
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

.poi_list {
	display: flex;
	flex-wrap: wrap;
	column-gap: 4.5%;
}
.poi_list > li {
	width: 100%;
	margin-bottom: 95px;
}
.poi_flex {
	display: flex;
}
.poi_flex .box_img {
	width: 47%;
	margin-right: 4.4%;
}
.poi_flex .box_txt {
	width: 48.6%;
	max-width: 600px;
	align-self: center;
}
.poi_list .half {
	width: 45%;
	max-width: 550px;
}
.poi_list #point4 {
	margin-left: auto;
}
.poi_list #point5 {
	margin-right: 4%;
}
/*point1*/
#point1 .poi_col2 {
	display: flex;
	max-width: 1240px;
	margin: 0 auto 30px;
}
#point1 .poi_col2 > li {
	width: 50%;
}
#point1 .poi_col2 > li:first-of-type {
	border-right: 1px dashed #473219;
	padding-right: 4.8%;
}
#point1 .poi_col2 > li:last-of-type {
	padding-left: 3%;
}
#point1 .poi_col2 .img {
	margin-bottom: -20%;
}
#point1 .sdn_box {
	display: flex;
	justify-content: center;
}
#point1 .sdn_box ul {
	margin-right: 4%;
}
#point1 .sdn_box ul li:first-of-type {
	margin-bottom: 10px;
}
#point1 .sdn_box dl {
	max-width: 780px;
}
/*poi_clinic*/
.poi_clinic .poi_flex .box_img {
	width: 52%;
	padding-left: 0;
	padding-right: 4%;
}
.poi_clinic .box_img > img {
	width: 109%;
	margin-left: -9%;
}
.poi_clinic .box_img ul {
	width: 94%;
}
.poi_clinic .poi_flex .box_txt {
	width: 42.6%;
	max-width: 545px;
}
.poi_clinic .no {
	left: auto;
	right: 0;
	text-align: right;
}
.poi_clinic .no span:last-of-type {
	left: auto;
	right: 1em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.poi_list_wrap {
	padding-top: 9%;
	padding-bottom: 15%;
}

.poi_list > li {
	margin-bottom: 12%;
}
.poi_index {
	font-size: 135%;
	letter-spacing: .1em;
}
.poi_list .box_img {
	margin-bottom: 5%;
}
.poi_list .no {
	font-size: 80%;
}
.poi_bg_img {
	width: 60vw;
	top: 40vw;
}

/*point1*/
#point1 .box_img {
	max-width: 620px;
	padding-left: 7%;
}
#point1 .poi_col2 {
	margin-bottom: 8%;
}
#point1 .poi_col2 > li:first-of-type {
	border-bottom: 1px dashed #473219;
	padding-bottom: 6%;
	margin-bottom: 8%;
}
#point1 .poi_col2 .img {
	width: 35%;
}
#point1 .poi_col2 dl {
	width: 60%;
}
#point1 .poi_col2 dl dt {
	font-size: 120%;
}
#point1 .sdn_box {
	padding: 8% 6%;
}
#point1 .sdn_box::before {
	width: 82%;
	height: 60%;
}
#point1 .sdn_box ul {
	display: flex;
	justify-content: space-between;
	margin-bottom: 1em;
}
#point1 .sdn_box ul li {
	width: 48%;
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.1));
}
#point1 .sdn_box dl dt {
	font-size: 160%;
	letter-spacing: .1em;
}
#point1 .sdn_box dl dt span {
	color: #ffff00;
}
#point1 .sdn_box dl dd {
	font-weight: bold;
}
/*poi_clinic*/
.poi_clinic .poi_flex .box_img {
	margin-bottom: 0;
}
.poi_clinic .box_img ul {
	width: 108%;
	margin-left: -8%;
}
.poi_clinic .box_img > img {
	width: 106%;
	margin-right: -6%;
}
}


/*---------------------------------------------------------
 GREET
---------------------------------------------------------*/
#greet {
	position: relative;
	padding-top: 100px;
}
#greet::before {
	position: absolute;
	content: "";
	background: linear-gradient(to right, rgba(255,206,73,1) 0%, rgba(255,233,106,1) 100%) no-repeat;
	background-size: 100% 100%;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: -1;
}
#greet .bg_area {
	position: relative;
	padding-top: 60px;
	padding-bottom: 95px;
}
#greet .bg_area::before {
	position: absolute;
	content: "";
	background: url("../images/top/grt_bg@2x.png") no-repeat center top;
	background-size: 100% 100%;
	width: 100%;
	height: min(32vw,487px);
	left: 0;
	top: 0;
	z-index: -1;
}
#greet .bg_area::after {
	position: absolute;
	content: "";
	background: linear-gradient(0deg, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 90%);
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
#greet .bg_area > * {
	position: relative;
	z-index: 1;
}
#greet .com_deco_txt1 {
	position: relative;
	color: #ffb117;
	margin-bottom: 1em;
}
#greet .box_img {
	text-align: center;
}
#greet .box_img .dr_name {
	font: var(--font-min);
	font-size: min(3.2vw,243%);
	letter-spacing: .15em;
	line-height: 1.5;
	margin-top: .5em;
}
#greet .box_img .dr_name span {
	font-size: 55%;
	letter-spacing: .15em;
	vertical-align: 0.2em;
	margin-right: .4em;
}
#greet .box_txt dt {
	font: var(--font-min);
	font-size: min(3.7vw,280%);
	line-height: 1.4;
	letter-spacing: .15em;
	margin-bottom: .5em;
}
/*アニメーション*/
#greet .bg_area::before {
	opacity: 0;
	top: 200px;
	transition: top 1.5s, opacity 2s;
}
#greet.anime_on .bg_area::before {
	opacity: 1;
	top: 0;
}

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

#greet .grt_inbox {
	display: flex;
	justify-content: space-between;
}
#greet .box_img {
	width: 34%;
}
#greet .box_txt {
	width: 58%;
	padding-top: 2%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#greet {
	padding-top: 8%;
}
#greet .bg_area {
	padding-top: 6%;
	padding-bottom: 10%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#greet {
	padding-top: 12%;
}
#greet .bg_area {
	padding-top: 5%;
	padding-bottom: 13%;
}
#greet .bg_area::before {
	bottom: 135vw;
}
#greet .bg_area::after {
	background: linear-gradient(0deg, rgba(255,255,255,1) 90%, rgba(255,255,255,0) 100%);
}
#greet .com_deco_txt1 {
	margin-bottom: .6em;
}
#greet .box_img {
	width: 75%;
	margin: 0 auto 6%;
}
#greet .box_img .dr_name {
	font-size: 150%;
}
#greet .box_txt dt {
	font-size: 160%;
	letter-spacing: .1em;
}
}



/*---------------------------------------------------------
 GROUP
---------------------------------------------------------*/
.map-color-hyogo {
	--map-color: #7cba39;
}
.map-color-osaka {
	--map-color: #BF981D;
}
.map-color-aichi {
	--map-color: #FC9685;
}

#group {
	position: relative;
}
#group .com_bg_color {
	height: calc(100% - min(4vw,60px));
	background-color: var(--color-lgry);
}
#group .com_deco_txt1 {
	color: rgba(211,211,211,0.5);
	font-size: min(10vw,860%);
}
.group_copy {
	font-size: min(2.6vw,200%);
	font-weight: bold;
	letter-spacing: .14em;
	line-height: 1.6;
	white-space: nowrap;
	margin-bottom: .4em;
}
.group_copy span {
	color: var(--color-org);
	font-size: 166%;
	vertical-align: -0.1em;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
#group .com_deco_txt1 {
	text-align: left;
}
.group_lead {
	position: relative;
	padding-left: 5%;
	padding-right: 40%;
}
.group_lead .box_img {
	position: absolute;
	width: 35%;
	right: 0;
	bottom: 0;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

#group {
	padding-bottom: 14%;
}
#group .com_bg_color {
	height: calc(100% - 6vw);
}
#group .com_deco_txt1 {
	font-size: 17vw;
}
.group_copy {
	text-align: center;
	font-size: 110%;
	letter-spacing: .1em;
}
.group_copy span {
	display: block;
}
.group_lead .box_img {
	width: 90%;
	margin: 0 auto 5%;
}
.group_lead .com_btn1 {
	text-align: center;
}
}


/* GROUP: map_wrap                       
---------------------------------------------------------*/
.group_map_wrap {
	position: relative;
}
/* map_info */
.group_map_wrap .map_info {
	position: relative;
	z-index: 1;
}
/* map_figure */
.group_map_wrap .map_figure {
	position: relative;
	max-width: 838px;
	margin-left: auto;
}
.group_map_wrap .map_img {
	position: relative;
}
.group_map_wrap .map_img::before {
	position: absolute;
	content: "";
	background: url(../images/top/group_map@2x.png) no-repeat;
	background-size: contain;
	width: 145.4%;
	height: 102.9%;
	left: -38%;
	bottom: 0;
	z-index: -1;
}
.group_map_wrap .map-point {
	position: absolute;
	display: block;
	width: 5.6%;
	aspect-ratio: 1;
	background-color: #fff;
	border-radius: 50%;
	border: none;
	translate: -50% -50%;
	padding: 0;
	cursor: pointer;
	transition: background-color .5s;
}
.group_map_wrap .map-point:hover,
.group_map_wrap .map-point.is-active {
	background-color: var(--map-color);
}
.group_map_wrap .map-point::before {
	display: block;
	content: "";
	background: url(../images/common/map_icon.svg) no-repeat center center;
	width: 100%;
	height: 100%;
}
/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

/* map_info */
.group_map_wrap .map_info {
	position: absolute;
	width: 30%;
	left: 0;
	top: 50%;
	translate: 0 -50%;
}
/* map_figure */
.group_map_wrap .map_figure {
	width: 70%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.group_map_wrap .map_info {
	
}
/* map_figure */
.group_map_wrap .map_figure {
	width: 115%;
	margin-left: calc(50% - 50vw);
	margin-bottom: -16%;
}
.group_map_wrap .map_img::before {
	background-image: url(../images/top/group_map_sp@2x.png);
	width: 100%;
	height: 100%;
	left: 0;
}
.group_map_wrap .map-point {
	width: 6.4%;
}
}

/* GROUP:.clinic_slider                       
---------------------------------------------------------*/
.clinic_slider {
	max-width: 320px;
	margin-inline: auto;
}
.clinic_slider .swiper-slide {
	position: relative;
	background-color: #FFF;
	pointer-events: none;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.clinic_slider .swiper-slide.swiper-slide-active {
	pointer-events: auto;
}
.clinic_slider .clinic-thumb {
	aspect-ratio: 320/190;
}
.clinic_slider .clinic-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.clinic_slider .clinic-info {
	padding: 6% 8% 10%;
}
.clinic_slider .clinic-info > * {
	max-width: 220px;
	margin-inline: auto;
}
.clinic_slider .clinic-city {
	position: relative;
	font: var(--font-min);
	letter-spacing: .1em;
	line-height: 1.5;
	margin-bottom: .4em;
}
.clinic_slider .clinic-city::before {
	display: inline-block;
	font-family: 'fontello';
	content: '\e810';
	color: var(--map-color);
	font-size: 160%;
	vertical-align: -0.1em;
	margin-right: .2em;
}
.clinic_slider .clinic-name {
	position: relative;
	font: var(--font-min);
	font-size: min(2vw,146%);
	letter-spacing: .06em;
	line-height: 1.5;
	margin-bottom: .4em;
}
.clinic_slider .com_btn_bg {
	text-align: center;
}
.clinic_slider .com_btn_bg a {
	width: 100%;
	min-width: auto;
	background-color: #efefef;
}
.clinic_slider .com_btn_bg .com_arw1 {
	background-color: #a1a1a1;
}
.clinic_slider .com_btn_bg a:hover {
	background-color: #e2e2e2;
}


/* arrow */
.swiper-button {
	position: absolute;
	aspect-ratio: 1;
	background: url(../images/common/icon_arrow.svg) no-repeat center center;
	background-size: contain;
	background-color: #918475;
	border-radius: 50%;
	width: 14%;
	bottom: 8%;
	cursor: pointer;
	transition: background-color .5s;
}
.swiper-button-prev {
	left: 0;
	translate: -45% 0;
	scale: -1 1;
}
.swiper-button-next {
	right: 0;
	translate: 45% 0;
}
.swiper-button:hover {
	background-color: var(--color-base);
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.clinic_slider {
	width: 90%;
}
.clinic_slider .clinic-city {
	font-size: 90%;
}
.clinic_slider .clinic-name {
	font-size: 110%;
}
}


/*---------------------------------------------------------
 Q&A
---------------------------------------------------------*/
#qa .com_bg_color {
	background-color: #fff6e3;
}
.qa_title {
	text-align: center;
	font-size: min(3vw,233%);
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .18em;
	margin-bottom: 2em;
}
.qa_title img {
	width: 6.63em;
	margin-bottom: .5em;
}
.com_qalist > dd {
	background-color: #fff;
	border-radius: 10px;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.qa_title {
	font-size: 120%;
	letter-spacing: .14em;
	margin-bottom: 1.2em;
}
}



/*---------------------------------------------------------
 TOPICS
---------------------------------------------------------*/
.wp_area {
	padding: 120px 0 150px;
}
#topics .tit_area {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	padding: 0 2em;
	margin-bottom: 1em;
}
#topics .com_deco_txt1 {
	color: #cbcbb7;
}
#topics .com_deco_txt1::first-letter {
	color: var(--topi-color-acc);
}
#topics .topi_list {
	position: relative;
	box-sizing: border-box;
	padding: 1.5em 3%;
}
#topics .topi_list::before,
#topics .topi_list::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	border: 1px solid #473219;
	border-radius: 20px;
	clip-path: polygon(0 0, 100% 0, 100% 50px, 0 50px);
	pointer-events: none;
}
#topics .topi_list::after {
	transform: rotate(180deg);
}
#topics .topi_list > li {
	border-bottom: 1px dashed #473219;
}
#topics .topi_list > li:last-of-type {
	border-bottom: none;
}
#topics .topi_list a {
	display: block;
	box-sizing: border-box;
	padding: 1.8em 5%;
}
#topics .topi_list .date {
	color: var(--topi-color-acc);
	font-size: 105%;
	letter-spacing: .1em;
	line-height: 1;
	margin-bottom: .5em;
}
#topics .topi_list .title {
	font-size: 120%;
	font-weight: bold;
	letter-spacing: .1em;
	line-height: 1.5;
	margin-bottom: .5em;
	transition: color .4s;
}
#topics .com_btn2 a:hover::before {background-color: #73603c !important;}

#topics .com_btn2 a:hover .title {
	color: var(--topi-color-acc);
}
#topics .com_btn2 a::before { background-color: var(--topi-color-acc); }

#topics .news {
	--topi-color-acc: #b6dd20;
}
#topics .blog {
	--topi-color-acc: #8bc7ed;
}

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
#topics {
	display: flex;
	justify-content: space-between;
}
#topics > div {
	width: 48%;
	max-width: 542px;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.wp_area {
	padding: 12% 0 15%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.wp_area {
	padding: 15% 0;
}
#topics .tit_area {
	padding: 0 1em;
}
#topics .topi_list {
	padding: 1em 3%;
}
#topics .topi_list::before,
#topics .topi_list::after {
	clip-path: polygon(0 0, 100% 0, 100% 30px, 0 30px);
}
#topics .topi_list a {
	padding: 1.5em 5%;
}
#topics .topi_list .title {
	font-size: 110%;
	letter-spacing: .05em;
}
#topics .news {
	margin-bottom: 6%;
}
}

/* bnr_movie                          
---------------------------------------------------------*/
.bnr_movie a {
	position: relative;
	display: block;
	color: #FFF;
	box-sizing: border-box;
	padding: 55px 5%;
	border-radius: 30px;
	overflow: hidden;
}
.bnr_movie a::before {
	position: absolute;
	display: block;
	content: "";
	background: url("../images/top/mv_bg@2x.jpg") no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	transition: scale .5s;
}
.bnr_movie a::after {
	position: absolute;
	display: block;
	content: "";
	background: #82746a url("../images/top/bg_dot@2x.png") repeat center center;
	background-size: 21px auto;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	opacity: 0.5;
	transition: scale .5s;
}
.bnr_movie dl {
	position: relative;
	text-align: left;
	line-height: 1.7;
	z-index: 1;
}
.bnr_movie dl dt {
	font-size: 146%;
	font-weight: bold;
	letter-spacing: .14em;
	margin-bottom: .5em;
}
.bnr_movie dl dd {
	font-size: 113%;
}
.bnr_movie a:hover::before {
	scale: 1.05;
}
.bnr_movie .com_arw1 {
	background-color: #ff7236;
	border-radius: 50%;
	font-size: 180%;
	width: 4.75em;
	height: 2.7em;
	line-height: 2.7;
	z-index: 1;
}
.bnr_movie .com_arw1::before {
	content: '\e802';
}

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.bnr_movie dl {
	width: 75%;
	max-width: 500px;
	margin-left: auto;
}
.bnr_movie .com_arw1 {
	position: absolute;
	left: 22%;
	top: 50%;
	translate: -50% -50%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.bnr_movie a {
	padding: 5% 5%;
}
.bnr_movie .com_arw1 {
	font-size: 160%;
	left: 15%;
}
.bnr_movie dl dt {
	font-size: 130%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.bnr_movie a {
	text-align: center;
	padding: 10% 8%;
}
.bnr_movie a::before {
	background-image: url("../images/top/mv_bg_sp@2x.jpg");
}
.bnr_movie dl {
	line-height: 1.7;
}
.bnr_movie dl dt {
	font-size: 120%;
	letter-spacing: .1em;
	margin-bottom: .5em;
}
.bnr_movie dl dd {
	font-size: 105%;
}
.bnr_movie .com_arw1 {
	text-align: center;
	font-size: 130%;
	margin: .5em auto 0;
}
}

/* instagram                          
---------------------------------------------------------*/
#insta {
	position: relative;
}
#insta .btn_insta {
	position: absolute;
	width: 19%;
	max-width: max-content;
	left: 14%;
	top: 0;
}
#insta .btn_insta a {
	display: block;
	background-color: #fff;
}
#insta .btn_insta a:hover {
	background-color: rgba(255,255,255,0.8);
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

#insta .btn_insta {
	width: 40vw;
	left: 0;
}
}

/*WPプラグイン：カスタム
---------------------------------------------------------*/
#sb_instagram #sbi_images {
    display: block !important;
    padding: 0 !important;
}
#insta #sb_instagram #sbi_images .sbi_item {
	width: min(18vw,270px)!important;
	height: min(18vw,270px)!important;
	margin: 0 10px 0 0 !important;
	border-radius: 7.4% / 7.4%;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#insta #sb_instagram #sbi_images .sbi_item {
	width: 40vw !important;
	height: 40vw !important;
}
}



/*---------------------------------------------------------
 RECRUIT
---------------------------------------------------------*/
#recruit .inbox {
	position: relative;
	background: #ffc85d url("../images/top/rec_bg2@2x.png") no-repeat left bottom;
	background-size: 100% 100%;
	padding: 50px 6.7%;
}
#recruit .inbox::before {
	position: absolute;
	content: "";
	background: url("../images/top/rec_bg@2x.png") no-repeat right top;
	background-size: contain;
	width: 58%;
	height: 100%;
	right: 0;
	top: 0;
}
#recruit .ft_ag {
	position: absolute;
	color: transparent;
	text-stroke: 1px #FFF;
	-webkit-text-stroke: 1px #FFF;
	font-size: min(8vw,654%);
	letter-spacing: .1em;
	line-height: 1;
	left: .7em;
	bottom: 0.2em;
	opacity: 0.54;
}
#recruit .rec_copy {
	position: relative;
	display: inline-block;
	color: #FFF;
	font-size: min(5vw,393%);
	font-weight: bold;
	letter-spacing: .2em;
	line-height: 1.3;
	white-space: nowrap;
	margin-bottom: .4em;
}
#recruit .rec_copy::before,
#recruit .rec_copy::after {
	position: absolute;
	content: "";
	background: url("../images/common/kira1.svg") no-repeat center center;
	background-size: contain;
	width: 0.85em;
	height: 1em;
	bottom: 5%;
}
#recruit .rec_copy::before {
	right: 100%;
	bottom: 80%;
}
#recruit .rec_copy::after {
	background-image: url("../images/common/kira2.svg");
	left: 100%;
}
#recruit .rec_copy span {
	color: #fa7d00;
}
#recruit p {
	position: relative;
	font-size: 110%;
}
#recruit .com_btn_ccl {
	--color-btn: #fa7d00;
	position: absolute;
	right: 0;
	bottom: 0;
	translate: -25% 10%;
}
#recruit .inbox:hover .com_btn_ccl {
	background-color: var(--color-borg);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#recruit {
	background: linear-gradient(to bottom, #fff5ec 70%, transparent 70%);
}
#recruit .inbox {
	background-size: 140% 100%;
	padding: 14% 8% 20%;
}
#recruit .inbox::before {
	width: 70%;
}
#recruit .ft_ag {
	font-size: 280%;
	left: .4em;
	bottom: .4em;
}
#recruit .rec_copy {
	font-size: 160%;
}
#recruit p {
	font-size: 100%;
}
#recruit .rec_btn {
	width: 65%;
}
#recruit .rec_btn a {
	font-size: 110%;
	padding: .8em 3em;
}
#recruit .inbox:hover .rec_btn {
	width: 70%;
}

}


/*OPEN
---------------------------------------------------------*/
.open_announce {
	max-width: 829px;
	width: 70%;
	margin: 0 auto 60px;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.open_announce {
	width: 90%;
	margin-bottom: 7%;
}
}


/*MEOタグカスタマイズ
---------------------------------------------------------*/

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {
.js-meo-template_card_format {
	width: 90%;
	margin: 0 auto;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.js-meo-change-column-template {
	flex-basis: auto !important;
}
.js-meo-change-column-template > div:nth-of-type(3) {
	line-height: 1.8;
}
}


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

/* PC,Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) {

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

}