@charset "UTF-8";

/* index トップ
==========================================*/
#page_index .slider {
    float: left;
    width: 48%;
    margin-right: 4%;
}

#page_index .slider .outer {
    background: #fff;
    padding: 12px 12px 4px 12px;
}

#page_index .tram {
    float: left;
    width: 48%;
}

#page_index .container {
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    flex-wrap: wrap;
}

#page_index .home-img {
    padding: 60px;
    background: url(../../images/home-img.jpg) center center;
    background-size: cover;
}

@media screen and (max-width:1200px) {
    #page_index .home-img {
        padding: 60px 0;
    }
}

#page_index .home-img .container {
    display: flex;
    background: #4b4e53;
    padding: 6px 4px;
}

#page_index .home-img .container .item {
    width: 31%;
    margin: 1%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    border: #cfd6d9 solid 4px;
    text-align: center;
}

#page_index .tram h3 {
    background: #4ca534;
    color: #fff;
    display: inline-block;
    letter-spacing: 2px;
    font-size: 18px;
    padding: 3px 26px 3px 39px;
    position: relative;
}

#page_index .tram h3:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    top: 0px;
    right: -21px;
    border-style: solid;
    border-width: 37px 0 0 21px;
    border-color: transparent transparent transparent #4ca534;
}

#page_index .tram h3:before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    top: 17px;
    left: 17px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 7px solid #fff;
}

#page_index .home-img .container .item a {
    padding: 15px 0;
    background: #fff;
    display: block;
    transition: 0.5s;
}

#page_index .home-img .container .item a:hover {
    background: #cfd6d9;
}

/*#page_index .home-img .container .item:nth-child(4) a {
    padding: 11px 0px;
}*/

#page_index .home-img .container .item p {
    line-height: 1.4;
    padding-top: 10px;
    font-size: 16px;
}

/*#page_index .home-img .container .item:nth-child(4) p {
    padding-top: 3px;
}*/

#page_index .home-img .container .item .small {
    display: block;
    font-size: 12px;
}

#page_index .home-img .tram dl {
    font-size: 15px;
    display: flex;
    flex-direction: row;
    margin-bottom: 28px;
}

#page_index .home-img .tram dl dt {
    width: 22%;
    font-size: 12px;
    padding: 13px 0;
    text-align: center;
    background: #4b4e53;
    color: #fff;
}

#page_index .home-img .tram dl dd {
    width: 78%;
    background: #fff;
    padding: 12px;
}

#page_index .home-img .tram .navi {
    font-size: 13px;
    overflow: hidden;
    position: relative;
}

#page_index .home-img .tram .navi .text {
    margin: 0;
    display: inline-block;
    padding-left: 40%;
    position: absolute;
    font-size: 15px;
    white-space: nowrap;
    top: 12px;
    animation: scrollNavi 15s linear infinite;
}

@media screen and (max-width:1200px) {
    #page_index .home-img .tram .navi .text {
        padding-left: 5%;
    }
}


@keyframes scrollNavi {
    0% {
        transform: translateX(0)
    }

    100% {
        transform: translateX(-100%)
    }
}

#page_index .home-img .tram dl dd a {
    text-decoration: underline;
}

#page_index .home-img .tram .btn {
    background: #4ca534;
    color: #fff !important;
    padding: 3px 10px 3px 16px;
    border-radius: 4px;
    letter-spacing: 0px;
    margin-left: 4px;
    display: inline-block;
    position: relative;
    text-decoration: none;
    transition: 0.5s;
    position: absolute;
    right: 20px;
}

#page_index .home-img .tram .btn:hover {
    background: #5fbf45;
}

#page_index .home-img .tram .btn:before {
    content: '';
    position: absolute;
    left: 7px;
    top: 11px;
    box-sizing: border-box;
    width: 5px;
    height: 5px;
    border: 4px solid transparent;
    border-left: 5px solid #fff;
}

#page_index .infomation {
    padding: 60px 0;
}

#page_index .infomation .wrapper {
    display: flex;
    flex-direction: row;
}

#page_index .news,
#page_index .twitter {
    width: 47%;
}

#page_index .twitter {
    margin-left: 6%;
}

#page_index .news h2 {
    text-align: left;
    font-size: 24px;
    border-bottom: 1px solid #323232;
    padding-bottom: 12px;
    color: #323232;
    font-weight: normal;
    position: relative;
    margin-bottom: 14px;
}

#page_index .news h2 .rss {
    position: absolute;
    right: 0;
}

#page_index .news .cat {
    border: 1px solid #000;
    margin-left: 8px;
    padding: 1px 16px 1.5px;
    font-size: 14px;
}

#page_index .news .cat.event {
    border-color: #7e57a8;
    color: #7e57a8;
}

#page_index .news .cat.kousya {
    border-color: #3c61ac;
    color: #3c61ac;
}

#page_index .news .cat.tikatetsu {
    border-color: #4ca534;
    color: #4ca534;
}

#page_index .news .cat.recruit_info {
    border-color: #f39800;
    color: #f39800;
}

#page_index .news .cat.romen {
    border-color: #eb6c73;
    color: #eb6c73;
}

#page_index .news .cat.keiyaku_info {
    border-color: #45ABB9;
    color: #45ABB9;
}


#page_index .news dl {
    border-bottom: 1px solid #dddddd;
    padding: 24px 20px;
}

#page_index .news a:nth-child(2n+1) dl {
    background: #e8e9ec;
}

#page_index .news dd {
    padding-top: 12px;
    padding-left: 16px;
    position: relative;
}

#page_index .news dd:before {
    content: '';
    position: absolute;
    left: -2px;
    top: 22px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #3c61ac;
    border-right: 2px solid #3c61ac;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#page_index .news a {
    font-size: 15px;
}

#page_index .news a:hover {
    text-decoration: none;
}

#page_index .news .linkbtn {
    text-align: right;
    padding: 6px 0;
}

#page_index .news .linkbtn a {
    color: #3c61ac;
    padding-right: 20px;
    position: relative;
}

#page_index .news .linkbtn a:after {
    content: '';
    position: absolute;
    right: 4px;
    top: 8px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #3c61ac;
    border-right: 2px solid #3c61ac;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#page_index .twitter h2 {
    text-align: left;
    font-size: 24px;
    line-height: 1.1;
    padding-top: 13px;
    color: #323232;
    font-weight: normal;
    position: relative;
    margin-bottom: 14px;
}

#page_index .twitter .outer {
    border: 1px solid #e1e5e9;
    padding-right: 1px;
}

#page_index .home-accident {
    background: #FCEE47;
    padding: 10px;
}


#page_index .home-accident p {
    color: #000;
    font-size: 1.6rem;
    line-height: 2;
    padding: 20px 0;
}

#page_index .home-accident p span {
    display: block;
}

#page_index .home-accident p span {
    display: block;
}


/* .menulist 上部メニュー
==========================================*/
#topmenu {
    padding: 6px 0;
    background: #f5f5f5;

}

#topmenu ul {
    display: flex;
    flex-wrap: wrap;
    padding: 10px 0;
}

#topmenu ul li {
    width: 24%;
    position: relative;
}

#topmenu ul li .text {
    position: relative;
    display: block;
    border-right: 1px solid #333;
}

#topmenu ul li:nth-child(4n) .text {
    border-right: none;
}


#topmenu ul li .text:after {
    position: absolute;
    content: "";
    display: block;
    top: 9px;
    right: 1px;
    width: 9px;
    height: 9px;
    transform: translateX(-50%) rotate(135deg);
    transition: 0.5s;
}

#topmenu ul li a {
    display: block;
    width: 100%;
    padding: 12px 0px 12px 45px;
    position: relative;
    font-size: 15px;
    transition: 0.5s;
    background: #f5f5f5;
}

#topmenu ul li a:before {
    content: "";
    position: absolute;
    top: 21px;
    left: 22px;
    width: 17px;
    height: 17px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
    transition: 0.5s;
    background: #333;
}

#topmenu ul li a:after {
    content: "";
    position: absolute;
    top: 25px;
    left: 26px;
    width: 9px;
    height: 9px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
    background: #f5f5f5;
}


#bottommenu {
    margin: 50px 0;
}

#bottommenu ul {
    display: flex;
    flex-wrap: wrap;
}

#bottommenu ul li {
    width: 25%;
    position: relative;
}

#bottommenu ul li .text {
    position: relative;
    display: block;
}

#bottommenu ul li .text:after {
    position: absolute;
    content: "";
    display: block;
    top: 9px;
    left: -20px;
    width: 9px;
    height: 9px;
    transform: translateX(-50%) rotate(45deg);
    transition: 0.5s;
}

#bottommenu ul li a {
    display: block;
    width: 100%;
    padding: 12px 12px 12px 40px;
    position: relative;
    font-size: 15px;
    transition: 0.5s;
    /*background: #fff;*/
}




#topmenu.orange ul li a:hover,
#topmenu.orange ul li.hover a {
    color: #f39800;
}

#topmenu.orange ul li.hover a:before,
#topmenu.orange ul li a:hover:before {
    background: #f39800;
}

#bottommenu.orange ul li .text:after {
    border-top: 2px solid #f39800;
    border-right: 2px solid #f39800;
}

#bottommenu.orange ul li a {
    border-right: 1px solid #f39800;
    border-bottom: 1px solid #f39800;
}

#bottommenu.orange ul li:nth-child(-n+4) a {
    border-top: 1px solid #f39800;
}

#bottommenu.orange ul li:nth-child(4n+1) a {
    border-left: 1px solid #f39800;
}


#bottommenu.orange ul li a:hover,
#bottommenu.orange ul li.hover a {
    background: #f39800 !important;
    color: #fff;
}

#topmenu.pink ul li a:hover,
#topmenu.pink ul li.hover a {
    color: #eb6c73;
}

#topmenu.pink ul li.hover a:before,
#topmenu.pink ul li a:hover:before {
    background: #eb6c73;
}

#bottommenu.pink ul li .text:after {
    border-top: 2px solid #eb6c73;
    border-right: 2px solid #eb6c73;
}

#bottommenu.pink ul li a {
    border-right: 1px solid #eb6c73;
    border-bottom: 1px solid #eb6c73;
}

