@charset "UTF-8";
/* CSS Document */



/* LOADING //////////////////////////////////////////////////////////////////*/


#wrap {
    overflow: hidden;
}

#loader-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    z-index: 1100;
    background-color: #008360;
}

#loader {
    top: 0px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 150px;
    height: 65.5px !important;
    background-image: url(images/loader.png);
    background-repeat: no-repeat;
    background-size: contain;
}

/* end loading */





/* HEADER ////////////////////////*/

a.navbar-brand {
    position: fixed !important;
    background-color: #ffffff;
    padding: 25px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.navbar-brand h1 {
    padding-left: 0 !important;
    line-height: 1;
    float: none;
    font-size: 0;
}

.navbar-brand img {
    max-width: 100%;
    height: auto;
    width: 135px;
    height: 65px;
}

div#header {
    height: auto;
    position: absolute;
    width: 100%;
    z-index: 100;
    padding: 0;
    top: 0;
}

div#pickupnews {
    background: #ccc;
    padding: 10px;
    width: 100%;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 10;
}

div#pickupnews p {
    margin: 0;
    font-size: 0.75rem;
    line-height: 3;
}

div#pickupnews .pickupinfo {
    background-color: red;
    padding: 2.5px 5px;
    color: #fff;
    line-height: 1;
    font-size: 0.5rem;
}

div#pickupnews a {
    color: #333;
}

div#pickupnews .title {
    font-weight: bold;
}

div#pickupnews a:hover {
    color: #00aa6e;
}




/* 表示領域に合わせてサイズと余白を設定 */
.marquee {
    width: 100%;
    padding-left: 100%;
    white-space: nowrap;
    animation-name: marquee;
    animation-duration: 5s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

@keyframes marquee {
    from {
        transform: translate(0%);
    }

    100%,
    to {
        transform: translate(-200%);
    }
}


nav {
    margin-bottom: 0 !important;
}

.navbar-nav li a {
    color: #ffffff !important;
    letter-spacing: 0;
    font-size: 1rem;
    padding-right: 0.75rem !important;
    padding-left: 0.75rem !important;
    font-weight: 600;
    position: relative;
}

.navbar-nav li a:hover {
    color: #cccccc !important;
}

.navbar-nav .dropdown-item {
    padding: .0rem 1rem;
    color: #fff !important;
    background-color: #74c8aa;
    margin-bottom: 10px;
}

.navbar-nav .dropdown-item:hover {
    color: #00aa6e;
}

.weather {
    color: #ffffff;
    font-weight: 600;
    padding: 0 30px 5px 30px;
    border-left: 2px solid #fff;
    margin-left: 20px;
    text-align: center;
}

.weather span.day {
    font-size: 0.625rem;
    line-height: 2;
}

/*
.weather span.icon{
	padding-right:10px;
	float: left;
}
*/
.weather span.icon img {
    width: 30px;
    height: 30px;
}

.weather span.temp {
    font-size: 1.5rem;
}

.lang {
    font-weight: 600;
}

.lang a {
    color: #ffffff;
    display: block;
    padding: .8rem 1rem;
    border: 2px solid #fff;
    margin-right: 10px;
}

.lang a:hover {
    background-color: #fff;
    color: #333;
}

button.langbtn {
    display: block;
    border: 2px solid #fff;
    text-align: center;
    color: #fff;
    letter-spacing: 0.02rem;
    font-size: 1rem;
    padding: 0.25rem 2rem;
}

.subpage button.navlangbtn {
    border: 2px solid #333333;
    color: #333333;
}

button.langbtn.navlangbtn {
    display: block;
    padding: .8rem 1rem;
    margin-right: 10px;
}

button.langbtn.mobilelangbtn {
    display: none;
    position: absolute;
    right: 65px;
    z-index: 100;
    top: 10px;
    width: 93px;
    padding: 0.5rem 0.5rem;
    line-height: 1;
    color: #fff;
    font-size: 0.9rem;
}

button.langbtn.navlangbtn:hover,
button.langbtn.mobilelangbtn:hover {
    color: #333;
    background-color: #fff;
}

.subpage button.langbtn.navlangbtn:hover,
.subpage button.langbtn.mobilelangbtn:hover {
    color: #666666;
}

#langmodal li a {
    text-align: center;
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    border-left: 2px solid #333;
    color: #333;
    transition: all .5s;
}

#langmodal li:last-child a {
    border-bottom: 2px solid #333;
}

#langmodal li a:hover {
    background-color: #eee;
}

/* 検索ボックス */
.modal-content {
    border-radius: 0;
}

.searchform .input-group {
    width: 100%;
}

.searchform input.form-control {
    border-radius: 0;
    background-color: #f5f5f5;
    border: 2px solid #333;
}

.searchform input::placeholder {
    color: #ccc;
}

/* IE */
.searchform input:-ms-input-placeholder {
    color: #ccc;
}

/* Edge */
.searchform input::-ms-input-placeholder {
    color: #ccc;
}

.searchbtn {
    padding: .3rem .5rem .3rem .8rem;
    color: #fff;
    border: none;
    font-size: 1.5rem;
    background-color: transparent;
}

.searchbtn:hover {
    background-color: #fff;
    color: #333;
}

.subpage .searchbtn {
    color: #333;
}

.subpage .searchbtn:hover {
    background-color: #333;
    color: #fff;
}

.searchform .btn {
    padding: .375rem .75rem;
    background-color: #333;
    color: #fff;
}

.searchform .btn:hover {
    background-color: #666;
}


/* モバイルメニュー　*/

button:focus {
    outline: unset;
    outline: unset;
}

nav.drawer-nav .weather {
    text-align: left;
    border-left: none;
    margin: 0;
    padding: 20px 15px;
    color: #fff !important;
}

nav.drawer-nav .weather span.day {
    font-size: 0.875rem;
    float: left;
}

nav.drawer-nav .weather span.icon {
    padding: 0 5px;
}

nav.drawer-nav .lang a {
    color: #ffffff !important;
}

nav.drawer-nav .searchform {
    margin: 15px;
}

.drawer-hamburger {
    display: none;
    width: 2.4rem;
}

.drawer-hamburger::after {
    content: "MENU";
    position: absolute;
    bottom: -20px;
    page-break-after: always;
    left: 9px;
    color: #fff;
    font-size: 0.875rem;
    font-family: source-han-sans-japanese, 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.drawer-open .drawer-hamburger::after {
    content: "閉じる";
}

nav.drawer-nav li {
    display: block;
}

.drawer-dropdown-menu>li {
    line-height: 2;
}

/* ドロップダウンメニュー追加 */
nav.drawer-nav .drawer-dropdown {
    position: relative;
}

nav.drawer-nav .drawer-dropdown-menu {
    display: none;
    list-style: none;
    padding-left: 20px;
    background-color: rgba(255, 255, 255, 0.1);
}

nav.drawer-nav .drawer-dropdown.open .drawer-dropdown-menu {
    display: block;
}

nav.drawer-nav .drawer-dropdown-toggle {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 18px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    cursor: pointer;
}

nav.drawer-nav .drawer-dropdown-toggle:after {
    content: '+';
    color: #fff;
}

nav.drawer-nav .drawer-dropdown.open .drawer-dropdown-toggle:after {
    content: '-';
}

nav.drawer-nav .drawer-dropdown-menu li a {
    padding: 10px 15px;
    font-size: 0.9em;
    display: block;
    color: #fff;
    text-decoration: none;
}

a.mobilelang {
    display: none;
}

.subpage .lang a {
    border: 2px solid #333;
}

.subpage .navbar-nav li a,
.subpage .lang a {
    color: #333333 !important;
}

.subpage .navbar-nav li a:hover,
.subpage .lang a:hover {
    color: #666666 !important;
}

.subpage .weather {
    color: #333333 !important;
    border-left: 2px solid #333333;
}

.subpage .navbar {
    border-bottom: 1px solid #eeeeee;
}

#footer-ctr {
    display: none;
}

/* ドロップダウン用メディアクエリ */
@media (max-width: 767px) {
    .drawer-hamburger {
        display: block;
    }

    button.mobilelangbtn {
        display: block;
        position: absolute;
        top: 10px;
        right: 70px;
        background: transparent;
        color: #fff;
        border: 1px solid rgba(255, 255, 255, 0.5);
        padding: 5px 10px;
        font-size: 0.75rem;
    }
}

/*  


nav.drawer-nav .weather {
    text-align: left;
    border-left: none;
    margin: 0;
    padding: 20px 15px;
    color: #fff !important;
}

nav.drawer-nav .weather span.day {
    font-size: 0.875rem;
    float: left;
}

nav.drawer-nav .weather span.icon {
    padding: 0 5px;
}

nav.drawer-nav .lang a {
    color: #ffffff !important;
}

nav.drawer-nav .searchform {
    margin: 15px;
}


.drawer-hamburger {
    display: none;
    width: 2.4rem;
}

.drawer-hamburger::after {
    content: "MENU";
    position: absolute;
    bottom: -20px;
    page-break-after: always;
    left: 9px;
    color: #fff;
    font-size: 0.875rem;
    font-family: source-han-sans-japanese, 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.drawer-open .drawer-hamburger::after {
    content: "閉じる";
}



nav.drawer-nav li {
    display: block;
}

a.mobilelang {
    display: none;
}

.subpage .lang a {
    border: 2px solid #333;
}

.subpage .navbar-nav li a,
.subpage .lang a {
    color: #333333 !important;
}

.subpage .navbar-nav li a:hover,
.subpage .lang a:hover {
    color: #666666 !important;
}

.subpage .weather {
    color: #333333 !important;
    border-left: 2px solid #333333;
}

.subpage .navbar {
    border-bottom: 1px solid #eeeeee;
}

#footer-ctr {
    display: none;
}

*/

/* END HEADER ////////////////////////*/


a.disabled {
    pointer-events: none;
}

/* リンクを切る ////////////////////////*/


/* MAIN IMAGE ////////////////////////*/

div#mainimage {
    float: left;
    width: 100%;
    height: auto;
    overflow: hidden;
    z-index: 10;
    position: relative;
}

div#mainimage .div {
    z-index: 0;
}

.moibleheaderoverlay {
    display: none;
}

.overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9;
}


.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.catch_centered {
    position: absolute;
    height: auto;
    margin: auto;
    z-index: 10;
    text-align: center;
    color: #fff;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#mainimage .catch_centered {
    width: 30%;
    max-width: 500px;
}

.catch_centered img {
    margin-bottom: 20px;
    width: 330px;
}



.subpage-minititle {
    font-size: 2rem;
}

.catch_left img {
    margin-bottom: 20px;
    width: 330px;
}


.catch_contents img {
    width: 100%;
}

.catch_contents2 {
    position: absolute;
    width: 20%;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.mainslider img {
    max-width: 100%;
    max-height: 100%;
    /*
height: 100vh;*/
    width: auto\9;
    /* ie8 */
    margin: 0 auto;
    object-fit: cover;
}

/* END ////////////////////////////////////*/




/* サブページ　メインイメージスライダー ////////////////////////*/

div#submainimage {
    float: left;
    width: 100%;
    overflow: hidden;
    z-index: 10;
    position: relative;
}

div#submainimage .div {
    z-index: 0;
}

.submainslider img {
    width: 100vw;
}

.submainthumb {
    z-index: 10;
}

.submainthumb img:hover {
    cursor: pointer;
}

div#submainimage .catch_centered {
    position: absolute;
    height: auto;
    top: 35%;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 10;
    text-align: center;
    color: #fff;
}

div#submainimage .catch_centered h1 {
    font-weight: 500;
    color: #ffffff;
}

/* END ////////////////////////////////////*/



/* サブページ　メインイメージ ////////////////////////*/

div#subheaderimage {
    float: left;
    width: 100%;
    z-index: 10;
    position: relative;
}

div#subheaderimage .div {
    z-index: 0;
}

div#subheaderimage img {
    width: 100vw;
}







.suboverlay {
    width: 100%;
    height: 30%;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 9;
    background-size: cover;
    opacity: 0.5;
    background: -moz-linear-gradient(bottom, #000000, transparent);
    background: -webkit-linear-gradient(bottom, #000000, transparent);
    background: linear-gradient(to top, #000000, transparent);
}

.suboverlay2 {
    display: block;
    width: 100%;
    height: 15%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 9;
    background-size: cover;
    opacity: 0.5;
    background: -moz-linear-gradient(top, #000000, transparent);
    background: -webkit-linear-gradient(top, #000000, transparent);
    background: linear-gradient(to bottom, #000000, transparent);
}



div#subheaderimage .subpagecatch_centered {
    position: absolute;
    height: auto;
    bottom: 10%;
    z-index: 10;
    color: #fff;
}

div#subheaderimage .subpagecatch_centered h1 {
    font-weight: 500;
    font-size: 3.125rem;
    color: #fff;
}

#modelcourse_singlepage .subpagecatch_centered h1 {
    margin-left: 110px;
}

/* END ////////////////////////////////////*/






/* 運行状況　/////////////////////////////////////*/
.trafficinfo {
    float: left;
    width: 100%;
    padding: 30px 0;
    background-color: #fff;
    z-index: 10;
}

.trafficinfo_heading {
    width: 10%;
    float: left;
    padding: 15px 0;
    border-right: 2px solid #008360;
    text-align: center;
}

.trafficinfo_heading h2 {
    margin: 0;
    font-size: 0.875rem;
    letter-spacing: 0.5em;
}

.trafficinfo_content {
    width: 90%;
    font-size: 1.5rem;
    overflow: hidden;
    float: left;
    padding: 0 15px;
}

.trafficinfo_content img {
    height: 30px;
    float: left;
    margin-right: 15px;
    margin-top: 5px;
    margin-bottom: 30px;
}

.trafficinfo_content ul {
    margin: 0;
    width: 100%;
    display: inline-block;
    /*white-space : nowrap;*/
    line-height: 1em;
}

.trafficinfo_content ul li {
    width: 24%;
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 500;
    padding-left: 10px;
    padding-right: 10px;
    border-right: 1px solid #eeeeee;
    line-height: 2.4;
    vertical-align: top;
}

.trafficinfo_content ul li p {
    line-height: 1.3;
    font-size: 0.8em;
    margin-top: 5px;
}

.trafficinfo_content ul li:last-child {
    border-right: none;
}

.trafficinfo_content ul li a.trafficlabel {
    border: 2px solid #008360;
    padding: 2px 15px 5px;
    font-size: 0.8em;
    color: #008360;
}

.trafficinfo_content ul li a.trafficlabel:hover {
    background-color: #008360;
    color: #ffffff;
}




@media screen and (max-width: 1200px) {
    .trafficinfo_content ul li a.trafficlabel {
        padding: 2px 5px 5px;
    }

    .trafficinfo_content img {
        height: 25px;
        margin-right: 10px;
        margin-top: 10px;
    }
}

@media screen and (max-width: 991px) {
    .trafficinfo {
        padding: 15px 0 0 0;
    }

    .trafficinfo .container {
        max-width: 960px;
    }

    .trafficinfo_heading {
        width: 10%;
    }

    .trafficinfo_content {
        width: 100%;
        padding: 0;
    }

    .trafficinfo_heading h2 {
        letter-spacing: 0;
        font-size: 0.75rem;
    }

    .trafficinfo_content ul li a.trafficlabel {
        border: 1px solid #008360;
        padding: 2px 7.5px 5px;
        font-size: 0.7em;
        letter-spacing: -0.05em;
    }

    .trafficinfo_content img {
        margin-right: 5px;
    }

    .trafficinfo .container {
        padding: 0;
    }

    .trafficinfo_heading {
        float: none;
        padding: 0;
        width: auto;
        border-right: none;
    }

    .trafficinfo_heading h2 {
        letter-spacing: 0.4em;
        font-size: 0.75rem;
        margin: 15px 0;
    }


    .trafficinfo_content ul li {
        width: 25%;
        display: block;
        padding: 30px 15px 10px;
        box-sizing: border-box;
        float: left;
        font-size: 0.625rem;
        font-weight: 500;
        border-top: 1px solid #eee;
        border-right: 1px solid #eee;
        margin: 0;
    }

}

@media screen and (max-width: 767px) {
    .trafficinfo_content ul li {
        text-align: center;
        padding: 30px 5px 20px;
    }

    .trafficinfo_content img {
        height: 30px;
        margin-bottom: 10px;
        float: none;
        display: block;
        margin: 0 auto 10px;
    }

    .trafficinfo_content ul li a.trafficlabel {
        margin: 0;
    }

}

@media screen and (max-width: 600px) {
    .trafficinfo_content ul li {
        margin: 0;
        width: 50%;
        font-size: 0.75rem;
    }

}

/* END ////////////////////////////////////*/







/* event ////////////////////////*/

.eventinfo {
    padding: 15px;
}

.eventinfo a {
    color: #008360;
}

.eventinfo a:hover {
    color: #00aa6e;
}

.eventinfo h3 {
    font-size: 1em;
    line-height: 1.5;
}

.eventinfo p {
    font-size: 1em;
}


#event .slick-slide:nth-child(even) {
    background: #f2f2f2;
}

#event .slick-slide {
    height: 470px;
    transition: 0.5s;
}

#event .slick-slide:hover {
    border-bottom: 10px solid #008360;
}

