/*-------------------------------------------------
|-    image
-------------------------------------------------*/
.cs-images {
    width: 100%;
    vertical-align: middle;
}
/*-------------------------------------------------
|-    link
-------------------------------------------------*/
.cs-link:hover {
    opacity: 0.8;
    transition: 0.3s;
}
/*-------------------------------------------------
|-    contents
-------------------------------------------------*/
.contents {
    width: 100%;
    overflow: hidden;
}
/*-------------------------------------------------
|-    header
-------------------------------------------------*/
.header {
    border-bottom: 4px solid #1d2088;
}
.headerArea {
    width: 100%;
    max-width: 1060px;
    margin: 30px auto 0;
    padding: 0 1%;
    font-size: 12px;
    display: flex;
    box-sizing: border-box;
    justify-content: flex-end;
    align-items: flex-end;
}
.headerLogo {
    width: 28%;
    margin: 0 auto 0 0;
}
.cs-logo {
    max-width: 280px;
}
.verTop {
    vertical-align: top;
}
.lineH180 {
    line-height: 180%;
}

@media screen and (max-width: 910px) {
    .headerArea {
        margin:2% auto 0;
    }
    /*.headerLogo {
        margin-right: 6%;
    }*/
}
@media screen and (max-width: 767px) {
    .header {
        margin-bottom: 0;
        border: 0;
    }
    .headerArea {
        position: fixed;
        width: 100%;
        margin: 0;
        padding: 0 0 0 1.5%;
        padding-top: 0;
        background: #fff;
        display: flex;
        z-index: 600;
        border-bottom: 4px solid #1d2088;
    }
    .headerLogo {
        width: 46%;
    }
    .cs-headLogoImg {
        width: 100%;
        vertical-align: bottom;
    }
}

/*-------------------------------------------------
|-    headerMenu
-------------------------------------------------*/
.headerMenu {
    width: 27%;
    margin: 0 20px 5px 0;
    white-space: nowrap;
    position: relative;
    display: flex;
    justify-content: space-between;
    z-index: 100;
}
.headerMenu_link {
    width: 18%;
    text-align: center;
    white-space: nowrap;
    line-height: 200%;
}
.headerMenu_link:last-child {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .headerMenu {
        width: 48%;
        margin: 0;
        z-index: auto;
    }
    .headerMenu_link {
        width: 27.3%;
        margin-right: 0%;
        font-size: 0.78rem;
        line-height: 120%;
        padding: 4% 3%;
        float: left;
    }
    .headerMenu_link:last-child {
        margin-right: 0;
    }
    .cs-headerLinkImg {
        width: 75%;
    }
    .unkouclose,
    .searchClose,
    .menuClose {
        display: none;
    }
    .headerMenuBg {
        background: #1d2088;
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        z-index: 600;
        opacity: 0.6;
    }
}
/*-------------------------------------------------
|-    headerMenuRight
-------------------------------------------------*/
.headerMenuRight {
    width: 20%;
    text-align: right;
}
.headerMenuRight_listLink-before:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url(/assets/common/img/img_arrow_black.svg) no-repeat center;
    vertical-align: middle;
}
.headerMenuRightList {
    margin-bottom: 10px;
}
.headerMenuRightList_link {
    display: inline-block;
}
.headerMenuW45 {
    width: 100%;
}
.headerMenuW45Left {
    width: 100%;
}
.headerMenuW45Right {
    width: 100%;
}
/*@media screen and (max-width: 953px) {
    .headerMenuW45Left {
        width: 43%;
    }
    .headerMenuW45Right {
        width: 47%;
    }
}
@media screen and (max-width: 934px) {
    .headerMenuW45Left {
        width: 41%;
    }
    .headerMenuW45Right {
        width: 49%;
    }
}*/
/*@media screen and (max-width: 769px) {
    .headerMenuW45 {
        width: 47%;
    }
}*/
.headerMenuW18 {
    width: 14.5%;
}
@media screen and (max-width: 929px) {
    .headerMenuW18 {
        width:15.5%;
    }
}
.headerMenuW30 {
    width: 30%;
}
.headerFontSize {
    display: flex;
    justify-content: flex-end;
}
.headerFontSize_change {
    width: 18px;
    text-align: center;
    margin-right: 5%;
}
.headerFontSize_change:last-child {
    margin-right: 0;
}
.cs-fSize {
    display: block;
    width: 100%;
    background: #B5B0D0;
}
.fSizeActive {
    background: #1d2088;
    color: #fff;
}
.cs-search {
    width: 50%;
    padding: 1px 5px;
    margin-bottom: 10px;
    border: 1px solid #959696;
    border-right: 0;
    border-radius: 0;
    height: 20px;
}
.en .cs-search,
.ko .cs-search,
.cn .cs-search,
.tw .cs-search,
.th .cs-search {
    width: 60%;
}
.cs-searchBtn {
    background: #B5B0D0;
    border: 1px solid #959696;
    cursor: pointer;
    border-radius: 0;
    height: 24px;
    vertical-align: top;
}
.en .cs-searchBtn,
.ko .cs-searchBtn,
.cn .cs-searchBtn,
.tw .cs-searchBtn,
.th .cs-searchBtn {
    padding: 0 3px;
}
.cs-languageSelection {
    height: 23px;
    padding-right: 25px;
    margin-bottom: 10px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #959696;
    background: url(/assets/common/img/btn_arrow_btm.svg) right no-repeat;
    background-color: #fff;
    background-size: 24px;
    font-size: 0.6vw;
    border-radius: 0;
    vertical-align: top;
}
.cs-languageSelection::-ms-expand {
    display: none;
}
.cs-voiceBtn {
    width: 70%;
    padding: 0;
    background: #fff;
    border: 0;
    cursor: pointer;
    white-space: nowrap;
}
.cs-voiceBtn:after {
    display: inline-block;
    width: 20%;
    content: url(/assets/common/img/icon_voice.svg);
    margin-left: 2%;
    position: relative;
    vertical-align: middle;
}
.cs-voiceImages {
    width: 23%;
    margin-left: 4%;
    vertical-align: middle;
}
@media screen and (max-width: 910px) {
    /*.headerMenuRight {
        width: 47%;
        font-size:11px;
    }*/
    .cs-languageSelection {
        font-size: 0.77rem;
        margin-bottom: 0;
    }
    .cs-voiceBtn {
        width: 100%;
        text-align: center;
        font-size: 0.9rem;
    }
}
@media screen and (max-width: 767px) {
    .cs-languageSelection {
        width: 100%;
        font-size: 0.77rem;
        margin-bottom: 0;
    }
}
/*-------------------------------------------------
|-    nav
-------------------------------------------------*/
.nav {
    background: #1d2088;
}
.navArea {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 0 1%;
    box-sizing: border-box;
    display: flex;
}
.navArea_item:hover {
    background: #796baf;
    color: #fff;
    transition: 0.3s;
}
.navArea_item.active {
    background: #796baf;
    color: #fff;
    transition:0.3s;
}
.navArea_item-Red {
    background-color: #ff0000;
}
.navArea_item-Red:hover {
    background-color: #ff0000;
    opacity: 0.9;
}
.navArea_item-Yellow {
    background-color: #ffff00;
    transition: 0.3s;
}
.navArea_item-Yellow:hover {
    background-color: #ffff00;
    transition: 0.3s;
    opacity: 0.9;
}
.navArea_item-Yellow .cs-border,
.navArea_item-Yellow:hover .cs-border  {
    color:#333;
}
.navArea_item-w17 {
    width: 17%;
}
.navArea_item-w16 {
    width: 16%;
}
.cs-navLink {
    display: block;
    text-align: center;
    padding: 17px 0%;
    font-size: 1.07rem;
    color: #FFF;
    line-height: 120%;
    width: 100%;
}

.cs-navLink:hover {
    color: #fff;
}
.cs-border {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    line-height:1.2;
    min-height:36px;
}
.borderLeft {
    border-left: 2px solid #fff;
    box-sizing: border-box;
}
.borderRight {
    border-right: 2px solid #fff;
    box-sizing: border-box;
}
/*-------------------------------------------------
|-    subwayNavInfo
-------------------------------------------------*/
.bgSubwayNavInfo{
    display:none;
    width:100%;
    height:100%;
    background:rgba(28,31,135,0.8);
    position:absolute;
    top:0;
    left:0;
    z-index:501;
}
.subwayNavInfo{
    max-width:880px;
    width:96%;
    margin:60px auto 0;
}
.subwayNavInfoTitle{
    width:100%;
    border-bottom:1px solid #fff;
    margin:0 auto 30px;
}
.subwayNavInfoTitle_ttl{
    width:98%;
    float:left;
    font-size:1.57rem;
    line-height:1.2;
    color:#fff;
    font-weight:bold;
}
.cs-subwayNavInfoClose{
    width:2%;
    float:right;
    cursor:pointer;
}
.cs-floatL{
    float:left;
}
.cs-floatR{
    float:right;
}
.subwayNavInfoList{
    width:100%;
}

