@charset "UTF-8";

/* index トップ
==========================================*/
#page_index .slider {
    width: 92%;
    margin: 0% auto 4%;
}

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

.metaslider .flexslider .flex-direction-nav li a {
    opacity: 1 !important;
}

.metaslider .flexslider .flex-direction-nav li a.flex-next {
    display: inline-block;
    width: 50px;
    height: 50px;
    right: -27px;
    background-size: contain;
    vertical-align: middle;
    background-image: url(../../images/slider_next_arrow.png) !important;
}

.metaslider .flexslider .flex-direction-nav li a.flex-prev {
    display: inline-block;
    width: 50px;
    height: 50px;
    left: -27px;
    background-size: contain;
    vertical-align: middle;
    background-image: url(../../images/slider_prev_arrow.png) !important;
}

#page_index .tram {
    width: 100%;
}

#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 {
    background: url(../../images/home-img.jpg) top center no-repeat;
    background-size: 300%;
    padding-top: 18px;
}

#page_index .home-img .wrapper {
    padding: 0;
}

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

#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;
}

@media screen and (max-width:480px) {
    #page_index .home-img .container .item {
        display: flex;
        align-items: stretch
    }
    #page_index .home-img .container .item div {
        width: 100%;
    }
}

#page_index .home-img .container .item img {
    width: 90px;
}

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

#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: 22px 5px;
    background: #fff;
    display: block;
    transition: 0.5s;
    height: 100%;
}

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

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

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

#page_index .home-img .tram dl {
    font-size: 15px;
    width: 92%;
    margin: 0 auto 8%;
    position: relative;
}

#page_index .home-img .tram dl dt {
    width: 100%;
    padding: 8px 4%;
    text-align: left;
    background: #4b4e53;
    color: #fff;
    font-size: 18px;
}

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

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

#page_index .home-img .tram .navi .text {
    margin: 0;
    display: inline-block;
}

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

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

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

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

#page_index .infomation {
    padding: 4% 0;
}

#page_index .home-img .menu {
    padding: 2%;
    margin: 0 auto;
    background: #4b4e53;
}

#page_index .twitter {
    margin-top: 12%;
}

#page_index .news {
    padding-top: 4%;

}

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

#page_index .news h2 .rss {
    position: absolute;
    right: 0;
    top: -4px;
}

#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: #eb6c73;
    color: #eb6c73;
}

#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.keiyaku_info {
    border-color: #45ABB9;
    color: #45ABB9;
}

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

#page_index .news dl {
    border-bottom: 1px solid #dddddd;
    padding: 16px 2%;
}

#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: 18px;
    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: 2%;
}


#page_index .home-accident p {
    color: #000;
    font-size: 1.3rem;
    line-height: 1.7;
    padding: 4% 0;
}

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

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


/* .menulist 上部メニュー
==========================================*/
#topmenu {
    padding: 30px 0 20px;
}

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

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

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

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


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

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

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

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


#bottommenu {
    margin-bottom: 50px;
}

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

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

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

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

#bottommenu ul li a {
    display: block;
    width: 100%;
    padding: 12px 12px 8px 40px;
    position: relative;
    font-size: 13px;
    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-left: 1px solid #f39800;
    border-right: 1px solid #f39800;
    border-bottom: 1px solid #f39800;
}

#bottommenu.orange ul li:first-of-type a {
    border-top: 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-left: 1px solid #eb6c73;
    border-right: 1px solid #eb6c73;
    border-bottom: 1px solid #eb6c73;
}

#bottommenu.pink ul li:first-of-type a {
    border-top: 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-left: 1px solid #4ca534;
    border-right: 1px solid #4ca534;
    border-bottom: 1px solid #4ca534;
}

#bottommenu.green ul li:first-of-type a {
    border-top: 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-left: 1px solid #3c61ac;
    border-right: 1px solid #3c61ac;
    border-bottom: 1px solid #3c61ac;
}

#bottommenu.blue ul li:first-of-type a {
    border-top: 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: 18px;
    padding: 6px 0px;
    letter-spacing: 4px;
    margin-bottom: 8%;
}

.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: 9px 20px;
    font-size: 18px;
    position: relative;
    margin-bottom: 30px;
    line-height: 1.4;
}

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

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

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

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