#bottommenu.pink ul li:nth-child(-n+4) a {
    border-top: 1px solid #eb6c73;
}

#bottommenu.pink ul li:nth-child(4n+1) a {
    border-left: 1px solid #eb6c73;
}


#bottommenu.pink ul li a:hover,
#bottommenu.pink ul li.hover a {
    background: #eb6c73 !important;
    color: #fff;
}

#topmenu.green ul li a:hover,
#topmenu.green ul li.hover a {
    color: #4ca534;
}

#topmenu.green ul li.hover a:before,
#topmenu.green ul li a:hover:before {
    background: #4ca534;
}

#bottommenu.green ul li .text:after {
    border-top: 2px solid #4ca534;
    border-right: 2px solid #4ca534;
}

#bottommenu.green ul li a {
    border-right: 1px solid #4ca534;
    border-bottom: 1px solid #4ca534;
}

#bottommenu.green ul li:nth-child(-n+4) a {
    border-top: 1px solid #4ca534;
}

#bottommenu.green ul li:nth-child(4n+1) a {
    border-left: 1px solid #4ca534;
}


#bottommenu.green ul li a:hover,
#bottommenu.green ul li.hover a {
    background: #4ca534 !important;
    color: #fff;
}

#topmenu.blue ul li a:hover,
#topmenu.blue ul li.hover a {
    color: #3c61ac;
}

#topmenu.blue ul li.hover a:before,
#topmenu.blue ul li a:hover:before {
    background: #3c61ac;
}

#bottommenu.blue ul li .text:after {
    border-top: 2px solid #3c61ac;
    border-right: 2px solid #3c61ac;
}

#bottommenu.blue ul li a {
    border-right: 1px solid #3c61ac;
    border-bottom: 1px solid #3c61ac;
}

#bottommenu.blue ul li:nth-child(-n+4) a {
    border-top: 1px solid #3c61ac;
}

#bottommenu.blue ul li:nth-child(4n+1) a {
    border-left: 1px solid #3c61ac;
}


#bottommenu.blue ul li a:hover,
#bottommenu.blue ul li.hover a {
    background: #3c61ac !important;
    color: #fff;
}


#bottommenu ul li a:hover:before,
#bottommenu ul li.hover a:before {
    background: #fff;
}

#bottommenu ul li a:hover .text:after,
#bottommenu ul li.hover a .text:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}


/* subpage 下層ページの共通
==========================================*/
.subpage #contents .toptitle {
    text-align: center;
    font-size: 24px;
    padding: 12px 0px;
    letter-spacing: 4px;
    margin-bottom: 60px;
}

.subpage #contents.menu .toptitle {
    margin-bottom: 20px;
}

.subpage #contents.child strong {
    font-weight: bold;
}

.subpage #contents.child ol li:before {
    counter-increment: number 1;
    content: counter(number) ". ";
}

.subpage #contents.child ol {
    counter-reset: number;
}

.subpage #contents.child ol li {
    padding-left: 1em;
    text-indent: -1em;
    line-height: 1.9;
}

.subpage #contents.child h2:not([class]) {
    width: 100%;
    display: block;
    background: #e8e9ec;
    padding: 12px 40px;
    font-size: 22px;
    position: relative;
    margin-bottom: 45px;
}

.subpage #contents.child h2:not([class]):before {
    position: absolute;
    content: '';
    display: block;
    height: 39px;
    width: 8px;
    left: 0;
}

.subpage #contents.child h3:not([class]) {
    width: 100%;
    display: block;
    font-size: 22px;
    position: relative;
    padding-bottom: 6px;
    margin-bottom: 30px;
}

.subpage #contents.child h4:not([class]) {
    font-size: 18px;
    padding-bottom: 6px;
    position: relative;
    padding-left: 35px;
}

.subpage #contents.child h4:not([class]):before {
    content: "";
    position: absolute;
    top: 12px;
    left: 12px;
    width: 17px;
    height: 17px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
}

.subpage #contents.child h5:not([class]) {
    font-size: 22px;
    position: relative;
    padding: 20px 0;
    font-weight: bold;
}

.subpage #contents.child ul li:not([class]) {
    position: relative;
    padding-left: 30px;
    padding-bottom: 4px;
}

.subpage #contents.child ul li:not([class]):before {
    content: "";
    position: absolute;
    top: 16px;
    left: 12px;
    width: 5px;
    height: 5px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
}

.subpage #contents.child p em {
    font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 900;
    font-size: 18px;
}

.wp-block-image.full-size img {
    max-width: 100%;
}

.subpage #contents.child figure figcaption {
    text-align: center;
}

.subpage #contents.child .has-fixed-layout {
    width: auto;
}

.subpage #contents.child .has-fixed-layout th {
    padding: 12px 20px;
    border: 1px solid #ccc;
    text-align: center;
}

.subpage #contents.child .has-text-align-left {
    text-align: left !important;

}

.subpage #contents.child .full-size .has-fixed-layout {
    width: 100%;
}


.subpage #contents.child .has-fixed-layout td {
    padding: 5px 2em;
    border: 1px solid #ccc;
}

.subpage #contents.child .wp-block-advgb-button_link {
    width: 100%;
    display: block;
    content: '';
    font-size: 16px;
    position: relative;
}

.subpage #contents.child .wp-block-advgb-button_link:before {
    content: '';
    position: absolute;
    left: 13px;
    top: 20px;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border: 5px solid transparent;
    border-left: 6px solid #fff;
}

.subpage #contents.child .wp-block-button__link {
    width: 480px;
    font-size: 16px;
    padding: 14px 40px;
    transition: 0.5s;
    position: relative;
    color: #fff !important;
}

.subpage #contents.child .wp-block-button__link:before {
    content: "";
    width: 10px;
    height: 10px;
    border-top: solid 3px #ffffff;
    border-right: solid 3px #ffffff;
    border-radius: 1px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 30px;
    top: 53%;
    margin-top: -5px;
}

.subpage #contents.child .wp-block-button__link:hover {
    opacity: 0.7;
}

.advgb-accordion-body {
    padding: 25px !important;
}

.subpage .premium-container {
    text-align: left;
}

.subpage .premium-container.tel-text {
    text-align: center;

}

.subpage table.advgb-table-frontend td,
.subpage table.advgb-table-frontend tr {
    padding: 12px 20px !important;
}

.wp-block-embed-youtube .wp-block-embed__wrapper {
    width: 100%;
    padding-bottom: 56.25%;
    height: 0px;
    position: relative;
}

.wp-block-embed-youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.wp-block-advgb-column.bg_gray {
    border-left: 4px solid #fff;
    border-right: 4px solid #fff;
}

.subpage .tel-text {
    text-align: center;
    position: relative;
}

.subpage .tel-text:before {
    content: '';
    position: relative;
    display: inline-block;
    left: -6px;
    top: -3px;
    width: 30px;
    height: 30px;
    background-image: url(../../images/icon-tel.png);
    background-size: contain;
    vertical-align: middle;
}

.subpage .tel-cont {
    padding: 60px 30px !important;
}

.subpage .has-very-light-gray-color {
    color: #fff !important;
}

.subpage .advgb-accordion-header {
    padding-left: 20px !important;
}

.subpage #contents .headline1 {
    text-align: center;
    text-align: center;
    font-size: 24px;
    letter-spacing: 4px;
    font-weight: bold;
}

.subpage #contents .headline1 .small {
    font-size: 15px;
}

.subpage #contents .wp-block-separator {
    border: none;
    border-top: 1px dashed #bbb;

}


/* 事業内容カラー */
#page_business #contents .toptitle {
    color: #4ca534;
    border-top: 1px solid #4ca534;
    border-bottom: 1px solid #4ca534;
}

#page_business #contents.child h2:not([class]):before {
    background: #4ca534;
}

#page_business #contents.child h3:not([class]) {
    border-bottom: 2px solid #4ca534;
}

#page_business #contents.child h4:not([class]):before {
    background: #4ca534;
}

#page_business #contents.child ul li:not([class]):before {
    background: #4ca534;
}

#page_business .premium-container {
    background: #fff;
    border: 2px solid #4ca534;
}

#page_business #contents.child a:not([class]) {
    color: #4ca534;
    text-decoration: underline;
}

#page_business #contents.child h5:not([class]) {
    color: #4ca534;
}

#page_business #contents.child .wp-block-advgb-button_link {
    background: #4ca534;
}

#page_business #contents.child .has-fixed-layout th {
    background-color: #f0ffeb;
}

#page_business #contents.child .nowrap th {
    white-space: nowrap;
}

#page_business #contents.child .advgb-accordion-header {
    background: #4ca534;
}

/* 公社についてカラー */
#page_about #contents .toptitle {
    color: #f39800;
    border-top: 1px solid #f39800;
    border-bottom: 1px solid #f39800;
}

#page_about #contents.child h2:not([class]):before {
    background: #f39800;
}

#page_about #contents.child h3:not([class]) {
    border-bottom: 2px solid #f39800;
}

#page_about #contents.child h4:not([class]):before {
    background: #f39800;
}

#page_about #contents.child ul li:not([class]):before {
    background: #f39800;
}

#page_about .premium-container {
    background: #fff;
    border: 2px solid #f39800;
}

#page_about #contents.child a:not([class]) {
    color: #f39800;
    text-decoration: underline;
}

#page_about #contents.child h5:not([class]) {
    color: #f39800;
}

#page_about #contents.child .has-fixed-layout th {
    background-color: #fff5e4;
}

/* イベント情報カラー */
#page_info #contents .toptitle {
    color: #eb6c73;
    border-top: 1px solid #eb6c73;
    border-bottom: 1px solid #eb6c73;
}

#page_info #contents.child h2:not([class]):before {
    background: #eb6c73;
}

#page_info #contents.child h3:not([class]) {
    border-bottom: 2px solid #eb6c73;
}

#page_info #contents.child h4:not([class]):before {
    background: #eb6c73;
}

#page_info #contents.child ul li:not([class]):before {
    background: #eb6c73;
}

#page_info .premium-container {
    background: #fff;
    border: 2px solid #eb6c73;
}