#event .img_wrapper {
    position: relative;
    width: 100%;
}

#event .img_wrapper:before {
    content: "";
    display: block;
    padding-top: 66%;
}

#event .img_content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
}

#event .slick-slide img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

/*///六甲・摩耶ページ////*/

#rokko-maya-event .slick-slide:nth-child(even) {
    background: #f2f2f2;
}

#rokko-maya-event .slick-slide {
    height: 470px;
    transition: 0.5s;
}

#rokko-maya-event .slick-slide:hover {
    border-bottom: 10px solid #008360;
}

#rokko-maya-event .img_wrapper {
    position: relative;
    width: 100%;
}

#rokko-maya-event .img_wrapper:before {
    content: "";
    display: block;
    padding-top: 66%;
}

#rokko-maya-event .img_content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
}

#rokko-maya-event .slick-slide img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

/* END ////////////////////////////////////*/


/* TWO mountains ////////////////////////*/
.twomountains_info {
    font-weight: 500;
    letter-spacing: 0.1em;
}

.twomountains_info .mtname {
    margin: 30px 0;
}

.twomountains_info .mtdesc {
    font-size: 1.5rem;
}

.twomountains_info h3 {
    font-size: 5.625rem;
    margin-left: 8px;
}

.twomountains_left_slider>img {
    border: 5px solid red;
}

.triangle {
    position: relative;
}

.triangle::before {
    border-top: 0;
    border-right: 25vw solid white;
    border-bottom: 33.5vw solid transparent;
    border-left: 25vw solid white;
    position: absolute;
    content: "";
}

/* END  ////////////////////////*/





/* toppage modelcoruse ////////////////////////*/
.modelslider_wrap {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 83%;
    margin-bottom: -1px;
}

.modelslider img {
    width: 100%;
}

#modelcourse .row {
    margin: 0;
}

.courseslide {
    position: relative;
    padding: 0;
}

.modellabel {
    padding: 10px;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    color: #ffffff;
    font-weight: 500;
    width: 90px;
    height: 90px;
    line-height: 1;
    font-size: 1.2em;
    z-index: 1;
}

.modellabel span {
    font-size: 3.125rem;
}

.courseslide h4 {
    padding: 50px 0;
    font-size: 2.5em;
}

.courseslide p {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    position: absolute;
    color: #ffffff;
    top: 25px;
    left: 15px;
    font-weight: 500;
    line-height: 2.3;
    text-align: left;
    font-size: 1.5rem;
}

.courseslide span {
    padding: 10px 2px;
}

/* END  ////////////////////////*/


/* モデルコース　シングルページ ////////////////////////*/
div#modelcourseheaderimage {
    float: left;
    width: 100%;
    z-index: 10;
    position: relative;
}

div#modelcourseheaderimage .div {
    z-index: 0;
}

div#modelcourseheaderimage img {
    width: 100vw;
}

div#modelcourseheaderimage .catch_centered {
    position: absolute;
    height: auto;
    top: 45%;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 10;
    text-align: center;
    color: #fff;
}

div#modelcourseheaderimage .catch_centered h1 {
    font-weight: 500;
}


.modelcoursepagecatch_centered {
    position: absolute;
    height: auto;
    bottom: 10%;
    z-index: 10;
    color: #fff;
}

.modelcoursepagecatch_centered h1 {
    font-weight: 500;
    font-size: 3.125rem;
    color: #fff;
}

.modelcoursepagecatch_centered h1 {
    margin-left: 110px;
}


.modelcousepagecopy {
    text-align: right;
    position: absolute;
    z-index: 10;
    bottom: -5%;
    right: 20%;
}

.modelcousepagecopy div {
    text-align: left;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: inline-block;
}

.modelcousepagecopy h2 {
    color: #ffffff;
    font-size: 2.0625rem;
    line-height: 2.5;
    letter-spacing: 0.1em;
    margin: 0;

    /*
	color: #ffffff;
	font-size: 33px;
	line-height: 2.5;
	letter-spacing: 0.1em;
	-webkit-writing-mode: vertical-rl;
	position: absolute;
	z-index: 10;
	bottom: -5%;
	margin: 0;
	*/
}

.modelcousepagecopy span {
    padding: 10px 5px;
}

.modelcourseroutenum {
    font-size: 1.5em;
}

/* END  ////////////////////////*/


/* NEWS  ////////////////////////*/
div#news>div {
    padding: 50px;
}

div#news .media img {
    width: 100px;
    height: 66px
}



/* TRY KOBE  ////////////////////////*/
#trykobelogo {
    width: 800px;
}

.index-nav {
    position: relative;
    border: #C8161D solid 1vw;
    padding: 4% 2% 2%;
    margin-top: 30%;
    margin-bottom: 4%;
}

@media only screen and (min-width: 768px) {
    .index-nav {
        border: #C8161D solid 6px;
        padding: 50px 30px;
        margin-top: 130px;
        margin-bottom: 50px;
    }
}

.index-nav__title {
    position: absolute;
    top: -12vw;
    left: 0;
    right: 0;
    margin: auto;
    background: #fff;
    padding: 0;
    text-align: center;
    font-weight: bold;
    width: 80%;
}

@media only screen and (min-width: 768px) {
    .index-nav__title {
        top: -80px;
        width: 540px;
        line-height: 1.8;
    }
}

.index-nav__title .sub {
    font-size: 4vw;
}

@media only screen and (min-width: 768px) {
    .index-nav__title .sub {
        font-size: 1.5rem;
        font-style: italic;
    }
}

.index-nav__title .title {
    font-size: 6vw;
    margin: 0;
    padding-left: 1em;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222.658%22%20height%3D%2238.281%22%20viewBox%3D%220%200%2022.658%2038.281%22%3E%3Cg%20transform%3D%22translate%28-104.48%2024%29%22%3E%3Cpath%20d%3D%22M115.809-24A11.344%2C11.344%2C0%2C0%2C0%2C104.48-12.671c0%2C5.988%2C11.329%2C26.952%2C11.329%2C26.952s11.329-20.965%2C11.329-26.952A11.344%2C11.344%2C0%2C0%2C0%2C115.809-24Zm0%2C15.624a4.3%2C4.3%2C0%2C0%2C1-4.3-4.295%2C4.3%2C4.3%2C0%2C0%2C1%2C4.3-4.3%2C4.3%2C4.3%2C0%2C0%2C1%2C4.295%2C4.3A4.291%2C4.291%2C0%2C0%2C1%2C115.809-8.376Z%22%20transform%3D%22translate%280%29%22%20fill%3D%22%23C8161D%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    background-position: left center;
    background-repeat: no-repeat;
    background-size: auto 1.5em;
    line-height: 2;
    background-position: left 5vw center;
    line-height: 1.5;
}

@media only screen and (min-width: 768px) {
    .index-nav__title .title {
        background-position: left center;
    }
}

@media only screen and (min-width: 768px) {
    .index-nav__title .title {
        font-size: 2.75rem;
        background-size: auto 1.2em;
        background-position: 20px center;
        line-height: 1.4;
    }
}

.index-nav__body {
    display: block;
    position: relative;
}

@media only screen and (min-width: 768px) {
    .index-nav__body {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
    }
}

.index-nav__box {
    position: relative;
    width: 100%;
    margin-bottom: 2%;
}

@media only screen and (min-width: 768px) {
    .index-nav__box {
        display: flex;
        width: 33%;
        margin-bottom: 0;
    }
}

.index-nav__box .over {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    color: #fff;
    width: 100%;
    text-align: center;
}

.index-nav__box .over:after {
    content: "more";
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000;
    color: #fff;
    display: block;
    text-align: center;
    font-size: 0.8125rem;
    padding: 2% 0;
    width: 100%;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2225.888%22%20height%3D%229.579%22%20viewBox%3D%220%200%2025.888%209.579%22%3E%3Cpath%20stroke%3D%22%23fff%22%20d%3D%22M500.914%2C1612.064H525.6l-8.726-8.726%22%20transform%3D%22translate%28-500.914%20-1602.985%29%22%20fill%3D%22none%22%20stroke-width%3D%221%22%20%2F%3E%3C%2Fsvg%3E");
    background-position: left 10vw center;
    background-repeat: no-repeat;
    background-size: auto 0.7em;
    background-position: left 4vw center;
}

@media only screen and (min-width: 768px) {
    .index-nav__box .over:after {
        background-position: left 3vw center;
    }
}

.index-nav__box .title {
    line-height: 1.2;
    font-weight: bold;
    font-size: 6vw;
    text-shadow: 0 0 3px #666;
    margin-bottom: 25px;
}

@media only screen and (min-width: 768px) {
    .index-nav__box .title {
        font-size: 2.4rem;
    }
}

.index-nav__box .title span {
    font-size: 8vw;
    display: block;
}

@media only screen and (min-width: 768px) {
    .index-nav__box .title span {
        font-size: 2.375rem;
    }
}

@media only screen and (min-width: 1250px) {
    .index-nav__box .title span {
        font-size: 4vw;
    }
}

/* END  ////////////////////////*/






/* breadcrumbs ////////////////////////*/
#breadcrumbs {
    padding: 15px;
    font-size: 0.7rem;
}

#breadcrumbs ol li {
    display: inline-block;
    margin-right: 5px;
    color: #666666;
    line-height: 2;
}

#breadcrumbs ol li i.fa-chevron-right {
    color: #666666;
    margin-right: 5px;
}

/* END  ////////////////////////*/

/* banner ////////////////////////*/
#banner ul li {
    display: inline-block;
    margin: 10px;
}

/* END  ////////////////////////*/


/* Luminous　ライトボックス ////////////////////////*/
.lum-close-button {
    left: 5px;
}



/* FOOTER ////////////////////////*/

#pageTop {
    position: absolute;
    top: -65px;
    right: 20px;
    display: block;
    z-index: 10;
}

#pageTop a {
    display: block;
    z-index: 999;
    width: 150px;
    height: 83px;
    color: #fff;
    transition: 0.5s;
    background-image: url(images/pagetop.svg);
    background-repeat: no-repeat;
    background-size: cover;
}

#pageTop a:hover {
    transform: translateY(-15px)
}



#footer {
    position: relative;
    clear: both;
    color: #fff;
    padding-top: 50px;
}

#footer_logo {
    max-width: 700px;
    width: 30%;
}

#footer a {
    color: #fff;
}

#footer-menu>div {
    padding: 0;
}

.footer-menu-content {
    display: block;
    padding: 30px 15px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}

#footer-menu>div:last-child .footer-menu-content {
    border-right: none;
}

.footer-menu-content img {
    width: 50px;
}

.footer-menu-content p {
    margin-top: 20px;
}

.footer-menu-content:hover {
    background-color: #00aa6e;
}


#footer-bottom {
    padding: 35px 30px 25px 30px;
    color: #ffffff;
    overflow: hidden;
}

/* END FOOTER ////////////////////////*/


/* ACCESS ////////////////////////*/

.balloon1 i {
    font-size: 2em;
    margin-bottom: 5px;
}

.balloon1 {
    position: relative;
    display: inline-block;
    margin: 1.5em 0;
    padding: 15px 30px;
    min-width: 120px;
    max-width: 100%;
    color: #fff;
    background: #008360;
}

.balloon1:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #008360;
}

.balloon1 p {
    margin: 0;
    padding: 0;
}


.balloon2 i {
    font-size: 2em;
    margin-bottom: 5px;
}

.balloon2 {
    position: relative;
    display: inline-block;
    margin: 1.5em 0;
    padding: 15px 30px;
    min-width: 120px;
    max-width: 100%;
    color: #666;
    background: #eeeeee;
}

.balloon2:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #eeeeee;
}

.balloon2 p {
    margin: 0;
    padding: 0;
}

/* END  ////////////////////////*/


/* BLOG SUMMARY ////////////////////////*/


a.post-archive {
    display: block;
    padding: 15px;
    margin-bottom: 15px;
    border-top: 1px solid #00504b;
}

a.post-archive:hover {
    background-color: #f5f5f5;
    text-decoration: none !important;
}

a.post-archive .col-sm-12 {
    padding: 0;
}

a.post-archive .img_wrapper {
    position: relative;
    width: 100%;
}

a.post-archive .img_wrapper:before {
    content: "";
    display: block;
    padding-top: 66%;
}

a.post-archive .img_content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: hidden;
}

a.post-archive img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}


@media only screen and (max-width: 575px) {
    a.post-archive .img_wrapper:before {
        padding-top: 100%;
    }
}

#blog_summarypage #blog_content h2 {
    border-top: none;
    border-bottom: none;
    margin: 0;
    margin-bottom: 20px;
    padding: 0;
    line-height: 1.3;
    font-size: 1.4em;
    color: #555;
}



/************************************
** レスポンシブページネーション
************************************/
.pagination {
    list-style-type: none;
    padding-left: 0;
    margin: 30px 0;
}

.pagination li {
    list-style-type: none !important;
    font-size: 1.125rem !important;
}