.subwayNavInfoList_item{
    width:49%;
    font-size:1.14rem;
    line-height:1.2;
    margin:0 2% 20px 0;
    border:1px solid #aaa;
    box-sizing:border-box;
    float:left;
}
.subwayNavInfoList_item:nth-child(2n){
    margin-right: 0;
}
.cs-subwayNavInfoLink{
    display:block;
    width:100%;
    padding:15px 6% 13px;
    box-sizing:border-box;
    background-color:#fff;
    color:#1d2088;
    position: relative;
}
.cs-subwayNavInfoLink:hover{
    background-color:#796baf;
    color:#fff;
    transition:0.3s;
}
.cs-subwayNavInfoLink:after {
    content: '';
    display: inline-block;
    background-image:url("/assets/common/img/img_arrow_right_navy.svg");
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.cs-subwayNavInfoLink:hover:after {
    content: '';
    display: inline-block;
    background-image:url("/assets/common/img/img_arrow_right_white.svg");
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.subwayNavInfoList_tglBtn{
    width: 100%;
    padding:15px 6% 13px;
    box-sizing:border-box;
    background-color:#fff;
    color:#1d2088;
    position: relative;
}
.subwayNavInfoList_tglBtn:hover{
    background-color:#796baf;
    color:#fff;
    transition:0.3s;
}
.subwayNavInfoList_tglBtn:hover:after {
    content: '';
    display: inline-block;
    background-image:url("/assets/common/img/img_arrow_down_white.svg");
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.subwayNavInfoList_tglBtn.active{
    background-color:#796baf;
    color:#fff;
    transition:0.3s;
}
.subwayNavInfoList_tglBtn.active:after {
    content: '';
    display: inline-block;
    background-image:url("/assets/common/img/img_arrow_up_white.svg");
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.subwayNavInfoList_tglBtn:after {
    content: '';
    display: inline-block;
    background-image:url("/assets/common/img/img_arrow_down_navy.svg");
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.subwayNavInfoList_tglBox{
    display:none;
    width:100%;
}
.subwayNavInfoList_tglItem{
    width:100%;
    border-left:1px solid #aaa;
    border-right:1px solid #aaa;
    border-bottom:1px solid #aaa;
    background:#f1f0f7;
    box-sizing:border-box;
    line-height:1.2;
}
.cs-subwayNavInfoLink2 {
    display:block;
    width:100%;
    padding:15px 2% 12px 9%;
    box-sizing:border-box;
    color:#1d2088;
    position: relative;
}
.cs-subwayNavInfoLink2:before {
    content: '';
    display: inline-block;
    background-image:url("/img/ico_link_txt_arrow.svg");
    width: 6px;
    height: 6px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 5%;
    top: 20px;
}
.cs-subwayNavInfoLink2:hover {
    background-color:#796baf;
    color:#fff;
}
.cs-subwayNavInfoLink2:hover:before {
    content: '';
    display: inline-block;
    background-image:url("/img/ico_link_txt_arrow_white.svg");
    width: 6px;
    height: 6px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 5%;
    top: 20px;
}
@media screen and (max-width:767px){
    .bgSubwayNavInfo{
        display:none !important;
    }
}
/*-------------------------------------------------
|-    mainContents
-------------------------------------------------*/
.mainContents {
    width: 94%;
    max-width: 960px;
    margin: 0 auto 120px;
    box-sizing: border-box;
}
@media screen and (max-width:767px){
    .mainContents {
        width: 94%;
        margin: 0 auto 50px;
        padding: 0;
    }
}
/*-------------------------------------------------
|-    footer
-------------------------------------------------*/
.footer {
    width: 100%;
    background: #1d2088;
    text-align: center;
}
.footerArea {
    width: 100%;
    max-width: 850px;
    margin: 0 auto;
    padding: 50px 0 60px 0;
    display: inline-block;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.footerArea_link {
    margin: 0 4% 10px 0;
    display: inline-block;
}
.footerArea_link:last-child {
    margin-right: 0;
}
.footerArea_link:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 10px;
    background: url(/assets/common/img/img_arrow_white.svg) no-repeat center;
    vertical-align: middle;
}
.cs-ftLink {
    color: #fff;
}
.cs-logoImg {
    width: 203px;
}
.copyright {
    color: #fff;
    padding-bottom: 30px;
}
.footer_logo {
    margin-bottom: 60px;
}

@media screen and (max-width:767px){
    .footerArea {
        width: 88%;
        padding: 38px 0 60px 0;
        display: block;
        text-align: left;
    }
    .footerArea_link {
        margin: 0 0 22px 0;
        display: block;
    }
    .footerArea_link:last-child {
        margin-bottom: 0;
    }
    .cs-ftLink {
        font-size: 0.9rem;
    }
    .copyright {
        width: 88%;
        margin: 0 auto;
        padding-bottom: 15px;
        font-size: 0.68rem;
    }
    .footer_logo {
        margin-bottom: 40px;
    }
}

/*-------------------------------------------------
|-    PageTop
-------------------------------------------------*/
#PageTop {
    position: fixed;
    bottom: 15%;
    right: 20px;
    width: 45px;
    z-index: 500;
}
#PageTop.fixed {
    transition-property: opacity !important;
    transition-duration: 1s !important;
    opacity: 0 !important;
}
@media screen and (max-width: 767px) {
    #PageTop {
        right: 10px;
        width: 40px;
        z-index: 100;
    }
}


@media screen and (max-width:767px){
    /*-------------------------------------------------
    |-    headerMenuCont
    -------------------------------------------------*/
    .headerMenuCont {
        display: none;
        width: 94%;
        margin: 0 auto;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1000;
    }
    /*-------------------------------------------------
    |-    headerMenuOperation
    -------------------------------------------------*/
    .headerMenuOperation {
        clear: both;
        background: #fff;
        z-index: 1000;
    }
    .headerMenuOperationArea {
        width: 93%;
        margin: 0 auto;
        padding-top: 20px;
    }
    .headerMenuOperationArea_ttl {
        margin-bottom: 20px;
        border-bottom: 4px solid #1d2088;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        align-items: center;
    }
    .cs-opeTtl {
        color: #333;
    }
    .cs-currentTimeSP {
        font-size: 0.77rem;
    }
    .headerMenuOperationArea_hanrei {
        width:100%;
        font-size:0.9rem;
        margin-bottom: 5px;
    }
    .headerMenuOperationArea_subway {
        width: 31.4%;
        margin: 0 2.9% 10px 0;
        background: #999;
        text-align: center;
        float: left;
    }
    .headerMenuOperationArea_subway:nth-child(3n+1) {
        margin-right: 0;
    }
    .headerMenuOperationArea-hanrei .headerMenuOperationArea_subway:nth-child(3n+1) {
        margin-right: 2.9%;
    }
    .headerMenuOperationArea-hanrei .headerMenuOperationArea_subway:nth-child(3n+2) {
        margin-right: 0;
    }
    .subwayArea_Status {
        padding: 10% 0;
    }
    .cs-lineNameImg {
        width: 100%;
        vertical-align: bottom;
    }
    .cs-imagesSubway {
        width: 35%;
    }
    .btnDelay {
        width: 93%;
        margin: 10px auto 0;
        padding-bottom: 20px;
        text-align: center;
    }
    .cs-delayLink {
        display: block;
        width: 100%;
        padding: 14px 0;
        color: #fff;
        background: #f00;
        font-size: 1.02rem;
    }
    /*-------------------------------------------------
    |-    headerMenuSearch
    -------------------------------------------------*/
    .headerMenuSearch {
        display: none;
        width: 97%;
        margin: 0 auto;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        z-index: 1000;
        background: #fff;
    }
    .headerSearchArea {
        width: 93%;
        margin: 20px auto;
    }
    .cs-headerSearch {
        width: 81.5%;
        height: 44px;
        padding: 10px 2%;
        vertical-align: middle;
        border-radius: 0;
        box-sizing: border-box;
    }
    .cs-headerSearchBtn {
        width: 13%;
        height: 44px;
        border: 0;
        vertical-align: middle;
        padding: 0;
        background: url(/assets/common/img/btn_search_sp.svg) no-repeat;
        background-position: center;
        background-size: cover;
        border-radius: 0px;
        vertical-align: top;
        box-sizing: border-box;
    }
    /*-------------------------------------------------
    |-    headerMenuList
    -------------------------------------------------*/
    .headerMenuList {
        display: none;
        width: 97%;
        margin: 0 auto;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 1000;
        background: #fff;
        font-size: 0.75rem;
        overflow: scroll;
    }
    .headerMenuList_language {
        width: 90%;
        margin: 0 auto 20px;
        padding-top: 20px;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }
    .langFontSize {
        font-size: 0.9rem;
    }
    .headerMenuList_language-itemSelect {
        width: 39%;
    }
    .cs-languageSelection {
        width: 100%;
        font-size: 0.85rem;
        margin-bottom: 0;
    }
    .headerMenuList_language-itemVoice {
        width: 35%;
        text-align: right;
    }
    .cs-voiceBtn {
        width: 100%;
        text-align: center;
        font-size: 0.85rem;
    }
    /***** headerMenuList_linkBtn *****/
    .headerMenuList_linkBtn {
        width: 90%;
        margin: 20px auto;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .headerMenuList_linkBtn-item {
        width: 47%;
        background: #1d2088;
        border-radius: 5px;
    }
    .headerMenuList_linkBtn-itemLong {
        width:100%;
    }
    .headerMenuList_linkBtn-item:nth-child(-n+4) {
        margin-bottom: 15px;
    }
    .cs-linkBtnImg {
        width: 22%;
        vertical-align: middle;
        margin-right: 10%;
    }
    .cs-linkBtnImgLong {
        width: 10%;
        margin-right: 4%;
    }
    .cs-headerLinkBtn {
        color: #fff;
        display: block;
        padding: 10px;
        font-size: 1.07rem;
    }
    /***** headerMenuId *****/
    .headerMenuId {
        width: 90%;
        margin: 0 auto;
        padding: 20px 0;
        border-top: 1px solid #1d2088;
    }
    .headerMenuId_txt {
        margin-bottom: 10px;
        font-size: 1.11rem;
        text-align: center;
    }
    .headerMenuId_btn {
        text-align: center;
    }
    .headerMenuId_link {
        padding: 5px 15px;
        box-sizing: border-box;
        color: #fff;
        font-size: 1.11rem;
        background: #1d2088;
        border-radius: 5px;
        display: inline-block;
    }
    /***** headerMenuList_menuLink *****/
    .headerMenuList_menuLink {
        width: 90%;
        margin: 0 auto 30px;
        border-top: 1px solid #1d2088;
        font-size: 0.8rem;
    }
    .headerMenuList_menuLink-item {
        border-bottom: 1px solid #9E9F9F;
    }
    .bgImg {
        padding: 10px 5%;
        background: url(/assets/common/img/btn_menu_open.svg);
        background-repeat: no-repeat;
        background-size: 13px;
        background-position: 93% center;
        font-size: 1.11rem;
    }
    .menuActive {
        background: url(/assets/common/img/btn_menu_close.svg);
        background-repeat: no-repeat;
        background-size: 13px;
        background-position: 93% center;
    }
    .headerMenuList_menuLink-itemCont {
        display: none;
    }
    .headerMenuList_menuLinkSub-item {
        border-bottom: 1px solid #9E9F9F;
        font-size: 0.75rem;
        background: url(/assets/common/img/btn_menu_sub.svg);
        background-repeat: no-repeat;
        background-size: 7px;
        background-position: 92% center;
        background-color: #eee;
    }
    .cs-menuLink {
        display: block;
        padding: 10px 5%;
        font-size: 1.11rem;
    }
    .cs-menuLinkSub {
        display: block;
        padding: 10px 10%;
        font-size: 0.9rem;
    }
}
/*-------------------------------------------------
|-    subway Color
-------------------------------------------------*/
.midosuji {
    background: #DB260A;
}
.tanimachi {
    background: #AA1B86;
}
.yotsubashi {
    background: #0073BD;
}
.chuo {
    background: #00A53C;
}
.sennichimae {
    background: #EB74A8;
}
.sakaisuji {
    background: #B24321;
}
.nagahori {
    background: #BBD300;
}
.imazatosuji {
    background: #F49F00;
}
.newtram {
    background: #00A6E2;
}
/*-------------------------------------------------
|-    text-align
-------------------------------------------------*/
.talgnL {
    text-align: left;
}
.talgnC {
    text-align: center;
}
.talgnR {
    text-align: right;
}
/*-------------------------------------------------
|-    margin,padding
-------------------------------------------------*/
.mtop10 {
    margin-top: 10px;
}
.mrgt15 {
    margin-right: 10%;
}
.mleft15 {
    margin-left: 10%;
}
.mbtm0 {
    margin-bottom: 0 !important;
}
.mbtm10 {
    margin-bottom: 10px;
}
.mbtm15 {
    margin-bottom: 15px;
}
.mbtm20 {
    margin-bottom: 20px;
}
.mbtm25 {
    margin-bottom: 25px;
}
.mbtm30 {
    margin-bottom: 30px;
}
.pbtm0 {
    padding-bottom: 0;
}
/*-------------------------------------------------
|-    リッチテキスト
-------------------------------------------------*/
.detailBlock.leftArea * {
    word-break: normal;
}
.detailBlock * {
    word-break: normal;
}
.detailBlock a {
    text-decoration: underline;
    color: #1d2088;
}
.midasi {
    background-color:#efefef;
    padding:5px;
    font-weight:bold;
    margin-top:30px;
}
.editerImg {
    text-align: center;
}
.editerImg img {
    max-width: 768px;
}
.editerTxt {
    width:100%;
    margin-bottom:10px;
}
.editerImgTxt-side {
    display:flex;
}
.editerImg-side {
    width:49%;
}
.editerImg-side:nth-of-type(1) {
    margin-right:2%;
}
.editerFile_link {
    color:#00f;
    text-decoration:underline;
}
.editerCustomGroup {
    display:flex;
    flex-wrap:wrap;
    justify-content: space-between;
}
@media screen and (max-width:767px){
    .editerImg img {
        width: 100% !important;
    }
    .editerCustomGroup_row {
        width:100%;
    }
}

.photoBlock {
    display: flex;
    justify-content: space-between;
    list-style: none !important;
}
.photoBlock_item img {
    width: 100% !important;
}
.photoBlock_item-img2 {
    width: 48% !important;
}
.photoBlock_item-img3 {
    width: 31% !important;
}

@media screen and (max-width:767px){
    .photoBlock {
        display: block;
    }
    .photoBlock_item-img2, .photoBlock_item-img3 {
        width: 100% !important;
        margin-bottom: 10px;
    }
}
/*-------------------------------------------------
|-    rNavArea
-------------------------------------------------*/
.rNavArea{
    width:31%;
    margin-bottom:80px;
}

.rNav{
    width:100%;
    margin:0 auto;
    border-top:1px solid #aaa;
    box-sizing:border-box;

}
.rNav_item{
    width:100%;
    border-left:1px solid #aaa;
    border-right:1px solid #aaa;
    border-bottom:1px solid #aaa;
    box-sizing:border-box;
    background:#1d2088;
    color:#fff;
}
.rNav_item:hover{
    background:#796baf;
    transition:0.3s;
}
.cs-rNavLink1{
    display:block;
    width:100%;
    color:#fff;
    padding:10px 6%;
    box-sizing:border-box;
}
.rNav_btn{
    width:100%;
    padding:10px 6%;
    border-left:1px solid #aaa;
    border-right:1px solid #aaa;
    border-bottom:1px solid #aaa;
    box-sizing:border-box;
    cursor:pointer;
    color:#fff;
    background-color:#1d2088;
    position: relative;
}
.rNav_btn:hover {
    background-color: #796baf;
    transition: 0.3s;
}
.rNav_btn:after {
    content: '';
    display: inline-block;
    background-image: url(/img/ico_station_arrow_down.svg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.cs-current {
    background-color: #1d2088;
}
.rNav_btn.active:after {
    content: '';
    display: inline-block;
    background-image: url(/img/ico_station_arrow_up.svg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 6%;
    margin: auto;
    width: 14px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.rNav_btn.active{
    background-color:#796baf;
}
.rNav_tglBox{
    width:100%;
    display:none;
}
.cs-tglItem{
    width:100%;
    border-bottom:1px solid #aaa;
    box-sizing:border-box;
    background:#f1f0f7;
}
.cs-tglItem:hover{
    background:#796baf;
    transition:0.3s;
}
.cs-rNavLink2{
    display:block;
    width:100%;
    color:#1d2088;
    padding:10px 10%;
    box-sizing:border-box;
}
.cs-rNavLink2:hover{
    color:#fff;
    transition:0.3s;
}

@media screen and (min-width:768px){
    .rNavBtnOpen,
    .rNavBtnClose{
        display:none !important;
    }
}
@media only print {
    .rNavBtnOpen,
    .rNavBtnClose{
        display:none !important;
    }
}
@media screen and (max-width:767px){

    .bgNav{
        position:fixed;
        width:100%;
        height:100%;
        z-index:2;
        background:rgba(0,0,0,0.8);
        display:none;
    }
    .rNavArea{
        width:100%;
        float:none;
        position:fixed;
        top:0;
        left:86%;
        z-index:4;
        margin-bottom:50px;
        height:50px;
    }
    .rNavBtnOpen,
    .rNavBtnClose{
        width:14%;
        float:left;
        margin-top:20px;
        background:#1d2088;
        border:1px solid #aaa;
        box-sizing:border-box;
        padding:10px 0 5px;
    }
    .rNavBtnOpen{
        display:block;
    }
    .rNavBtn_icon{
        width:53%;
        margin:0 auto;
    }
    .rNavBtn_txt{
        width:98%;
        margin:0 auto;
        text-align:center;
        color:#fff;
        font-size:0.71rem;
    }
    .rNav{
        width:86%;
        float:right;
        overflow-y:scroll;
    }
    .rNav_item{
        font-size:0.85rem;
    }
    .rNav_btn{
        font-size:0.85rem;
    }
    .cs-tglItem{
        font-size:0.85rem;
    }
}
/*-------------------------------------------------
|-    btmInfo
-------------------------------------------------*/
.btmInfo{
    width:100%;
    max-width:960px;
    margin:0 auto 100px;
}
.btmInfo_btmBnr{
    width:100%;
    margin:0 auto;
}
.cs-btmInfoBnr{
    float:left;
    /* width:calc(96% / 3); */
    width:31.25%;
    margin-left:1.04%;
}
.cs-btmInfoBnr:first-child{
    margin-left:0%;
}
.cs-btmInfoBnrShort {
    width:17.18%;
    display:inline-block;
    float:left;
    margin-left:1.04%;
}
.cs-bnrLink{
    display:block;
    width:100%;
    transition:0s;
}
.cs-bnrLink:hover{
    opacity:0.8;
    transition: 0.3s;
}

@media screen and (max-width:767px){
    .btmInfo{
        width:93%;
        margin:0 auto 50px;
    }
    .cs-btmInfoBnr{
        width:100%;
        float:none;
        margin-bottom:15px;
        margin-left:0;
    }
    .cs-btmInfoBnrShort {
        width:100%;
        margin-bottom:15px;
        margin-left:0;
    }
}
/*-------------------------------------------------
|-    リッチテキスト　テーブル
-------------------------------------------------*/
.detailBlock:not(table):not(tbody):not(tfoot):not(thead):not(tr):not(th):not(td){
    margin: 0;
    padding: 0;
}
.detailBlock table{
    border-style: solid;
    max-width: 100% !important;
    height: auto;
    border-collapse: collapse;
/*    table-layout:fixed;*/
}
.detailBlock tr,
.detailBlock td {
    height: auto;
}
@media screen\0 {
    .detailBlock table[border="0"] {
        border: none;
    }
}
@supports (-ms-ime-align: auto) {
    .detailBlock table[border="0"] {
        border: none;
    }
}

.detailBlock table[cellspacing] {
    border-collapse: separate;
}
.detailBlock table[cellspacing="0"] {
    border-collapse: collapse;
}

.detailBlock table td{
    word-break: break-all;
    box-sizing: border-box;
}
.detailBlock table[border] td{
    border-style: solid;
}
.detailBlock table[border="0"] td{
    border:none;
}

@media screen and (max-width:767px){
    .detailBlock table {
        width: 100% !important;
    }
}

.th .detailBlock span {
    line-height:200%;
}


/*-------------------------------------------------
|-    リッチテキスト　タイトル
-------------------------------------------------*/
.detailBlock .rtTtl {
    width: 100%;
    background: #1c1f87;
    color: #fff;
    font-weight: bold;
    font-size: 1.28rem;
    text-align: center;
    padding: 15px 5%;
    box-sizing: border-box;
}
.detailBlock .rtTtl img {
    vertical-align: middle;
}
.detailBlock_ttl {
    color: #f00;
    font-size: 1.5rem;
    margin-top: 20px;
}
.pageTtl {
    width: 100%;
    font-size: 1.71rem;
    font-weight: bold;
    color: #1d2088;
    text-align: center;
    line-height: 1.4;
    margin: 60px auto 20px;
}
.newsTtl {
    margin: 64px 0 15px;
    border-bottom: 1px solid #aaa;
}
@media screen and (max-width:767px){
    .detailBlock .rtTtl {
        font-size: 0.85rem;
        padding: 12px 5%;
    }
    .pageTtl {
        width: 87.5%;
        font-size: 1.37rem;
        margin: 0 auto 26px;
        padding-top: 47px;
    }
}
/*-------------------------------------------------
|-    リッチテキスト　リスト
-------------------------------------------------*/
.detailBlock .rtListDot {
    list-style-type: disc;
    padding-left: 30px;
    box-sizing: border-box;
}
.detailBlock .rtListNum {
    list-style-type: decimal;
    padding-left: 30px;
    box-sizing: border-box;
}
.detailBlock .rtListArrow {
    list-style-image: url('/assets/common/img/img_list_arrow.png');
    padding-left: 30px;
    box-sizing: border-box;
}
/*-------------------------------------------------
|-    リッチテキスト　NEWS
-------------------------------------------------*/
.newsTtl {
    margin: 64px 0 15px;
    border-bottom: 1px solid #aaa;
}
.newsTtl_date {
    margin-bottom: 20px;
}
.cs-newsCate {
    background: #796baf;
    color: #fff;
    padding: 0 10px;
    margin-left: 1%;
    font-size: 0.92rem;
}
.newsTtl_ttl {
    font-size: 1.71rem;
    font-weight: bold;
    color: #1d2088;
}
@media screen and (max-width:767px){
    .newsTtl {
        padding: 45px 0 10px;
        margin: 0 auto;
        width: 87.5%;
    }
    .newsTtl_date {
        font-size: 0.85rem;
    }
    .cs-newsCate {
        font-size: 0.77rem;
        padding: 0 3%;
        margin-left: 3%;
    }
    .newsTtl_ttl {
        font-size: 1.37rem;
        line-height: 120%;
    }
}

/*-------------------------------------------------
|-    リッチテキスト　ブロック
-------------------------------------------------*/
.detailBlock {
    font-size: 1.0rem;
}
.detailBlock strong,
.detailBlock strong * {
    font-weight: bold;
    font-family: Verdana,Arial,Helvetica,sans-serif;
}
.flexBlock {
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.leftArea {
    width: 66%;
}
.detailBlock .rtBlock_29 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 29%;
}
.detailBlock .rtBlock_39 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 39%;
}
.detailBlock .rtBlock_49 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 49%;
}
.detailBlock .rtBlock_59 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 59%;
}
.detailBlock .rtBlock_69 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 69%;
}

.detailBlock a:hover {
    opacity: 0.8;
}

.detailBlock img,
.detailBlock .rtBlock_29 img,
.detailBlock .rtBlock_39 img,
.detailBlock .rtBlock_49 img,
.detailBlock .rtBlock_59 img,
.detailBlock .rtBlock_69 img,
.detailBlock .rtBlock_photo3-32 img,
.detailBlock .rtBlock_photo4-23 img,
.detailBlock .rtPhoto_item img,
.detailBlock .rtPhoto_w100 img {
    max-width:100% !important;
    height:auto;
}
.detailBlock .rtBlock_block2 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 49%;
}
.detailBlock .rtBlock_photo3 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 32%;
}
.detailBlock .rtBlock_photo4 {
    float: left;
    margin-right: 2%;
    list-style: none;
    width: 23.5%;
}
.detailBlock .rtBlock_29:last-child,
.detailBlock .rtBlock_39:last-child,
.detailBlock .rtBlock_49:last-child,
.detailBlock .rtBlock_59:last-child,
.detailBlock .rtBlock_69:last-child,
.detailBlock .rtBlock_block2:last-child,
.detailBlock .rtBlock_photo3:last-child,
.detailBlock .rtBlock_photo4:last-child {
    margin-right: 0;
}

.detailBlock .rtBc_gray {
    background: #efefef;
    padding: 20px;
}
.detailBlock .rtBc_yellow {
    background: #fffce5;
    padding: 20px;
}
.detailBlock .rtBc_blue {
    background: #b5b1d1;
    padding: 20px;
}

.detailBlock .rtPageLinkArea {
    width: 100%;
    margin: 0 auto 70px;
    background: #b5b1d1;
    padding: 20px 3% 0;
    box-sizing: border-box;
}
.detailBlock .rtPageLinkList {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
}
.detailBlock .rtPageLinkList_item {
    align-items: center;
    width: 32%;
    line-height: 1.2;
    margin-left: 2%;
    margin-bottom: 20px;
    background-color: rgb(255, 255, 255);
    box-sizing: border-box;
    background-image: url(/assets/common/img/ico_link_txt_arrow_down.svg);
    background-size: 6px 6px;
    background-repeat: no-repeat;
    background-position: 6px 50%;
}
.detailBlock .rtPageLinkList_item:nth-of-type(3n+1) {
    margin-left: 0;
}
.detailBlock .rtPageLinkList_item > a {
    color: #1d2088;
    width: 100%;
    padding: 8% 5px 8% 20px;
    display: inline-block;
    box-sizing: border-box;
    height: 100%;
    display: flex;
    align-items: center;
}

.detailBlock .fSize8 {
    font-size: 0.6rem;
}
.detailBlock .fSize9 {
    font-size: 0.68rem;
}
.detailBlock .fSize10 {
    font-size: 0.77rem;
}
.detailBlock .fSize12 {
    font-size: 0.85rem;
}
.detailBlock .fSize14 {
    font-size: 1.0rem;
}
.detailBlock .fSize16 {
    font-size: 1.14rem;
}
.detailBlock .fSize18 {
    font-size: 1.28rem;
}
.detailBlock .fSize20 {
    font-size: 1.42rem;
}
.detailBlock .fSize24 {
    font-size: 1.71rem;
}
.detailBlock .fSize28 {
    font-size: 2.0rem;
}
.detailBlock .fSize34 {
    font-size: 2.42rem;
}

@media screen and (max-width:767px){
    /* 計算式（size * 0.9 / 14） */
    .detailBlock .fSize8 {
        font-size: 0.5rem;
    }
    .detailBlock .fSize9 {
        font-size: 0.57rem;
    }
    .detailBlock .fSize10 {
        font-size: 0.64rem;
    }
    .detailBlock .fSize12 {
        font-size: 0.77rem;
    }
    .detailBlock .fSize14 {
        font-size: 0.9rem;
    }
    .detailBlock .fSize16 {
        font-size: 1.02rem;
    }
    .detailBlock .fSize18 {
        font-size: 1.15rem;
    }
    .detailBlock .fSize20 {
        font-size: 1.28rem;
    }
    .detailBlock .fSize24 {
        font-size: 1.54rem;
    }
    .detailBlock .fSize28 {
        font-size: 1.8rem;
    }
    .detailBlock .fSize34 {
        font-size: 2.18rem;
    }
}


@media screen and (max-width:767px){
    .detailBlock {
        margin: 0 auto !important;
        width: 87.5%;
        font-size: 0.9rem;
    }
    .leftArea {
        width: 100%;
    }

    .detailBlock .rtBlock_29,
    .detailBlock .rtBlock_39,
    .detailBlock .rtBlock_49,
    .detailBlock .rtBlock_59,
    .detailBlock .rtBlock_69,
    .detailBlock .rtBlock_block2,
    .detailBlock .rtBlock_photo3 {
        float: none;
        margin-bottom: 10px;
        width: 100%;
/*
        width: 100% !important;
        height: auto !important;
*/
    }
    .detailBlock .rtBlock_photo4 {
        margin: 0 1% 10px 0;
        width: 49%;
    }
    .detailBlock .rtBlock_29:last-child,
    .detailBlock .rtBlock_39:last-child,
    .detailBlock .rtBlock_49:last-child,
    .detailBlock .rtBlock_59:last-child,
    .detailBlock .rtBlock_69:last-child,
    .detailBlock .rtBlock_block2:last-child,
    .detailBlock .rtBlock_photo3:last-child {
        margin-bottom: 0;
    }

    .detailBlock .rtBc_gray {
        padding: 10px;
    }
    .detailBlock .rtBc_yellow {
        padding: 10px;
    }
    .detailBlock .rtBc_blue {
        padding: 10px;
    }
}

/*-------------------------------------------------
|-    リッチテキスト　ボタン
-------------------------------------------------*/
.detailBlock .rtGrayBtn {
    margin: 0 auto;
    width: 47%;
}
.detailBlock .cs-rtLink {
    background: #f1f0f7;
    border: 1px solid #aaa;
    border-radius: 5px;
    box-sizing: border-box;
    color: #1d2088;
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 20px 5%;
    width: 100%;
}
.detailBlock .cs-rtLink:hover {
    opacity: 0.6;
}
.detailBlock .cs-rtLink:before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 12px;
    background-image: url(/assets/common/img/img_arrow_right_navy.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 12px;
}

.detailBlock .rcGrayBtn_area,
.detailBlock .rcBlueBtn_area {
    display: flex;
    justify-content: space-between;
}
.detailBlock .rcGrayBtn_area-item,
.detailBlock .rcBlueBtn_area-item {
    text-align: center;
    list-style: none;
    width: 45.7%;
}
.detailBlock .rtBlueBtn {
    margin: 0 auto;
    width: 47%;
}
.detailBlock .cs-rtBbLink {
    background: #1d2088;
    border: 1px solid #aaa;
    border-radius: 5px;
    box-sizing: border-box;
    color: #fff;
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 20px 5%;
    width: 100%;
}
.detailBlock .cs-rtBbLink-subBlue {
    background: #796baf;
    border: none;
}
.detailBlock .cs-rtBbLink-red {
    background: #ff0000;
    border: none;
}
.detailBlock .cs-rtBbLink:hover {
    opacity: 0.8;
}
.detailBlock .cs-rtBbLink:before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 12px;
    background-image: url(/assets/common/img/img_arrow_right_white.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 12px;
}

.detailBlock .rtList_ttl {
    background: #888;
    box-sizing: border-box;
    color: #fff;
    clear: left;
    float: left;
    text-align: center;
    list-style: none;
    margin-bottom: 10px;
    padding: 10px;
    width: 25%;
}
.detailBlock .rtList_item {
    box-sizing: border-box;
    float: right;
    list-style: none;
    margin-bottom: 10px;
    padding: 10px;
    width: 73%;
}

@media screen and (max-width:767px){
    .detailBlock .rtGrayBtn,
    .detailBlock .rcGrayBtn_area-item,
    .detailBlock .rtBlueBtn {
        width: 100%;
    }
    .detailBlock .cs-rtLink,
    .detailBlock .cs-rtBbLink {
        font-size: 0.85rem;
        padding: 15px 5%;
    }
    .detailBlock .cs-rtLink:before,
    .detailBlock .cs-rtBbLink:before {
        width: 6%;
        height: 13px;
    }
    .detailBlock .rcGrayBtn_area,
    .detailBlock .rcBlueBtn_area {
        display: block;
    }
    .detailBlock .rcGrayBtn_area-item,
    .detailBlock .rcBlueBtn_area-item {
        margin-bottom: 20px;
        width: 100%;
    }
    .detailBlock .rtList_ttl {
        display: inline-block;
        float: none;
        margin-bottom: 0;
        padding: 5px 5%;
        max-width: 100%;
        width: auto;
    }
    .detailBlock .rtList_item {
        float: none;
        padding: 5px 3%;
        width: 100%;
    }
}

.detailBlock .rtBtnBlock_item {
    float: left;
    list-style: none;
    width: 16.6%;
}
.detailBlock .rtPreBtnBlock_item {
    float: left;
    list-style: none;
    width: 24%;
    margin-right: 1%;
}
.detailBlock .rtPreBtnBlock_item:last-child {
    margin-right: 0;
}

@media screen and (max-width:767px){
    .detailBlock .rtBtnBlock_item {
        width: 33%;
    }
    .detailBlock .rtPreBtnBlock_item {
        width: 49%;
    }
}

.backBtnItm {
    width: 45.8%;
    margin: 100px auto 50px;
}
.backBtnItm-list {
    margin: 100px auto -60px;
}
.cs-backBtn {
    display: block;
    text-align: center;
    padding: 20px 5%;
    background: #f1f0f7;
    color: #1d2088;
    border: 1px solid #aaa;
    border-radius: 5px;
    box-sizing: border-box;
}
.cs-backBtn:hover {
    opacity: 0.6;
}
.cs-backBtn:before {
    content: '';
    display: inline-block;
    width: 7%;
    height: 11px;
    background-image: url(/img/img_arrow_left_navy.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
}

@media screen and (max-width:767px){
    .backBtnItm {
        width: 87.5%;
        margin: 45px auto;
    }
    .cs-backBtn {
        font-size: 0.85rem;
        padding: 15px 5%;
    }
    .cs-backBtn:before {
        height: 12px;
        margin-right: 3%;
    }
}
/*-------------------------------------------------
|-    リッチテキスト　ライン
-------------------------------------------------*/
.detailBlock .rtLine {
    border: none;
    border-bottom: 1px solid #aaa;
    margin: 0 auto;
    width: 97%;
}
.detailBlock .rtLineDotte {
    border: none;
    border-bottom: 1px dotted #aaa;
    margin: 0 auto;
    width: 97%;
}
.detailBlock .rtBorder {
    border: 1px solid #ccc;
    padding: 0;
}
.detailBlock .rtBorderP {
    border: 1px solid #ccc;
    padding: 2%;
}
/*-------------------------------------------------
|-    リッチテキスト　採用情報
-------------------------------------------------*/
.detailBlock .rtPattern1Block {
    width: 93%;
    margin: 0 auto 47px;
}
.detailBlock .rtPattern1Block:last-child {
    padding-bottom: 30px;
}
.detailBlock .rtPattern1_txtArea {
    margin-bottom: 30px;
}
.detailBlock .rtPattern1_txtArea-ttl {
    font-size: 1.71rem;
    padding: 5px 1%;
    color: #26b8b6;
    font-weight: bold;
    border-left: 12px solid #26b8b6;
    margin-bottom: 30px;
}
.detailBlock .rtPattern1_txtArea-txt {
    text-indent: 1rem;
    line-height: 170%;
}

.detailBlock .rtPattern1_photo-item {
    list-style: none;
    width: 48%;
    float: left;
    margin-bottom: 4%;
}
.detailBlock .rtPattern1_photo-item li {
    list-style: none;
}
.detailBlock .rtPattern1_photo-item:nth-child(odd) {
    margin-right: 4%;
}
.detailBlock .rtPattern1_photo-item:last-child,
.detailBlock .rtPattern1_photo-item:nth-last-child(2) {
    margin-bottom: 0;
}
.detailBlock .rtPattern1_photo-itemW100 {
    list-style: none;
    text-align: center;
    width: 100%;
}

@media screen and (max-width:767px){
    .detailBlock .rtPattern1Block {
        width: 87.5%;
        margin: 0 auto 30px;
    }
    .detailBlock .rtPattern1Block:last-child {
        padding-bottom: 13px;
    }
    .detailBlock .rtPattern1_txtArea {
        margin-bottom: 15px;
    }
    .detailBlock .rtPattern1_txtArea-ttl {
        font-size: 1.11rem;
        padding: 3px 2%;
        border-left: 6px solid #26b8b6;
        margin-bottom: 13px;
    }
    .detailBlock .rtPattern1_txtArea-txt {
        font-size: 0.9rem;
        text-indent: 0.9rem;
    }
    .detailBlock .rtPageLinkArea {
        padding:20px 3%;
    }
    .detailBlock .rtPageLinkList {
        display: block;
    }
    .detailBlock .rtPageLinkList_item {
        width: 100%;
        margin-left: 0;
    }
    .detailBlock .rtPageLinkList_item:last-child {
        margin-bottom: 0;
    }
}
/*-------------------------------------------------
|-    pageLinkArea
-------------------------------------------------*/
.detailBlock .pageLinkArea{
    width:100%;
    margin:0 auto 30px;
    display:flex;
    flex-wrap:wrap;
}
.detailBlock .pageLinkArea_item{
    display:flex;
    width:calc(94% / 3);
    margin-left:3%;
    border:1px solid #aaa;
    box-sizing:border-box;
    text-align:center;
}
.detailBlock .pageLinkArea_item:first-child{
    margin-left:0%;
}
.detailBlock .cs-offIcon{
    display:inline-block;
    width:44px;
}
.detailBlock .cs-onIcon{
    display:none;
    width:44px;
}
.detailBlock .cs-pageLinkTxt{
    display:inline-block;
    font-weight:bold;
    text-align:left;
    padding-top:3px;
}
.detailBlock .cs-pageLinkBtn{
    display:flex;
    align-items:center;
    justify-content: center;
    width:100%;
    padding:20px 10px;
    background:#f1f0f7;
    box-sizing:border-box;
    color:#1d2088;
    font-size:1.28rem;
    line-height:1.2;
}

@media screen and (min-width:768px){
    .detailBlock .cs-pageLinkBtn:hover{
        background:#796baf;
        color:#fff;
        transition:0.3s;
    }
    .detailBlock .cs-pageLinkBtn:hover .cs-offIcon{
        display:none;
        transition:0.3s;
    }
    .detailBlock .cs-pageLinkBtn:hover .cs-onIcon{
        display:inline-block;
        transition:0.3s;
    }
}
@media screen and (max-width:767px){
    .detailBlock .pageLinkArea{
        width:93%;
        margin:0 auto 20px;
    }
    .detailBlock .pageLinkArea_item{
        width:100%;
        margin-left:0;
        margin-bottom:15px;
    }
    .detailBlock .cs-pageLinkBtn{
        padding:10px 10px 10px;
        font-size:0.95rem;
    }
    .detailBlock .cs-pageLinkBtn:hover {
        opacity: 1;
    }
    .detailBlock .cs-offIcon{
        width:30px;
    }
    .detailBlock .cs-onIcon{
        width:30px;
    }
    .detailBlock .cs-pageLinkTxt{
        padding-top:2px;
    }

    .detailBlock *[style="padding-left: 30px;"] {
        padding-left: 5% !important;
        box-sizing:border-box;
    }
    .detailBlock *[style="padding-left: 60px;"] {
        padding-left: 10% !important;
        box-sizing:border-box;
    }
    .detailBlock *[style="padding-left: 90px;"] {
        padding-left: 15% !important;
        box-sizing:border-box;
    }
    .detailBlock *[style="padding-left: 120px;"] {
        padding-left: 20% !important;
        box-sizing:border-box;
    }
}

/*-------------------------------------------------
|-    timeTableTxt
-------------------------------------------------*/
.detailBlock .timeTableTxt {
    margin-bottom: 15px;
}
.detailBlock .timeTableTxt_date {
    float: left;
    font-size: 1.5rem;
    margin-bottom: 15px;
}
.detailBlock .timeTableTxt_link {
    float: right;
    font-size: 1.2rem;
}
.detailBlock .timeTableTxt_link a {
    color: #00e;
    text-decoration: underline;
}
.detailBlock .timeTableTxt_stc {
    clear: both;
    font-size: 1.4rem;
}

.detailBlock table.timeTableWarning {
    width: 95%;
    margin: 0 auto 15px;
    font-size: 1.1rem;
    border: 0;
}
.detailBlock table.timeTableWarning td {
    vertical-align: top;
}

@media screen and (max-width:767px){
    .detailBlock .timeTableTxt_date {
        font-size: 1.2rem;
        margin-bottom: 10px;
    }
    .detailBlock .timeTableTxt_link {
        font-size: 1rem;
    }
    .detailBlock .timeTableTxt_stc,
    .detailBlock table.timeTableWarning {
        font-size: 1rem;
    }
    .detailBlock table.timeTableWarning  {
        width: 100%;
    }
}
.detailBlock .timeTable {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}
.detailBlock table.timeTableMain {
    width: 49.5%;
    border: 1px solid #aaa;
}

.detailBlock table.timeTableMain th {
    background: #33ccff;
}
.detailBlock table.timeTableMain th,
.detailBlock table.timeTableMain td {
    text-align: center;
    border: 1px solid #aaa;
    padding: 10px 0;
}
.detailBlock .ttm_date, .ttm_week {
    width: 15%;
}
@media screen and (max-width:767px){
    .detailBlock .timeTable {
        display: block;
        margin-bottom: 0;
    }
    .detailBlock table.timeTableMain {
        width: 100%;
        margin-bottom: 10px;
    }
}
.detailBlock .timeTableBtm {
    margin-bottom: 20px;
}
.detailBlock .timeTableBtm a {
    display: block;
    color: #00e;
    text-decoration: underline;
    text-indent: 1rem;
}

/*-------------------------------------------------
|-    barriafree
-------------------------------------------------*/
.detailBlock .cs-block {
    width: 100%;
    margin: 0 auto 50px;
}
.detailBlock .blockTtl {
    width: 100%;
    margin: 0 auto 20px;
    background: #796baf;
    padding: 10px 20px;
    box-sizing: border-box;
    color: #fff;
    font-size: 1.14rem;
    line-height: 1.2;
}
.detailBlock .imageArea {
    width: 93%;
    margin: 0 auto;
}
.detailBlock .imageArea_item2 {
    width: 48%;
    margin: 0 auto 20px;
}
.detailBlock .floatL {
    float: left;
}
.detailBlock .floatR {
    float: right;
}
.detailBlock .cs-txtIndent {
    width: 100%;
    margin: 0 auto;
    text-indent: 1em;
    line-height: 1.6;
}


/*-------------------------------------------------
|-    tsutaeruweb
-------------------------------------------------*/
.tsutaeru-menu,
.tsutaeru-speech-buttons .tsutaeru-button.tsutaeru-button-speech-config {
    display:none;
}
.tsutaeru-speech-buttons .tsutaeru-button.tsutaeru-button-speech-start,
.tsutaeru-speech-buttons .tsutaeru-button.tsutaeru-button-speech-control {
    width: 70%;
    padding: 0 10px 0 0;
    background: #fff;
    border: 0;
    cursor: pointer;
    white-space: nowrap;
    background:none;
    color:#333;
    font-size:12px;
}
.tsutaeru-speech-buttons .tsutaeru-button.tsutaeru-button-speech-control {
    width: 100%;
}
.tsutaeru-speech-buttons .tsutaeru-button.tsutaeru-button-speech-start:after,
.tsutaeru-speech-buttons .tsutaeru-button.tsutaeru-button-speech-control:after {
    display: inline-block;
    width: 20%;
    content: url(/assets/common/img/icon_voice.svg);
    margin-left: 2%;
    position: relative;
    vertical-align: middle;
}
.tsutaeru-text {
    z-index:10000;
}
.headerMenuRightList .tsutaeru-speech {
    padding:0;
}
.headerMenuRightList .tsutaeru-speech-buttons {
    padding:0;
}

@media screen and (max-width:767px){
    .tsutaeru-speech-buttons {
        text-align:left !important;
    }
}

/*-------------------------------------------------
|-    metro id
-------------------------------------------------*/
.cs-img {
    width: 100%;
}
.font-weight-light {
    font-family: 'UD Shin Go Light', sans-serif;
}
.font-weight-midiam {
    font-family: 'UD Shin Go Midiam', sans-serif;
}
.link_col {
    color: #1D2088;
    text-decoration: underline;
}
.link_col:hover {
    text-decoration: none;
}
.flex {
    display: flex;
}
.justify-content-between {
    justify-content: space-between;
}
.align-items-center {
    align-items: center;
}
/*-------------------------------------------------
|-    metro id wrap
-------------------------------------------------*/
.wrap {
    padding: 60px 0 140px;
    background: #F2F2F4;
}
.mainBox {
    width: 95%;
    max-width: 800px;
    margin: 0 auto;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgb(68 68 68 / 16%);
}
.ttlBox {
    position: relative;
}
.mainBox_ttl {
    font-family: TBGothicB Std;
    font-size: 19px;
    font-weight: 700;
    line-height: 38px;
    letter-spacing: 0em;
    text-align: center;
    padding: 30px 0 20px;
    color: #1D1F82;
    font-style: normal;
    border-bottom: 1px solid #1D1F80;
}
.logoutBtn {
    position: absolute;
    top: 10px;
    right: 10px;
    min-height: 32px;
    color: #1D2088;
    font-size: .92rem;
    background: #fff;
    border: 1px solid #1D2088;
    box-sizing: border-box;
    border-radius: 5px;
    cursor: pointer;
    transition: all .2s;
}
.logoutBtn:hover {
    color: #fff;
    background: #1D2088;
}
.contHed {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 40px 0;
}
.contHed_ttl {
    margin-bottom: 20px;
    font-size: 1.28rem;
}
.contHed_txt {
    margin-bottom: 20px;
}
.contHed_txt-c {
	text-align: center;
}
.contHed_item {
    margin-top: 20px;
    padding-left: .85rem;
    font-size: .85rem;
    text-indent: -.85rem;
}
.contHed_item:first-child {
    margin-top: 0;
}
.contBox {
    padding: 40px 0;
    background: #FCFCFC;
}
.contFt {
    padding: 40px 0 50px;
    border-radius: 0 0 10px 10px;
}
@media screen and (max-width: 767px) {
    .wrap {
        padding: 0;
    }
    .mainBox {
        width: 100%;
        border-radius: 0;
    }
    .mainBox_ttl {
        padding: 30px 0 10px;
        font-size: 1.42rem;
    }
    .logoutBtn {
        top: 5px;
        right: 5px;
        height: 26px;
        font-size: .85rem;
    }
    .contHed {
        max-width: none;
        padding: 30px 4%;
        box-sizing: border-box;
        background: #F5F5F9;
    }
    .contHed_ttl {
        font-size: 1.14rem;
    }
    .contHed_item {
        padding-left: .71rem;
        font-size: .71rem;
        text-indent: -.71rem;
    }
    .contBox {
        padding: 30px 0 40px;
    }
    .contFt {
        padding: 50px 0 100px;
        background: #F5F5F9;
    }
}
/*-------------------------------------------------
|-    metro id form
-------------------------------------------------*/
.form_ttl {
    margin-top: 30px;
    font-size: 1.14rem;
}
.form_ttl:first-child {
    margin-top: 0;
}
.form_item {
    margin-top: 5px;
}
.form_item-flex {
    display: flex;
    justify-content: space-between;
}
.form_txt {
    font-size: 1.28rem;
}
.form_check {
    margin-top: 10px;
    text-align: right;
}
.input_txt {
    width: 100%;
    padding: 9px 10px;
    font-size: 1.28rem;
    background: #fff;
    border: 1px solid #BFBFBF;
    box-sizing: border-box;
    border-radius: 0;
}
.input_disabled {
    background-color: #e9e9e9;
}
.input_w180 {
    width: 180px;
}
.input_mr25 {
    margin-right: 25px;
}
@media screen and (max-width: 767px) {
    .form_ttl {
        margin-top: 25px;
        font-size: .92rem;
    }
    .form_txt {
        margin: 0 5px;
        font-size: .92rem;
    }
    .input_txt {
        padding: 10px;
        font-size: 1.15rem;
    }
    .input_w180 {
        width: 44%;
    }
    .input_mr25 {
        margin-right: 15px;
    }
}
.input_txt_disabled {
    background-color: #F5F5F9;
    border: none;
    color: black;
    opacity: 1;
}
/*-------------------------------------------------
|-    metro id select
-------------------------------------------------*/
.select {
    height: 48px;
    padding: 10px 25px 10px 10px;
    font-size: 1.28rem;
    background-color: #fff;
    background-image: url(/assets/img/img_select_arrow.svg);
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 13px 10px;
    border: 1px solid #BFBFBF;
    box-sizing: border-box;
    -webkit-appearance: none;
    appearance: none;
}
.select::-ms-expand {
    display: none;
}
.select_w90 {
    width: 90px;
}
.select_w120 {
    width: 120px;
}
.select_w180 {
    width: 180px;
}
.select_w190 {
    width: 190px;
}
.select_w200 {
    width: 200px;
}
.select.error {
    background-color: #F9DCDC;
    border: 1px solid #DD7272;
}
@media screen and (max-width: 767px) {
    .select {
        height: 47px;
        font-size: 1.14rem;
    }
    .select_w90 {
        width: 25%;
    }
    .select_w120 {
        width: 30%;
    }
    .select_w180 {
        width: 44%;
    }
}
.select_disabled {
    background-color: #F5F5F9;
    background-image: url(/assets/img/img_select_arrow_disabled.svg);
    border: none;
    color: black;
    opacity: 1;
}
/*-------------------------------------------------
|-    checkbox
-------------------------------------------------*/
.checkbox {
    display: none;
}
.check {
    font-family: TBGothicR Std;
    font-size: 17px;
    font-weight: 400;
    line-height: 34px;
    letter-spacing: 0em;
    text-align: left;
    position: relative;
    /*font-size: 1.14rem;*/
    padding-left: 30px;
    cursor: pointer;
}
.check::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background: #fff;
    border: 1px solid #BFBFBF;
    box-sizing: border-box;
    display: block;
}
.checkbox:checked + .check::before {
    background-color: #796BAF;
}
.checkbox:checked + .check::after {
    content: '';
    position: absolute;
    top: 5px;
    left: 6px;
    width: 6px;
    height: 11px;
    border-bottom: 2px solid white;
    border-right: 2px solid white;
    transform: rotate(40deg);
}
/* Safari */
_::-webkit-full-page-media, _:future, :root .check::before{
    top: -1px;
}
_::-webkit-full-page-media, _:future, :root .checkbox:checked + .check::after{
    top: 0;
}
@media screen and (max-width: 767px) {
    .check {
        font-size: 1rem;
    }
    .check::before {
        top: 0;
        transform: translateY(0)
    }
    .checkbox:checked + .check::after {
        top: 2px;
    }
}
/*-------------------------------------------------
|-    radio
-------------------------------------------------*/
.radio {
    display: none;
}
.radioTxt {
    position: relative;
    padding-left: 30px;
    font-size: 1.14rem;
}
.radioTxt:hover {
    cursor: pointer;
}
.radioTxt::before {
    content: '';
    position: absolute;
    top: 2px;
    left: 0;
    width: 19px;
    height: 19px;
    background: #fff;
    border: 1px solid #796BAF;
    border-radius: 50%;
    display: block;
}
.radio:checked + .radioTxt::after {
    content: '';
    position: absolute;
    top: 6px;
    left: 4px;
    width: 13px;
    height: 13px;
    background-color: #796BAF;
    border-radius: 50%;
    display: block;
}

/* Safari */
_::-webkit-full-page-media, _:future, :root .radioTxt::before {
    top: -1px;
}
_::-webkit-full-page-media, _:future, :root .radio:checked + .radioTxt::after {
    top: 3px;
}
@media screen and (max-width: 767px) {
    .radioTxt {
        padding-left: 25px;
        font-size: 1.07rem;
    }
    .radioTxt::before {
        top: 5px;
        width: 15px;
        height: 15px;
    }
    .radio:checked + .radioTxt::after {
        top: 8px;
        left: 3px;
        width: 11px;
        height: 11px;
    }
}
/*-------------------------------------------------
|-    metro id btn
-------------------------------------------------*/
.btn {
    font-family: TBGothicR Std;
    font-size: 17px;
    font-weight: 400;
    line-height: 34px;
    letter-spacing: 0em;
    text-align: center;
    position: relative;
    padding: 15px 0;
    color: #fff;
    /*font-size: 1.42rem;*/
    background: #1D2088;
    border: 0;
    border-radius: 5px;
    box-shadow: 0 3px 6px rgb(122 122 122 / 16%);
    display: block;
    cursor: pointer;
    transition: all.2s;
}
.btn:disabled {
    background: #c8c9e3;
    box-shadow: none;
}
.btn:hover {
    opacity: .8;
}
.btn_back {
    font-family: TBGothicR Std;
    font-size: 17px;
    font-weight: 400;
    line-height: 34px;
    letter-spacing: 0em;
    text-align: center;
    color: #796BAF;
    background: #fff;
    border: 1px solid #796BAF;
    box-shadow: none;
}
.btn-w190 {
    width: 190px;
}
.btn-w230 {
    width: 230px;
}
.btn_icon {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
}
/*-------------------------------------------------
|-    metro id required disabled
-------------------------------------------------*/
.required {
    margin-left: 20px;
    padding: 1px 6px;
    color: #fff;
    font-size: .85rem;
    background: #796BAF;
    display: inline-block;
}
.input_txt.active {
    color: #1D2088;
    background: #fff;
    border: 1px solid #1D2088;
}
.disabled {
    color: #1D2088;
    background: #F9F6FF !important;
    border: 1px solid #D0D1EC;
}
.textarea {
    border-radius: 0;
}
/*-------------------------------------------------
|-    metro id error
-------------------------------------------------*/
.form_error {
    margin-top: 5px;
    color: #DD7272;
    font-size: .92rem;
    display: none;
}
.error .form_error {
    display: block;
}
.input_txt.error {
    background: #F9DCDC;
    border: 1px solid #DD7272;
}

.check.error::before {
    background: #F9DCDC;
    border: 1px solid #DD7272;
}
.validation_error {
    border: 1px solid #FF0000;
}
@media screen and (max-width: 767px) {
    .btn {
        padding: 13px 0;
        font-size: 1.21rem;
    }
    .btn-w190 {
        width: 44%;
    }
    .btn-w230 {
        width: 44%;
    }
    .form_error {
        font-size: .85rem;
    }
}

/**
 * margin
 */
.mt-none {
    margin-top: 0 !important;
}
.mt-5 {
    margin-top: 5px !important;
}
.mt-10 {
    margin-top: 10px !important;
}
.mt-15 {
    margin-top: 15px !important;
}
.mt-20 {
    margin-top: 20px !important;
}
.mt-25 {
    margin-top: 25px !important;
}
.mt-30 {
    margin-top: 30px !important;
}
.mt-35 {
    margin-top: 35px !important;
}
.mt-40 {
    margin-top: 40px !important;
}
.mt-45 {
    margin-top: 45px !important;
}
.mt-50 {
    margin-top: 50px !important;
}
.mt-55 {
    margin-top: 55px !important;
}
.mt-60 {
    margin-top: 60px !important;
}
.mt-70 {
    margin-top: 70px !important;
}
.mt-80 {
    margin-top: 80px !important;
}
.mt-90 {
    margin-top: 90px !important;
}
.mt-100 {
    margin-top: 100px !important;
}
.mr-none {
    margin-right: 0 !important;
}
.mr-5 {
    margin-right: 5px !important;
}
.mr-10 {
    margin-right: 10px !important;
}
.mr-15 {
    margin-right: 15px !important;
}
.mr-20 {
    margin-right: 20px !important;
}
.mr-25 {
    margin-right: 25px !important;
}
.mr-30 {
    margin-right: 30px !important;
}
.mr-35 {
    margin-right: 35px !important;
}
.mr-40 {
    margin-right: 40px !important;
}
.mr-50 {
    margin-right: 50px !important;
}
.mb-none {
    margin-bottom: 0 !important;
}
.mb-5 {
    margin-bottom: 5px !important;
}
.mb-10 {
    margin-bottom: 10px !important;
}
.mb-15 {
    margin-bottom: 15px !important;
}
.mb-20 {
    margin-bottom: 20px !important;
}
.mb-25 {
    margin-bottom: 25px !important;
}
.mb-30 {
    margin-bottom: 30px !important;
}
.mb-35 {
    margin-bottom: 35px !important;
}
.mb-40 {
    margin-bottom: 40px !important;
}
.mb-45 {
    margin-bottom: 45px !important;
}
.mb-50 {
    margin-bottom: 50px !important;
}
.mb-55 {
    margin-bottom: 55px !important;
}
.mb-60 {
    margin-bottom: 60px !important;
}
.ml-none {
    margin-left: 0 !important;
}
.ml-5 {
    margin-left: 5px !important;
}
.ml-10 {
    margin-left: 10px !important;
}
.ml-15 {
    margin-left: 15px !important;
}
.ml-20 {
    margin-left: 20px !important;
}
.ml-25 {
    margin-left: 25px !important;
}
.ml-30 {
    margin-left: 30px !important;
}
.ml-35 {
    margin-left: 35px !important;
}
.ml-40 {
    margin-left: 40px !important;
}
.m-0auto {
    margin: 0 auto;
}
/**
 * width
 */
.width-100p {
    width: 100%;
}

/**
 * dialog
 */
.dlgBgArea {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 600; /** headerMenuBgと同じ */
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
}
.dlgWrapper {
    position: fixed;
    z-index: 1000; /* headerMenuListと同じ */
    top: 50%;
    left: 50%;
    display: none;
    width: 465px;
    padding-top: 28px;
    padding-bottom: 18px;
    transform: translate(-50%, -50%);
    box-sizing: border-box;
    background: #ffffff;
    border-radius: 6px;
}
.dlgTitle {
    margin-bottom: 10px;
    padding: 0 10px;
    font-size: 18px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    white-space: pre-line;
    color: #1D2088;
}
.dlgTitle:empty {
    margin-bottom: 0;
}
.dlgMsgArea {
    padding: 0 10px;
    font-size: 15px;
    font-weight: bold;
    line-height: 24px;
    text-align: center;
    white-space: pre-line;
}
.dlgBtnArea {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 20px;
}
.dlgBtnArea button{
    width: 150px;
    height: 54px;
    border-radius: 5px;
    font-size: 17px;
    margin-right: 9px;
}
.dlgBtnArea button:last-child{
    margin-right: 0px;
}

@media screen and (max-width: 767px) {
    .dlgWrapper {
        width: 339px;
    }
}

/*-------------------------------------------------
|-    chatbot
-------------------------------------------------*/
@media screen and (max-width: 767px) {
	#launcher {
		display: none;
	}
}


/*-------------------------------------------------
|-    eMetro用ヘッダー
-------------------------------------------------*/
.eMetroHeader {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 100;
    display: flex;
    align-items: center;
    width: 100%;
    height: 46px;
    background-color: #1D2088;
    justify-content: space-between;
}
.eMetroHeader ~ .wrap {
    margin-top: 46px;
}
.eMetroHeader + .wrap .contBox {
    padding-bottom: 200px; /* eMetroアプリでの文字入力時にキーボードが被るのを防ぐ */
}

.eMetroHeader_title {
    position: absolute;
    width: 100%;
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 15px;
    line-height: 22px;
}

.eMetroHeader_back {
    position: relative;
    width: 26px;
    height: 34px;
    padding: 8px;
    margin-left: 12px;
    border: none;
    background-color: unset;

    background: url("/assets/common/img/nav_icon_back.svg") no-repeat;
    background-position: center;
    background-size: 10px 18px;
    cursor: pointer;
}