#page_info #contents.child a:not([class]) {
    color: #eb6c73;
    text-decoration: underline;
}

#page_info #contents.child h5:not([class]) {
    color: #eb6c73;
}

#page_single.event #contents .toptitle {
    color: #eb6c73;
    border-top: 1px solid #eb6c73;
    border-bottom: 1px solid #eb6c73;
}

#page_info.subpage #contents.child .has-fixed-layout th {
    background-color: #fff5e4;
}

/* お問い合わせカラー */
#page_contact #contents .toptitle {
    color: #4ca534;
    border-top: 1px solid #4ca534;
    border-bottom: 1px solid #4ca534;
}

#page_contact #contents.child h2:not([class]):before {
    background: #4ca534;
}

#page_contact #contents.child h3:not([class]) {
    border-bottom: 2px solid #4ca534;
}

#page_contact #contents.child h4:not([class]):before {
    background: #4ca534;
}

#page_contact #contents.child ul li:not([class]):before {
    background: #4ca534;
}

#page_contact .premium-container {
    background: #fff;
    border: 2px solid #4ca534;
}

#page_contact #contents.child a:not([class]) {
    color: #4ca534;
    text-decoration: underline;
}

#page_contact #contents.child h5:not([class]) {
    color: #4ca534;
}

#page_contact #contents.child .has-fixed-layout th {
    background-color: #fff5e4;
}


/* オリジナルグッズ販売カラー */
#page_goods #contents .toptitle {
    color: #3c61ac;
    border-top: 1px solid #3c61ac;
    border-bottom: 1px solid #3c61ac;
}

#page_goods #contents.child h2:not([class]):before {
    background: #3c61ac;
}

#page_goods #contents.child h3:not([class]) {
    border-bottom: 2px solid #3c61ac;
}

#page_goods #contents.child h4:not([class]):before {
    background: #3c61ac;
}

#page_goods #contents.child ul li:not([class]):before {
    background: #3c61ac;
}

#page_goods .premium-container {
    background: #fff;
    border: 2px solid #3c61ac;
}

#page_goods #contents.child a:not([class]) {
    color: #3c61ac;
    text-decoration: underline;
}

#page_goods #contents.child h5:not([class]) {
    color: #3c61ac;
}

#page_goods #contents.child .has-fixed-layout th {
    background-color: #fff5e4;
}

/* 採用情報カラー */
#page_recruit #contents .toptitle {
    color: #f39800;
    border-top: 1px solid #f39800;
    border-bottom: 1px solid #f39800;
}

#page_recruit #contents.child h2:not([class]):before {
    background: #f39800;
}

#page_recruit #contents.child h3:not([class]) {
    border-bottom: 2px solid #f39800;
}

#page_recruit #contents.child h4:not([class]):before {
    background: #f39800;
}

#page_recruit #contents.child ul li:not([class]):before {
    background: #f39800;
}

#page_recruit .premium-container {
    background: #fff;
    border: 2px solid #f39800;
}

#page_recruit #contents.child a:not([class]) {
    color: #f39800;
    text-decoration: underline;
}

#page_recruit #contents.child h5:not([class]) {
    color: #f39800;
}

#page_recruit #contents.child .has-fixed-layout th {
    background-color: #fff5e4;
}


/* メニュー　2階層目
==========================================*/
#contents.menu {
    padding-top: 60px;
}

#menu1 ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;

}

#menu1 ul > li {
    width: 49%;
    margin-top: 2%;
    padding: 40px 0;
    font-size: 24px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
}

#menu1 ul > li > a .text {
    display: inline-block;
    z-index: 98;
    position: relative;
}

#menu1 ul > li > a .text:before {
    content: '';
    position: absolute;
    top: 12px;
    left: -29px;
    width: 20px;
    height: 20px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}

#menu1 ul > li > a .text:after {
    content: '';
    position: absolute;
    left: -24px;
    top: 18px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#menu1 ul > li:hover:before {
    transform: scale(1.0170212766, 1.0266666667);
    box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.1);
}

#menu1 ul > li.submenu-type1 {
    width: 100%;
    justify-content: space-between;
    padding: 25px 140px;
}


#menu1 ul > li.submenu-type2 {
    text-align: left;
    padding: 25px 40px;
}


#menu1 ul > li > ol > li .text {
    color: #000;
    display: inline-block;
    z-index: 98;
    position: relative;
}

#menu1 ul > li > ol > li .text .small {
    font-size: 13px;
}

#menu1 ul > li.submenu-type2 > ol.sub {
    padding-left: 8%;
}

#menu1 ul > li.submenu-type1 > ol.sub li,
#menu1 ul > li.submenu-type2 > ol.sub li {
    line-height: 1.3;
}

#menu1 ul > li.submenu-type1 > ol.sub li a,
#menu1 ul > li.submenu-type2 > ol.sub li a {
    font-size: 17px;
    letter-spacing: 0px;
}



#menu1 ol.sub li {
    position: relative;
}

#menu1 ol.sub li:before {
    content: "";
    position: absolute;
    top: 20px;
    left: -14px;
    width: 5px;
    height: 5px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
}

#page_business #menu1 ol.sub li:before {
    background: #4ca534;
}

#page_about #menu1 ol.sub li:before {
    background: #f39800;
}

#page_info #menu1 ol.sub li:before {
    background: #eb6c73;
}

#page_contact #menu1 ol.sub li:before {
    background: #4ca534;
}

#page_goods #menu1 ol.sub li:before {
    background: #3c61ac;
}

#page_recruit #menu1 ol.sub li:before {
    background: #f39800;
}


/* 事業内容カラー */
#page_business #menu1 ul li a:hover .text {
    color: #4ca534;
}

#page_business #menu1 ul li a .text:before {
    background: #4ca534;
}

/* 公社についてカラー */
#page_about #menu1 ul li a:hover .text {
    color: #f39800;
}

#page_about #menu1 ul li a .text:before {
    background: #f39800;
}

/* イベント情報カラー */
#page_info #menu1 ul li a:hover .text {
    color: #eb6c73;
}

#page_info #menu1 ul li a .text:before {
    background: #eb6c73;
}

/* お問い合わせカラー */
#page_contact #menu1 ul li a:hover .text {
    color: #4ca534;
}

#page_contact #menu1 ul li a .text:before {
    background: #4ca534;
}

/* オリジナルグッズ販売カラー */
#page_goods #menu1 ul li a:hover .text {
    color: #3c61ac;
}

#page_goods #menu1 ul li a .text:before {
    background: #3c61ac;
}

/* 採用情報カラー */
#page_recruit #menu1 ul li a:hover .text {
    color: #f39800;
}

#page_recruit #menu1 ul li a .text:before {
    background: #f39800;
}

#bottom_bnr {
    padding: 60px 0;
}

#bottom_bnr li {
    margin: 0 6px;
}

#bottom_bnr li a img {
    transition: .5s;
}

#bottom_bnr li a:hover img {
    opacity: 0.75;

}


/* サブメニューパーツ１
==========================================*/
#submenu1 {
    padding: 60px 0;
}

#submenu1 ul {
    display: flex;
    flex-direction: row;
}

#submenu1 ul li {
    width: 24.5%;
    margin-right: 2%;
}

#submenu1 ul li:nth-child(4n) {
    margin-right: 0%;
}

#submenu1 ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    border: 4px solid #cfd6d9;
    text-align: left;
    padding: 18px 14px 11px 14px;
    transition: 0.5s;

}

#submenu1 ul li a:hover {
    background: #e8e9ec;
}

#submenu1 ul li span {
    position: relative;
}

#submenu1 ul li span:before {
    content: '';
    position: relative;
    display: inline-block;
    left: -6px;
    top: -3px;
    width: 44px;
    height: 45px;
    background-size: contain;
    vertical-align: middle;
}

#submenu1 ul li span.wasuremono:before {
    background-image: url(../../images/submenu_icon1.png);
}

#submenu1 ul li span.teikisales:before {
    background-image: url(../../images/submenu_icon2.png);
}

#submenu1 ul li span.kotsu:before {
    background-image: url(../../images/submenu_icon3.png);
}

#submenu1 ul li span.tikatetsu:before {
    background-image: url(../../images/submenu_icon4.png);
}

/* サブメニューパーツ２
==========================================*/
#submenu2 {
    padding: 60px 0;
}

#submenu2 ul li {
    width: 49%;
    float: left;
}

#submenu2 ul li:first-of-type {
    margin-right: 2%;
}

#submenu2 ul li a {
    display: flex;
    flex-direction: row;
    align-items: center;
    background: #fff;
    border: 4px solid #cfd6d9;
    font-size: 18px;
    transition: 0.5s;

}

#submenu2 ul li a:hover {
    background: #e8e9ec;
}

#submenu2 ul li a img {
    width: 50%;
}


#submenu2 ul li a .text {
    width: 50%;
    text-align: center;
}

/* 検索結果
==========================================*/
.child.search {
    padding: 60px 0;
}

.child.search h1 {
    text-align: left;
    font-size: 24px;
    border-bottom: 1px solid #323232;
    padding-bottom: 12px;
    color: #323232;
    font-weight: normal;
    position: relative;
    margin-bottom: 14px;
}

.child.search h2 {
    margin-top: 30px;
    margin-bottom: 20px !important;
}


.child.search h2 a {
    font-size: 18px;
    padding-bottom: 6px;
    position: relative;
    padding-left: 20px;
    text-decoration: underline;
    color: #5175bd;
}

.child.search h2 a:before {
    content: "";
    position: absolute;
    top: 16px;
    left: 0px;
    width: 5px;
    height: 5px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
    background: #5175bd;
}

/* 最新情報
==========================================*/
#page_single .entry-title {
    text-align: left;
    font-size: 20px;
    border-bottom: 1px solid #323232;
    padding-bottom: 12px;
    color: #323232;
    font-weight: normal;
    position: relative;
    margin: 12px 0 14px;
}

#page_single .entry-content {
    padding: 12px 0 40px;
}

#page_single .entry-header .cat {
    border: 1px solid #000;
    margin-left: 8px;
    padding: 1px 16px 1.5px;
    font-size: 14px;
}

