@charset "utf-8";
/* ===================================================
	ACCESS CSS
====================================================== */

/* Common */
.box_img:has(span) { position: relative; }
.box_img span { position: absolute; bottom: 0; right: 0; display: block; padding: 5px 10px; text-align: right; font-size: 13px; color: #fff; text-shadow: 0 0 5px rgba(0 0 0/50%); }


/* ---------------------------------------------------
Section Lead
------------------------------------------------------ */
.sec_lead{ width: 100%; padding: 70px 0;}
.sec_lead .tit{ font-size: 40px; letter-spacing: 0.1em; padding: 0 0 30px; text-align: center;}
.sec_lead .txt{ font-size: 16px; line-height: 1.8; padding: 0 0 70px; text-align: center;}
.sec_lead .box_gmap{ width: 100%; height: 600px;}
.sec_lead .box_gmap iframe{ width: 100%; height: 100%;}
.sec_lead .sec_data{ width: 90%; max-width: 1100px; margin: 0 auto; display: flex; justify-content: space-between; flex-direction: row-reverse; padding: 80px 0 0; text-align: right;}
.sec_lead .sec_data .box_txt{ width: 550px;}
.sec_lead .name{ font-size: 24px; padding: 0 0 20px; text-align: left;}
.sec_lead .tbl_01{ width: 100%; font-size: 16px; line-height: 1.8;}
.sec_lead .tbl_01 th,
.sec_lead .tbl_01 td{ border-bottom: solid 1px #ccc; padding: 15px; font-weight: normal; text-align: left; vertical-align: top;}
.sec_lead .tbl_01 th{ width: 6em;}
.sec_lead .tbl_01 td{ width: calc( 100% - 6em );}
.sec_lead .list_01 li::before{ content: "・";}
.sec_lead .btn_01{ background: url("../../access/img/ico_pin_01.svg") no-repeat 0 0; background-size: 18px; font-size: 16px; line-height: 27px; padding: 0 0 0 25px; display: inline-block; height: 27px; margin: 20px 0 0;}
.sec_lead .sec_data .box_img{ width: 501px;}
.sec_lead .sec_data .box_img img{ width: 100%; height: auto;}

@media screen and (max-width: 600px) {
.sec_lead{ width: 90%; margin: 0 auto; padding: 30px 0;}
.sec_lead .tit{ font-size: 26px; letter-spacing: 0.1em; padding: 0 0 15px;}
.sec_lead .txt{ font-size: 15px; line-height: 1.7; padding: 0 0 30px; text-align: left;}
.sec_lead .box_gmap{ height: max(250px, 60vw);}
.sec_lead .sec_data{ width: 100%; max-width: 100%; flex-direction: column; padding: 30px 0 0;}
.sec_lead .sec_data .box_txt{ width: 100%;}
.sec_lead .name{ font-size: 22px; padding: 0 0 10px;}
.sec_lead .tbl_01{ font-size: 14px; line-height: 1.5;}
.sec_lead .tbl_01 th,
.sec_lead .tbl_01 td{ padding: 15px;}
.sec_lead .tbl_01 th{ width: 5em;}
.sec_lead .tbl_01 td{ width: calc( 100% - 5em );}
.sec_lead .btn_01{ font-size: 15px; margin: 20px 0 0;}
.sec_lead .sec_data .box_img{ width: 100%; padding: 20px 0 0;}
}


/* ---------------------------------------------------
Section Access Type01
------------------------------------------------------ */
.sec_access_01{ padding: 70px 0 90px; background-color: #fff;}
.sec_access_01:last-child { padding-bottom: 120px; }
.sec_access_01 .tit_01{ text-align: center;}
.sec_access_01 .tit_01.car{ background: url("../../access/img/ico_car_01.svg") no-repeat center top; background-size: 46px; padding: 30px 0 50px;}
.sec_access_01 .tit_01.train{ background: url("../../access/img/ico_train_01.svg") no-repeat center top; background-size: 28px; padding: 50px 0 50px;}
.sec_access_01 .tit_01 span{ display: block;}
.sec_access_01 .tit_01 .ja{ font-size: 40px; letter-spacing: 0.1em;}
.sec_access_01 .tit_01 .en{ font-size: 15px; color: var(--cmn-yel); padding: 5px 0 0;}
.sec_access_01 .box_list{ width: 90%; max-width: 1100px; margin: 0 auto;}
.sec_access_01 .box_list dl{ width: 100%; display: table;}
.sec_access_01 .box_list dl dt,
.sec_access_01 .box_list dl dd{ border-bottom: solid 1px #ccc; padding: 35px; font-weight: normal; text-align: left; vertical-align: middle; display: table-cell;}
.sec_access_01 .box_list dl dt{ width: 20%; background: var(--cmn-bg); font-size: 18px; text-align: center;}
.sec_access_01 .box_list dl dd{ width: 80%; font-size: 16px; line-height: 2.5;}
.sec_access_01 .box_btn{ width: 90%; max-width: 1100px; margin: 0 auto; display: flex; justify-content: space-between; flex-direction: row-reverse; align-items: center; padding: 30px 0 0;}
.sec_access_01 .box_btn .btn_01{ display: block; width: 450px; padding: 20px 40px; box-sizing: border-box; border: solid 1px #000; border-radius: 50px; background-color: #fff; background-image: url("../../access/img/ico_pin_01.svg"); background-repeat: no-repeat; background-position: calc( 50% - 6.5em ) center; background-size: 16px; text-align: center; font-size: 16px; line-height: 1.5; position: relative; transition: background-color 0.5s, border-color 0.5s;}
.sec_access_01 .box_btn .btn_01::after{ content:""; display: block; width: 10px; height: 10px; border-bottom: solid 1px #000; border-right: solid 1px #000; transform: rotate(-45deg); position: absolute; right: 30px; top: 0; bottom: 0; margin: auto 0; transition: right 0.5s, border-color 0.5s;}
.sec_access_01 .box_btn .btn_01:hover{ text-decoration: none; background-color: var(--cmn-bg); border-color: #aaa; }
.sec_access_01 .box_btn .btn_01:hover::after{ right: 20px; border-color: #858585;}
.sec_access_01 .box_btn .btn_02{ background: url("../../access/img/ico_blank_01.png") no-repeat right center; background-size: 20px; padding: 0 30px 0 0; font-size: 16px; line-height: 1.5;}

@media screen and (max-width: 600px) {
.sec_access_01{ padding: 30px 0 40px;}
.sec_access_01:last-child { padding-bottom: 100px; }
.sec_access_01 .tit_01.car{ padding: 30px 0 20px;}
.sec_access_01 .tit_01.train{ padding: 50px 0 20px;}
.sec_access_01 .tit_01 .ja{ font-size: 26px; letter-spacing: 0.1em;}
.sec_access_01 .tit_01 .en{ font-size: 15px; padding: 8px 0 0;}
.sec_access_01 .box_list{ max-width: 90%;}
.sec_access_01 .box_list dl{ display: block;}
.sec_access_01 .box_list dl dt,
.sec_access_01 .box_list dl dd{ border-bottom: none; padding: 15px 0; display: block; box-sizing: border-box;}
.sec_access_01 .box_list dl dt{ width: 100%; font-size: 16px;}
.sec_access_01 .box_list dl dd{ width: 100%; font-size: 14px; line-height: 1.7; border-bottom: solid 1px #ccc;}
.sec_access_01 .box_btn{ max-width: 90%; flex-direction: column; padding: 20px 0 0;}
.sec_access_01 .box_btn .btn_01{ width: 100%; padding: 10px 40px; font-size: 15px; line-height: 1.5;}
.sec_access_01 .box_btn .btn_01:hover::after{ right: 30px; }
.sec_access_01 .box_btn .btn_02{ font-size: 15px; line-height: 1.5; margin: 20px 0 0;}
}


/* ---------------------------------------------------
Section Access Type02
------------------------------------------------------ */
.sec_access_02{ padding: 70px 0 120px; background-color: var(--cmn-bg); }
.sec_access_02 .tit_01{ text-align: center; background: url("../../access/img/ico_bus_01.svg") no-repeat center top; background-size: 46px; padding: 40px 0 50px;}
.sec_access_02 .tit_01 span{ display: block;}
.sec_access_02 .tit_01 .ja{ font-size: 40px; letter-spacing: 0.1em;}
.sec_access_02 .tit_01 .en{ font-size: 15px; color: var(--cmn-yel); padding: 5px 0 0;}
.sec_access_02 .sec_inner{ width: 90%; max-width: 950px; margin: 0 auto 100px; display: flex; justify-content: space-between;}
.sec_access_02 .tit_02{ font-size: 25px; color: #a4782f; line-height: 1.4; padding: 0 0 15px; margin: 0 0 40px; position: relative;}
.sec_access_02 .tit_02::after{ content:""; display: block; width: 390px; height: 1px; background: #a4782f; position: absolute; bottom: 0; left: 0;}
.sec_access_02 .txt_01{ font-size: 16px; line-height: 2;}
.sec_access_02 .cmn_btn_02{ width: 320px;}
.sec_access_02 .sec_inner .box_img{ flex-shrink: 0; width: 406px;}
.sec_access_02 .sec_inner .box_img img{ width: 100%; height: auto;}

@media screen and (max-width: 600px) {
.sec_access_02{ padding: 40px 0 100px; }
.sec_access_02 .tit_01{ padding: 40px 0 20px;}
.sec_access_02 .tit_01 .ja{ font-size: 26px; letter-spacing: 0.1em;}
.sec_access_02 .tit_01 .en{ font-size: 15px; padding: 5px 0 0;}
.sec_access_02 .sec_inner{ max-width: 90%; margin: 0 auto 40px; flex-direction: column;}
.sec_access_02 .sec_inner .box_txt{ width: 100%;}
.sec_access_02 .tit_02{ font-size: 22px; line-height: 1.4; padding: 0 0 10px; margin: 0 0 20px;}
.sec_access_02 .tit_02::after{ width: 100%;}
.sec_access_02 .txt_01{ font-size: 15px; line-height: 1.7;}
.sec_access_02 .cmn_btn_02{ width: 100%;}
.sec_access_02 .sec_inner .box_img{ width: 100%; padding: 20px 0 0;}
}