.pagination,
.pagination li a {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    color: #008360;
}

.pagination a {
    font-weight: 300;
    padding-top: 1px;
    text-decoration: none;
    border: 1px solid #ddd;
    border-left-width: 0;
    min-width: 56px;
    min-height: 56px;
    color: #008360;
    background-color: #fff;
}

.pagination li:not([class*="current"]) a:hover {
    background-color: #eee;
}

.pagination li:first-of-type a {
    border-left-width: 1px;
}

.pagination li.first span,
.pagination li.last span,
.pagination li.previous span,
.pagination li.next span {
    /* screen readers only */
    position: absolute;
    top: -9999px;
    left: -9999px;
}

.pagination li.first a::before,
.pagination li.last a::after,
.pagination li.previous a::before,
.pagination li.next a::after {
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
}

.pagination li.first a::before {
    content: "\f100";
}

.pagination li.last a::after {
    content: "\f101";
}

.pagination li.previous a::before {
    content: "\f104";
}

.pagination li.next a::after {
    content: "\f105";
}

.pagination li.current a {
    background-color: #ddd;
    cursor: default;
    pointer-events: none;
}

.pagination>li:first-child>a {
    border-bottom-left-radius: 4px;
    border-top-left-radius: 4px;
}

.pagination>li:last-child>a {
    border-bottom-right-radius: 4px;
    border-top-right-radius: 4px;
}

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

    .pagination li.first,
    .pagination li.last {
        /* screen readers only */
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .pagination li.previous a {
        border-left-width: 1px;
    }
}

@media only screen and (max-width: 500px) {
    .pagination li {
        /* screen readers only */
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .pagination li.current,
    .pagination li.first,
    .pagination li.last,
    .pagination li.previous,
    .pagination li.next {
        position: initial;
        top: initial;
        left: initial;
    }

    .pagination li.previous a {
        border-left-width: 0;
    }
}

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

    .pagination li.first,
    .pagination li.last {
        /* screen readers only */
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .pagination li.previous a {
        border-left-width: 1px;
    }
}

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

    /* For watches? */
    .pagination li {
        width: 50%;
    }

    .pagination li.current {
        order: 2;
        width: 100%;
        border-left-width: 1px;
    }
}

/**** END レスポンシブページネーション ****/

/* END BLOG SUMMARY ////////////////////////*/


/* BLOG SINGLE ////////////////////////*/
#blog_content img {
    max-width: 100%;
    height: auto;
}

#blog_content h1 {
    font-size: 2em;
    line-height: 1.3;
}

#blog_content h2 {
    border-top: 3px solid #008360;
    border-bottom: 3px solid #008360;
    padding: 45px 0;
    font-size: 1.625rem;
}

#blog_content h3 {
    font-size: 1.2em;
    line-height: 1.3;
    font-weight: 600;
    color: #008360;
    margin: 30px 0 15px 0;
}

#blog_content h4 {
    font-size: 1em;
}


#blog_content p {
    color: #555;
    line-height: 1.8;
    word-wrap: break-word;
    margin-bottom: 15px;

}

#blog_content p a {
    color: #00aa6e;
}

#blog_content p a::after,
#blog_content table a::after {
    font-family: "Font Awesome 5 Free";
    content: "\f0c1";
    font-weight: 900;
}

#blog_content a:hover {
    text-decoration: underline;
}

#blog_content table {
    margin-bottom: 30px;
}

#blog_content td,
#blog_content th {
    color: #555;
    border: 1px solid rgba(0, 0, 0, .1);
    font-size: 0.9em;
    padding: 15px;
    line-height: 1.5;
}

#blog_content ul,
#blog_content ol {
    padding-left: 20px;
    margin-bottom: 20px;
}

#blog_content li {
    font-size: 0.875rem;
    list-style: circle;
    line-height: 2.5;
}

#blog_content ol li {
    list-style: decimal;
}

/* トピックス */

#blog_content.topicsnews ol {
    padding-left: 20px;
    margin-bottom: 0px !important;
}

#blog_content.topicsnews h2 {
    color: #555555;
    font-size: 1.5rem;
    border: none;
    padding: 0;
    font-weight: 700;
    line-height: 1.3;
}

#blog_content.topicsnews h3 {
    font-size: 1em;
    line-height: 1.3;
    font-weight: 600;
    color: #555;
    margin: 0px 0 15px 0;
}

#blog_content.topicsnews h4 {
    font-size: 1.3em;
}

#blog_content.topicsnews .wp-block-group {
    padding: 1.5em 2em;
    background: #f5f5f5;
    margin: 30px 0;
}

#blog_content.topicsnews .wp-block-group .wp-block-columns {
    margin-bottom: 10px;
}

#blog_content.topicsnews .wp-block-group p {
    margin-bottom: 0px;
}

#blog_content.topicsnews .h5 {
    margin-top: 0;
    font-size: 1.125rem;
}



/* 目次 */

#blog_content.topicsnews li {
    font-size: 0.875rem;
    list-style: decimal;
    line-height: 2.5;
    font-weight: 700;
}

#blog_content.topicsnews li a {
    text-decoration: underline;
    color: #555555;
}

.toc {
    margin: 30px 0;
    padding: 1.5em;
    background: #f5f5f5;
    border-radius: 6px;
}

.toc strong {
    margin-bottom: 10px;
    display: block;
    font-size: 1.125rem;
}

/* 埋め込みリンク */

.wp-embedded-content {
    width: 100%;
    max-width: 100%;
    height: auto;
}


/*強調 */
.attention1 {
    background-color: #0080003b;
    padding: 30px;
    display: block;
    font-size: 1.3em;
}

/*強調 */
.attention2 {
    background-color: #dc3545;
    padding: 30px;
    display: block;
    font-size: 1.3em;
    color: #fff;
}

/*強調 */
.attention3 {
    border: 1px solid #eee;
    padding: 30px;
    display: block;
    font-size: 1.3em;
}

/*備考グレーBOX */
.bikoubox1 {
    background-color: #f5f5f5;
    padding: 20px;
    display: block;
    font-size: 0.8em;
    color: #777 !important;
}

/*備考透明BOX */
.bikoubox2 {
    border: 1px solid #eee;
    padding: 20px;
    display: block;
    font-size: 0.8em;
    color: #777 !important;
}

/*テキストグレー*/
.textcolor-gray {
    color: #888;
}

.aligncenter {
    display: block;
    margin: 0 auto;
}

.alignright {
    float: right;
    margin: 0 0 15px 15px;
}

.alignleft {
    float: left;
    margin: 0 15px 15px 0;
}


div.googlemap iframe {
    width: 100%;
}

/*---表を横スクロールする---*/
#blog_content .scroll-box {
    overflow: auto;
    /*スクロール*/
    margin-bottom: 10px;
    /*余白（外側下部）*/
    white-space: nowrap;
    /*折り返ししない*/
}

#blog_content .scroll-box::-webkit-scrollbar {
    height: 5px;
    /*高さ*/
}

#blog_content .scroll-box::-webkit-scrollbar-track {
    border-radius: 5px;
    /*角の丸み*/
    background: #F3F3F3;
    /*スクロールバーの背景色*/
}

#blog_content .scroll-box::-webkit-scrollbar-thumb {
    border-radius: 5px;
    /*角の丸み*/
    background: #CCCCCC;
    /*スクロールバーの色*/
}

/* 横幅が768px以上であれば横スクロールしない */
/*@media only screen and (min-width: 768px){
#blog_content .scroll-box {
white-space: normal;/*自動で折り返す*/
/*
}
}
*/
/*---表を横スクロールする---*/

#sidebar {
    padding-top: 200px;
    padding-bottom: 50px;
}

#sidebar-nav>li {
    border: 1px solid #f5f5f5;
    padding: 0;
    margin-bottom: 30px;
}

h2.widgettitle {
    color: #555;
    padding: 15px;
    line-height: 1;
    font-size: 1.25rem;
    margin: 0;
    border-bottom: 1px solid #f5f5f5;
}

.rpwwt-widget ul li {
    line-height: 1.2;
    margin: 0 !important;
    padding: 15px;
    position: relative;
}

.rpwwt-widget ul li a {
    color: #555;
    line-height: 1.3;
}

.rpwwt-widget ul li a:hover {
    color: #008360;
}

.rpwwt-post-date {
    text-align: right;
    color: #777;
    font-size: 0.75rem;
    position: absolute;
    bottom: 10px;
    right: 10px;
}

.rpwwt-post-categories {
    margin-top: 5px;
}

.rpwwt-post-categories a,
.categoryinfo span {
    background-color: #00aa6e;
    font-size: 0.75rem;
    padding: 5px 10px;
    color: #fff;
    font-weight: bold;
}

.rpwwt-post-categories a,
.categoryinfo span.badge-light {
    background-color: #008360;
}

.categoryinfo span {
    font-size: 0.875rem;
    padding: 5px 10px;
}

.news .rpwwt-post-categories a,
.categoryinfo span.news {
    background-color: #b1d368;
}

.events .rpwwt-post-categories a,
.categoryinfo span.events {
    background-color: #ffc745;
}

.pickup .rpwwt-post-categories a,
.categoryinfo span.pickup {
    background-color: red;
}

.categoryinfo span.events-off {
    background-color: #555;
}

li.cat-item {
    margin: 0;
    line-height: 1;
}

li.cat-item a {
    display: block;
    padding: 15px;
    font-size: 1rem;
    color: #333;
    margin: 0;
    border-bottom: 1px solid #f5f5f5;
    position: relative;
}

li.cat-item a:hover {
    background-color: #f5f5f5;
}

li.cat-item a::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f054";
    position: absolute;
    right: 15px;
    color: #008360;
}

span.eventday {
    color: #999;
    background-color: transparent;
    font-size: 1.2em;
}

#blog_content p.articleinfo {
    color: #777;
}

#prev_next a::after {
    content: "";
}


/*--------------------------------
PREV NEXT
---------------------------------*/
#prev_next {
    width: 100%;
    margin: 36px 0 24px;
    padding: 0;
    display: table;
}

#prev_next #prev,
#prev_next #next {
    width: 50%;
    padding: 30px 10px 10px;
    border-top: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
    display: table-cell;
    position: relative;
    text-decoration: none;
}

#prev_next #prev p,
#prev_next #next p {
    line-height: 1.5;
    color: #333;
}

#prev_next #prev:hover,
#prev_next #next:hover {
    background-color: rgba(238, 238, 238, 0.7);
}

#prev_next #prev {
    border-right: #ccc 1px solid;
}

#prev_next #prev_title,
#prev_next #next_title {
    font-size: .8rem;
    top: -1em;
    position: absolute;
    border: 1px #ccc solid;
    background: #fff;
    text-align: center;
    padding: 3px;
    color: #666;
}

#prev_next #next_title {
    right: 10px;
}

#prev_next #prev img,
#prev_next #next img {
    margin: 0 auto;
}

#prev_next #prev_no,
#prev_next #next_no {
    width: 50%;
    height: 140px;
    padding: 0 10px;
    display: table-cell;
}

#prev_next #prev_no {
    border-right: #ccc 1px solid;
}

#prev_next_home {
    display: none;
    margin: 0 auto;
    background-color: #f48881;
    border: solid 9px #fff;
    width: 100px;
    height: 100px;
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    border-radius: 100px;
    box-shadow: 0 0 0 3px #f48881;
    -webkit-box-shadow: 0 0 0 3px #f48881;
    -moz-box-shadow: 0 0 0 3px #f48881;
    text-align: center;
}

#prev_next_home:hover {
    background-color: rgba(244, 136, 129, 0.7);
}

#prev_next_home i {
    color: #FFF;
    margin: 10px auto;
    font-size: 3.75rem;
}


/* イベント情報 */

.post-event-info-container {
    border: 1px solid #555555;
    border-radius: 10px;
    padding: 1.5em 2em;
    margin: 30px 0;
}

/*-- ここまで --*/
/*media Queries タブレットサイズ
----------------------------------------------------*/
@media only screen and (max-width: 780px) {}

/*media Queries タブレットサイズ
----------------------------------------------------*/
@media only screen and (min-width: 380px) {}

/*media Queries PCサイズ
----------------------------------------------------*/
@media only screen and (min-width: 780px) {

    /*-- ここから --*/
    /*--------------------------------------
768px PREV NEXT
--------------------------------------*/
    #prev_next #prev,
    #prev_next #prev::before,
    #prev_next #prev::after,
    #prev_next #next,
    #prev_next #next::before,
    #prev_next #next::after {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: all .3s;
        transition: all .3s;
    }

    #prev_next #prev_title,
    #prev_next #next_title {
        padding: 3px 10px;
    }

    #prev_next #next_title {
        right: 10px;
    }

    #prev_next #prev img {
        float: left;
        margin-right: 10px
    }

    #prev_next #next img {
        float: right;
        margin-left: 10px;
    }

    /*-- ここまで --*/
}




/*-----------------------------
ギャラリー
------------------------------*/
.gallery {
    /** ギャラリーを囲むボックス **/
    width: 100%;
    margin-bottom: 20px !important;
    overflow: hidden;
}

.gallery br {
    display: none;
}

/** 自動で挿入される clearfix の余白解除 **/

.gallery-item {
    /** 画像共通のスタイル **/
    float: left;
    margin-bottom: 0 !important;
}

.gallery-icon {
    /** 画像を囲む dt のスタイル **/
    text-align: center;
}

.gallery-icon img {
    width: 100%;
    height: auto;
    margin-bottom: 10px !important;
}

.gallery-caption {
    /** キャプション **/
    color: #222;
    font-size: 0.75rem;
    margin: 0 0 10px;
    text-align: center;
}

.gallery-columns-1 .gallery-item {
    /** カラムなし **/
    width: 100%;
    margin-right: 0;
}

.gallery-columns-2 .gallery-item {
    /** 2カラム **/
    width: 48%;
    margin: 0 1%;
}

.gallery-columns-3 .gallery-item {
    /** 3カラム **/
    width: 31.33333%;
    margin: 0 1%;
}

.gallery-columns-4 .gallery-item {
    /** 4カラム **/
    width: 23%;
    margin: 0 1%;
}

.gallery-columns-5 .gallery-item {
    /** 5カラム **/
    width: 18%;
    margin: 0 1%;
}

.wp-block-media-text {
    margin-bottom: 10px;
}

h5.wp-block-heading {
    line-height: 150%;
    padding-top: 0;
}

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

    /* 640px以下用の記述 */
    .gallery-columns-3 .gallery-item,
    .gallery-columns-4 .gallery-item {
        width: 48%;
        margin: 0 1%;
    }

    .gallery-columns-5 .gallery-item {
        width: 31.33333%;
        margin: 0 1%;
    }
}



/* END BLOG ////////////////////////*/



@media screen and (max-width: 1700px) {
    #event .slick-slide {
        height: 430px;
    }

    #rokko-maya-event .slick-slide {
        height: 430px;
    }
}

@media screen and (max-width: 1500px) {
    .modelcousepagecopy h2 {
        font-size: 1.625rem;
    }
}