#page_single .entry-header .cat.event {
    border-color: #7e57a8;
    color: #7e57a8;
}

#page_single .entry-header .cat.kousya {
    border-color: #3c61ac;
    color: #3c61ac;
}

#page_single .entry-header .cat.tikatetsu {
    border-color: #4ca534;
    color: #4ca534;
}

#page_single .entry-header .cat.recruit_info {
    border-color: #f39800;
    color: #f39800;
}

#page_single .entry-header .cat.romen {
    border-color: #eb6c73;
    color: #eb6c73;
}

#page_single .entry-header .cat.keiyaku_info {
    border-color: #45ABB9;
    color: #45ABB9;
}

#page_single ul.page_link li.prev {
    float: left;
}

#page_single ul.page_link li.next {
    float: right;
}

#page_single ul.page_link li a {
    font-size: 11px;
    font-size: 1.1rem;
    display: inline-block;
    padding: 6px 15px 3px;
    border-radius: 3px;
    border: solid 1px #c0c0c0;
    background: #fefefe;
    text-decoration: none !important;
    color: #717171;
}

#page_single ul.page_link li a {
    font-size: 13px;
    font-size: 1.3rem;
    display: inline-block;
    padding: 6px 15px 6px;
    border-radius: 3px;
    border: solid 1px #c0c0c0;
    background: #fefefe;
    text-decoration: none !important;
    color: #717171;
}

#page_single .entry-content a {
    color: #5175bd;
    text-decoration: underline;
}



/* イベント情報
==========================================*/

.info_event .info-wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding-bottom: 40px;
}

.info_event .info-wrap .col {
    width: 32%;
}

.info_event .info-wrap .col:nth-child(3n+2) {
    margin: 0 2%;
}

.info_event .info-wrap .col:nth-child(n+4) {
    margin-top: 60px;
}


.info_event .info-wrap .col a {
    text-decoration: none !important;
}

.info_event .info-wrap .event-title {
    display: flex;
    flex-direction: row;
}

.info_event .info-wrap .event-title .event-item {
    border-radius: 17px;
    padding: 2px 13px;
    font-size: 13px;
    color: #fff;

}

.info_event .info-wrap .event-title .event-item.kaisai {
    background: #eb6c73;
}

.info_event .info-wrap .event-title .event-item.boshu {
    background: #858585;
}

.info_event .info-wrap .event-title .date {
    font-size: 13px;
    margin-left: auto;
    padding-top: 2px;
    color: #858585;
}

.info_event .info-wrap .cont {
    color: #1a1a1a;
    font-size: 18px;
    padding-top: 12px;
    position: relative;
    text-align: left;
    line-height: 1.4;
}

.info_event .info-wrap .photo {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    height: 100%;
}


.info_event .info-wrap .photo-wrap {
    margin-bottom: 12px;
    border: 2px solid #cecece;
    position: relative;
    overflow: hidden;
    height: 240px;
}

.info_event .info-wrap .photo {

    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}

.info_event .info-wrap a:hover .photo {
    opacity: .8;
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.info_event .back_btn {
    margin: 0 auto;
    text-align: center;
}

.info_event .back_btn a {
    border: 3px solid #ccc;
    padding: 30px 120px;
    display: inline-block;
    position: relative;
}

.info_event .back_btn a:before {
    content: '';
    position: absolute;
    left: 24px;
    top: 38px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #ccc;
    border-right: 2px solid #ccc;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}


/* 刊行物
==========================================*/

.info_media .lay-ptn1 .wrap .sub,
.info_media .lay-ptn1 .wrap .main {
    width: 48%;
    float: left;
}

.info_media .lay-ptn1 .wrap .sub {
    margin-left: 4%;
}

.info_media .lay-ptn2 .wrap .main {
    width: 48%;
    float: left;
}

.info_media .lay-ptn2 .wrap .main:nth-child(2n) {
    margin-left: 4%;
}

.info_media .lay-ptn1 .wrap {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.info_media .wrap .main {
    padding: 20px 0;
}

.info_media .wrap .main .photo {
    width: 42%;
    float: left;
}

.info_media .wrap .main .text {
    width: 58%;
    float: left;
}

.info_media .wrap .main .text {
    position: relative;

}

.info_media .wrap .main .text .btn {
    position: absolute;
    bottom: 0;
}

.info_media .wrap .main .text .btn a {
    background: #b2b2b2;
    color: #fff !important;
    text-decoration: none !important;
    padding: 8px 55px;
    display: block;
    transition: 0.5s;

}

.info_media .wrap .sub .cont {
    border-bottom: 1px solid #ccc;
    padding: 30.5px 0;
}

.info_media .wrap .sub:last-of-type .cont {
    border-bottom: none;
}


.info_media .wrap .sub .text {
    width: 73%;
    float: left;
}

.info_media .wrap .sub .btn {
    width: 27%;
    float: left;
}

.info_media .wrap .sub .btn a {
    background: #b2b2b2;
    color: #fff !important;
    text-decoration: none !important;
    margin-top: 4px;
    padding: 10px 15px;
    display: block;
    text-align: center;
    transition: 0.5s;

}

.info_media .btn a:hover {
    background: #cecbcb !important;
}


.info_media .wrap .sub h4 {
    padding-bottom: 0 !important;
    font-size: 16px !important;
}

.info_media .wrap .sub h4:before {
    width: 14px !important;
    height: 14px !important;
}


.info_media .wrap p {
    font-size: 14px;
    padding-left: 37px;
}

.info_media .wrap .webarea {
	width: 66%;
    margin: 7% 0;
}

.info_media .wrap .webarea p{
	padding: 10px;
    border: 1px solid #000;
    font-size: 1.2rem;
    text-align: center;
}

/* よくある質問
==========================================*/
.question .page_link {
    padding: 20px;
    background: rgb(240, 255, 235);
}


.question dl {
    margin-bottom: 12px;
}

.question dl:last-of-type {
    margin-bottom: 70px;
}


.question dl dt {
    color: #4ca534;
    border: 1px solid #6db15b;
    position: relative;
    text-align: left;
    letter-spacing: 0.05em;
    padding: 12px 25px 12px 45px;
    cursor: pointer;
    background: #fff;
}

.question dl dt:before {
    content: 'Q';
    font-size: 20px;
    position: absolute;
    top: 7px;
    left: 18px;
}

.question dl dt:after {
    position: absolute;
    top: -6px;
    right: 14px;
    content: '+';
    font-size: 34px;
    font-weight: bold;
    padding: 3px;
}

.question dl dt.open:after {
    content: '';
}

.question dl dt.open {
    background: #4ca534;
    color: #fff;
}

.question dl dd {
    background: #fff;
    padding: 20px 0px 20px 50px;
    font-size: 15px;
    position: relative;
}

.question dl dd:before {
    content: 'A';
    font-size: 20px;
    color: #4ca534;
    position: absolute;
    top: 15px;
    left: 20px;
}

.question .contact_link p {
    text-align: center;
}

.question .contact_link .btn a {
    background: #b2b2b2;
    color: #fff !important;
    text-decoration: none !important;
    margin: 20px auto 0;
    padding: 10px 15px;
    display: block;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    transition: 0.5s;
    max-width: 320px;
    border-radius: 8px;
}

/*路線ガイド
==========================================*/

#contents.streetcar .col-outer .headline1 {
    padding: 0;
}

#contents.streetcar .col-outer {
    display: flex;
    flex-wrap: wrap;
}


#contents.streetcar .col-outer .col1 {
    width: 64%;
    margin-right: 8%;
}

#contents.streetcar .col-outer .col2 {
    width: 28%;
}

#contents.streetcar .genre_list {
    background: #f5f5f5;
    border-radius: 30px;
    padding: 40px 25px 30px;
}

#contents.streetcar .genre_list ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

#contents.streetcar .genre_list ul li a {
    text-decoration: none !important;

}

#contents.streetcar .genre_list ul li p {
    text-align: center;
    color: #333;
    font-size: 15px;
}

#contents.streetcar .genre_list ul li a img {
    transition: 0.5s;
}

#contents.streetcar .genre_list ul li a:hover img {
    opacity: 0.6;
}

#contents.streetcar .genre_list ul li:nth-child(1),
#contents.streetcar .genre_list ul li:nth-child(2) {
    padding-top: 0;
}

#contents.streetcar .map {
    width: 100%;
    height: 500px;
}

#contents.streetcar .map iframe {
    width: 100%;
    height: 100%;
}

#contents.streetcar #maps {
    height: 500px;
    width: 100%;
}

#contents.streetcar #maps .map-labels {
    color: #ffffff;
    background: #000000;
    font-size: 14px;
    text-align: center;
    padding: 3px 10px 2px;
    border-radius: 4px;
}

#contents.streetcar .shop-wrap {
    display: flex;
    flex-wrap: wrap;
}

#contents.streetcar .shop-wrap li {
    width: 31%;
    margin-top: 3%;
}


#contents.streetcar .shop-wrap li:nth-child(3n+2) {
    margin-left: 3.5%;
    margin-right: 3.5%;
}

#contents.streetcar .shop-wrap li .photo {
    position: relative;
    overflow: hidden;
}

#contents.streetcar .shop-wrap li .photo img {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    width: 100%;
    height: auto;
}

#contents.streetcar .shop-wrap li a:hover img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0.8;
}


#contents.streetcar .shop-wrap li .text {
    background: #f5f5f5;
    padding: 12px 20px;
}

#contents.streetcar .shop-wrap li .shop-title {
    font-weight: bold;
    padding-bottom: 20px;

}

#contents.streetcar .shop-wrap li .tag > a {
    font-size: 13px;
    text-decoration: underline !important;
}

#contents.streetcar .shop-wrap li .tag > a:nth-child(n + 2) {
    margin-left: 12px;
}

#contents.streetcar .text-cont {
    background: #f5f5f5;
    padding: 20px 40px 12px;
    width: 80%;	
    margin-right: auto;
    border-radius: 20px;
	position:relative;

}

.museum #contents.streetcar .text-cont :after {
border:20px solid transparent;
border-left-color:#f5f5f5;
border-right-width:0;
right:-20px;
content:"";
display:block;
top:100px;
position:absolute;
width:0;
}


