@charset "utf-8";
/* ===================================================
	Master CSS
====================================================== */
/* ---------------------------------------------------
	sec_lead
------------------------------------------------------ */
#sec_lead .cmn_link_arrow { margin: clamp(15px, 2.727vw, 30px) 0 0 auto; text-align: right; }
#sec_lead .cmn_link_arrow::before { transform: rotate(90deg);}
#sec_lead .cmn_cnav { padding-top: clamp(50px, 8.182vw, 90px); }

#sec_lead .map_col { margin-top: clamp(70px, 11.818vw, 130px); }
#sec_lead .map_col iframe { display: block; width: 100%; height: auto; min-height: 250px; aspect-ratio: 248 / 179; }
#sec_lead .map_col .cmn_table { border-top: 1px solid var(--color-bd); margin-top: clamp(30px, 5vw, 55px); }
#sec_lead .map_col .cmn_table dt { font-size: 15px; color: rgba(0, 0, 0, 0.6);}
#sec_lead .map_col .btn { margin-top: clamp(10px, 1.364vw, 15px); text-align: right; }
#sec_lead .map_col .btn .btn_map { display: inline-flex; gap: 5px; align-items: center; font-size: 14px; }
#sec_lead .map_col .btn .btn_map::before { width: 13px; height: 18px; content: ""; background: url(../../sightseeing/img/icon_pin.svg) no-repeat center/contain; }

@media screen and (min-width: 651px) {
	#sec_lead .map_col .cmn_table dt { font-size: 17px; }
	#sec_lead .map_col .btn .btn_map { font-size: 15px; }
}



/* ---------------------------------------------------
	sec01
------------------------------------------------------ */
#sec01 { padding: clamp(55px, 9.091vw, 100px) 0 clamp(60px, 10.455vw, 115px);}
#sec01 .cmn_tit02 { margin-bottom: clamp(25px, 4.091vw, 45px); }
#sec01 .cmn_tit02 .sub { color: rgba(255, 255, 255, 0.4); }
#sec01 .photo { margin-bottom: clamp(15px, 2.727vw, 30px); }
#sec01 .tel_col { margin-top: clamp(15px, 2.727vw, 30px); display: flex; justify-content: center; text-align: center; flex-direction: column; padding: 15px 20px; background: #fff; color: #000; border: 1px solid #b2b2b2; line-height: 1; gap: 5px; }
#sec01 .tel_col .tel-link { font-size: 20px; }

@media screen and (hover: hover) and (min-width: 651px) {
}
@media screen and (min-width: 651px) {
	#sec01 .tel_col { flex-direction: row; align-items: flex-end; padding: 25px 20px; gap: 0; }
	#sec01 .tel_col .tel-link { font-size: 25px; }
}


/* ---------------------------------------------------
	sec_route
------------------------------------------------------ */
.sec_route { padding: clamp(80px, 12.273vw, 135px) 0 0; }
.sec_route .cmn_tit02 { margin-bottom: clamp(30px, 5.455vw, 60px); position: relative; padding-top: calc(clamp(40px, 9.4%, 50px) + clamp(10px, 1.818vw, 25px)); }
.sec_route .cmn_tit02::before { content: ''; width: clamp(40px, 9.4%, 50px); aspect-ratio: 10 / 9; background-repeat: no-repeat; background-size: contain; background-position: center; position: absolute; top: 0; left: 50%; transform: translateX(-50%); }
.sec_route .cmn_accordion .acc_tit { padding-left: 20px; }
.sec_route .cmn_accordion .acc_tit span:not(.icon) { margin: 0 auto; }
.sec_route .cmn_accordion .acc_con { display: none; padding: clamp(30px, 4.091vw, 45px) 0 clamp(15px, 2.727vw, 30px); font-size: 15px; }
.sec_route .cmn_accordion .acc_con .time { width: fit-content; border-radius: 100px; border: 1px solid #b2b2b2; padding: 0 20px; margin-bottom: clamp(15px, 2.273vw, 25px); }
.sec_route .cmn_accordion .acc_con .route span { display: inline-block; margin-right: 0.5em; }

#sec02 .cmn_tit02::before { background-image: url(../../access/img/icon_car.svg); }
#sec03 .cmn_tit02::before { background-image: url(../../access/img/icon_train.svg); }
#sec04 .cmn_tit02::before { background-image: url(../../access/img/icon_plane.svg); }
#sec05 .cmn_tit02::before { background-image: url(../../access/img/icon_bus.svg); }
#sec05 { padding-bottom: clamp(70px, 11.818vw, 130px); }

@media screen and (hover: hover) and (min-width: 651px) {
}
@media screen and (min-width: 651px) {
	.sec_route .cmn_accordion .acc_tit { padding-left: 30px; }
	.sec_route .cmn_accordion .acc_con { font-size: 17px; }
	.sec_route .cmn_accordion .acc_con .time { padding: 0 30px; }
}


/* ---------------------------------------------------
	sec06
------------------------------------------------------ */
#sec06 { padding: clamp(40px, 8.636vw, 95px) 0 clamp(45px, 10vw, 110px); }
#sec06 .cmn_tit02 { margin-bottom: clamp(30px, 6.364vw, 70px); }
#sec06 .link_list { display: flex; flex-wrap: wrap; gap: 20px 10px; }
#sec06 .link_list li { min-width: calc(50% - 5px); }
#sec06 .link_list a { display: flex; align-items: center; gap: 10px;  }
#sec06 .link_list a span { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
#sec06 .link_list a::before { content: ''; width: 14px; height: 14px; background: url(../../access/img/icon_tab.svg) no-repeat center/contain; display: block; }

@media screen and (hover: hover) and (min-width: 651px) {
}
@media screen and (min-width: 651px) {
	#sec06 .link_list { gap: 45px 10px; }
	#sec06 .link_list a::before { width: 18px; height: 18px }
}