.subpage #contents.child h5:not([class]) {
    font-size: 18px;
    position: relative;
    padding: 4% 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: 14px;
    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: 16px;
}

.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: 5px 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%;
    font-size: 14px;
}

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

.subpage #contents.child .wp-block-advgb-button_link {
    width: 100%;
    display: block;
    content: '';
    font-size: 15px;
    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: 100%;
    font-size: 12px;
    padding: 12px 4%;
    transition: 0.5s;
    position: relative;
    color: #fff !important;
}

.subpage #contents.child .wp-block-button__link:before {
    content: "";
    width: 7px;
    height: 7px;
    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: 4% !important;
}

.subpage .premium-container {
    text-align: left;
    margin-bottom: 4% !important;
}

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

}

.subpage table.advgb-table-frontend td,
.subpage table.advgb-table-frontend tr {
    padding: 4px 2% !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;
    font-size: 20px !important;
}

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

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

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

.subpage .premium-container {
    padding: 4% !important;
}

.subpage .advgb-accordion-header {
    padding-left: 4% !important;
}

.wp-block-column:first-of-type .wp-block-advgb-button {
    margin-bottom: 4%;

}

.wp-block-columns {
    margin-bottom: 4% !important;
}

.sp-pt {
    margin-top: 4% !important;
}

@media screen and (max-width:600px) {
    .wp-block-image {
        margin-top: 1em !important;
    }
}

.subpage .wp-block-media-text {
    display: block !important;
}

.subpage .wp-block-media-text__content {
    width: 100%;
    padding: 0 !important;
    padding-top: 4% !important;
}

.subpage .wp-block-media-text__media {
    width: 100%;
}



#contents.child .sp-style th {
    display: block;
    width: 100%;
    border-bottom: none !important;
}

#contents.child .sp-style td {
    display: block;
    width: 100%;
    border-bottom: none !important;
}

#contents.child .sp-style td {
    border-right: 1px solid #abb8c3;
    border-left: 1px solid #abb8c3;
    border-top: 1px solid #abb8c3;

}

#contents.child .sp-style tr:last-of-type td:last-of-type {
    border-bottom: 1px solid #abb8c3 !important;
}

/* 事業内容カラー */
#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 .premium-container p {
	text-align: left!important;
}


#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_business #contents.child .sp-style th {
	text-align: left;
	font-weight: bold;
}

/* 公社についてカラー */
#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;
	margin-top: 40px;
}

#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_info #contents.child .has-fixed-layout th {
    background-color: #fff5e4;
}

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


/* お問い合わせカラー */
#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_contact #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: #3c61ac;
    text-decoration: underline;
}

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

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



.has-large-font-size {
    font-size: 20px !important;
}


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

#menu1 .wrapper {
    padding: 0;
}

#menu1 ul {
    justify-content: space-between;
}


#menu1 ul > li {
    width: 100%;
    margin-top: 2%;
    padding: 14px 40px;
    font-size: 16px;
    position: relative;
    display: block;
    text-align: left;
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 3px 8px 0 rgba(0, 0, 0, 0.1);

}

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


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

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

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

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

}

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

#menu1 ol.sub a {
    font-size: 13px;

}

#menu1 ol.sub li:before {
    content: "";
    position: absolute;
    top: 16px;
    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;
}

#bottom_bnr {
    padding: 12% 0;
}

#bottom_bnr li {
    margin: 0 6px;
}


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

#submenu1 ul li {
    width: 100%;
    margin-bottom: 2%;
}

#submenu1 ul li:last-of-type {
    margin-right: 0%;
}

#submenu1 ul li a {
    display: block;
    width: 100%;
    border: 4px solid #cfd6d9;
    text-align: left;
    padding: 18px 24px 11px 24px;
    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: -2px;
    width: 41px;
    height: 42px;
    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: 8% 0;
}

#submenu2 ul li {
    width: 100%;
}

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

#submenu2 ul li a {
    display: flex;
    flex-direction: row;
    align-items: center;
    background: #fff;
    border: 4px solid #cfd6d9;
    font-size: 15px;
    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: 30px 0;
}

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

.child.search h2 {
    margin-top: 15px;
}

.child.search h2 a {
    font-size: 16px;
    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: 18px;
    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: 4px 13px 1.5px;
    font-size: 13px;
}

