@charset "utf-8";
.hummenu ul li.nav-access::before {
	width: 50% !important;
}


body{
    font-family: "shippori-mincho", sans-serif;
    color: #000;
    letter-spacing: 0.1em;
    font-weight: normal;
}
.subhead{
    background: url(../img/access/subhead.jpg);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}


.com_inner_1200 {
    max-width: 1200px;
    margin: 0 auto;
}
.com_inner_1000 {
    max-width: 1040px;
    padding: 0 20px;
    margin: 0 auto;
}
.com_inner_750 {
    max-width: 750px;
    margin: 0 auto;
}
.com_inner_max1000 {
    max-width: 1000px;
    margin: 0 auto;
}
.max_wd850 {
    max-width: 850px;
    margin: 0 auto;
}


.img_cap_l {
    left: 0.5em;
}
.ac_cap {
    font-size: 10px;
    line-height: 1.5;
    font-weight: lighter;
    letter-spacing: 0.01em;
    margin-top: 0.5em;
}
.st_ttl.ta_l {
    text-align: left;
}


.sec_pd80 {
    padding: 80px 0;
}
.sec_pt80 {
    padding-top: 80px;
}
.sec_pb80 {
    padding-bottom: 80px;
}
.inner_mt60 {
    margin-top: 60px;
}
.inner_mt40 {
    margin-top: 40px;
}
.inner_mt20 {
    margin-top: 20px;
}
.inner_mb60 {
    margin-bottom: 60px;
}
.inner_pd40 {
    padding: 40px 0;
}
.inner_pt40 {
    padding-top: 40px;
}
.inner_pb40 {
    padding-bottom: 40px;
}
.ttl_mg {
    margin: 60px 0 40px;
}
.ac_cap_mt30 {
    margin-top: 30px;
}


.db850 {
    display: none;
}
.db550 {
    display: none;
}
.db500 {
    display: none;
}


.en{
    font-family: adobe-garamond-pro, serif!important;
}
.section_ttl_en_ac {
    font-size: 32px;
    text-align: center;
    color: #318cc9;
    line-height: 1;
}

.ac_top_ttl_img {
    width: 100%;
    max-width: 700px;
    margin: 40px auto 40px;
}

.section_ttl_ja_ac {
    color: #318cc9;
    text-align: center;
    font-size: 28px;
    margin: 0 auto 1em;
    line-height: 1.5;
}

.ac_box {
    border-top: 2px #318cc9 solid;
    border-right: 2px #318cc9 solid;
    border-left: 2px #318cc9 solid;
    width: 100%;
    max-width: 750px;
    margin: 40px auto 40px;
}
.ac_box_inner {
    padding: 20px;
}
.ac_box_lead {
    font-size: 16px;
    text-align: justify;
    line-height: 1.8;
    max-width: 750px;
    margin: 0 auto;
    text-align: center;
}

.col2_flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}
.col2_flex_item {
    width: 50%;
}

.col2_flex_nowrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.col2_flex_item_b {
    width: 50%;
}