#contents.streetcar .text-cont a.genre {
    margin-right: 20px;
}

#contents.streetcar .text-cont a {
    text-decoration: underline !important;
}

#contents.streetcar .text-cont dl {
    display: flex;
    flex-wrap: wrap;
}

#contents.streetcar .text-cont dl dt {
    width: 25%;
    font-weight: bold;
    margin-bottom: 8px;
}

#contents.streetcar .text-cont dl dd {
    width: 75%;
    margin-bottom: 8px;
}


#contents.streetcar .text-cont dl dd a + a {
	margin-left: 10px;
}

#contents.streetcar .photo img {
    text-align: center;
    display: block;
    margin: 0 auto;
}

#contents.streetcar .back_btn {
    margin: 0 auto;
    text-align: center;
}

#contents.streetcar .back_btn a {
    border: 3px solid #ccc;
    padding: 30px 120px;
    display: inline-block;
    position: relative;
}

#contents.streetcar .back_btn a:before {
    content: '';
    position: absolute;
    left: 24px;
    top: 38px;
    width: 12px;
    height: 12px;
    border-top: 2px solid #ccc;
    border-right: 2px solid #ccc;
    -webkit-transform: rotate(225deg);
    transform: rotate(225deg);
}

#contents.streetcar a {
    color: #000 !important;
    text-decoration: none !important;
}

#contents .text-cont-all{
	display: flex;
}
#contents .text-cont-all img{
	height: 300px;
	margin: 40px 10px;
}

/*沿線ガイドのみ*/
.streetcar-guide #contents .text-cont {
    background: #f5f5f5;
    padding: 20px 40px 12px;
    margin-right: auto;
    border-radius: 20px;
	position:relative;
	width: 100%;
}

.streetcar-guide #contents .text-cont-all img{
	margin: 60px 10px;
	height: auto;
}

.chara-comment-all {
    width: 60%;
    display: flex;
}
.streetcar-guide #contents .chara-comment {
    background: #E6F2E2;
    padding: 20px;
    margin-right: auto;
    border-radius: 20px;
	position:relative;
	margin: 40px 20px;
	width: 50%;
	display: table;
}

.streetcar-guide #contents .chara-comment :after {
	border:20px solid transparent;
	border-left-color:#E6F2E2;
	border-right-width:0;
	right:-20px;
	content:"";
	display:block;
	top:100px;
	position:absolute;
	width:0;
}








/* お知らせ
==========================================*/

#page_single.event #contents .toptitle {
    color: #eb6c73;
    border-top: 1px solid #eb6c73;
    border-bottom: 1px solid #eb6c73;
}

#page_single.event #contents.child h2:not([class]) {
    width: 100%;
    display: block;
    background: #e8e9ec;
    padding: 12px 40px;
    font-size: 22px;
    position: relative;
    margin-bottom: 45px;
}

#page_single.event #contents.child h2:not([class]):before {
    position: absolute;
    content: '';
    display: block;
    height: 39px;
    width: 8px;
    left: 0;
}

#page_single.event #contents.child h2:not([class]):before {
    background: #eb6c73;
}

#page_single.event #contents.child .entry-contact h4:before {
    background: #eb6c73;
}

#page_single.event #contents.child .date {
    padding-bottom: 12px;
    font-weight: bold;
}

#page_single.event #contents.child .entry-contact h4 {
    border-bottom: 1px solid #ccc;
    margin: 12px 0 12px;
}

#page_information .news .cat {
    border: 1px solid #000;
    margin-left: 8px;
    padding: 1px 16px 1.5px;
    font-size: 14px;
}

#page_information .news .cat.event {
    border-color: #7e57a8;
    color: #7e57a8;
}

#page_information .news .cat.kousya {
    border-color: #3c61ac;
    color: #3c61ac;
}

#page_information .news .cat.tikatetsu {
    border-color: #4ca534;
    color: #4ca534;
}

#page_information .news .cat.recruit_info {
    border-color: #f39800;
    color: #f39800;
}

#page_information .news .cat.romen {
    border-color: #eb6c73;
    color: #eb6c73;
}

#page_information .news .cat.keiyaku_info {
    border-color: #45ABB9;
    color: #45ABB9;
}


#page_information .news dl {
    border-bottom: 1px solid #dddddd;
    padding: 24px 20px;
}

#page_information .news a:nth-child(2n+1) dl {
    background: #e8e9ec;
}

#page_information .news dd {
    padding-top: 12px;
    padding-left: 16px;
    position: relative;
}

#page_information .news dd:before {
    content: '';
    position: absolute;
    left: -2px;
    top: 22px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #3c61ac;
    border-right: 2px solid #3c61ac;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#page_information .news a {
    font-size: 15px;
}

#page_information .news a:hover {
    text-decoration: none;
}

#page_information .news .linkbtn {
    text-align: right;
    padding: 6px 0;
}

#page_information .news .linkbtn a {
    color: #3c61ac;
    padding-right: 20px;
    position: relative;
}

#page_information .news .linkbtn a:after {
    content: '';
    position: absolute;
    right: 4px;
    top: 8px;
    width: 7px;
    height: 7px;
    border-top: 2px solid #3c61ac;
    border-right: 2px solid #3c61ac;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* お知らせ
==========================================*/

.advertising_area .headline {
    background: #4ca534;
    color: #fff;
    font-size: 18px;
    padding: 13px 15px 13px;
    position: relative;
}

.advertising_area .wp-block-column {
    flex-basis: calc(50% - 0px);
}

.advertising_area .wp-block-columns .headline:after {
    content: '';
    position: absolute;
    display: inline-block;
    top: 0;
    background-size: contain;
    vertical-align: middle;
    right: 10px;
    width: 46px;
    height: 57px;

}

.advertising_area .wp-block-columns:nth-child(1) .headline:after {
    background-image: url(../../images/advertising_area1.png);
}

.advertising_area .wp-block-columns:nth-child(2) .headline:after {
    background-image: url(../../images/advertising_area2.png);
}

.advertising_area .wp-block-columns:nth-child(3) .headline:after {
    background-image: url(../../images/advertising_area3.png);
}

.advertising_area .wp-block-columns:nth-child(4) .headline:after {
    background-image: url(../../images/advertising_area4.png);
}

.advertising_area .wp-block-columns:nth-child(5) .headline:after {
    background-image: url(../../images/advertising_area5.png);
    width: 70px;
    height: 57px;
}

.advertising_area .wp-block-columns:nth-child(6) .headline:after {
    background-image: url(../../images/advertising_area6.png);
}

.advertising_area .wp-block-columns {
    margin-bottom: 52px;
}

.advertising_area .wp-block-columns .val {
    text-align: right;
    border-bottom: 2px solid #4ca534;
    margin-left: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.advertising_area .wp-block-columns .val .big {
    font-size: 27px;
    line-height: 1;
    color: #4ca534;
    font-weight: 900;
}

.advertising_area .wp-block-columns .val .br {
    display: block;
}

.advertising_area .wp-block-columns .val .br {
    display: block;
}

.advertising .map {
    width: 500px;
    height: 300px;
    margin-top: 2px;
    margin-left: auto;
}

.advertising .map iframe {
    width: 100%;
    height: 100%;
}

#vehicles_nav .advertising_menu {
    display: flex;
    flex-wrap: wrap;
    width: 940px;
    margin: 0 auto;

}

#vehicles_nav .advertising_menu .list:nth-child(-n+3) {
    border-top: 1px solid #ccc;
}

#vehicles_nav .advertising_menu .list {
    width: 33.33333333%;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    position: relative;
}

#vehicles_nav .advertising_menu .list:nth-child(3n+1) {
    border-left: 1px solid #ccc;
}


#vehicles_nav .advertising_menu .list:after {
    content: '';
    position: absolute;
    right: 23px;
    top: 31px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#vehicles_nav .advertising_menu .list a {
    padding: 20px;
    display: block;
    text-align: center;
    font-size: 15px;
    background: #e8e9ec;
}

#vehicles_nav .advertising_menu .list a:hover {
    text-decoration: none;
    background: #f7e2ad;
}

#vehicles_nav .advertising_menu .list a.hover {
    text-decoration: none;
    background: #f7e2ad;
}


#vehicles_nav .main_photo img {
    max-width: 939px;
    margin: 0 auto;
    text-align: center;
    display: block;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;

}

#vehicles_nav .teisyo_photo img {
    max-width: 939px;
    margin: 0 auto;
    text-align: center;
    display: block;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;

}


#vehicles_nav h4 {
    margin-left: 100px !important;
}

@media screen and (max-width:1200px) {
    #vehicles_nav h4 {
        margin-left: 75px !important;
    }

}

/* timeline
==========================================*/
.timeline {
    position: relative;
}

.time_box {
    position: absolute;
    top: 150px;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}


.time_box .time_left {
    width: 46%;
    margin-right: 8%;
}

.time_box .time_right {
    width: 46%;
}

.time_box .time_list {
    display: flex;
    width: 100%;
}

.time_box .time_left .time_list {
    flex-direction: column;
}

.time_box .time_right .time_list {
    flex-direction: column-reverse;
}


.time_box ul li {
    background: #f3f3f3;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 14px;
    margin-top: 2%;
    margin-bottom: 2%;
    position: relative;

}

.time_box ul li .title {
    width: 70%;
    padding-left: 140px;
    position: relative;
    font-weight: bold;
    font-size: 18px;
}

.time_box ul li .title:before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -11px;
    background-size: contain;
    vertical-align: middle;
    left: 7px;
    width: 100px;
    height: 55px;
}

.time_box ul li.sc01 .title:before {
    background-image: url(../../images/time/time_01_pc.svg);
}

.time_box ul li.sc02 .title:before {
    background-image: url(../../images/time/time_02_pc.svg);
}

.time_box ul li.sc03 .title:before {
    background-image: url(../../images/time/time_03_pc.svg);
}

.time_box ul li.sc04 .title:before {
    background-image: url(../../images/time/time_04_pc.svg);
}