@media screen and (max-width: 1400px) {
    div#maininfo {
        top: 10%;
    }

    #event .slick-slide {
        height: 400px;
    }

    #rokko-maya-event .slick-slide {
        height: 400px;
    }

    .courseslide h4 {
        font-size: 2em;
    }

    .courseslide p {
        font-size: 1.2em;
    }

    .navbar-nav li a {
        font-size: 1em;
        padding-right: 0.4rem !important;
        padding-left: 0.4rem !important;
    }

}

@media screen and (max-width: 1300px) {
    .navbar-nav li a {
        font-size: 0.8em;
        padding-right: 0.2rem !important;
        padding-left: 0.2rem !important;
    }

}



@media screen and (min-width: 1200px) {}

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

    a.navbar-brand {
        padding: 1.125rem;
    }

    a.navbar-brand img {
        width: 105px;
        height: 49px;
    }

    .navbar-nav li a {
        font-size: 0.7em;
        padding-right: 0.2rem !important;
        padding-left: 0.2rem !important;
    }

    .weather span.temp,
    .weather span.icon {
        font-size: 1.125rem;
    }

    .lang a {
        font-size: 0.9em;
    }

    div#submainimage .catch_centered h1 {
        font-size: 1.875rem;
        padding-left: 0 !important;
    }

    .eventinfo h3 {
        font-size: 0.9em;
    }

    .eventinfo p {
        font-size: 0.8em;
    }

    .courseslide h4 {
        font-size: 1.5em;
    }

    #event .slick-slide {
        height: 340px;
    }

    #rokko-maya-event .slick-slide {
        height: 340px;
    }

    .modellabel {
        font-size: 1em;
        width: 75px;
        height: 75px;
    }

    .modellabel span {
        font-size: 2.5rem;
    }

    .modelcousepagecopy h2 {
        font-size: 1.25rem;
    }

    .imagebox .imageboxinfo {
        padding: 25px 30px;
    }

    .footer-menu-content p {
        font-size: 0.875rem;
    }

    .weather {
        color: #ffffff;
        padding: 0 10px 5px 10px;
        text-align: center;
        margin-left: 10px;
    }
}

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

    a.navbar-brand {
        padding: 16px;
    }

    a.navbar-brand img {
        width: 85px;
        height: 43px;
    }

    .subpage .navbar {
        border-bottom: none;
    }



    .drawer--top.drawer-open .drawer-nav {
        top: 0;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .drawer--left.drawer-open .drawer-nav,
    .drawer--left .drawer-hamburger,
    .drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
        left: 0;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .drawer--right.drawer-open .drawer-nav,
    .drawer--right .drawer-hamburger,
    .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
        right: 0;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .drawer--top.drawer-open .drawer-nav {
        top: 0;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .drawer--left.drawer-open .drawer-nav,
    .drawer--left .drawer-hamburger,
    .drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
        left: 0;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }

    .drawer--right.drawer-open .drawer-nav,
    .drawer--right .drawer-hamburger,
    .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
        right: 0;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }


    .drawer-hamburger {
        display: block;
        position: absolute;
    }

    .drawer-hamburger {
        padding: 10px;
        overflow: visible !important;
    }

    .drawer-nav {
        background-color: #008360;
        z-index: 1100;
        touch-action: auto !important;
    }

    .drawer-menu-item {
        font-size: 0.9rem;
        padding: 15px;
        color: #fff;
        line-height: 2;
        border-bottom: 2px solid #00504b;
    }

    .drawer-menu-item small {
        font-size: 0.6em;
    }

    .drawer-menu li:first-child .drawer-menu-item {
        border-top: 2px solid #00504b;
    }

    .drawer-menu-item img {
        width: 30px;
        float: left;
        margin-right: 10px;
    }

    .drawer-menu-item:hover {
        text-decoration: none;
        background-color: #00504b;
    }

    .drawer-open .drawer-hamburger-icon:before,
    .drawer-open .drawer-hamburger-icon:after {
        background-color: #ffffff;
    }

    .drawer-overlay {
        background-color: rgba(0, 0, 0, 0.7);
    }

    .drawer-hamburger-icon,
    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
        height: 3px;
        background-color: #ffffff;
    }








    .subpage .drawer-hamburger-icon,
    .subpage .drawer-hamburger-icon:before,
    .subpage .drawer-hamburger-icon:after {
        height: 3px;
    }

    .lang a {
        margin: 15px;
    }

    a.mobilelang {
        display: block;
        color: #fff;
        border: 2px solid #fff;
        padding: 11px 15px;
        position: absolute;
        right: 65px;
        z-index: 100;
        top: 10px;
    }

    a.mobilelang:hover {
        background-color: #fff;
        color: #333;
    }


    button.langbtn.mobilelangbtn {
        display: block;
    }

    .drawer-nav .lang {
        padding: 15px;
    }

    button.langbtn {
        width: 100%;
    }

    #langmodal {
        z-index: 10000;
    }

    .modal-backdrop {
        z-index: 9999;
    }


    .moibleheaderoverlay {
        display: block;
        height: 70px;
        position: absolute;
        width: 100%;
        left: 0;
        top: 0;
        z-index: 11;
        background-size: cover;
        opacity: 0.3;
        background: -moz-linear-gradient(top, #000000, transparent);
        background: -webkit-linear-gradient(top, #000000, transparent);
        background: linear-gradient(to bottom, #000000, transparent);
    }

    .suboverlay2 {
        display: none;
    }

    div#modelcourseheaderimage .modelcoursepagecatch_centered {
        bottom: 50%;
    }

    div#modelcourseheaderimage .modelcousepagecopy {
        bottom: 10%;
        right: auto;
    }

    div#modelcourseheaderimage .modelcousepagecopy div {
        writing-mode: initial;
    }

    div#modelcourseheaderimage .modelcousepagecopy div h2 {
        font-size: 1rem;
    }

    div#modelcourseheaderimage .modelcousepagecopy span {
        padding: 5px;
    }

    div#modelcourse .modellabel {
        width: 50px;
        height: 50px;
        padding: 7px;
        font-size: 0.7em;
    }

    div#modelcourse .modellabel span {
        font-size: 1.625rem;
    }

    .suboverlay {
        height: 80%;
    }

    .courseslide p {
        font-size: 1em;
        top: -15px;
        left: 10px;
    }

    .imagebox .imageboxinfo h3 {
        font-size: 1rem;
        margin: 12px 0;
        letter-spacing: 0;
    }

    .numinfo {
        font-size: 0.9em;
    }


    div#subheaderimage .subpagecatch_centered h1 {
        font-size: 1.875rem;
    }

    .index-nav__box .title {
        font-size: 2rem;
    }

    .index-nav__box .title span {
        font-size: 1.75rem;
    }

    #footer_logo {
        width: 50%;
    }

    #footer-menu {
        margin: 0;
    }

    .footer-menu-content {
        padding: 25px;
        text-align: left;
        overflow: hidden;
    }

    .footer-menu-content p {
        margin-top: 10px;
    }

    #footer-bottom p {
        font-size: 0.6em;
    }



    /* BLOG */
    #rpwwt-recent-posts-widget-with-thumbnails-2 img {
        width: 50px !important;
        height: 50px !important;
    }

    .rpwwt-widget ul li a {
        font-size: 0.7em;
        line-height: 1;
    }

    .rpwwt-post-date {
        font-size: 0.625rem;
    }

}



@media screen and (max-width: 767px) {
    div#pickupnews p {
        line-height: 1.7;
        margin-bottom: 10px;
    }

    .pickupon {
        top: 40px !important;
    }

    a.navbar-brand {
        padding: 10px;
        position: absolute !important;
    }

    a.navbar-brand img {
        width: 65px;
        height: 33px;
    }

    h1 {
        letter-spacing: 0.05em;
    }

    #mainimage .catch_centered {
        width: 60%;
    }

    .catch_centered {
        top: 45%;
    }

    #mainimage .slick-slide img {
        width: auto;
        height: 100vh;
    }

    #event .slick-slide {
        height: 360px;
    }

    #event .rokko-maya-event {
        height: 360px;
    }

    .twomountains_info .mtname {
        margin: 10px 0;
        font-size: 0.625rem;
    }

    .twomountains_info .mtdesc {
        font-size: 0.875rem;
    }

    .twomountains_info h3 {
        font-size: 2.125rem;
    }

    div#modelcourse .modellabel {
        font-size: 1em;
        width: 75px;
        height: 75px;
    }

    div#modelcourse .modellabel span {
        font-size: 2.5rem;
    }

    div#modelcourse .courseslide h3 {
        font-size: 1.5em;
    }

    div#modelcourse .courseslide p {
        font-size: 1.2em;
    }

    div#modelcourseheaderimage .modelcoursepagecatch_centered h1 {
        padding-left: 0 !important;
        font-size: 1.25rem;
        margin-left: 60px;
        margin-top: 10px;
    }

    div#modelcourseheaderimage .modellabel {
        width: 50px;
        height: 50px;
        padding: 7px;
        font-size: 0.7em;
    }

    div#modelcourseheaderimage .modellabel span {
        font-size: 1.625rem;
    }

    div#modelcourseheaderimage .modelcoursepagecatch_centered {
        bottom: 25%;
    }

    div#modelcourseheaderimage .modelcousepagecopy {
        bottom: -40%;
    }

    div#modelcousepage div.content {
        padding-top: 180px;
    }


    .imagebox .imageboximage {
        width: 50%;
    }

    .imagebox .imageboxinfo {
        width: 50%;
        padding: 15px;
    }

    .imagebox .imageboxinfo h3 {
        font-size: 0.875rem;
    }




    .footer-menu-content {
        border-top: 1px solid #ccc;
        padding: 15px;
    }

    .footer-menu-content img {
        width: 35px;
        float: left;
        margin-right: 20px;
    }

    .footer-menu-content p {
        margin-top: 5px;
    }


    #pageTop {
        display: none !important;
    }


    /* BLOG */
    a.post-archive .col-4 {
        padding: 0 15px 0 0;
    }

    #blog_summarypage #blog_content h2 {
        font-size: 1em;
    }

    span.eventday {
        font-size: 1em;
    }

    #rpwwt-recent-posts-widget-with-thumbnails-2 img {
        width: 75px !important;
        height: 75px !important;
    }

    .rpwwt-widget ul li a {
        font-size: 0.8em;
        line-height: 1;
    }

    #blog_content .subpageheader {
        padding-top: 100px;
    }

}

@media screen and (max-width: 480px) {
    div#submainimage .catch_centered h1 {
        font-size: 1.25rem;
    }

    div#modelcourse .courseslide h3 {
        font-size: 1em;
    }

    #event .slick-slide {
        height: 260px;
    }

    #event .eventinfo p {
        font-size: 0.625rem;
    }

    #rokko-maya-event .slick-slide {
        height: 260px;
    }

    #rokko-maya-event .eventinfo p {
        font-size: 0.625rem;
    }

    div#modelcourseheaderimage .modelcousepagecopy {
        bottom: -60%;
    }

    .imagebox {
        margin-bottom: 25px;
    }

    .imagebox .imageboxinfo {
        padding: 8px 15px;
    }

    .imagebox .imageboxinfo h3 {
        font-size: 0.75rem;
        margin: 7px 0;
    }

    .imagebox .modelcourseroute {
        font-size: 0.5625rem;
        margin-bottom: 5px;
    }

    .imagebox .modelcourseroutenum {
        font-size: 1em;
    }


    /* banner ////////////////////////*/
    #banner ul li {
        margin: 5px;
        width: 46%;
    }

    #footer_logo {
        width: 80%;
    }

    #footer-bottom span {
        display: none;
    }

    #footer-bottom a {
        display: block;
        padding: 5px 0;
    }

    #footer-bottom {
        position: relative;
        padding: 35px 30px 125px 30px;
    }

    #footer-bottom .copyright {
        position: absolute;
        bottom: 90px;
        right: 30px;
    }


    #footer-ctr {
        display: block;
        position: fixed;
        z-index: 1000;
        bottom: 0;
        width: 100%;
        border-top: 1px solid #00504b;
    }

    #footer-ctr a {
        width: 33.333333%;
        display: block;
        float: left;
        background-color: #008360;
        padding: 10px 0;
        text-align: center;
        font-size: 0.6875rem;
        line-height: 1.8;
        color: #ffffff;
        letter-spacing: 0;
    }

    #footer-ctr a i {
        font-size: 1.6em;
    }

    #footer-ctr a:hover {
        color: #fff;
        background-color: #00504b;
    }

    #footer-ctr img {
        width: 20px;
    }

    /* BLOG */
    img.aligncenter,
    img.alignleft,
    img.alignright {
        width: 100%;
    }

    .alignright {
        float: none;
        margin: 0;
    }

    .alignleft {
        float: none;
        margin: 0;
    }

}

@media screen and (max-width: 460px) {
    .lum-lightbox {
        z-index: 999;
    }

    .lum-lightbox-position-helper img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        font-family: 'object-fit: contain;';
    }
}

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

    .drawer-menu-item {
        font-size: 0.8rem;
        padding: 10px;
    }

    .drawer-menu-item img {
        width: 24px;
    }

    div#subheaderimage .subpagecatch_centered h1 {
        font-size: 1.25rem;
    }

}

/*リニューアル用追加*/

.twomountains_slider img {
    width: 80%;
    height: auto;
    margin: 0 auto;
}

.access-box {
    position: relative;
}

.access-box-center {
    position: absolute;
    top: 50%;
    left: 38%;
    transform: translate(-31%, -50%);
}

.bottom {
    vertical-align: bottom;
}

.text-middle {
    font-size: 3rem;
}

.routecontainer {
    padding-bottom: 100px;
}

.hilight span {
    white-space: normal;
}

.popup .btn {
    border-radius: 0px;
}

/*夜景特集*/