#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 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: 12px;
    font-size: 1.2rem;
    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: 20px;
}

.info_event .info-wrap .col {
    width: 100%;
    padding: 10px;
    padding-bottom: 10%;
    margin-bottom: 10%;
    box-shadow: 0 0 10px #eee;
}

.info_event .info-wrap .col:nth-child(2n) {
    background: #FFF0F0;
}

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


.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 11px 0px;
    font-size: 12px;
    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: 12px;
    margin-left: auto;
    padding-top: 2px;
    color: #858585;
}

.info_event .info-wrap .cont {
    color: #1a1a1a;
    font-size: 16px;
    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%;
    padding-top: 66.6666666667%;
}


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

.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: 12px 4%;
    display: block;
    width: 100%;
    position: relative;
}


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

.info_media .lay-ptn1 .wrap .sub,
.info_media .lay-ptn1 .wrap .main {
    width: 100%;
}

.info_media .lay-ptn2 .wrap .main {
    width: 100%;
}


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

.info_media .wrap .main {
    padding: 8% 0;
    border-bottom: 1px solid #ccc;

}

.info_media .wrap .main .photo {
    width: 100%;
    text-align: center;
    margin: 0 auto 4%;
}

.info_media .wrap .main .text {
    width: 100%;
}

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

}

.info_media .wrap .main .text .btn {
    bottom: 0;
    margin-top: 4%;
}

.info_media .wrap .main .text .btn a {
    background: #b2b2b2;
    color: #fff !important;
    text-decoration: none !important;
    padding: 8px 4%;
    display: block;
    text-align: center;
    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: 100%;
}

.info_media .wrap .sub .btn {
    width: 100%;
    margin-top: 4%;
}

.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: 4%;
}
.info_media .wrap .webarea {
	width: 85%;
    margin: 7% auto;
}

.info_media .wrap .webarea p{
	padding: 6px;
	border: 1px solid #000;
	text-align: center;
}


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


.question dl {
    margin-bottom: 4%;
}



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

.question dl dt:before {
    content: 'Q';
    font-size: 17px;
    position: absolute;
    top: 9px;
    left: 13px;
}

.question dl dt:after {
    position: absolute;
    top: 20%;
    right: 8px;
    content: '+';
    font-size: 21px;
    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 40px !important;
    font-size: 15px;
    position: relative;
    text-align: left !important;
}

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

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

.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: 16px;
    font-weight: bold;
    text-align: center;
    transition: 0.5s;
    max-width: 320px;
    border-radius: 8px;
}

.question .wp-block-image {
  text-align: center;
}

.question .wp-block-image .alignright {
  float: none;
  display: block;
  margin: 0;
}


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

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

#contents.streetcar .station_list ul li:before {
    content: none !important;
}

#contents.streetcar .station_list ul li {
    padding-left: 0 !important;
    width: 48%;
    margin-bottom: 3%;

}

#contents.streetcar .station_list ul li:nth-child(2n) {
    margin-left: 4%;
}

@media screen and (max-width:460px) {
    #contents.streetcar .station_list ul li {
        width: 100%;
    }

    #contents.streetcar .station_list ul li:nth-child(2n) {
        margin-left: 0%;
    }

}


#contents.streetcar .station_list ul li a {
    padding: 12px 12px 12px 54px;
    display: block;
    background: #f5f5f5;
    border: 3px solid #ccc;
    position: relative;
}

#contents.streetcar .station_list ul li a:before {
    content: '';
    position: absolute;
    left: 8px;
    top: 6px;
    display: inline-block;
    width: 34px;
    height: 34px;
    background-image: url(../../images/time/sc01_icon.png);
    background-size: contain;
    vertical-align: middle;
}