.time_box ul li.sc05 .title:before {
    background-image: url(../../images/time/time_05_pc.svg);
}

.time_box ul li.sc06 .title:before {
    background-image: url(../../images/time/time_06_pc.svg);
}

.time_box ul li.sc07 .title:before {
    background-image: url(../../images/time/time_07_pc.svg);
}

.time_box ul li.sc08 .title:before {
    background-image: url(../../images/time/time_08_pc.svg);
}

.time_box ul li.sc09 .title:before {
    background-image: url(../../images/time/time_09_pc.svg);
}

.time_box ul li.sc10 .title:before {
    background-image: url(../../images/time/time_10_pc.svg);
}

.time_box ul li.sc11 .title:before {
    background-image: url(../../images/time/time_11_pc.svg);
}

.time_box ul li.sc12 .title:before {
    background-image: url(../../images/time/time_12_pc.svg);
}

.time_box ul li.sc13 .title:before {
    background-image: url(../../images/time/time_13_pc.svg);
}

.time_box ul li.sc14 .title:before {
    background-image: url(../../images/time/time_14_pc.svg);
}

.time_box ul li.sc15 .title:before {
    background-image: url(../../images/time/time_15_pc.svg);
}

.time_box ul li.sc16 .title:before {
    background-image: url(../../images/time/time_16_pc.svg);
}

.time_box ul li.sc17 .title:before {
    background-image: url(../../images/time/time_17_pc.svg);
}

.time_box ul li.sc18 .title:before {
    background-image: url(../../images/time/time_18_pc.svg);
}

.time_box ul li.sc19 .title:before {
    background-image: url(../../images/time/time_19_pc.svg);
}

.time_box ul li.sc20 .title:before {
    background-image: url(../../images/time/time_20_pc.svg);
}

.time_box ul li.sc21 .title:before {
    background-image: url(../../images/time/time_21_pc.svg);
}

.time_box ul li.sc22 .title:before {
    background-image: url(../../images/time/time_22_pc.svg);
}

.time_box ul li.sc23 .title:before {
    background-image: url(../../images/time/time_23_pc.svg);
}

.time_box ul li.sc24 .title:before {
    background-image: url(../../images/time/time_24_pc.svg);
}



.time_box ul li .btn {
    width: 30%;
    display: flex;
    flex-direction: column;
    text-align: right;
}

.time_box ul li .btn .time {
    padding-bottom: 3px;
    padding-right: 20px;
    position: relative;
}

.time_box ul li .btn .time:before {
    content: '';
    position: absolute;
    right: 8px;
    top: 12px;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.time_box ul li .btn .download {
    background: #cbcbcb;
    color: #fff;
    text-align: center;
    padding: 2px 0 4px;
    font-size: 15px;
    transition: 0.5s;

}

.time_box ul li .btn .download:hover {
    background: #989898;
}

.time_box ul li .utimawari {
    position: absolute;
    display: inline-block;
    top: 41%;
    background-size: contain;
    vertical-align: middle;
    width: 21px;
    height: 18px;
    background-image: url(../../images/utimawari_icon.svg);
}

.time_box .time_left ul li .utimawari {
    left: 112px;
}

.time_box .time_right ul li .utimawari {
    left: 19px;
    transform: rotate(180deg);
}

.time_box ul li .sotomawari {
    position: absolute;
    display: inline-block;
    top: 41%;
    background-size: contain;
    vertical-align: middle;
    left: 19px;
    width: 21px;
    height: 18px;
    background-image: url(../../images/sotomawari_icon.svg);
}

.time_box .time_left ul li .sotomawari {
    left: 19px;
}

.time_box .time_right ul li .sotomawari {
    left: 112px;
    transform: rotate(180deg);
}

.time_cont li {
    position: relative;
}

.time_cont li:after {
    margin-left: 6px;
}

.time_cont li.utimawari:after {
    content: '';
    position: absolute;
    display: inline-block;
    top: 8px;
    background-size: contain;
    vertical-align: middle;
    width: 17px;
    height: 16px;
    background-image: url(../../images/utimawari_icon.svg);
}

.time_cont li.sotomawari:after {
    content: '';
    position: absolute;
    display: inline-block;
    top: 8px;
    background-size: contain;
    vertical-align: middle;
    width: 17px;
    height: 16px;
    background-image: url(../../images/sotomawari_icon.svg);
}

.time_cont li.teiryujo:after {
    content: '';
    position: absolute;
    display: inline-block;
    top: 7px;
    background-size: contain;
    vertical-align: middle;
    width: 16px;
    height: 16px;
    background-image: url(../../images/teiryujo_icon.svg);
}

section.time_holiday ul {
    display: flex;
    flex-wrap: wrap;
}

section.time_holiday ul li {
    width: 33.333%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0px 55px;
    margin-top: 2%;
    margin-bottom: 2%;
    position: relative;
    border-left: 1px solid #ccc;
}

section.time_holiday ul li:first-of-type {
    border-left: none;

}

section.time_holiday ul li .title {
    width: 50%;
    text-align: left;
    position: relative;
    font-weight: bold;
    font-size: 22px;
}

section.time_holiday ul li .btn {
    width: 50%;
    display: flex;
    flex-direction: column;
    text-align: right;
}

section.time_holiday ul li .btn .time {
    padding-bottom: 3px;
    padding-right: 20px;
    position: relative;
}

section.time_holiday ul li .btn .time:before {
    content: '';
    position: absolute;
    right: 8px;
    top: 12px;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

section.time_holiday ul li .btn .download {
    background: #cbcbcb;
    color: #fff;
    text-align: center;
    padding: 2px 0 4px;
    font-size: 15px;
    transition: 0.5s;
}

section.time_holiday ul li .btn .download:hover {
    background: #989898;
}

section.time_holiday ul li .title:before {
    content: "";
    background: #4ca534;
    position: absolute;
    top: 16px;
    left: -27px;
    width: 17px;
    height: 17px;
    margin-top: -4px;
    border-radius: 50%;
    transition: .2s;
    display: block;
}

/* 電車博物館
==========================================*/
section.museum .wrapper{
  position:relative; /*20200415yamazaki追加*/
}

section.museum ul {
    display: flex;
    flex-wrap: wrap;
    width:80%; /*20200415yamazaki追加*/
    float:right;
}

section.museum ul li {
    width: 48%;
    margin-right: 2%;
    margin-bottom: 2%;
}

#sasara{/*20200427saitoua*/
    width: 300px;
    height: auto;
}


section.museum .sp_sasara{/*20200416miyamoto*/
	display: none;
}



.sp_sasara{
	display: none;
}

#sasara img.sasara-comment{ /*20200416miyamoto*/
    max-width:300px;
}

#sasara img.sasara-car-img{ /*20200416miyamoto*/
	max-width: 235px;
}

section.museum ul li:nth-child(2n) { /*20200415yamazaki追加*/
    margin-right: 0%;
}
/*
section.museum ul li:nth-child(3n+1) {
    margin-left: 0%;
}
*/

section.museum ul li .photo-wrap {
    position: relative;
    overflow: hidden;
    height: 240px;
}

section.museum ul li .photo-wrap .photo {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    height: 100%;
    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    transition: all .5s ease-out;
}

section.museum ul li a:hover .photo-wrap .photo {
    opacity: .8;
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

section.museum ul li a:hover {
    text-decoration: none;
}

section.museum ul li figcaption {
    background: #f5f5f5;
    padding: 14px 0px;
}

section.museum ul li figcaption h3 {
    font-size: 18px;
    font-weight: bold;
}
section.museum .museum-box {
    width: 78%;
    margin-left: auto;
}


.child.museum #slider {
    margin-bottom: 20px;
}

.child.museum #thumbnail_slider li {
    cursor: pointer;
}

.child.museum .slick-arrow {
    display: none !important;
}


.child.museum .thumbnail-item {
    flex: 0 1 30%;
    margin-bottom: 10px;
    box-sizing: border-box;
    position: relative;

}

.child.museum .thumbnail-item:after {
    content: '';
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    transition: .3s opacity linear;
}

.child.museum .thumbnail-current:after {
    opacity: 0;
}

.child.museum #thumbnail_slider .thumbnail-item:hover:after {
    opacity: 0;
}

.child.museum .photo360 p {
    text-align: center;
}

.child.museum .photo360 ul {
    display: flex;
    width: 700px;
    margin: 0 auto;
    justify-content: center;
}

.child.museum .photo360 ul li {
    padding: 0 15px;
}

.child.museum .photo360 ul li:before {
    content: none !important;
    content: none !important;
}

.child.museum .photo360 ul li a {
    border: 3px solid #ccc;
    padding: 30px 0px;
    display: inline-block;
    position: relative;
    width: 320px;
    text-align: center;
    background: #f5f5f5;
}

.child.museum .photo360 ul li a:before {
    content: '';
    position: absolute;
    right: 25px;
    top: 46%;
    width: 8px;
    height: 8px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.tbl-keiyaku thead th {
    width: 15%;
}

.t-keiyaku th:nth-child(2) {
    width: 40%;
}

.t-keiyaku thead th:nth-child(3) {
    width: 30%;
}

.t-keiyaku .m-text-link {
    color: #1565c0;
    text-decoration: underline;
}

.t-keiyaku span.new {
 	color: #fff;
    background: firebrick;
    border-radius: 2px;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 1px 4px;
    margin-left: 10px;
}

.t-keiyaku tr td:nth-child(3) {
    color: #B31215;
    font-size: 1.2rem;
    vertical-align: inherit;
    line-height: 1.5;
    text-align: left;
}

.t-keiyaku tr td:nth-child(2) {
    text-align: left;
}

#page_single .t-keiyaku .table-style2 td {
    color: #000 !important;
    font-size: 15px !important;
}

#page_single .t-keiyaku .table-style2 th:nth-of-type(1) {
    width: 450px;
}

#page_single .t-keiyaku .table-style2 td:nth-of-type(1) {
    text-align: left;
}

#page_single .t-keiyaku .table-style2 td a {
    text-decoration: underline !important;
    color: #1565c0 !important;
}

#page_single .t-keiyaku .table-style2 th:nth-of-type(2) {
    width: 300px;
}