.nightview_side.lazyloaded {
    background: url(https://kobe-rokko.jp/en/wp-content/themes/works/images/nightview/nightview-header2.png);
    background-repeat: no-repeat;
    background-position: 250px 0%;
    background-color: #000746;
    background-size: cover;
    padding: 150px 100px;
}

.nightslide {
    position: relative;
    padding: 0;
}

.nightslide span {}

.nightlabel {
    padding: 10px;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 500;
    width: 90px;
    height: 80px;
    line-height: 1;
    font-size: 1em;
    z-index: 1;
    background: #ffffff;
}

.nightlabel span {
    font-size: 3em;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.nightbtn_1 {
    background-color: #000D40;
    color: #fff;
    padding: 1.3rem 1rem;
    width: 250px;
}

.nightbtn_1:hover {
    background-color: #040A20;
    color: #fff;
}

.nightno_1 {
    color: #000D40;
}

.nightbackbtn_1 {
    background-color: #fff;
    color: #000D40;
    font-size: 1rem;
}

.nightbackbtn_1:hover {
    background-color: #040A20;
    color: #fff;

}

.nightbtn_2 {
    background-color: #00402A;
    color: #fff;
    padding: 1.3rem 1rem;
    width: 250px;
}

.nightbtn_2:hover {
    background-color: #011C13;
    color: #fff;
}

.nightbackbtn_2:hover {
    background-color: #011C13;
    color: #fff;
}

.nightno_2 {
    color: #00402A;

}

.nightbackbtn_2 {
    background-color: #fff;
    color: #00402A;
    font-size: 1rem;
}

.nightbtn_3 {
    background-color: #005660;
    color: #fff;
    padding: 1.3rem 1rem;
    width: 250px;
}

.nightbtn_3:hover {
    background-color: #00343A;
    color: #fff;
}


.nightno_3 {
    color: #005660;
}

.nightbackbtn_3 {
    background-color: #fff;
    color: #005660;
    font-size: 1rem;
}

.nightbackbtn_3:hover {
    background-color: #00343A;
    color: #fff;
}

.nightbtn_4 {
    background-color: #460B4D;
    color: #fff;
    padding: 1.3rem 1rem;
    width: 250px;
}


.nightbtn_4:hover {
    background-color: #401328;
    color: #fff;
}


.nightno_4 {
    color: #460B4D;
}

.nightbackbtn_4 {
    background-color: #fff;
    color: #460B4D;
    font-size: 1rem;
}

.nightbackbtn_4:hover {
    background-color: #401328;
    color: #fff;
}


/*夜景特集記事ページ*/

#nightmainimage {
    width: 100%;
    height: 800px;
}

#nightmainimage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.nightcatch_centered {
    position: absolute;
    height: auto;
    top: 25%;
    left: 10%;
    margin: auto;
    z-index: 10;
    color: #fff;
}

.subnightlabel {
    padding: 10px;
    text-align: center;
    top: 0;
    left: 0;
    font-weight: 500;
    width: 90px;
    height: 80px;
    line-height: 1;
    font-size: 1em;
    z-index: 1;
    background: #ffffff;
}

.nightview-article4 img {
    margin-bottom: 20px;
    width: 100%;
}

.nightview-textbox img {
    width: 100%;
    margin-bottom: 20px;
    border-radius: 10px;
}

.catch_contents h1 {
    line-height: 1.3;
}

.subnightlabel span {
    font-size: 3em;
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


.text-nightyerrow {
    color: #FBFF7A;
}

.nightviewtext-head {
    margin-top: 50px;
}

div#nightmainimage {
    float: left;
    width: 100%;
    overflow: hidden;
    z-index: 10;
    position: relative;
}

.nightbg_1 {
    background-color: #000D40;
}

.nightbg_2 {
    background-color: #00402A;
}

.nightbg_3 {
    background-color: #005660;
}

.nightbg_4 {
    background-color: #460B4D;
}

.nightview-article1 {
    background: url(images/nightview/night1_1.jpg);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 50%;
    background-color: #000D40;
}

.nightview-article2 {
    background: url(images/nightview/night2_1.jpg);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 50%;
    background-color: #00402A;
}

.nightview-article3 {
    background: url(images/nightview/night3_1.jpg);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 50%;
    background-color: #005660;
}

.nightview-article4 {
    background: url(images/nightview/night4_1.jpg);
    background-repeat: no-repeat;
    background-position: right top;
    background-size: 50%;
    background-color: #460B4D;
}

.nightview-title_1 {
    width: 100%;
    padding: 0px 0px 105px 300px;
}

.night-big {
    font-size: 120px;
}

.night-title-text {
    display: inline-block;
    line-height: 1.4em;
    padding: 5px;
    background: #000;
    font-size: 1.4em;
    color: #fff;
}

.nightviewtext-head {
    padding-bottom: 30px;
}

.nightviewtext-head::before {
    content: "";
    display: inline-block;
    width: 50px;
    height: 50px;
    background: url(https://kobe-rokko.jp/en/wp-content/themes/works/images/nightview/star.svg) no-repeat;
    background-size: contain;
    margin-right: 8px;
}

.nightview-textbox {
    width: 90%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
    color: #fff;
    padding-top: 50px;
    padding-bottom: 50px;
}

.nightview-textbox p {
    padding-bottom: 20px;
    font-size: 1em;
    font-weight: 800;
}

.night-infobox {
    width: 100%;
    max-width: 1000px;
    background: #fff;
    border-radius: 32px;
    margin: 0 auto;
    padding: 60px;
}

.night-infosubbox {
    width: 90%;
    margin: 0 auto;
}

.night-info-title {
    display: block;
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 50px;
    border-bottom: 4px solid #00402a;
}

.night-info {
    width: 80%;
    margin: 0 auto;
}

.night-info small {
    font-size: 0.9em;
}

.night-star {
    width: 110px !important;
    height: auto;
}

/*登山ページ*/

div.tozan_content_side {
    padding: 50px 5% 60px 7%;
    background-color: #32B695;
}


.tozanslider_wrap {
    position: absolute;
    bottom: 0;
    right: -30px;
    width: 83%;
    margin-bottom: -1px;
    z-index: 0;
}

.tozannav-button {
    color: #00AA6E;
    background: #fff;
    text-align: center;
    position: relative;
    z-index: 10;
    cursor: pointer;
}

.tozannav-button:hover {
    background: #1B755F;
    color: #fff;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#tozanmainimage {
    width: 100%;
    height: 800px;
    position: relative;
    background: url(images/climbing/tozan-top-img-new.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

#tozanmainimage img {}

.tozan-title-text1 {
    display: inline-block;
    font-size: 2em;
    padding: 5px;
    background: #32B695;
    font-weight: 600;
    letter-spacing: 1px;
}

.tozan-title-text2 {
    display: inline-block;
    font-size: 4em;
    padding: 5px;
    background: #32B695;
    font-weight: 600;
    letter-spacing: 1px;
}

tozan-mainarea img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tozancatch_centered {
    position: absolute;
    height: auto;
    top: 25%;
    left: 10%;
    margin: auto;
    z-index: 10;
    color: #fff;
}

.tozan-mountainimage {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 30%;
    max-width: 300px;
    height: auto;
}

.tozan-main {
    position: relative;
}

.tozan-mapimg {
    width: 100%;
    max-width: 450px;
}

@media only screen and (min-width:1500px) {
    .tozan-mapimg {
        position: absolute;
        max-width: 550px;
        top: -300px;
        right: 6%;
    }
}

@media only screen and (min-width:901px) {
    .tozan-mapimg {
        position: absolute;
        max-width: 550px;
        top: -300px;
        right: 6%;
    }
}

@media only screen and (min-width:901px) and (max-width:1024px) {
    .tozan-mapimg {
        position: absolute;
        max-width: 450px;
        top: -300px;
        right: 3%;
    }
}


@media only screen and (min-width:728px) and (max-width:900px) {
    .tozan-mapimg {
        position: absolute;
        max-width: 330px;
        top: -181px;
        right: 4%;
    }
}


.tozanbg_1 {
    background-color: #32B695;
}

.tozanbg_2 {
    background-color: #74C8AA;
}


.tozanarticle-1 {
    width: 80%;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
}

@media only screen and (max-width:1024px) {
    .tozanarticle-1 {
        width: 90%;
        margin: 0 auto;
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

.tozan-catchcopy-box {
    width: 90%;
    margin: 0 auto;
}

.tozan-catchcopy {
    background: linear-gradient(transparent 0%, #F8FF26 0%);
    display: inline;
    padding: 0 10px 4px;
    margin-bottom: 20px;
    font-size: 2em;
    font-weight: 700;
    line-height: 1.8em;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    color: #00AA6E;
}



.tozan-catchcopy small {
    background: linear-gradient(transparent 0%, #F8FF26 0%);
    display: inline;
    padding: 0 2px 4px;
    margin-bottom: 20px;
    font-size: 0.8em;
    font-weight: 700;
    line-height: 1.8em;
    color: #00AA6E;
}

@media only screen and (max-width:420px) {
    .tozan-catchcopy {
        font-size: 1.5em;
    }
}

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

    .tozan-catchcopy {
        font-size: 1.5em;
    }

    .tozan-catchcopy small {
        font-size: 0.65em;
    }

}

.tozan-route-con {
    background: #00AA6E;
    margin: 0 auto;
    position: relative;
    border-radius: 20px;
    margin-top: 100px;
    padding-bottom: 50px;
}


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

    .tozan-route-con {
        padding-bottom: 5px;
    }
}

/ .route-con {
    margin-bottom: 20px;
}

.tozan-decoration {
    position: absolute;
    top: -105px;
    max-width: 200px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
}

@media only screen and (min-width:728px) and (max-width:1200px) {
    .tozan-decoration {
        top: -98px;
        max-width: 200px;
    }
}


@media only screen and (max-width:600px) {
    .tozan-decoration {
        top: -60px;
        max-width: 120px;
        left: 50%;
    }
}

.tozan-route-con-title {
    justify-content: center;
    align-items: center;
    width: 90%;
    padding: 70px 20px;
    margin: 0 auto;
}

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

    .tozan-route-con-title {
        padding: 70px 20px 10px;
        width: 100%;
    }
}

.tozan-route-con-title img {
    max-width: 300px;
}


.tozan-route-con-title h3 {
    font-size: 3.5em;
    font-weight: 700;
    text-align: center;
    color: #FFC745;
    margin-left: 30px;
}



@media only screen and (max-width:820px) {
    .tozan-route-con-title h3 {
        font-size: 3.5em;
        margin-left: 0px;
        margin-top: 15px;
    }
}


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

    .tozan-route-con-title h3 {
        font-size: 2.5em;
        margin-left: 0px;
    }
}

@media only screen and (min-width:1024px) {
    .pc-none {
        display: none !important;
    }
}

@media only screen and (max-width:1023px) {
    .mb-none {
        display: none !important;
    }

}

@media only screen and (min-width:200px) and (max-width:727px) {
    .popup-mb-none {
        display: none !important;
    }
}


@media only screen and (min-width:728px) {
    .popup-pc-none {
        display: none !important;
    }
}


@media only screen and (min-width:1200px) {
    .tbonly {
        display: none !important;
    }
}


.tozan-route-con-title img {
    width: 100%;
    max-width: 300px;
}

.route-namber {
    font-weight: 700;
}

.route-name {
    font-weight: 700;
}

.tozan-area-con {
    width: 75%;
    margin: 0 auto;
    color: #fff;
    margin-bottom: 30px;
}

@media only screen and (min-width:1025px) {

    .picup-con {
        width: 270px;
    }

}




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

    .tozan-area-con {
        width: 95%;
        max-width: 100%;
    }

}



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

    .tozan-area-con img {
        width: 100%;
    }

}

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

    .tozan-area-con img {
        max-width: 100%;
        width: 100%;
    }


    .picup-con {
        text-align: center;
    }


}

.area-title {
    align-items: end;
    justify-content: space-evenly;
}



.area-title-box {
    align-items: flex-end;
    justify-content: space-between;
    margin-left: 5px;
}

.area-title-box img {
    max-width: 150px;
}



@media only screen and (max-width:820px) {
    .area-title-box {
        width: 100%;
        text-align: center;
    }

}

.area-title-box .mount-title {
    font-size: 3em;
    font-weight: 700;
    line-height: 1;
}

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

    .area-title-box .mount-title {
        font-size: 2em;

    }

}

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

    .area-title-box .mount-title {
        font-size: 3em;
        font-weight: 700;
        line-height: 0.6em;
        text-align: center;
        margin-top: 10px;
    }

}

@media only screen and (max-width:360px) {
    .area-title-box .mount-title {
        font-size: 2em;
        font-weight: 700;
        line-height: 0.6em;
        text-align: center;
        margin-top: 10px;
    }

}


.area-title-box .mount-title small {
    font-size: 0.9em;
    font-weight: 700;
}


.area-title-box .mount-title small {
    font-size: 0.5em;
}

.area-title-box .picup-con {
    font-weight: 700;
}