#contents.streetcar .station_list ul li:nth-child(2) a:before {
    background-image: url(../../images/time/sc02_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(3) a:before {
    background-image: url(../../images/time/sc03_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(4) a:before {
    background-image: url(../../images/time/sc04_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(5) a:before {
    background-image: url(../../images/time/sc05_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(6) a:before {
    background-image: url(../../images/time/sc06_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(7) a:before {
    background-image: url(../../images/time/sc07_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(8) a:before {
    background-image: url(../../images/time/sc08_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(9) a:before {
    background-image: url(../../images/time/sc09_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(10) a:before {
    background-image: url(../../images/time/sc10_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(11) a:before {
    background-image: url(../../images/time/sc11_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(12) a:before {
    background-image: url(../../images/time/sc12_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(13) a:before {
    background-image: url(../../images/time/sc13_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(14) a:before {
    background-image: url(../../images/time/sc14_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(15) a:before {
    background-image: url(../../images/time/sc15_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(16) a:before {
    background-image: url(../../images/time/sc16_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(17) a:before {
    background-image: url(../../images/time/sc17_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(18) a:before {
    background-image: url(../../images/time/sc18_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(19) a:before {
    background-image: url(../../images/time/sc19_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(20) a:before {
    background-image: url(../../images/time/sc20_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(21) a:before {
    background-image: url(../../images/time/sc21_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(22) a:before {
    background-image: url(../../images/time/sc22_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(23) a:before {
    background-image: url(../../images/time/sc23_icon.png);
}

#contents.streetcar .station_list ul li:nth-child(24) a:before {
    background-image: url(../../images/time/sc24_icon.png);
}


#contents.streetcar .station_list ul li a:after {
    content: '';
    position: absolute;
    right: 12px;
    top: 20px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#contents.streetcar .station_list ul li a p {
    font-size: 13px;
}

#contents.streetcar .genre_list {
    background: #f5f5f5;
    border-radius: 12px;
    padding: 4%;
}

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

#contents.streetcar .genre_list ul li {
    margin-bottom: 4%;
}

#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 {
    background: #f5f5f5;
    border-radius: 12px;
    padding: 12% 4% 8%;
}

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

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

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

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

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

#contents.streetcar .shop-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

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

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

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

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

}

#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: 4% 4% 2% 4%;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    border-radius: 4px;
	position:relative;

}



#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: 100%;
    font-weight: bold;
    margin-bottom: 2%;
}

#contents.streetcar .text-cont dl dd {
    width: 100%;
    margin-bottom: 4%;
	font-size: 1.2rem;
}

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

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

#contents.streetcar .back_btn a {
    border: 3px solid #ccc;
    padding: 12px 4%;
    display: block;
    width: 100%;
    position: relative;
}

#contents .text-cont-all{
	display: flex;
	}
#contents .text-cont-all img{ margin-top: 30px;
	}

/*20200420　宮本　ここから*/
/*電車博物館のみ*/
/*
.museum #contents .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-all {
	display: block;
	margin-bottom: 20px;
}

.streetcar-guide #contents .text-cont {
    width: 100%;
}

.streetcar-guide #contents .text-cont-all img{
	width: auto;
	height: auto;
}

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

.streetcar-guide #contents .chara-comment :after {
	border:20px solid transparent;
	border-left-color:#E6F2E2;
	border-right-width:0;
	right:-20px;
	content:"";
	display:block;
	top:40px;
	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: 9px 20px;
    font-size: 18px;
    position: relative;
    margin-bottom: 30px;
    line-height: 1.4;
}

#page_single.event #contents.child h2:not([class]):before {
    position: absolute;
    content: '';
    display: block;
    height: 25px;
    width: 6px;
    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: #eb6c73;
    color: #eb6c73;
}

#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 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: 15px;
    padding: 7px 15px 7px;
    position: relative;
    margin-bottom: 12px;
}

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

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

}

.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: 48px;
    height: 40px;
}

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

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

.advertising_area .wp-block-columns .val {
    text-align: right;
    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: 100%;
    height: auto;
    margin-top: 2px;
}

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


.advertising_menu .list {
    width: 100%;
    border: 1px solid #ccc;
    margin: 1%;
    position: relative;
}

.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);
}

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

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


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

.timeline .bg_img {
    display: none;
}

.time_box {
    display: block;
    width: 100%;
}

.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;
}


.time_box ul li {
    background: #f3f3f3;
    display: flex;
    align-items: center;
    padding: 20px 14px 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: 15px;
}

.time_box ul li .title:before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -6px;
    background-size: contain;
    vertical-align: middle;
    left: 4%;
    width: 75px;
    height: 41px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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

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

.time_box ul li .btn .time:before {
    content: '';
    position: absolute;
    right: 8px;
    top: 9px;
    width: 6px;
    height: 6px;
    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 {
    display: none;
}

.time_box ul li .sotomawari {
    display: none;
}


@media screen and (max-width:500px) {
    .time_box ul li .title {
        text-align: center;
        width: 100%;
        padding-left: 0;
        padding-top: 45px;
    }

    .time_box ul li .btn {
        width: 100% !important;
        display: block !important;
    }

    .time_box ul li .btn .download {
        width: 100% !important;
        display: block !important;
        padding: 6px 0 4px;
    }

    .time_box ul li .title:before {
        top: -3px;
    }


    .time_box ul li .title:before {
        position: absolute;
        content: '';
        display: inline-block;
        top: -6px;
        background-size: contain;
        vertical-align: middle;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 75px;
        height: 41px;
    }
}


.time_cont li {
    position: relative;
}

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

.time_cont li.utimawari:after {
    content: '';
    position: absolute;
    display: inline-block;
    top: 5px;
    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: 5px;
    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: 3px;
    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: 100%;
    display: flex;
    margin-top: 2%;
    margin-bottom: 4%;
    position: relative;
	background: #eee;
	padding: 5px;
}

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

}

section.time_holiday ul li .title {
    width: 100%;
    text-align: center;
    position: relative;
    font-weight: bold;
    font-size: 18px;
}

section.time_holiday ul li .btn {
    width: 100%;
    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: 10px;
    width: 5px;
    height: 5px;
    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: 6px 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: none;
}


/* 電車博物館
==========================================*/
section.museum{
  position:relative;
}

section.museum ul {
    display: flex;
    flex-wrap: wrap;
	  justify-content: space-between;
    width:100%; /*20200415yamazaki追加*/
    margin-top: 20px;
}

section.museum ul li { /*20200415yamazaki追加*/
    width: 100%;
    margin-bottom: 4%;
}

#sasara{/*20200416miyamoto*/
    display: none;
}

.sasara-comment{
  max-width:100%;
}

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

section.museum ul li:nth-child(3n+1) {
    margin-left: 0%;
}

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

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;

    padding-top: 66.666667%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

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: 16px;
    font-weight: bold;
}

.child.museum #slider {
    margin-bottom: 4%;
}

.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: left;
}

.child.museum .photo360 ul {
    width: 100%;
}

.child.museum .photo360 ul li {
    padding-left: 0 !important;
    margin-bottom: 4%;
}

.child.museum .photo360 ul li a {
    border: 3px solid #ccc;
    padding: 15px 0px;
    display: inline-block;
    position: relative;
    width: 100%;
    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: 150px;
}

.t-keiyaku th:nth-child(2) {
    width: 450px;
}

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

.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: 180px;
}

#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: 250px;
}


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

#page_single.bid .estimate .headtitle {
    text-align: left;
    background: #e6e6e6;
    font-size: 14px;
    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: 8vw 0;
    width: 300px;
}

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

#page_recruit .recruit-concept .text_center {
    text-align: left;
}


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

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

.m-recruit-job-item:nth-child(2) {
    margin-top: 4%;
    margin-bottom: 4%;
}

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

.m-recruit-job-list-content {
    padding: 0 12px 12px 12px !important;
    background: none !important;
    text-align: left !important;
}

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

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

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

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

.m-recruit-job-list-title {
    font-size: 15px;
    position: relative;
    padding: 12px 24px 12px 14px !important;
    line-height: 1.4;
    font-weight: bold;
    cursor: pointer;
    border-bottom: none !important;
}

.m-recruit-job-list-title .time {
    color: #f39800;
    margin-right: 20px;
    width: 35px;
    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: 22px;
    height: 22px;
    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: 100%;
    position: relative;
}

.m-recruit-message-item .m-recruit-message-item-content {
    width: 100%;
    background: #f39800;
    padding: 4%;
    color: #fff;
    font-size: 14px;
}

.m-recruit-message-item.type1 .m-recruit-message-item-content {
    margin-bottom: 8%;

}

.m-recruit-message-item .m-recruit-message-item-content dl {
    text-align: right;
}

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



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

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

}

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

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

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

.m-recruit-faq-tab-list li {
    width: 100%;
    margin-bottom: 2%;
}

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

}

.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: 12px 35px 12px 35px !important;
    position: relative;
    font-weight: bold;
    font-size: 15px;
    cursor: pointer;
    border-bottom: none !important;
    line-height: 1.4;
}

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

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

.m-recruit-faq-outer dd {
    position: relative;
    padding: 0px 35px 20px 35px !important;
    text-align: left !important;
    font-size: 14px;
}

.m-recruit-faq-outer .list_child_open {
    top: 12px;
    right: 10px;
}

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

.m-recruit-guide-tab-list li {
    width: 100%;
    margin-bottom: 2%;

}

.m-recruit-guide-tab {
    background: #fff;
    padding: 4%;
}

.m-recruit-guide table th {
    background: #faf5e4;
    padding: 2% 4%;
    width: 100% !important;
    display: block;
    border-bottom: none !important;
}

.m-recruit-guide table tr:last-of-type td {
    border-bottom: solid 1px #faf5e4 !important;
}

.m-recruit-guide table td {
    text-align: left !important;
    padding: 4%;
    width: 100% !important;
    display: block;
    border-bottom: none !important;
}

.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: 100%;
}

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

.m-recruit-guide-list__item + .m-recruit-guide-list__item {
    margin-top: 30px;
}
.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: -20px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}


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

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

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

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



.language .big-red {
    color: #ff2121;
    text-align: center;
    font-size: 16px;
    line-height: 1.5;

}

.language .flex-outer table {
    width: 100%;
    text-align: center;
    font-size: 15px;
    margin-bottom: 4%;
}


.language .flex-outer table th,
.language .flex-outer table td {
    padding: 6px 12px;
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
}


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

.language .flex-outer table .col1:nth-child(1) {
    display: none;
}

.language .flex-outer table .col1:nth-child(2) {
    display: none;

}

.language .flex-outer .title {
    color: #fff;
    background: #4ca534;
    text-align: center;
    padding: 6px 12px;
}

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


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

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

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

.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;
    margin-top: 4%;
    text-align: center;
}

.language .wp-block-image .alignleft {
    margin-right: 0;
}

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

.language .price-outer dl dt {
    width: 100%;
    font-weight: bold;
}

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

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

}

.language .price-table {
    font-size: 13px;
    border-left: 1px solid #abb8c3;
}

.language .price-table th,
.language .price-table td {
    width: 50%;
}

.language .price-table .icon {
    display: none;

}

.language .wp-block-column {
    flex-basis: 100% !important;
}

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

.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: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    padding: 20px;
    list-style-type: none;
    text-align: center;
}
.language .youtubeArea iframe{ 
    height: 200px;
}

.language .spOnly{
    display: none;
}


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

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

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

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



.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;
}

/*宮本*/
h4.advgb-accordion-header-title {
	font-size: 1.1rem!important;
}

.premium-container__content_inner p{
	font-size: 1.4rem;
}
#page_business .advgb-columns{
	display: flex;
	justify-content: space-between;
  align-items: stretch;
}
#page_business .advgb-column{
	width: 50%!important;
}
#page_business #advgb-col-e0db94f6-3e1a-4303-b93d-4b612bf8b449{
  margin-bottom: 10px!important;
}
#page_business .advgb-column p{
	text-align: left!important;
}
#page_business .advgb-column p.has-text-align-center{
	text-align: center!important;
}

.t-keiyaku .tbl-keiyaku--c thead {
  display: none;
}

.t-keiyaku .tbl-keiyaku--c tbody tr {
  display: block;
}

.t-keiyaku .tbl-keiyaku--c tbody tr + tr {
  border-top: solid 1px #999;
  padding-top: 4%;
  margin-top: 4%;
}
.t-keiyaku .tbl-keiyaku--c tbody td {
  width: 100%;
  display: flex;
  border: none;
}
.t-keiyaku .tbl-keiyaku--c tbody td:before {
  content: attr(data-label);
  margin-right: 1em;
  width: 5em;
  text-align: left;
}
.t-keiyaku .tbl-keiyaku--c tbody td.none:before {
  content: none;
}

.t-keiyaku .tbl-keiyaku--c.mb {
  margin-bottom: 12%;
}
.t-keiyaku h4{
    background: #e8e9ec;
    padding: 8px;
	font-weight: bold;
}

#page_about #contents.child .t-keiyaku h4:not([class]):before {
    background: #e8e9ec;
}

#topmenu {
  display: none;
}

#bottommenu {
  display: none;
}

.bid #bottommenu {
  display: block;
}

/*契約情報　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;
}


/*お問合せフォーム*/
.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: block;  border-bottom: 1px solid #ddd; padding: 20px 0; }
.ouboarea th { width: 100%; display: block; margin-bottom: 10px; }
.ouboarea td { width: 85%; }
.ouboarea .fwrap { display: block; }
.ouboarea .notion { font-size: 1.3rem; }
.ouboarea .notion dt { width: 100%; }
.ouboarea .notion dd { width: 100%; margin-bottom: 10px; border-bottom: 2px dotted #888;padding-bottom: 5px; }
.ouboarea .notionarea { padding: 10px; }
.ouboarea .notionarea p { width: 100%; }
.ouboarea .notionarea dl { width: 100%; }
.ouboarea .participant { padding: 20px 0; }
.ouboarea .participant dt { width: 22%; display: block; margin-bottom: 0px; }
.ouboarea .participant dd { width: 100%; margin-bottom: 5px; display: block; }
.ouboarea .participant p { margin-bottom: 0px; width: 100%; }
.ouboarea .borderB { border-bottom: 1px solid #ddd; padding-bottom: 20px; margin-bottom: 5ppx; }
.ouboarea .participantcont { width: 80%; }
.ouboarea select { padding: 10px; border: 1px solid #ddd; }
.ouboarea .add dt { width: 22%; display: flex; flex-flow: wrap; justify-content: space-around; align-items: center; margin-top: 10px; }
.ouboarea .add dd { width: 90%; margin-bottom: 10px; }
.ouboarea span.error { color: #ff0000; }
.mw_wp_form .error { color: #ff0000!important; }
.ouboarea .mwform-tel-field input { width: 25%!important; }

/*料金*/
.about_fees .notice { text-align: left; background-color: rgb(232 247 255); padding: 40px 10px; }
.about_fees li:not([class]):before {  background: #1565c0; }
.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:block; }
.about_fees .sub-item { width: 20%; display: grid; place-items: center; }
.about_fees input[type="text"] { width: 100%; }
.about_fees .first,.about_fees .layover01,.about_fees .layover02,.about_fees .layover03 { margin-bottom: 10px; }
.about_fees .first,.about_fees .end,.about_fees .tel,.about_fees .school { width: auto!important; }
.about_fees ul li:not([class]):before { background: #1565c0!important; }
.about_fees a:not([class]) { color: #1565c0!important; text-decoration: underline!important; }

/*定期払戻*/
.refund .notice { text-align: left; background-color: rgb(254, 247, 255); padding: 40px 10px; }
.refund p.imgphoto { text-align: center; margin: 20px 0;}
.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:block; }
.refund .sub-item { width: 10%; display: grid; place-items: center; }
.refund input[type="text"] { width: 100%; }
.refund .first,.refund .layover01,.refund .layover02,.refund .layover03,.refund .month-first,.refund .date-first,.refund .year-end,.refund .month-end,.refund .date-end,.refund .section-first,.refund .section-end { margin-bottom: 10px; }
.refund .month-first,.refund .date-first,.refund .year-end,.refund .month-end,.refund .date-end,.refund .pass-fee,.refund .tel,.refund .offer-month,.refund .offer-date,.refund .section-first,.refund .section-end { width: auto!important; }
.refund tr { border-bottom: 1px solid #ddd; position: relative;}
.refund th { width: 70%; }
.refund td:nth-of-type(1) { position: absolute; top:0; right: 0; width: 10%; }
.refund td { border-bottom: none; }
.refund .sp{ display: block; }
.refund ul li:not([class]):before { background: #7e267e!important; }
.refund a:not([class]) { color: #7e267e!important; text-decoration: underline!important; }


/*運賃・乗車券・運送約款 2024.11.21東add*/
.ticket_sp figure{width:100%;display:block;margin: 0 auto;text-align:center;}
.ticket_sp img{width:60%!important; display:block;margin: 0 auto;text-align:center;}
.wp-block-media-text.alignwide.ticket_sp {margin: 0 auto;}

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