#page_single .t-keiyaku .table-style2 td:nth-of-type(2) {
    text-align: center;
}

#page_single .t-keiyaku .table-style2 td:nth-of-type(4) {
    text-align: left;
}

#page_single .t-keiyaku .table-style2 th:nth-of-type(4) {
    width: 200px;
}


#page_single.bid .t-keiyaku .table-style2 th:nth-of-type(1) {
    width: 310px;
}

#page_single.bid .estimate .headtitle {
    text-align: left;
    background: #e6e6e6;
    font-size: 16px;
    padding: 7px 12px;
}

#page_single.bid .estimate th {
    text-align: left;
}




/* 採用情報
==========================================*/

#page_recruit .recruit-bg {
    background: url(../../images/img-mv.jpg) center center;
    background-size: cover;
}

#page_recruit .recruit-bg img {
    text-align: center;
    display: block;
    margin: 0 auto;
    padding: 14vw 0;
}

#page_recruit .recruit-bg p {
    text-align: center;
    display: block;
    margin: 0 auto;
    padding: 14vw 0;
    font-size: 40px;
    font-weight: 100;
    color: #fff;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.6);
}

.m-recruit-job-col3 {
    display: flex;
    flex-wrap: wrap;
}

.m-recruit-job-item {
    width: 31.333%;
    background: #fff;
    border-top-left-radius: 12px;
    -webkit-border-top-left-radius: 12px;
    -moz-border-radius-topleft: 12px;
    border-top-right-radius: 12px;
    -webkit-border-top-right-radius: 12px;
    -moz-border-radius-topright: 12px;
}

.m-recruit-job-item:nth-child(2) {
    margin-left: 3%;
    margin-right: 3%;
}

.m-recruit-job-item-title {
    background: #f39800;
    color: #fff;
    text-align: center;
    font-size: 21px;
    border-radius: 12px;
    padding: 30px 0;
    margin-bottom: 12px;
}

.m-recruit-job-list-content {
    padding-bottom: 20px;
}

.m-recruit-job-list-content figure {
    padding-top: 12px;
}

.m-recruit-job-inner {
    padding: 0 12px 12px;
}

.m-recruit-job-list__item {
    padding: 0 20px;
}

.m-recruit-job-list__item:nth-child(odd) {
    background: #efefef;
}

.m-recruit-job-list-title {
    font-size: 18px;
    position: relative;
    padding: 14px 24px 14px 0px;
    line-height: 1.4;
    font-weight: bold;
    cursor: pointer;
}

.m-recruit-job-list-title .time {
    color: #f39800;
    margin-right: 20px;
    width: 55px;
    display: inline-block;
}

.m-recruit-job-list-title .text {}

.list_child_open {
    position: absolute;
    top: 12px;
    right: -10px;
    border-radius: 50%;
    display: inline-block;
    width: 28px;
    height: 28px;
    background-color: #f39800;
    cursor: pointer;

}

.list_child_open::before,
.list_child_open::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 50%;
    height: 2px;
    background-color: #fff;
    transition: all .2s ease-out;
}

.list_child_open.close::after {
    transform: rotate(0deg);
}

.list_child_open::after {
    transform: rotate(90deg);
}

.m-recruit-message-item {
    display: flex;
    flex-wrap: wrap;
}

.m-recruit-message-item.type2 {
    display: flex;
    flex-direction: row-reverse
}

.m-recruit-message-item .m-recruit-message-item-image {
    width: 50%;
    position: relative;
    background: #f39800;
}

.m-recruit-message-item .m-recruit-message-item-content {
    width: 50%;
    background: #f39800;
    padding: 40px;
    color: #fff;
    font-size: 16px;
}

.m-recruit-message-item .m-recruit-message-item-content em {
    font-size: 24px;
    font-weight: bold;
    padding-right: 12px;
}

.m-recruit-message-item.type1 .m-recruit-message-item-content {
    padding-right: 12vw;
}

.m-recruit-message-item.type2 .m-recruit-message-item-content {
    padding-left: 12vw;
}

.m-recruit-message-item.type1 .photo {
    background: url(../../images/img-message-201903.jpg) center left;
    background-size: cover;
    width: 38vw;
    height: 100%;
    margin-left: auto;
}

.m-recruit-message-item.type2 .photo {
    background: url(../../images/img-message-201902.jpg) center center;
    background-size: cover;
    width: 38vw;
    height: 100%;
    margin-right: auto;
}


@media screen and (max-width:1400px) {

    .m-recruit-message-item.type1 .m-recruit-message-item-content {
        padding-right: 40px;
    }

    .m-recruit-message-item.type2 .m-recruit-message-item-content {
        padding-left: 40px;
    }

    .m-recruit-message-item.type1 .photo {
        width: 93%;
        background-position: left;

    }

    .m-recruit-message-item.type2 .photo {
        width: 93%;
        background-position: right;

    }

}


.m-recruit-faq {
    background: #faf5e4;
}

.tab-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 60px;
}

.tab-list li {
    padding: 0px !important;
    background: #fff;
    text-align: center;
    border-radius: 8px;
}

.m-recruit-faq-tab-list li {
    width: 19%;
}

.tab-list li a {
    width: 100%;
    height: 100%;
    font-size: 18px;
    padding: 20px !important;
    display: block;
    color: #f39800;
    font-weight: bold;
    border-radius: 8px;
    transition: 0.5s;

}

.tab-list li a.is-active:before {
    -webkit-transition: .3s;
    transition: .3s;
    content: "";
    border-top: solid 12px #f39800;
    border-left: solid 12px transparent;
    border-right: solid 12px transparent;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 100%);
    transform: translate(-50%, 100%);
}

.tab-list li .is-active {
    background: #f39800;
    color: #fff;

}

.tab-list li a:hover {
    background: #f39800;
    color: #fff;
}

.tab-list li:before {
    content: none !important;
}


.m-recruit-faq-outer {
    background: #fff;
    margin-bottom: 20px;
}

.m-recruit-faq-outer dt {
    padding: 20px 30px 20px 60px;
    position: relative;
    font-weight: bold;
    font-size: 18px;
    cursor: pointer;
}

.m-recruit-faq-outer dt i {
    position: absolute;
    top: 13px;
    left: 25px;
    margin-right: 20px;
    color: #f39800;
    font-family: 'Montserrat', sans-serif;
    font-size: 2.6rem;
    font-style: normal;
}

.m-recruit-faq-outer dd i {
    position: absolute;
    margin-right: 20px;
    left: 40px;
    top: -7px;
    color: #f39800;
    font-family: 'Montserrat', sans-serif;
    font-size: 2.6rem;
    font-style: normal;
}

.m-recruit-faq-outer dd {
    position: relative;
    padding: 0px 30px 20px 74px;
}

.m-recruit-faq-outer .list_child_open {
    top: 23px;
    right: 30px;
}

.m-recruit-guide {
    background: #faf5e4;
}

.m-recruit-guide-tab-list li {
    width: 32.333%;
}

.m-recruit-guide-tab {
    background: #fff;
    padding: 40px;
}

.m-recruit-guide table th {
    background: #faf5e4;
    padding: 22px;
}

.m-recruit-guide table td {
    text-align: left;
    padding: 22px;
}

.m-recruit-guide .m-flex {
    display: flex;
    flex-wrap: wrap;
}

.m-recruit-guide .m-flex p {
    font-size: 15px;
}

.m-recruit-guide .m-flex .m-flex__item {
    width: 50%;
}

.m-recruit-guide-list li {
    position: relative;
    border: solid 2px #212121;
    border-radius: 4px;
    padding: 15px;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
}

.m-recruit-guide-list__item + .m-recruit-guide-list__item:before {
    content: "";
    border-top: solid 10px #f39800;
    border-left: solid 12px transparent;
    border-right: solid 12px transparent;
    position: absolute;
    left: 50%;
    top: -30px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

.m-recruit-guide-list__item + .m-recruit-guide-list__item {
    margin-top: 50px;
}

.m-recruit-message-item.type1 .m-recruit-message-item-content {
    padding-right: 40px;
    padding-bottom: 80px;
}

.m-recruit-message-item.type2 .m-recruit-message-item-content {
    padding-left: 40px;
    padding-top: 80px;
    padding-bottom: 20px;
}

.m-recruit-message-item.type1 .photo {
    background: url(../../images/img-message-201903.jpg) center left;
    background-size: cover;
    width: 100%;
    height: 100%;
    margin-left: auto;
}

.m-recruit-message-item.type2 .photo {
    background: url(../../images/img-message-201902.jpg) center center;
    background-size: cover;
    width: 100%;
    height: 100%;
    margin-right: auto;
}

.m-recruit-message-item-content dl dt {
    font-size: 1.4rem;
}

/* 言語ページ
==========================================*/
.language .flex-outer {
    display: flex;
    flex-wrap: wrap;
}

.language .flex-outer .flex-col1 {
    width: 44%;
}

.language .flex-outer .flex-col2 {
    width: 28%;
}

.language .flex-outer .flex-col3 {
    width: 28%;
}

.language .big-red {
    color: #ff2121;
    text-align: center;
    font-size: 22px;
}

.language .flex-outer table {
    width: 100%;
    text-align: center;
    font-size: 18px;
}

.language .flex-outer table th,
.language .flex-outer table td {
    padding: 6px 12px;
    letter-spacing: 2px;
    line-height: 1.4;
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.language .flex-col3 table th,
.language .flex-col3 table td {
    border-right: 1px solid #ccc;
}

.language .flex-outer table .col1 {
    color: #fff;
    background: #4ca534;
}

.language .flex-outer table .col2 {
    background: #f7fff1;
}

.language .flex-outer .sp_disp {
    display: none;
}

.language .access-outer {
    display: flex;
    flex-wrap: wrap;
}

.language .access-outer .left {
    width: 80px;
}

.language .access-outer .right {
    text-align: center;
}

.language .access-outer .right img {
    width: 110px;
}

.language.en .access-outer .right img {
    text-align: left;
    margin-right: auto;
    display: block;
}

.language .access-outer .small {
    font-size: 13px;
}

.language .access-title {
    padding: 8px 0 9px;
}

.language .access-title span {
    display: block;
    color: #ff2121;
}

.language .access {
    font-size: 15px;
    line-height: 1.4;
}

.language .access {
    font-size: 15px;
    line-height: 1.4;
}

.language .price-outer dl {
    display: flex;
    flex-wrap: wrap;
}

.language .price-outer dl dt {
    width: 14%;
}

.language .price-outer dl dd {
    width: 86%;
}

.language.en .price-outer dl dt {
    width: 23%;
}

.language.en .price-outer dl dd {
    width: 75%;
}

.language.zh-hant .price-outer dl dt {
    width: 20%;
}

.language.zh-hant .price-outer dl dd {
    width: 80%;
}

.language .romen-kome img {
    position: relative;
    top: -3px;
    padding: 0 7px;
}

.language .youtubeArea p {
    font-size: 2rem;
}
.language .youtubeArea { 
    margin:0 0 10% 0;
}
.language .youtubeArea .flex {
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: wrap;
}
.language .youtubeArea .flex li{
    width: calc(33.3333%);
    height: auto;
    display: flex;
    flex-direction: column;
    padding: 20px;
    list-style-type: none;
    text-align: center;
}
.language .youtubeArea iframe{ 
    height: 200px;
}


/* 契約情報
==========================================*/
#contents.child.bid .news {
    border: 4px double #da4d31;
    background: #fff1f0;
    padding: 40px;
}

#contents.child.bid .news .entry-title {
    text-align: left;
    font-size: 20px;
    border-bottom: 1px solid #323232;
    padding-bottom: 12px;
    color: #323232;
    font-weight: normal;
    position: relative;
    margin: 12px 0 14px;
}