.bg_blue {
    background: linear-gradient(90deg, #d7ecf5, #fff, #d7ecf5);
}
.to_st_flex {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-bottom: 1em;
}
.to_st_flex:last-child {
    margin-bottom: 0;
}
.to_st_flex li {
    width: 50%;
    height: 250px;
    background-color:rgba(255,255,255,0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #318cc9;
    font-size: 32px;
    letter-spacing: 0.13em;
}

.to_st_flex_min01 {
    width: 50%;
}
.to_st_flex_min02 {
    width: 50%;
}
.to_st_flex_min03 {
    width: 50%;
}
.to_st_flex_min04 {
    width: 50%;
}



.to_st_flex_bg01 {
    width: 50%;
    height: 250px;
    background: url(../img/access/to_st_bg01.jpg);
    background-size: cover;
}
.to_st_flex_bg02 {
    width: 50%;
    height: 250px;
    background: url(../img/access/to_st_bg02.jpg);
    background-size: cover;
}
.to_st_flex_bg03 {
    width: 50%;
    height: 250px;
    background: url(../img/access/to_st_bg03.jpg);
    background-size: cover;
}
.to_st_flex_bg04 {
    width: 50%;
    height: 250px;
    background: url(../img/access/to_st_bg04.jpg);
    background-size: cover;
}
.line_h {
    line-height: 1.3em;
}


.txt_box_border {
    border-bottom: 1px solid #318cc9;
}
.st_ttl {
    font-size: 28px;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
    text-align: center;
}
.st_ttl.maru{
    display: flex;
    justify-content: center;
}
.st_txt {
    font-size: 48px;
    text-align: center;
}
.st_txt .small01 {
    font-size: 32px;
    margin-right: 0.8em;
}
.st_txt .small02 {
    font-size: 32px;
    margin-right: 1em;
}
/* .st_txt .medium {
    font-size: 38px;
} */
.st_txt .large {
    font-size: 82px;
    color: #318cc9;
    margin-right: 0.1em;
}
.st_lead {
    font-size: 20px;
    text-align: justify;
    line-height: 1.8;
    max-width: 750px;
    margin: 0 auto;
    text-align: center;
}



.access_submv {
    height: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.access_submv.sec_tukin {
    background: url(../img/access/sec_tukin.jpg);
    background-position: left;
    background-size: cover;
}
.access_submv.sec_airport {
    background: url(../img/access/sec_airport.jpg);
    background-position: left;
    background-size: cover;
}
.access_submv.sec_car {
    background: url(../img/access/sec_car.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.access_submv_ttl_img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
}
.access_submv_ttl_img > img {
    height: 50px;
}
.subhead_ttl.ac p{
    padding-bottom: 20px;
    /* border-bottom: 1px solid #fff; */
    position: relative;
}
.subhead_ttl.ac p::after{
    content: "";
    background: #fff;
    width: 120%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 2px;
}
.subhead_ttl .en_ac {
    font-size: 32px;
    margin-top: 0.5em;
    line-height: 1;
    font-family: "A1+ Adobe Garamond Pro", "Adobe Garamond Pro", Garamond, serif;
    letter-spacing: 0.1em;
    text-shadow: initial;
}
.subhead_ttl .ja_ac {
    font-size: 32px;
    margin-top: 0.5em;
    line-height: 1;
    font-family: "A1+ Adobe Garamond Pro", "Adobe Garamond Pro", Garamond, serif;
    text-shadow: initial;
}

.car_txt_box {
    margin-top: 20px;
}
.car_st {
    font-size: 32px;
    letter-spacing: 0.5em;
    margin-bottom: 5px;
}
.car_min {
    font-size: 32px;
    margin-bottom: 10px;
    color: #318cc9;
}
.car_large {
    font-size: 42px;
}
.car_small {
    font-size: 14px;
    color: #000;
}
.car_lead {
    font-size: 12px;
    line-height: 1.2;
}



/* 20251126 */
.section_ttl_ja_ac.mg0 {
    margin: 0;
}

.link_btn {
    margin-bottom: 60px;
}
.link_btn a {
    height: 50px;
    max-width: 320px;
    margin: 0 auto;
    border: solid 1px #318cc9;
    color: #318cc9;
    font-size: 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: 0.3s;
}
.link_btn a::after {
    position: absolute;
    top: 50%;
    right: 1em;
    width: 0.7em;
    height: 0.7em;
    transform: translateY(-50%) rotate(45deg);
    border-right: 2px solid currentColor;
    border-top: 2px solid currentColor;
    content: "";
    transition: 0.3s;
}
.link_btn a:hover{
    background: #318cc9;
    color: #fff;
    transition: 0.3s;

}
.link_btn a:hover::after{
    right: 0.8em;
}













@media(max-width: 1000px){
.sec_pd80 {
    padding: 60px 0;
}
.sec_pt80 {
    padding-top: 60px;
}
.sec_pb80 {
    padding-bottom: 60px;
}
.inner_mb60 {
    margin-bottom: 30px;
}
.subhead_ttl.ac p {
    padding-bottom: 10px;
}
.subhead_ttl .en_ac {
    font-size: 26px;
}
.subhead_ttl .ja_ac {
    font-size: 26px;
}

.section_ttl_ja_ac {
    font-size: 24px;
}

.ac_box_lead {
    font-size: 14px;
}

.st_ttl {
    font-size: 24px;
}
.st_txt {
    font-size: 38px;
}
.st_txt .small01 {
    font-size: 26px;
}
.st_txt .small02 {
    font-size: 26px;
}
.st_txt .large {
    font-size: 62px;
}
.st_lead {
    font-size: 16px;
}

.access_submv {
    height: 220px;
}

.car_st {
    font-size: 24px;
}
.car_large {
    font-size: 34px;
}
.car_min {
    font-size: 24px;
}

.col2_flex_item_b {
    width: 50%;
    position: absolute;
    right: 3.7%;
}

.ac_box_inner {
    padding: 10px;
}

.ac_top_ttl_img {
    max-width: 550px;
}
}



@media(max-width: 850px){
.db850 {
    display: block;
}
}
@media(max-width: 750px){
.to_st_flex li {
    height: 100px;
    font-size: 20px;
}
}



@media(max-width: 650px){
.sec_pd80 {
    padding: 40px 0;
}
.sec_pb80 {
    padding-bottom: 60px;
}
.sec_pb80 {
    padding-bottom: 40px;
}
.sec_pt80 {
    padding-top: 40px;
}
.inner_mt60 {
    margin-top: 40px;
}
.inner_mt40 {
    margin-top: 20px;
}
.inner_pb40 {
    padding-bottom: 30px;
}
.inner_pt40 {
    padding-top: 30px;
}
.ttl_mg {
    margin: 40px 0 20px;
}

.subhead_ttl .en_ac {
    font-size: 20px;
}
.subhead_ttl .ja_ac {
    font-size: 20px;
}

.section_ttl_ja_ac {
    font-size: 20px;
}

.section_txt_box.en_none {
    margin-top: 60px;
}
.ac_box {
    margin: 30px auto 30px;
}

.st_ttl {
    font-size: 16px;
    }
.st_txt {
    font-size: 28px;
    }
.st_txt .large {
    font-size: 46px;
}
.st_txt .small01 {
    font-size: 20px;
    margin-right: 0.5em;
}
.st_txt .small02 {
    font-size: 20px;
    margin-right: 0.8em;
}
.st_lead {
    font-size: 13px;
}

.access_submv {
    height: 160px;
}

.car_st {
    font-size: 22px;
}
.car_large {
    font-size: 30px;
}
.car_min {
    /* font-size: 22px; */
    line-height: 1;
}
.car_lead {
    font-size: 10px;
    letter-spacing: 0;
}

.link_btn a {
    height: 40px;
    max-width: 280px;
}
}



@media(max-width: 550px){
.db550 {
    display: block;
}
}



@media(max-width: 500px){
.db500 {
    display: block;
}
}