.area-title-box .picup-con .picup-bg1 {
    background: linear-gradient(transparent 0%, #FFC745 0%);
    display: inline;
    margin-bottom: 20px;
    font-size: 1em;
    font-weight: 700;
    line-height: 1.8em;
    color: #00AA6E;
    padding: 0px 5px;
}

.area-title-box .picup-con .picup-bg2 {
    background: linear-gradient(transparent 0%, #F8FF26 0%);
    display: inline;
    margin-bottom: 20px;
    font-size: 1em;
    font-weight: 700;
    line-height: 1.8em;
    color: #00AA6E;
    padding: 0px 5px;

}

.area-title-box .picup-con .picup-bg3 {
    background: linear-gradient(transparent 0%, #9FEF44 0%);
    display: inline;
    margin-bottom: 20px;
    font-size: 1em;
    font-weight: 700;
    line-height: 1.8em;
    color: #00AA6E;
    padding: 0px 5px;

}

.area-title-box .picup-con .picup-bg4 {
    background: linear-gradient(transparent 0%, #45FFBF 0%);
    display: inline;
    margin-bottom: 20px;
    font-size: 1em;
    font-weight: 700;
    line-height: 1.8em;
    color: #00AA6E;
    padding: 0px 5px;
}

.area-list-con {
    width: 100%;
    border-radius: 20px;
    padding: 50px;
    font-size: 2em;
}

.area-list-con img {
    border-radius: 20px;
    width: 100%;
}




.area-list-con.route1 {
    border: 5px solid #FFC745;
}

.area-list-con.route2 {
    border: 5px solid #F8FF26;
}

.area-list-con.route3 {
    border: 5px solid #9FEF44;
}

.area-list-con.route4 {
    border: 5px solid #45FFBF;
}


.tozan-title-con {
    align-items: center;
    font-size: 2.5em;
    color: #fff;
    font-weight: 700;
}

.tozan-exp-border {
    margin: 50px 0 150px;
    padding: 30px 0;
    border-top: 5px solid #FFC745;
    border-bottom: 5px solid #FFC745;
}

.tozan-exp-title {
    background: linear-gradient(transparent 0%, #00AA6E 0%);
    display: inline;
    font-size: 1.2em;
    font-weight: 700;
    color: #F8FF26;
    padding: 0px 25px;
    border-radius: 50px;
}

.route-exp-titlecon {
    width: 97%;
    margin: 0 auto;
}

.route-exp-text {
    font-weight: 500;
    font-size: 0.6em;
    color: #fff;
    width: 100%;
    margin: 0 auto;
}

@media only screen and (max-width:600px) {
    .route-exp-text {
        font-size: 0.45em;
    }
}

.route-exp-bordertop1 {
    margin-top: 20px;
    padding-top: 30px;
    border-top: 2px solid #FFC745;
}

.route-exp-bordertop2 {
    margin-top: 20px;
    padding-top: 30px;
    border-top: 2px solid #F8FF26;
}

.route-exp-bordertop3 {
    margin-top: 20px;
    padding-top: 30px;
    border-top: 2px solid #7DFFCB;
}

.route-exp-bordertop4 {
    margin-top: 20px;
    padding-top: 30px;
    border-top: 2px solid #9FEF44;
}

.route-exp-title1 {
    background: linear-gradient(transparent 0%, #FFC745 0%);
    display: inline;
    font-size: 1.2em;
    font-weight: 700;
    color: #00AA6E;
    padding: 0px 25px;
    border-radius: 50px;
}

.route-exp-title2 {
    background: linear-gradient(transparent 0%, #F8FF26 0%);
    display: inline;
    font-size: 1.2em;
    font-weight: 700;
    color: #00AA6E;
    padding: 0px 25px;
    border-radius: 50px;
}

.route-exp-title3 {
    background: linear-gradient(transparent 0%, #7DFFCB 0%);
    display: inline;
    font-size: 1.2em;
    font-weight: 700;
    color: #00AA6E;
    padding: 0px 25px;
    border-radius: 50px;
}

@media only screen and (max-width:600px) {
    .route-exp-title3 {

        font-size: 0.8em;
    }

}

@media only screen and (max-width:400px) {
    .route-exp-title3 {

        font-size: 0.7em;
    }

}

.route-exp-title4 {
    background: linear-gradient(transparent 0%, #9FEF44 0%);
    display: inline;
    font-size: 1.2em;
    font-weight: 700;
    color: #00AA6E;
    padding: 0px 25px;
    border-radius: 50px;
}

.route-exp-title-min {
    font-size: 0.8em;
    padding-left: 20px;
}

.route-exp-title-min-start {
    font-size: 0.8em;
    padding-right: 20px;
}


@media only screen and (max-width:1024px) {
    .area-list-con {
        width: 100%;
        border: 1px solid #fff;
        border-radius: 20px;
        padding: 20px;
        font-size: 2em;
    }
}



.area-list-con p {
    margin: 0;
    font-weight: 700;
}

@media only screen and (max-width:360px) {
    .area-list-con p {
        font-size: 0.7em;
    }
}



.tozan-info p::before {
    content: "▶︎";
    margin-right: 5px;
    font-size: 0.8em;
    line-height: 1em;
}

.route-text {
    background: linear-gradient(transparent 0%, #F8FF26 0%);
    display: inline;
    font-size: 0.6em;
    font-weight: 700;
    color: #00AA6E;
    padding: 0px 5px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

@media only screen and (max-width:360px) {
    .route-text {
        font-size: 0.45em !important;
    }
}



.tozan-info {
    background: #fff;
    border-radius: 5px;
    width: 125px;
    font-size: 0.5em;
    margin-top: 8px;
    text-align: center;
    padding: 5px;
}

.tozan-info:hover {
    background: #1B755F;
    color: #fff;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


.tozan-under-catch-con {
    width: 100%;
    margin: 0 auto;
    justify-content: center;
}

.tozan-under-catch1 {
    font-weight: 500;
    font-size: 1.2em;
    color: #fff;
    margin-top: 50px;
    width: 90%;
    margin: 0 auto;
}

@media only screen and (min-width:1180px) {
    .tozan-under-catch1 {
        font-size: 2em;
        color: #fff;
    }
}

.tozan-under-catch2 {
    font-weight: 800;
    font-size: 4em;
    color: #fff;
    text-align: center;
}

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

    .tozan-under-catch2 {
        font-weight: 800;
        font-size: 2em;
        color: #fff;
        text-align: center;
    }

    /*
    .tozan-under-catch2 {
        font-weight: 800;
        font-size: 2.3em;
        border-bottom: 3px solid #fff;
        border-right: none;
        margin-right: 0px;
        color: #fff;
        padding-right: 0px;
        text-align: center;
    }*/
}

.tozan-under-catch3 {
    font-size: 3em;
    color: #00AA6E;
    text-align: center;
    padding-top: 80px;
    font-weight: 600;
}

.tozan-under-catch4 {
    font-size: 2.5em;
    color: #00AA6E;
    text-align: center;
    padding-top: 50px;
    font-weight: 600;
}

@media only screen and (max-width:600px) {
    .tozan-under-catch3 {
        font-size: 2em;
        text-align: center;
    }
}

.tozan-arrow {
    position: absolute;
    bottom: -50px;
    max-width: 70px;
    left: 50%;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
}


.guidebookimg {
    height: auto;
    width: 50%;
}

.tozan-main-2 {
    background: #E0F98C;
}

.tozan-main-2-con {
    width: 90%;
    padding-top: 50px;
    margin: 0 auto;
}

@media only screen and (min-width:1800px) {
    .tozan-main-2-con {
        width: 70%;
        padding-top: 50px;
        margin: 0 auto;
    }
}

@media only screen and (min-width:1500px) {
    .tozan-main-2-con {
        width: 80%;
        padding-top: 50px;
        margin: 0 auto;
    }
}

.navi-con {
    width: 50%;
    padding: 80px 30px 80px;
    border-radius: 30px;
    background: #fff;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    position: relative;
}



@media only screen and (min-width:821px) and (max-width:850px) {
    .navi-con {
        height: 2000px;
    }
}

@media only screen and (max-width:960px) {
    .navi-con {
        width: 100%;
        padding: 80px 10px 80px;
        margin-top: 20px;
        text-align: center,
    }


    .guidebookimg {
        width: 100%;
        height: auto;
    }

    .tozan-main-2-con {
        width: 95%;
        padding-top: 20px;
        margin: 0 auto;
    }
}



@media only screen and (min-width:1024px) {
    .navi-con-inner {
        position: absolute;
        top: 52%;
        left: 50%;
        width: 92%;
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
    }

}

.navi-title {
    text-align: center;
    font-weight: bold;
    font-size: 1.2em;
    line-height: 1.2em;
    color: #00aa6e;
    margin-top: 10px;
    margin-bottom: 10px;
}

.navi-button {
    width: 100%;
    border-radius: 10px;
    background: #32b695;
    padding: 10px;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.navi-button:hover {
    background: #1B755F;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.rokkosannavi-link {
    text-align: center;
    width: 50%;
    margin: 0 auto;
    padding: 20px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
    font-size: 2.5em;
    font-weight: 700;
    color: #32b695;
    margin-top: 20px;
    margin-bottom: 20px;
}

@media only screen and (max-width:600px) {
    .rokkosannavi-link {
        text-align: center;
        width: 100%;
        margin: 0 auto;
        padding: 20px;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
        font-size: 2em;
        font-weight: 700;
        color: #32b695;
        margin-top: 15px;
        margin-bottom: 20px;
    }
}

.rokkosannavi-link small {
    font-size: 0.8em;
}

.rokkosannavi-link:hover {
    background: #32b695;
    color: #fff;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;

}

.youtubearea {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.youtubearea iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.tozan-main-3 {
    border-top: 10px;
    color: #00AA6E;
    background: #FFFF64;
}

.guidebooktext {
    position: relative;
    text-align: center;
    font-weight: 600;
    font-size: 1.5em;
    color: #fff;
    line-height: 2.5em;
}


.guidebooktext h2 {
    font-size: 2em;
    color: #FFC745;
    border: none;
}

.guidebook-button-area {
    width: 80%;
    margin: 0 auto;
}

.guidebook-button {
    font-size: 2.5em;
    font-weight: 600;
    text-align: center;
    border-radius: 24px;
    background: #00aa6e;
    border: 5px solid #fff;
    color: #fff;
    padding: 20px 60px;
    margin: 30px;
}

.favorite-container {
    width: 75%;
    margin: 0 auto;
    padding-top: 100px
}

.favorite-img {
    border-radius: 20px;
    margin-bottom: 20px
}

.favorite-logo {
    width: 30%;
    height: auto;
    padding: 20px;
}

@media only screen and (max-width:960px) {
    .favorite-container {
        width: 90%;
        margin: 0 auto;
        padding-top: 50px;
    }
}

@media only screen and (max-width:601px) {
    .favorite-container {
        width: 90%;
        margin: 0 auto;
        padding-top: 50px;
    }

    .favorite-logo {
        width: 100%;
        height: auto;
        padding: 20px;
    }

}



.favorite-con {
    margin-top: 30px;
    margin-bottom: 20px;
}

.favorite-container-title {
    width: 70%;
    padding: 20px;
    color: #00AA6E;

}

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

    .favorite-container-title {
        width: 100%;
        padding: 0px;
        color: #00AA6E;

    }
}

.favorite-container-title p {
    font-size: 2.5em !important;
    font-weight: 700;
    text-align: center;
}

.favorite-title-con {
    align-items: center;
    margin-bottom: 20px;
}

.faborite-title {
    font-size: 2.8em;
    font-weight: 800;
}

@media only screen and (min-width:768px) {
    .faborite-title {
        font-size: 3em;
        font-weight: 800;
    }
}

.faborite-title p {
    font-size: 1.2em;
}




.text-bg-green1 {
    background: #00AA6E;
    padding: 10px 5px;
    font-size: 1.2em;
    font-weight: 700;
    color: #fff;
    width: 150px;
    text-align: center;
    line-height: 1em;
}

.text-bg-green1-en {
    background: #00AA6E;
    padding: 10px 5px;
    font-size: 1.2em;
    font-weight: 700;
    color: #fff;
    width: 210px;
    text-align: center;
    line-height: 1em;
}

.text-bg-green2 {
    background: #00AA6E;
    padding: 10px 5px;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 80px;
    line-height: 1em;
}

.text-bg-brown {
    background: #A57400;
    padding: 10px 5px;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 80px;
    line-height: 1em;
}

.text-bg-blue {
    background: #2B6CB7;
    padding: 10px 5px;
    font-size: 1em;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 80px;
    line-height: 1em;
}

.favorite-box-left {
    width: 70%;
    font-size: 1em;
    margin-right: 20px;
}

.favorite-box-left p {
    margin: 0;
}

.favorite-title-p {
    font-size: 1.2em;
    font-weight: 700;
}

.favorite-info {
    font-size: 1.2em;
    font-weight: 700;
    padding-left: 10px;
    width: 100%;
}

@media only screen and (min-width:768px) and (max-width:920px) {
    .faborite-title {
        font-size: 2.5em;
        font-weight: 800;
    }

    .favorite-title-p {
        font-size: 1em;
    }
}

@media only screen and (max-width:920px) {
    .favorite-box-left {
        width: 100%;
        font-size: 1em;
        margin-right: 20px;
    }
}

.favorite-box-right {
    width: 30%;
    margin-top: 20px;
}

@media only screen and (max-width:428px) {
    .favorite-box-right {
        width: 100%;
    }
}


.favorite-box {
    align-items: flex-start;
}

.guidebook-button:hover {
    background: #32B695;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.guidebook-button p {
    line-height: 0.5em;
    margin-bottom: 0;
}

.rokkosan-navi-guide {
    padding: 30px;
    background: url(images/climbing/tozan-mountain.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-color: #FFC745;
    background-size: 50%;
}

.rokkosan-navi-con {
    width: 80%;
    margin: 0 auto;
    padding: 20px;
}

.rokkosannavi-leftside {
    color: #00AA6E;
    font-size: 4em;
    font-weight: 500;
}


.rokkosannavi-leftside span {
    font-size: 1.5em;
}

.rokkosannavi-rightside {
    text-align: center;
}

.rokkosan-navi-button {
    color: #00AA6E;
    background: #fff;
    margin: 0 auto;
    font-size: 1.8em;
}

.rokkosan-navi-button:hover {
    background: #1B755F;
    color: #fff;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tozan-message {
    width: 50%;
    margin: 0 auto;
    font-size: 2em;
    font-weight: 600;
    color: #fff;
    border-bottom: solid #ffc745 10px;
}

.climbingbackbtn {
    background-color: #fff;
    color: #32B695;
    /*
    border: 5px solid #32B695;*/
}


.climbingbackbtn:hover {
    background-color: #1B755F;
    color: #fff;
}

.courseslide h3 {
    font-size: 1.1rem;
}

/*登山道（正式）*/

/*タブメニュー型*/

.ozContainerTabs {
    /* タブの宣言 */
    position: relative;
    vertical-align: middle;
    height: 2em;
    z-index: 1;
}

.ozContainerTabs>div {
    /* タブ本体 */
    display: inline-block;
    position: relative;
    border-radius: 4px 4px 0 0;
    font-size: 1em;
    font-weight: 700;
    line-height: 1em;
    height: 2em;
    float: left;
    width: auto;
    vertical-align: baseline;
    background: #fff;

}

.ozNomalTab {
    /* カレントのタブ */
    border-color: #CCC #CCC #FFF #CCC;
}

.ozBehindTabs {
    /* 背後のタブ */
    margin-left: 0.2em;
}

.ozContainerTabs>div>a {
    /* タブのリンク文字 */
    display: inline-block;
    padding: 0.5em 1em 0;
    color: #00AA6E;
}

.ozContainerBody {
    /* フォルダ本体 */
    border-radius: 0 4px 4px 4px;
    clear: both;
    position: relative;
    padding: 2em;
    top: -1px;
    background: #fff;
    width: 100%;
    box-shadow: rgb(0 0 0 / 20%) 2px 5px 10px -3px;
    line-height: 1.5;
    font-weight: 600;
}


@media only screen and (max-width:600px) {
    .ozContainerBody {
        width: 100%;
    }

}



@media (min-width: 1900px) {
    .container {
        max-width: 1800px;
    }

    .nightview-textbox {
        max-width: 1800px;
    }
}

@media (max-width: 1500px) {

    .nightview-textbox {
        max-width: 1140px;
    }
}


@media screen and (min-width: 1200px) {

    .guidebooktext-con {
        position: absolute;
        top: 25%;
        left: 20%;
    }

    .guidebooktext {
        position: relative;
    }


}

@media screen and (max-width: 1200px) {
    div.tozan_content_side {
        padding: 30px 10%;
    }

    .content_side h3 {
        font-size: 2.5em;
    }

    .access-box-center h3 {
        font-size: 2rem;
        margin-bottom: 10px;
    }

    .access-box-center p {
        font-size: 1rem;
        margin-bottom: 0px;
    }

    .access-box-center a {
        font-size: 0.8rem;
        margin-bottom: 0px;
        padding: 1.3rem 1.5rem;
    }

}


@media screen and (max-width: 1024px) {
    #tozanmainimage {
        background-position: 75%;
    }

    .tozan_content_side {
        padding: 20px 3% 0px 5%;
    }

    .guidebooktext-con {
        padding-top: 60px;
    }


    .rokkosannavi-leftside {
        font-size: 3.5em;
    }

    .rokkosan-navi-button {

        margin: 0;
    }

    .tozan-message {
        width: 80%;
    }

    .guidebook-button {
        padding: 16px 34px;
    }

    .nightbtn_1 {
        font-size: 1em;
        width: 250px;
    }

    .nightbtn_2 {
        font-size: 1em;
        width: 250px;
    }

    .nightbtn_3 {
        font-size: 1em;
        width: 250px;
    }

    .nightbtn_4 {
        font-size: 1em;
        width: 250px;
    }

    .nightview-title_1 {
        padding: 0px 0px 105px 80px;
    }

    .night-infosubbox {
        width: 100%;
    }

    .night-infobox {
        max-width: 800px;
        padding: 60px;
    }

}

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

    .nightview_side.lazyloaded {
        background-position: 69px 0%;
        padding: 25px 25px;
    }

    .nightview_side h3 {
        font-size: 2rem;
    }

    .night-big {
        font-size: 70px;
    }

    .nightview-article3 {
        background-size: 65%;
    }

    .nightview-title_1 {
        padding: 0 0 0 10px;
    }

    .nightcatch_centered {
        top: 15%;
        left: 4%;
    }

    .guidebooktext-con {
        padding-top: 90px;
    }

    .night-infobox {
        max-width: 730px;
        padding: 55px;
    }

    .tozan_content_side h3 {
        font-size: 2.5rem;
        line-height: 1.1;
    }

    .rokkosan-navi-con {
        width: 100%;
    }

    .footer-menu-content {
        height: 150px;
    }

}

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

    div.tozan_content_side {
        padding: 20px 0% 3px 12%;
    }

    .tozanslider_wrap {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 70%;
        margin-bottom: -1px;
    }

    .tozannav-button {
        width: 150px;
        border-radius: 10px;
        margin-bottom: 20px;
        padding: 13px;
        font-size: 0.8em;
    }

    .tozan-message {
        width: 80%;
    }

    .tozan-title-text2 {
        font-size: 3em;
    }

    .night-title-text {
        font-size: 1.4em;
    }

    .nightview-title_1 {
        padding: 0;
    }

    .rokkosannavi-leftside {
        font-size: 2.5em;
    }

    .access-box-center h3 {
        font-size: 1.8rem;
    }

    .courseslide h3 {
        font-size: 0.9rem;
    }

    .nightview-textbox {
        width: 100%;
        padding: 0;
    }

}

@media screen and (max-width: 460px) {
    .modelslider_wrap {
        position: absolute;
        bottom: 0;
        right: 0;
        width: 112%;
        margin-bottom: -1px;
    }

    .night-infobox {
        padding: 30px;
    }

    .night-info {
        width: 100%;
    }

    .night-infosubbox {
        width: 100%;
    }

    .nightview-article1 {
        background-size: 70%;
    }

    .nightview-article2 {
        background-size: 70%;
    }

    .nightview-article3 {
        background-size: 70%;
    }

    .nightview-article4 {
        background-size: 70%;
    }

    .text-middle {
        font-size: 2.5rem;
        letter-spacing: 0px;
    }

    .guidebooktext {
        font-size: 1.2em;
    }

    .guidebooktext p {
        font-size: 1rem;
    }

    .guidebooktext h2 {
        font-size: 1.6em;
        line-height: 1;
    }

    #tozanmainimage {
        height: 500px;
        background-position: 75%;
    }

    .tozan-title-text1 {
        font-size: 1em;
    }

    .tozanarticle-1 {
        width: 100%;
    }

    .guidebook-button {
        font-size: 1.8em;
        width: 100%;
        margin: 0 auto;
    }

    .rokkosannavi-leftside {
        font-size: 2.5em;
    }

    .rokkosan-navi-guide {
        background-size: 76%;
    }

    .rokkosan-navi-button {
        width: 100%;
        font-size: 1.2em;
    }

    .rokkosan-navi-con {
        width: 90%;
        margin: 0 auto;
        padding: 0px;
    }

    .tozan-message {
        width: 90%;
    }

    .guidebooktext-con {
        padding-top: 36px;
    }

    .night-title-text {
        font-size: 1em;
    }

    .nightviewtext-head {
        margin-top: 20px;
    }

    .tozan-title-text2 {
        font-size: 3em;
    }

    .tozannav-button {
        border-radius: 10px;
    }

    .footer-menu-content {
        height: auto;
    }

    .tozan_content_side h3 {
        font-size: 2rem;
        line-height: 1.1;
    }

    .tozannav-button {
        width: 150px;
        border-radius: 6.5px;
        margin-top: 0px;
        margin-bottom: 20px;
        padding: 5px;
        font-size: 0.8em;
    }
}

@media screen and (max-width: 390px) {
    .nightcatch_centered {
        left: 3%;
    }

    .tozan-message {

        font-size: 1.9em;
    }


}

@media screen and (max-width: 375px) {
    .nightcatch_centered {
        left: 6%;
    }
}

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

    .tozan-message {
        font-size: 1.8em;
    }

}

@media screen and (max-width:300px) {
    .tozan-title-text2 {
        font-size: 2.4em;
    }

}

@media screen and (max-width: 280px) {
    .night-big {
        font-size: 58px;
    }

}

/*トップページお知らせタブレット用新規*/

@media screen and (min-width:768px) and (max-width: 1280px) {
    div#pickupnews {
        background: #ccc;
        padding: 8px;
        width: 100%;
        overflow: hidden;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 10;
    }

    div#pickupnews p {
        margin: 0;
        font-size: 0.55rem;
        line-height: 1.8;
    }
}

/*savvyリンク*/

.savvy-link {
    position: absolute;
    bottom: 18%;
    right: 3%;
    max-width: 200px;
    z-index: 10000;
}

@media screen and (max-width: 1280px) {
    .savvy-link {
        bottom: 25%;
        right: 4%;
        max-width: 130px;
    }
}

@media screen and (max-width: 500px) {
    .savvy-link {
        bottom: unset;
        top: 10%;
        right: 5%;
        max-width: 120px;
    }
}

/*六甲山・摩耶山紹介ページ新規*/
.rokko-maya-first-message {
    position: relative;
    color: #fff;
    width: 90%;
    max-width: 850px;
    margin: 0 auto;
    text-align: center;
}

.rokko-maya-first-message h1 {
    color: #fff;
    text-align: center;
    letter-spacing: 0.1rem;
    font-size: 5rem !important;
    font-weight: 600 !important;
    font-family: din-2014-narrow, sans-serif;
}

.rokko-maya-first-message h1 span {
    font-size: 0.8rem;
}

.rokko-maya-first-message p {
    font-size: 1rem;
    line-height: 2rem;
}

@media only screen and (min-width:728px) {
    .rokko-maya-first-message p {
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
}

.rokko-maya-first-message img {
    position: absolute;
    bottom: 0;
    left: 50%;
    text-decoration: none;
    color: #fff !important;
    transform: translateX(-50%);
    max-width: 200px;
}

.rokko-maya-imgbox {
    position: relative;
    height: 500px;
}

.rokko-maya-attractive-container h2 {
    font-family: din-2014-narrow, sans-serif;
    position: absolute;
    top: 50%;
    left: 50%;
    text-decoration: none;
    color: #fff !important;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
    margin-bottom: 0px;
    margin-top: 0px;
    font-size: 3.8rem;
    font-weight: 500;
    color: #008360;
    padding-bottom: 10px;
    border-bottom: none;
    letter-spacing: 0.1rem;
    font-weight: 700;
}

.rokko-maya-contents {
    text-decoration: none;
    color: #fff;
    width: 90%;
    margin: 0 auto;
    padding: 50px 0;
}

.rokko-maya-contents p {
    font-size: 1.1rem;
}

.rokko-maya-textbox {
    position: relative;
}

@media only screen and (min-width:728px) {
    .rokko-maya-textbox {
        height: 500px;
    }

    .rokko-maya-contents {
        position: absolute;
        padding: 50px;
        max-width: 600px;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
    }
}

.rokko-maya-contents h3 {
    color: #fff;
    text-align: center;
    font-size: 1.5rem;
}

@media only screen and (min-width:1180px) {
    .rokko-maya-contents h3 {
        font-size: 2rem;
    }
}

.rokko-maya-content-button {
    border-radius: 15px;
    width: 100%;
    margin: auto;
    background-color: #fff;
    color: #008360;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
    padding: 15px;
    display: block;
}

.rokko-maya-content-button:hover {
    border-radius: 15px;
    width: 100%;
    margin: auto;
    background-color: #008360;
    color: #fff;
}

.rokko-maya-under-h2 {
    font-size: 5rem !important;
    font-weight: 600 !important;
    font-family: din-2014-narrow, sans-serif;
    border-bottom: none !important;
    letter-spacing: 0.1rem;
}

.rokko-maya-place-img-box {
    text-align: center;
}

.rokko-maya-place-img-box a p {
    text-align: center;
    font-weight: 800;
    font-size: 0.8rem;
    color: #fff;
}

@media only screen and (min-width:1180px) {
    .rokko-maya-place-img-box a p {
        font-size: 1.2rem;
    }
}

.rokko-maya-mountimg {
    position: absolute;
    bottom: 0;
    left: 50%;
    text-decoration: none;
    color: #fff !important;
    transform: translateX(-50%);
    max-width: 200px;
}

.area-rokko-maya-box {
    width: 80%;
    margin: 0 auto;
}

/*六甲山紹介ページ*/


.catch_left {
    position: absolute;
    height: auto;
    top: 40%;
    right: 0;
    left: 20%;
    margin: auto;
    z-index: 10;
    color: #fff;
}

#mainimage .catch_left {
    width: 30%;
    max-width: 500px;
}

.catch_contents_rokko {
    width: 30%;
    text-shadow: 0px 0px 5px #000;
    font-weight: 600;
}

.catch_contents_rokko p {
    font-size: 1.1rem;
    line-height: 2;
    letter-spacing: 0.05rem;
    text-align: justify;
}

.catch_contents_rokko p span {
    background: rgba(0, 0, 0, 0.4);
}

.catch_contents_rokko h1 {
    font-family: din-2014-narrow, sans-serif;
    font-weight: 700;
    color: #fff;
    font-size: 5rem;
    letter-spacing: 0.1rem;
    text-align: center;
}



@media only screen and (max-width:1180px) {
    .catch_contents_rokko {
        width: 35%;
    }



    .catch_left {
        position: absolute;
        height: auto;
        top: 27%;
        right: 0;
        left: 10%;
        margin: auto;
        z-index: 10;
        color: #fff;
    }
}

@media only screen and (max-width:870px) {
    .catch_contents_rokko {
        width: 100%;
    }


    .catch_left {
        position: absolute;
        height: auto;
        top: 40%;
        right: 0;
        left: 0%;
        margin: auto;
        z-index: 10;
        color: #fff;
        padding: 50px;
    }

}

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


    .catch_left {
        position: absolute;
        height: auto;
        top: 20%;
        right: 0;
        left: 0%;
        margin: auto;
        z-index: 10;
        color: #fff;
        padding: 50px;
    }

}

@media only screen and (max-width:600px) {
    .rokko-maya-imgbox {
        position: relative;
        height: 250px;
    }
}

@media only screen and (min-width:1180px) {
    .road-list-box {
        position: absolute;
        top: 50%;
        left: 50%;
        text-decoration: none;
        /*
        color: #fff;*/
        transform: translateY(-50%) translateX(-50%);
        -webkit- transform: translateY(-50%) translateX(-50%);
    }

    .road-list-section-rokko {
        position: relative;
        height: 500px;
    }

    .road-list-section-maya {
        position: relative;
        height: 800px;
    }
}

.rokko-box-01 {
    background: url(images/rokko/new/rokko-randscape.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;

}

.rokko-box-02 {
    background: url(images/rokko/new/rokko-activity.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.rokko-box-03 {
    background: url(images/rokko/new/rokko-nightview.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.rokko-maya-place p {
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 51px;
}

.rokko-maya-place-img-box {
    width: 90%;
    margin: 0 auto;
    color: #fff;
}

@media only screen and (min-width:1180px) {
    .rokko-maya-place-img-box {
        width: 80%;
    }
}

.rokko-maya-place-img-box p:hover {
    color: #008360;
    transition: 0.5s;
}


.road-list-section-rokko {
    background: url(images/rokko/new/rokko-tozan-back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 50px;
}

.road-list-section-rokko h2 {
    text-align: center;
    font-size: 1.7rem;
    font-weight: 800;
    border-bottom: none;
    color: #fff !important;
    text-shadow: 0px 0px 5px #000;
    line-height: 1.3;
}

@media only screen and (min-width:1180px) {
    .road-list-section-rokko h2 {
        text-align: center;
        font-size: 2rem;
        font-weight: 800;
        border-bottom: none;
        color: #fff !important;
        text-shadow: 0px 0px 5px #000;
    }


}

.road-list-section-rokko p {
    color: #fff !important;
    line-height: 1.5rem;
    font-size: 1.2rem;
    text-shadow: 0px 0px 5px #000;
    font-weight: 600;
}

.rokko-maya-access {
    padding: 50px;
    text-align: center;
}

.rokko-maya-place-img-box img {
    max-width: 250px;
    padding: 10px;
    width: 100%;
}

.area-rokko-section {
    position: relative;
    padding-top: 50px;
}

@media only screen and (min-width:1180px) {
    .area-rokko-section {
        padding: 50px 0;
    }

}

.area-rokko-section h2 {
    text-align: center;
    font-size: 3rem !important;
    font-weight: 600 !important;
    font-family: din-2014-narrow, sans-serif;
    border-bottom: none !important;
    letter-spacing: 0.1rem;
    color: #fff !important;
    margin: 0;
    margin-bottom: 50px;
}

.area-img-box-3 {
    text-align: center;
}

.area-img-box-3:hover {
    opacity: 0.8;
    transition: 0.5s;
}

.area-img-box-3 p {
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
}


@media only screen and (min-width:1180px) {
    .area-img-box-3 img {
        width: 100%;
        padding: 10px;
    }

    .area-img-box-3 p {
        color: #fff;
        font-size: 1.2rem;
    }


}

.rokko-maya-access .rokko-access {
    border: 1px solid #00343A;
    padding: 20px;
    width: 100%;
    max-width: 400px;
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 auto;
    border-radius: 32px;
    color: #00343A;
}

.rokko-maya-access .rokko-access p {
    color: #00343A;
    margin-bottom: 0 !important;
    font-size: 1.2rem;
}

.rokko-maya-access .rokko-access:hover {
    background-color: #00343A;
    transition: 0.5s;
}

.rokko-maya-access .rokko-access p:hover {
    color: #fff;
}

p.rokko-maya-event-sub {
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 51px;
}

/*摩耶山*/

.catch_contents_maya {
    width: 30%;
    text-shadow: 0px 0px 5px #000;
    font-weight: 600;
}

.catch_contents_maya p {
    font-size: 1.1rem;
    line-height: 2;
    letter-spacing: 0.05rem;
    text-align: justify;
}

.catch_contents_maya p span {
    background: rgba(0, 0, 0, 0.4);
}

.catch_contents_maya h1 {
    font-family: din-2014-narrow, sans-serif;
    font-weight: 700;
    color: #fff;
    font-size: 5rem;
    letter-spacing: 0.1rem;
    text-align: center;
}

.catch_right img {
    margin-bottom: 20px;
    width: 330px;
}

.catch_right {
    position: absolute;
    height: auto;
    top: 40%;
    right: -50%;
    margin: auto;
    z-index: 10;
    color: #fff;
}

@media only screen and (max-width:1180px) {
    .catch_contents_maya {
        width: 22%;
    }

    .catch_right {
        position: absolute;
        height: auto;
        top: 30%;
        right: -108%;
        z-index: 10;
        color: #fff;
    }
}


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

    .catch_contents_maya {
        width: 100%;
    }

    .catch_right {
        position: absolute;
        height: auto;
        top: 34%;
        right: 0;
        left: 0%;
        margin: auto;
        z-index: 10;
        color: #fff;
        padding: 50px;
    }

}

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

    .catch_right {
        position: absolute;
        height: auto;
        top: 20%;
        right: 0;
        left: 0%;
        margin: auto;
        z-index: 10;
        color: #fff;
        padding: 50px;
    }

}

#mainimage .catch_right {
    width: 30%;
    max-width: 500px;
}



.maya-box-01 {
    background: url(images/maya/new/maya-randscape.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;

}

.maya-box-02 {
    background: url(images/maya/new/maya-activity.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.maya-box-03 {
    background: url(images/maya/new/maya-nightview.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.road-list-section-maya {
    background: url(images/maya/new/maya-tozan-back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 50px;
}

.road-list-section-maya h2 {
    text-align: center;
    font-size: 1.7rem;
    font-weight: 800;
    border-bottom: none;
    color: #fff !important;
    text-shadow: 0px 0px 5px #000;
    line-height: 1.3;
}

@media only screen and (min-width:1180px) {
    .road-list-section-maya h2 {
        text-align: center;
        font-size: 2rem;
        font-weight: 800;
        border-bottom: none;
        color: #fff !important;
        text-shadow: 0px 0px 5px #000;
    }
}


.road-list-section-maya p {
    color: #fff !important;
    line-height: 1.5rem;
    font-size: 1.2rem;
    text-shadow: 0px 0px 5px #000;
    font-weight: 600;
}

.rokko-maya-first-message-home {
    padding: 10px;
    text-align: center;
}

.rokko-maya-first-message-home p {
    color: #00aa6e;
    font-size: 1rem;
    font-weight: 600;
}

@media only screen and (min-width:1180px) {
    .rokko-maya-first-message-home p {
        color: #00aa6e;
        font-size: 1.8rem;
        font-weight: 600;
    }

}

@media only screen and (max-width:460px) {
    .catch_contents_rokkomaya p {
        font-size: 0.85rem;
        line-height: 2;
        letter-spacing: 0.05rem;
        text-align: justify;
    }
}

/* 2025年トップページ改修 */

/* ジャンルから探す */
.genre-header {
    color: #00AA6E;
    font-size: 1.35rem;
    font-weight: bold;
    text-align: center;
    padding-right: 15px;
    display: flex;
    align-items: center;
    white-space: nowrap;
    justify-content: center;
}

.genre-container {
    padding: 20px 10px 20px 10px;
    display: flex;
    align-items: center;
}

.category-box {
    border-radius: 8px;
    padding: 15px 10px;
    text-align: center;
    height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.2s;
}

.category-box:hover {
    transform: translateY(-3px);
}

.icon-placeholder {
    margin-bottom: 5px;
}

.icon-placeholder img {
    max-width: 70px;
    height: 50px;
    margin-bottom: 5px;
    text-align: center;
}

.category-name {
    font-size: 0.9rem;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 35px;
    line-height: 1.2;
}

.category-name p {
    margin-bottom: 0;
}

@media (max-width: 576px) {
    .genre-container {
        flex-direction: column;
    }

    .genre-header {
        text-align: center;
        padding-bottom: 10px;
    }

    .genre-container .col-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .category-box {
        height: 100px;
    }

    .icon-placeholder {
        width: 40px;
        height: 40px;
    }

    .category-name {
        font-size: 0.8rem;
    }


    .cotegory08-fz {
        font-size: 0.7em;
    }
}

/* 時間から探す */
.time-search-section {
    background: #00AA6E;
    padding: 20px 8px;
}

.time-header {
    color: #fff;
    font-size: 1.35rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
}

.time-box {
    background-color: white;
    border-radius: 10px;
    padding: 10px;
    align-items: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: transform 0.2s;
    justify-content: center;
}

.time-box:hover {
    transform: translateY(-3px);
}

.time-circle {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    font-weight: bold;
    color: white;
    margin-right: 10px;
}

.time-text {
    font-size: 0.9rem;
    color: #398162;
    font-weight: 600;
    line-height: 1.1;
}



@media (max-width:600px) {
    .time-circle {
        margin: 10px auto;
    }

    .time-text {
        font-size: 0.75rem;
        text-align: center;
    }
}

/* 詳細検索 */
.detailed-search-section {
    background-color: #74C8AA;
}

.detailed-search-section>div {
    max-width: 1140px;
    padding: 50px 25px;
    min-height: 100px;
    margin: auto;
}

.search-header {
    background-color: #00AA6E;
    color: white;
    padding: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    position: relative;
    font-weight: 600;
    border-radius: 5px 5px 0 0;
}

.search-header img {

    max-width: 200px;
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.dropdown-icon {
    position: absolute;
    right: 20px;
}

.search-form {
    background-color: white;
    padding: 20px;
}

.search-form-container .dropdown button,
.search-form-container .dropdown select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.8em;
    height: 50px;
    background: #fff;
    border: 1px solid #008360;
    border-radius: 0;
    padding: 0 35px;
    font-weight: 800;
}



.search-form-container .dropdown {
    position: relative;
    width: 100%;
}

@media screen and (min-width: 728px) {
    .search-form-container .dropdown {
        position: relative;
    }
}

.search-form-container .dropdown::before,
.search-form-container .dropdown::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.search-form-container .dropdown::before {
    right: 0;
    display: inline-block;
    width: 2.8em;
    height: 2.8em;
    border-radius: 0 3px 3px 0;
    background-color: #00AA6E;
    content: '';
}

.search-form-container .dropdown::after {
    position: absolute;
    top: 50%;
    right: 1.4em;
    transform: translate(50%, -50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
}

.search-form-container .dropdown select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    height: 45px;
    border: 2px solid #00AA6E;
    border-radius: 3px;
    font-size: 1em;
    cursor: pointer;
}


.search-form-container .dropdown:focus {
    outline: 1px solid #00AA6E;
}



.search-form-container {
    max-width: 1000px;
    margin: 0 auto;
}

.btn-search {
    background-color: #398162;
    color: white;
    border: none;
    padding: 20px;
    border-radius: 3px;
    font-size: 0.9em;
    font-weight: 600;
}

.btn-search:hover {
    background-color: #00aa6e;
    color: #fff;
}

.btn-reset {
    background-color: #f0f0f0;
    color: #398162;
    border: none;
    padding: 20px;
    border-radius: 3px;
    font-size: 0.9em;
    font-weight: 600;
}

.search-form-container .dropdown .dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: 0.5em solid;
    border-right: .5em solid transparent;
    border-bottom: 0;
    border-left: .5em solid transparent;
    color: #008360;
}

.detailed-search-section .dropdown-menu {
    background-color: #fff !important;
    padding: 10px 0;
    border-radius: 10px;
}

.detailed-search-section .dropdown-item {
    color: #008360;
}

.detailed-search-section .dropdown-item:hover {
    background-color: #f0f0f0;
}

@media (min-width:768px) {
    .detailed-search-section>div {
        min-height: 100px;
        padding: 90px 50px 50px 50px;
    }
}


@media (max-width:600px) {
    .search-header img {
        max-width: 120px;
        position: absolute;
        bottom: 30px;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
    }
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
    .category-box {
        height: 100px;
        padding: 10px 5px;
        margin-bottom: 10px;
    }

    .icon-placeholder {
        display: flex;
        justify-content: center;
        height: 20px;
        margin-bottom: 5px;
    }

    .icon-placeholder img {
        max-width: 50px;
        height: 44px;
        margin-bottom: 5px;
        justify-content: center;
    }



    .category-name {
        font-size: 0.7rem;
        align-items: flex-end;
        height: 40px;
    }

    .time-box {
        margin-bottom: 10px;
    }

}

/* 新セクション */

/* コンテンツボックス */
.rokko-content-box {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    padding: 40px;
}

.rokko-content-inner {
    width: 90%;
    max-width: 500px;
}

.rokko-image-container {
    padding: 0;
    overflow: hidden;
}

.rokko-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* カラースキーム */
.rokko-yellow-bg {
    background-color: #FFD24C;
}

.rokko-green-bg {
    background-color: #00856F;
    color: white;
}

.rokko-green-bg.rokko-dark {
    background-color: #006B58;
}

/* タイポグラフィ */
.rokko-heading {
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 30px;
    color: #398162;
    line-height: 1.3;
}


/* サポート情報セクション */
.rokko-support-info {
    padding-top: 20px;
}

.rokko-support-text {
    font-size: 14px;
    margin-bottom: 15px;
}

.rokko-support-logos {
    display: flex;
    align-items: center;
}

.rokko-support-logo {
    height: 40px;
    margin-right: 20px;
}

/* モバイル向けレスポンシブ調整 */
@media (max-width: 767.98px) {
    .rokko-grid {
        display: flex;
        flex-direction: column;
    }

    /* モバイル表示用の要素の順序調整 */
    .rokko-grid .rokko-image-container:nth-child(1) {
        order: 1;
    }

    .rokko-grid .rokko-content-box:nth-child(2) {
        order: 2;
    }

    .rokko-grid .rokko-content-box:nth-child(3) {
        order: 4;
    }

    .rokko-grid .rokko-image-container:nth-child(4) {
        order: 3;
    }

    .rokko-grid .rokko-image-container:nth-child(5) {
        order: 5;
    }

    .rokko-grid .rokko-content-box:nth-child(6) {
        order: 6;
    }

    .rokko-content-box {
        min-height: 200px;
        padding: 30px 20px;
    }

    .rokko-heading {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .rokko-content-inner {
        width: 90%;
        text-align: center;
    }
}

/* 神戸の山マップ */

.top-kobemount-map-container {

    background-color: #74C8AA;
    position: relative;
}

.top-kobemount-map-box {
    width: 80%;
    border-radius: 20px;
    margin: 0 auto;
    position: relative;
    padding: 50px 0;
    max-width: 1200px;
}

.kobemount-map-woman {
    position: absolute;
    right: 20px;
    bottom: 20px;
    max-width: 40px;
}

/* フッターセクションのスタイル */
.search-footer-section {
    color: white;
    border-top: 1px solid #fff;
}

.footer-block {
    padding: 2rem;
    height: 100%;
}


.footer-title {
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
    font-weight: normal;
    text-align: center;
    color: #fff;
}

.footer-links {
    flex-direction: column;
    gap: 0.5rem;
}

.footer-link-box {
    display: inline-block;
    padding: 0.5rem 1rem;
    text-decoration: none;
    color: white;
    font-size: 0.9rem;
    text-align: left;
    transition: all 0.3s ease;
}

.footer-link-box:hover {
    opacity: 0.9;
    color: white;
    transform: translateY(-2px);
}

.footer-nav {
    background-color: #276453;
    padding: 1rem 0;
}

.footer-nav-link {
    display: block;
    height: 40px;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
}

.footer-nav .col:last-child .footer-nav-link {
    border-right: none;
}



/* レスポンシブ対応 */
@media (min-width:768px) {

    .footer-block:first-child {
        border-right: 1px solid #fff;
    }
}

@media (max-width: 768px) {
    .footer-block {
        padding: 1.5rem;
    }

    .footer-title {
        font-size: 1rem;
        margin-bottom: 1rem;
    }

    .footer-link-box {
        padding: 0.4rem 0.8rem;
        font-size: 0.8rem;
    }
}

@media (max-width: 576px) {
    .footer-block {
        padding: 1rem;
    }

    .footer-links {
        gap: 0.3rem;
    }

    .footer-link-box {
        padding: 0.3rem 0.6rem;
        font-size: 0.7rem;
    }

    .block-first {
        border-bottom: 1px solid #fff;
    }
}

/* カテゴリーサーチ一覧 */

.category-search-list {
    background-color: #74C8AA;
    padding: 50px 10px;
}

/* カードのスタイル */
.category-search-list .card {
    border: none;
    border-radius: 5px;
    margin-bottom: 20px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    position: relative;
    height: 95%;
}

.category-search-list .card-img-container {
    position: relative;
}

.category-search-list .card-img-top {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    height: 180px;
    object-fit: cover;
}

.category-search-list .card-body {
    padding: 15px;
}

.category-search-list .card-title {
    margin-bottom: 5px;
    letter-spacing: 0;
    font-size: 1rem;
    font-weight: bold;
    padding: 10px 0;
    line-height: 1.2;
}

.category-search-list .card-text {
    font-size: 0.8rem;
    color: #666;
}

.category-search-list .card-footer {
    background-color: white;
    border-top: none;
    padding: 0 15px 15px;
    display: flex;
    justify-content: flex-end;
}

/* カテゴリータグ */
.category-search-list .genre-tags-container {
    display: flex;
    flex-wrap: wrap;
    max-width: 75%;
}

.category-search-list .category-tag {
    font-size: 0.7rem;
    border-radius: 3px;
    margin-right: 5px;
    margin-bottom: 4px;
    /* 下部にマージンを追加 */
    display: inline-block;
    white-space: nowrap;
    /* 各タグ内では改行しない */
    padding: 4px 8px;
}

.category-search-list .subcategory-tag {
    font-size: 0.7rem;
    padding: 2px 6px;
    border-radius: 3px;
    background-color: #f0f0f0;
    color: #666;
    margin-right: 5px;
    line-height: 1;
    text-align: center;
}

.category-search-list .tag-container {
    position: absolute;
    bottom: 10px;
    left: 10px;
    z-index: 10;
    display: flex;
    align-items: end;
    width: 92%;
    justify-content: space-between;
}

.duration-tags-container {
    display: flex;
    flex-direction: column;
    gap: 4px;
    /* タグ間の間隔 */
}

.duration-tags-container .subcategory-tag {
    margin: 2px 0;
    /* 上下の余白 */
}

/* 時間情報 */
.category-search-list .time-info {
    font-size: 0.7rem;
    color: #999;
}

@media (max-width: 768px) {

    .category-search-list .subcategory-tag {
        font-size: 0.6rem;
        padding: 2px 3px;
        margin-right: 3px;
    }

    .category-search-list .card-body {
        padding: 7.5px;
    }

    .category-search-list .category-tag {
        font-size: 0.6rem;
        padding: 2px 3px;
        margin-right: 2px;
        line-height: 1;
    }
}


.one-hour-border,
.hour-border-1hours {
    border: 1px solid #00AA6E;
}

.two-hour-border,
.hour-border-2hours {
    border: 1px solid #FF5C8A;
}

.four-hour-border,
.hour-border-4hours {
    border: 1px solid #FFC745;
}

.eight-hour-border,
.hour-border-8hours {
    border: 1px solid #FF755A;
}

.stay-border,
.hour-border-stay {
    border: 1px solid #F5630F;

}

/* 選択タグ */
.category-selected {
    border-radius: 5px;
    border: 1px solid #fff;
    color: #fff !important;
    padding: 5px 10px;
    font-size: 0.8rem;
    margin: 2px;
}

.category-selected:hover {
    background: #00aa6e;
}

/* ページネーション */
.category-search-list .pagination {
    justify-content: center;
    margin-top: 30px;
}

.category-search-list .page-link {
    color: #156c5b;
    border: 1px solid #dee2e6;
}

.category-search-list .page-item.active .page-link {
    background-color: #156c5b;
    border-color: #156c5b;
}

.category-search-list .page-item.disabled .page-link {
    color: #6c757d;
}