#contents.child.bid .news .entry-content {
    padding: 12px 0 40px;
}

#contents.child.bid .news .entry-header .cat {
    border: #000 1px solid;
    color: #000;
    margin-left: 8px;
    padding: 1px 16px 1.5px;
    font-size: 14px;
}

.subpage #contents.child .square li:before {
    content: none !important;
}

.subpage #contents.child .square li {
    position: relative !important;
    padding-left: 30px !important;
    padding-bottom: 4px !important;
}

.subpage #contents.child .square li:before {
    content: "◆" !important;
    color: #da4d31;
    position: absolute !important;
    top: 4px !important;
    left: 5px !important;
    display: block !important;
    width: 0 !important;
    height: 0 !important;
}

#contents.child.bid .news {
    border: 4px double #da4d31;
    background: #fff1f0;
    padding: 20px;
}

#contents.child.bid .news .entry-title {
    text-align: left;
    font-size: 20px;
    border-bottom: 1px solid #323232;
    padding-bottom: 12px;
    color: #323232;
    font-weight: normal;
    position: relative;
    margin: 12px 0 0;
}

#contents.child.bid .news .entry-content {
    padding: 12px 0;
}

#contents.child.bid .news .entry-header .cat {
    border: #000 1px solid;
    color: #000;
    margin-left: 8px;
    padding: 1px 16px 1.5px;
    font-size: 14px;
}
/*契約情報　20200414　miyamoto*/
#contents.child.bid .whatsnew-all{
	width: 100%;
	margin: 40px 0;
}
#contents.child.bid .whatsnew_h{
	font-size: 1.6rem;
}

#contents.child.bid .whatsnew {
    border: #ddd 1px solid;
	height: 100px;
	overflow-y:scroll;
	border-radius: 5px;
}

#contents.child.bid .whatsnew dl {
	margin: 10px;
	display: flex;
	border-bottom: 1px #ddd dotted;
	font-size: 1.2rem;
}

#contents.child.bid .whatsnew dt{
	margin-right: 40px;
}
#contents.child.bid .whatsnew dd a{
	color: #000!important;
}

/*20200420　宮本　ささらちゃんCSS*/
/*電車博物館*/
/*#contents.streetcar .text-cont {
    background: #f5f5f5;
    padding: 20px 40px 12px;
    width: 80%;	
    margin-right: auto;
    border-radius: 20px;
	position:relative;

}
.museum #contents.streetcar .text-cont :after {
border:20px solid transparent;
border-left-color:#f5f5f5;
border-right-width:0;
right:-20px;
content:"";
display:block;
top:100px;
position:absolute;
width:0;
}
*/

/*沿線ガイドのみ*/
/*.streetcar-guide #contents .text-cont {
    background: #f5f5f5;
    padding: 20px 40px 12px;
    margin-right: auto;
    border-radius: 20px;
	position:relative;
	width: 100%;
}

.streetcar-guide #contents .text-cont-all img{
	margin: 60px 10px;
	height: auto;
}

.chara-comment-all {
    width: 60%;
    display: flex;
}
.streetcar-guide #contents .chara-comment {
    background: #E6F2E2;
    padding: 20px;
    margin-right: auto;
    border-radius: 20px;
	position:relative;
	margin: 40px 20px;
	width: 50%;
	display: table;
}

.streetcar-guide #contents .chara-comment :after {
	border:20px solid transparent;
	border-left-color:#E6F2E2;
	border-right-width:0;
	right:-20px;
	content:"";
	display:block;
	top:100px;
	position:absolute;
	width:0;
}
*/

/*お問合せフォーム*/
.trafficInfoCenter { width:70%; margin:30px auto; text-align: center; }
.trafficInfoCenter .flex { padding: 10px; }
.trafficInfoCenter .trafficInfoCenter_btn { padding: 10px 0; }
.trafficInfoCenter .trafficInfoCenter_btn a { font-size: 1.6rem; }

/*子ども交通教室応募フォーム20230518*/
.ouboarea .border { padding: 15px; border: 1px solid #333; margin-bottom: 20px; display: inline-block;  }
.ouboarea .red { color: #ff0000; }
.ouboarea .blue { color: #1565c0; font-size: 1.2rem; }
.ouboarea .small { color: #333; font-size: 1.2rem; }
.ouboarea .required { color: #fff!important; background: #ff0000; padding: 2px 4px;
font-size: 1.0rem; margin-right: 5px; }
.ouboarea tr { display: flex; justify-content: space-between; border-bottom: 1px solid #ddd; padding: 20px 0; }
.ouboarea th { width: 15%;  display: flex; align-items: center; }
.ouboarea th .mail { font-size: 1.5rem;}
.ouboarea td { width: 85%; }
.ouboarea .fwrap { display: flex; flex-wrap: wrap; }
.ouboarea .notion { font-size: 1.3rem; }
.ouboarea .notion dt { width: 30%; }
.ouboarea .notion dd { width: 70%; }
.ouboarea .notionarea { padding: 10px; }
.ouboarea .notionarea p { width: 5%; }
.ouboarea .notionarea dl { width: 90%; }
.ouboarea .participant dt { width: 15%; display: flex; flex-flow: wrap; justify-content: space-around; align-items: center; margin-bottom: 10px; }
.ouboarea .participant dd { width: 85%; margin-bottom: 10px; }
.ouboarea .participant p { margin-bottom: 20px; width: 20%; }
.ouboarea .borderB { border-bottom: 1px solid #ddd; padding-bottom: 20px; margin-bottom: 20px; }
.ouboarea .participantcont { width: 80%; }
.ouboarea select { padding: 10px; border: 1px solid #ddd; }
.ouboarea .add dt { width: 10%; display: flex; flex-flow: wrap; justify-content: space-around; align-items: center; margin-bottom: 10px; }
.ouboarea .add dd { width: 90%; margin-bottom: 10px; }
.ouboarea span.error { color: #ff0000; }
.mw_wp_form .error { color: #ff0000!important; }

/*料金フォーム20230528*/
.about_fees .notice { text-align: left; background-color: rgb(232 247 255); padding: 40px; }
.about_fees th,.about_fees td { line-height: 1.3; }
.about_fees th { width: 20%; }
.about_fees p.required { padding: 10px; color: red;}
.about_fees span.red { color: red;}
.about_fees span.small { font-size: 1.2rem; color: #888; }
.mw_wp_form_preview .about_fees span.small { display: none;}
.mw_wp_form_preview .about_fees span.small + br { display: none;}
.about_fees .flex { display: flex; }
.about_fees .sub-item { width: 10%; display: grid; place-items: center; }
.about_fees input[type="text"] { width: auto!important; }
.about_fees .layover01,.about_fees .layover02,.about_fees .layover03 { margin-bottom: 10px; }
.about_fees ul li:not([class]):before { background: #1565c0!important; }
.about_fees a:not([class]) { color: #1565c0!important; text-decoration: underline!important; }
.about_fees .school-name span.error { padding:20px; }

/*定期払戻フォーム20230528*/
.refund .notice { text-align: left; background-color: rgb(254, 247, 255); padding: 40px; }
.refund p.imgphoto { text-align: center; }
.refund th { width: 20%; }
.refund th,.refund td { line-height: 1.3; }
.refund p.required { padding: 10px; color: red;}
.refund span.red { color: red;}
.refund span.small { font-size: 1.2rem; color: #888; }
.refund span.kakomu { padding:2px 5px; margin:0 5px; background-color:#f9f9f9; border:1px solid #777;     border-radius:2px; font-family:inherit; font-size:0.85em; }
.mw_wp_form_preview .refund span.small { display: none; }
.mw_wp_form_preview .refund span.small + br { display: none; }
.refund .flex { display: flex; }
.refund .sub-item { width: 10%; display: grid; place-items: center; }
.refund input[type="text"] { width: auto!important; }
.refund .layover01,.refund .layover02,.refund .layover03 { margin-bottom: 10px; }
.refund .sp{ display: none; }
.refund ul li:not([class]):before { background: #7e267e!important; }
.refund a:not([class]) { color: #7e267e!important; text-decoration: underline!important; }
.refund input::placeholder { opacity: 0.5; }

/*個人情報取扱20230629*/
#page_about .wrapper ul.privacyNumber { list-style-position: inside; }
#page_about .wrapper ul.privacyNumber li { padding-left: 50px!important;  text-indent: -1em; }
.subpage #contents.child ul.privacyNumber li::before { left:17px; }
#page_about .wrapper dl.privacyNumberArea { text-indent: 1em; }
