﻿@charset "UTF-8";
@import "base.css";
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');

@font-face {
    font-family: 'UTM Cafeta';
    src: url('../font/UTMCafeta.eot');
    src: url('../font/UTMCafeta.eot?#iefix') format('embedded-opentype'), url('../font/UTMCafeta.woff2') format('woff2'), url('../font/UTMCafeta.woff') format('woff'), url('../font/UTMCafeta.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
    --f-main: "Manrope", sans-serif;
    --f-utm: 'UTM Cafeta';
    --txt: #181818;
    --mcolor: #D6A651;
    --scolor: #0A3921;
    --blue: #3ac0d1;
}

h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
    font-size: 16px;
    -webkit-text-size-adjust: none;
}

header, section, footer, aside, nav, main, article, figure {
    display: block;
}

img {
    vertical-align: bottom;
}

a {
    color: var(--mcolor);
    transition: all 0.3s;
}

    a:hover, a:active {
        text-decoration: none;
    }

table {
    width: 100%
}

p {
    margin: 0 0 1.5em;
}

.section {
    padding: 0 0 30px;
}

p, dd, td, th, li {
    line-height: 1.9em;
}

#totop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10;
    margin-bottom: 0;
    width: 80px;
}

    #totop a {
        display: block;
        transition: all 0.5s;
    }

        #totop a:hover {
            opacity: 0.7;
        }

.btn_fixed {
    position: fixed;
    right: 20px;
    bottom: 250px;
    z-index: 10;
    margin: 0;
}

    .btn_fixed a {
        display: block;
        margin-bottom: 33px;
    }

@-webkit-keyframes slide-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
}

@keyframes slide-top {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
}

.bold {
    font-weight: bold;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

*, *:before, *:after {
    box-sizing: border-box;
    outline: none;
}
/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
html {
    background: #F6F4E9;
}

body {
    color: var(--txt);
    font-family: var(--f-main);
}

#wrapper {
    min-width: 1200px;
    overflow: hidden;
}

.container {
    width: 1690px;
    max-width: 100%;
    padding: 0 15px;
    margin: 0 auto;
    position: relative;
}

img {
    max-width: 100%;
}

.sp {
    display: none;
}

.h_box {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding: 15px 0;
    z-index: 10;
    background: #f6f4e9;
}

    .h_box .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

h1 {
    display: none;
}

.logo {
    margin: 0;
    width: 160px;
}

.gnavi {
    display: flex;
}

    .gnavi > li > a {
        font-size: 32px;
        font-family: var(--f-utm);
        color: #000;
        text-decoration: none;
        position: relative;
        padding: 15px 0;
    }

        .gnavi > li > a:after {
            content: '';
            position: absolute;
            width: 90%;
            height: 2px;
            left: 5%;
            bottom: 0;
            transition: all 0.3s;
            background: #000;
            transform: scale(0,1);
        }

    .gnavi > li:hover > a:after, .gnavi > li.active > a:after {
        transform: scale(1,1);
    }

.h_right {
    display: flex;
	z-index: 5;
}

.gnavi > li {
    margin: 0 16px;
}

.h_right li a {
    background: var(--scolor);
    color: #fff;
    font-family: var(--f-utm);
    text-transform: uppercase;
    font-size: 32px;
    display: flex;
    align-items: center;
    border-radius: 24px;
    padding: 10px 22px;
    text-decoration: none;
    height: 64px;
    box-shadow: 0px 0px 0px 2px rgba(28,69,59,0.2),inset 0px 2px 4px 0px rgba(255,255,255,0.25),inset 0px -4px 4px 0px rgba(0,0,0,0.25);
}

.h_right li:not(:last-child) {
    margin-right: 15px;
}

.h_right li a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("/assets/images/h_ic1.svg") no-repeat center center/100% auto;
    width: 32px;
    height: 32px;
    margin-right: 10px;
}

.h_right li a:hover {
    background-color: rgba(28,69,59,0.8);
}

.mv_main {
    background: url("/assets/images/mv_img1.jpg") no-repeat top 42% left/130% auto;
    -webkit-mask-image: url("/assets/images/mv_img1.png");
    mask-image: url("/assets/images/mv_img1.png");
    mask-repeat: no-repeat;
    height: 740px;
    position: relative;
    z-index: 2;
    color: #fff;
    display: flex;
    align-items: center;
}

    .mv_main:after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: #000;
        opacity: 0.3;
        pointer-events: none;
        z-index: -1;
    }

.main_ttl {
    margin: 0;
    font-size: 32px;
    font-family: var(--f-utm);
    line-height: 1em;
}

    .main_ttl .lager {
        display: block;
        font-size: 124px;
        line-height: 0.9em;
        margin-top: 3px;
    }

.mainvisual {
    position: relative;
    margin: 0 0 35px;
}

.mv_scroll {
    margin: 0;
    position: absolute;
    text-align: center;
    color: #fff;
    right: 130px;
    bottom: 150px;
    z-index: 3;
    width: 107px;
    line-height: 1.5em;
}

    .mv_scroll:before {
        content: '';
        position: relative;
        display: block;
        background: url("/assets/images/ic_scroll.svg") no-repeat center center/100% auto;
        width: 19px;
        height: 40px;
        margin: 0 auto;
    }

    .mv_scroll:after {
        content: '';
        position: absolute;
        width: 2px;
        height: 5px;
        background: #fff;
        border-radius: 3px;
        top: 3px;
        left: calc(50% - 1px);
        animation: scrollbtn 1.5s infinite;
    }

@keyframes scrollbtn {
    0% {
        transform: translate(0, 0);
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    100% {
        transform: translate(0, 12px);
        opacity: 0;
    }
}

.mv_bnr {
    margin: 0;
    /*position: absolute;
    bottom: -80px;*/
	position: fixed;
    bottom: 20px;
    left: 10px;
    z-index: 999;
    width: 186px;
}

.mv_nav {
    display: flex;
    justify-content: center;
}

    .mv_nav > li > a {
        font-size: 32px;
        font-family: var(--f-utm);
        color: var(--txt);
        text-decoration: none;
        position: relative;
        padding: 15px 0;
    }

    .mv_nav > li:hover > a {
        color: var(--scolor);
    }

    .mv_nav > li {
        padding: 0 35px;
        position: relative;
    }

        .mv_nav > li:not(:last-child):after {
            content: '';
            position: absolute;
            width: 2px;
            height: 40px;
            background: #D9D9D9;
            right: 0;
            top: calc(50% - 20px);
        }

.sec01 {
    padding: 60px 0 0;
}

.idx_ttl {
    font-size: 32px;
    line-height: 0.98em;
    font-family: var(--f-utm);
    margin: 0 0 94px;
}

    .idx_ttl .small {
        color: var(--mcolor);
    }

    .idx_ttl .lager {
        display: block;
        color: var(--txt);
        font-size: 225%;
        line-height: 0.98em;
        text-transform: uppercase;
    }

.sec01 .idx_ttl {
    width: 60%;
    max-width: 960px;
    margin: 0;
}

.sec01_img {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: -243px 0 0 auto;
    width: 82%;
    max-width: 1380px;
    height: 996px;
}

    .sec01_img .img {
        border-radius: 24px;
        overflow: hidden;
        display: flex;
        justify-content: center;
        align-content: center;
        height: 705px;
    }

        .sec01_img .img img {
            height: 100%;
            width: 100%;
            object-fit: cover;
        }

        .sec01_img .img:nth-child(2) {
            width: 49%;
            max-width: 673px;
        }

        .sec01_img .img:nth-child(1) {
            width: 39%;
            max-width: 532px;
            margin: auto 0 0 0;
        }

.sec01_txt {
    width: 40%;
    max-width: 673px;
    margin: -119px 0 0 auto;
    text-align: justify;
    letter-spacing: -0.025em;
}

.sec02 {
    background: url("/assets/images/sec02_bg1.png") repeat-x top center;
    margin-top: -80px;
    padding: 110px 0 0;
}

    .sec02 .idx_ttl {
        text-align: center;
    }

.sec02_main {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: flex-start;
}

.sec02_info {
    width: 50%;
    padding-right: 60px;
}

.sec02_txt p {
    text-align: justify;
    margin-bottom: 1.78em;
}

    .sec02_txt p:last-child {
        margin-bottom: 0;
    }

.sec02_txt {
    margin-bottom: 48px;
}

.sec02_img {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

    .sec02_img .img {
        width: calc(50% + 10px);
        border-radius: 24px;
        overflow: hidden;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 705px;
    }

        .sec02_img .img img {
            object-fit: cover;
            width: 100%;
            height: 100%;
        }

        .sec02_img .img:nth-child(1) {
            margin: 127px -20px 0 0;
        }

.btn a {
    width: 152px;
    height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 20px;
    font-family: var(--f-utm);
    color: #fff;
    background: var(--scolor);
    border-radius: 40px;
    text-decoration: none;
}

    .btn a:after {
        content: '';
        position: relative;
        display: inline-block;
        background: url("/assets/images/ic_arr.svg") no-repeat center center/100% auto;
        width: 24px;
        height: 12px;
        margin: 0 0 0 10px;
    }

    .btn a:hover {
        background-color: var(--mcolor);
    }

.btn.center a {
    margin: 0 auto;
}

.btn {
    margin: 0;
}

.sec03 {
    background: url("/assets/images/sec02_bg1.png") repeat-x top center;
    margin-top: -80px;
    padding: 100px 0 70px;
}

    .sec03 .idx_ttl {
        text-align: center;
        margin-bottom: 48px;
    }

.sec03_list {
    display: flex;
}

.sec03_item {
    width: calc((100% - 64px)/3);
    margin: 0 32px 0 0;
}

    .sec03_item:last-child {
        margin-right: 0;
    }

    .sec03_item a {
        position: relative;
        display: block;
    }

    .sec03_item .img {
        height: 340px;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
        border-radius: 24px;
        margin: 0;
    }

        .sec03_item .img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: all 0.3s;
        }

    .sec03_item a:hover .img img {
        transform: scale(1.1);
    }

    .sec03_item .counter-block .counter-caption {
        font-size: 9px;
        text-align: center;
        text-transform: uppercase;
        color: #fff;
    }

    .sec03_item .counter-block .counter .number {
        font-size: 56px;
        background: transparent;
        line-height: 56px;
        text-align: center;
        font-weight: 400;
        font-family: var(--f-main);
        color: #fff;
    }
	.sec03_item .Counter {
        font-size: 56px;
        background: transparent;
        text-align: center;
        font-weight: 400;
        font-family: var(--f-main);
        color: #fff;
    }
    .sec03_item .counter-block .counter {
        width: 65px;
        height: 56px;
        font-weight: 400;
        margin: 0 0 -3px;
    }

    .sec03_item .counter-group {
        margin: 0;
    }

.sec03_item_main {
    position: absolute;
    left: 28px;
    bottom: 30px;
    color: #fff;
}

.sec03_item .info {
    font-size: 12px;
    line-height: 1.5em;
    margin: 0 0 12px;
}

    .sec03_item .info .lager {
        display: block;
        font-size: 17px;
        font-weight: 700;
    }

.sec03_item a:after {
    content: '';
    position: absolute;
    width: 88px;
    height: 35px;
    background: url("/assets/images/ic_arr.svg") no-repeat center center var(--scolor);
    border-radius: 30px;
    right: 45px;
    bottom: 34px;
    transition: all 0.3s;
}

.sec03_item a:hover:after {
    background-color: var(--mcolor);
}

.sec04 .idx_ttl {
    margin: 0 0 7px;
    font-size: 48px;
    position: absolute;
    left: 237px;
    top: 0;
}
/*theme default*/
.sec04_theme_default {
    background: url("/assets/images/sec04_bg1.png") no-repeat top center;
    padding: 50px 0;
}

    .sec04_theme_default .container {
        width: 1854px;
        display: flex;
        align-items: center;
    }

.sec04_theme_default_thumb {
    width: 110px;
    flex-shrink: 0;
    margin-right: 113px;
}

    .sec04_theme_default_thumb.slick-initialized .slick-slide {
        border: 4px solid transparent;
        border-radius: 16px;
        padding: 7px;
        transition: all 0.3s;
        cursor: pointer;
    }

        .sec04_theme_default_thumb.slick-initialized .slick-slide.slick-current {
            border-color: var(--scolor);
            cursor: default;
        }

        .sec04_theme_default_thumb.slick-initialized .slick-slide:hover {
            border-color: var(--scolor);
        }

        .sec04_theme_default_thumb.slick-initialized .slick-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

    .sec04_theme_default_thumb .item {
        height: 52px;
        display: flex;
        justify-content: center;
        align-content: center;
        overflow: hidden;
        border-radius: 8px;
    }

.sec04_theme_default_main {
    width: calc(100% - 223px);
}

    .sec04_theme_default_main.slick-initialized .sec04_theme_default_item {
        display: flex;
        align-items: flex-start;
    }

.sec04_theme_default_item_img {
    flex-shrink: 0;
    margin: 0 130px 0 0;
    width: 224px;
}

.sec04_theme_item_info {
    width: 490px;
    order: -1;
    margin-right: 229px;
    margin-top: 55px;
}

.sec04_theme_item_ttl,
.sec04_theme_item_info h2 {
    font-size: 32px;
    color: var(--scolor);
    font-family: var(--f-utm);
    line-height: 1.5em;
    margin: 0 0 11px;
}

.sec04_theme_item_list {
    max-width: 376px;
    margin-top: 100px;
}

    .sec04_theme_item_list dl {
        position: relative;
        margin: 0 0 40px;
        padding: 0 0 0 95px;
    }

        .sec04_theme_item_list dl:last-child {
            margin-bottom: 0;
        }

        .sec04_theme_item_list dl:before {
            content: '';
            position: absolute;
            background: url("/assets/images/sec04_ic1.svg") no-repeat center center/100% auto;
            width: 80px;
            height: 80px;
            left: 0;
            top: calc(50% - 40px);
        }

    .sec04_theme_item_list dt {
        font-size: 150%;
        font-family: var(--f-utm);
        color: var(--scolor);
        margin: 0 0 5px;
    }

    .sec04_theme_item_list dl:nth-child(2):before {
        background-image: url("/assets/images/sec04_ic2.svg");
    }

    .sec04_theme_item_list dl:nth-child(3):before {
        background-image: url("/assets/images/sec04_ic3.svg");
    }

.slick-arrow {
    width: 88px;
    height: 35px;
    background: url("/assets/images/ic_arr.svg") no-repeat center center var(--scolor);
    border-radius: 30px;
    position: absolute;
    border: none;
    cursor: pointer;
    transition: all 0.3s;
    bottom: 230px;
    z-index: 3;
    text-indent: -500000px;
}

.slick-next {
    left: calc(50% + 530px);
}

.slick-prev {
    left: calc(50% + 430px);
    background-image: url("/assets/images/ic_prev.svg");
}

.slick-arrow:hover {
    background-color: rgba(28,69,59,0.7);
}

/*theme singer*/
.sec04_theme_singer_list.slick-initialized .slick-slide {
    position: relative;
    height: 807px;
    padding: 0 15px;
}
.sec04_theme_singer_item_img{
	flex-shrink: 0;
    margin: 0 60px 0 60px;
    width: 224px;
}
/*.sec04_theme_singer_item_img {
    margin: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: -2;
    pointer-events: none;
}*/

    .sec04_theme_singer_item_img .sp {
        display: none;
    }

    .sec04_theme_singer_item_img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.sec04_theme_singer_item .sec04_theme_item_info {
    order: 2;
    width: 832px;
    margin: 0 0 0 18px;
}

.sec04_theme_singer_item_main {
    display: flex;
    width: 1752px;
    margin: 0 auto;
    max-width: 100%;
    height: 100%;
    padding-top: 160px;
}

.sec04_theme_singer .idx_ttl {
    z-index: 2;
    left: calc(50% - 133px);
    top: 100px;
}

.sec04_theme_singer {
	background: url("../images/sec04_theme_single_bg.png") no-repeat top center;
    position: relative;
}

.sec04_theme_item_txt p {
    text-align: justify;
}

.sec04_theme_singer_list .slick-arrow {
    bottom: 80px;
}

.sec04_theme_singer_list .slick-prev {
    left: calc(50% - 133px);
}

.sec04_theme_singer_list .slick-next {
    left: calc(50% - 33px);
}
.sec04_theme_singer_item .sec04_theme_item_list{order:-1;}

/*theme multi*/
.sec04_theme_multi {
    background: url("/assets/images/sec04_theme_multi.jpg") no-repeat center center/cover;
    padding: 64px 0;
}

.sec04_theme_multi_row {
    display: flex;
    margin: 0 0 24px;
    justify-content: space-between;
}

    .sec04_theme_multi_row:last-child {
        margin-bottom: 0;
    }

.sec04_theme_multi_item {
    width: calc(25% - 18px);
}

    .sec04_theme_multi_item.item_full {
        width: calc(50% - 13px);
    }

    .sec04_theme_multi_item a {
        position: relative;
        height: 330px;
        border-radius: 16px;
        overflow: hidden;
        display: block;
        z-index: 2;
        padding: 30px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-end;
        text-decoration: none;
    }

.sec04_theme_multi_item_img {
    margin: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
}

    .sec04_theme_multi_item_img img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.sec04_theme_multi_item_txt {
    margin: 0;
    color: #fff;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-align: justify;
}

.sec04_theme_multi_item_ttl {
    font-size: 48px;
    font-family: var(--f-utm);
    margin: 0 0 10px;
}

.sec04_theme_multi_item_main {
    opacity: 0;
    transition: all 0.3s;
    position: relative;
    z-index: 2;
}

.sec04_theme_multi_item a:hover .sec04_theme_multi_item_main {
    opacity: 1;
}

.sec04_theme_multi_item a:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 16px;
    pointer-events: none;
    border: 7px solid #B9802A;
    background: rgb(44 77 60 / 57%);
    opacity: 0;
    transition: all 0.3s;
}

.sec04_theme_multi_item a:hover:after {
    opacity: 1;
}

/*theme edge*/
.sec04_theme_edge {
    background: url("/assets/images/sec04_theme_edge.jpg") no-repeat center center/cover;
}

    .sec04_theme_edge .container {
        width: 1854px;
    }

.sec04_theme_edge_main {
    display: flex;
}

.sec04_theme_edge_thumb {
    width: 110px;
    flex-shrink: 0;
    position: absolute !important;
    top: 280px;
    z-index: 3;
}

    .sec04_theme_edge_thumb.slick-initialized .slick-slide {
        border: 4px solid transparent;
        border-radius: 16px;
        padding: 7px;
        transition: all 0.3s;
        cursor: pointer;
    }

        .sec04_theme_edge_thumb.slick-initialized .slick-slide.slick-current {
            border-color: var(--scolor);
            cursor: default;
        }

        .sec04_theme_edge_thumb.slick-initialized .slick-slide:hover {
            border-color: var(--scolor);
        }

        .sec04_theme_edge_thumb.slick-initialized .slick-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

    .sec04_theme_edge_thumb .item {
        height: 52px;
        display: flex;
        justify-content: center;
        align-content: center;
        overflow: hidden;
        border-radius: 8px;
    }

.sec04_theme_edge_list {
    width: 100%;
}

    .sec04_theme_edge_list.slick-initialized .slick-slide {
        padding: 145px 45px 50px 190px;
    }

.sec04_theme_edge_item_info {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: flex-end;
}

.sec04_theme_edge_item_img {
    margin: -200px 0 0;
    flex-shrink: 0;
    width: 761px;
}

.sec04_theme_edge .idx_ttl {
    left: calc(50% + 38px);
    top: 140px;
}

.sec04_theme_edge_item .sec04_theme_item_info {
    width: auto;
    flex: 1;
    margin-right: 0;
}

.sec04_theme_edge_item .sec04_theme_item_list {
    max-width: 100%;
    margin: 0 0 0 -190px;
    display: flex;
}

    .sec04_theme_edge_item .sec04_theme_item_list dl {
        margin: 0 20px 0 0;
        max-width: 380px;
    }

.sec04_theme_item_list dd {
    text-align: justify;
}

.sec04_theme_edge_list .slick-arrow {
    bottom: 50px;
}

.sec04_theme_edge_list .slick-next {
    right: 50px;
    left: auto;
}

.sec04_theme_edge_list .slick-prev {
    right: 150px;
    left: auto;
}

.sec04_theme_classic {
    background: url("/assets/images/sec04_theme_classic.jpg") no-repeat center bottom/cover;
    padding: 50px 0;
}

    .sec04_theme_classic .container {
        width: 1854px;
        display: flex;
        align-items: center;
    }

    .sec04_theme_classic .sec04_theme_item_info {
        width: 611px;
        margin-right: 109px;
    }

    .sec04_theme_classic .slick-arrow {
        bottom: 90px;
    }

.sec05 {
    background: url("/assets/images/sec02_bg1.png") repeat-x top center;
    padding: 110px 0 0;
}

    .sec05 .idx_ttl {
        text-align: center;
        margin: 0 0 45px;
    }

.sec05_main {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.sec05_map {
    width: 70%;
    margin-right: 32px;
    position: relative;
}

.sec05_map_frame {
    height: 440px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0px 0px 4px 2px rgba(1,18,89,0.25);
    display: flex;
    justify-content: center;
    align-items: center;
}

    .sec05_map_frame iframe {
        height: 100%;
        width: 100%;
    }

.sec05_form {
    width: 437px;
    position: absolute;
    right: 29px;
    top: 29px;
    display: flex;
    align-items: center;
    height: 40px;
    background: #fff;
    border-radius: 40px;
    box-shadow: 0px 0px 4px 2px rgba(1,18,89,0.25);
    z-index: 9999;

}

    .sec05_form input {
        border: none;
        padding: 0 0 0 26px;
        background: none;
        width: 100%;
    }

    .sec05_form button {
        flex-shrink: 0;
        width: 45px;
        border-top-right-radius: 40px;
        border-bottom-right-radius: 40px;
        background: url("/assets/images/ic_search.svg") no-repeat center center var(--scolor);
        cursor: pointer;
        transition: all 0.3s;
        height: 100%;
        border: none;
    }

        .sec05_form button:hover {
            background-color: var(--txt);
        }

.sec05_info {
    flex: 1;
}

.sec05_info_list {
    display: flex;
    justify-content: space-between;
    margin: 0 0 10px;
}

    .sec05_info_list li {
        font-size: 20px;
        position: relative;
        font-family: var(--f-utm);
        cursor: pointer;
    }

        .sec05_info_list li .ttl {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 44px;
            padding: 0 30px;
            cursor: pointer;
            background: var(--scolor);
            color: #fff;
            border-radius: 40px;
            transition: all 0.3s;
        }

            .sec05_info_list li .ttl:after {
                content: '';
                position: relative;
                display: inline-block;
                background: url("/assets/images/ic_down.svg") no-repeat center center/100% auto;
                width: 16px;
                height: 16px;
                margin-left: 10px;
            }

    .sec05_info_list .list {
        position: absolute;
        left: 0;
        top: 44px;
        z-index: 2;
        background: #fff;
        width: 100%;
        border-radius: 16px;
        padding: 10px 20px;
        display: none;
    }

    .sec05_info_list li:hover .ttl {
        background-color: var(--mcolor);
    }

    .sec05_info_list .list li:hover {
        color: var(--scolor);
    }

.sec05_info_ttl {
    font-size: 36px;
    font-family: var(--f-utm);
    line-height: 1em;
    margin: 0 0 10px;
}

.sec05_info_item_add {
    background: #D6A651;
    border-radius: 16px;
    padding: 10px 16px;
    font-size: 11px;
    line-height: 1.5em;
    color: var(--scolor);
    margin: 0 0 11px;
    min-height: 77px;
    display: flex;
    flex-direction: column;
    justify-content: center;
	cursor: pointer;
}

    .sec05_info_item_add .ttl {
        font-size: 200%;
        font-family: var(--f-utm);
        line-height: 1em;
        margin: 0 0 10px;
    }

    .sec05_info_item_add:last-child {
        margin-bottom: 0;
    }

.sec05_info_item {
    height: 341px;
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: #ccc transparent;
}

    .sec05_info_item::-webkit-scrollbar {
        width: 12px;
    }

    .sec05_info_item::-webkit-scrollbar-track {
        background: transparent;
        border-radius: 10px;
    }

    .sec05_info_item::-webkit-scrollbar-thumb {
        background-color: #ccc;
        border-radius: 10px;
    }
	
.sec05_info_item_add {
    cursor: pointer;
}

.sec05_info_item_add.active {
    background: var(--scolor);
    color: #fff;
}
.sec06 {
    padding: 60px 0 0;
    background: url("/assets/images/sec02_bg1.png") repeat-x bottom 20px center;
}

    .sec06 .idx_ttl {
        text-align: center;
    }

.sec06_list {
    margin: 0 -16px 70px;
}

    .sec06_list.slick-initialized .slick-slide {
        margin: 0 16px;
        position: relative;
    }

.sec06_item_img a {
    height: 300px;
    border-radius: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    margin: 0 0 20px
}

.sec06_item_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s;
}

.sec06_item_info {
    display: flex;
    align-items: center;
    color: #8E8E8E;
    margin-bottom: 15px;
}

    .sec06_item_info:before {
        content: '';
        position: relative;
        display: inline-block;
        width: 37px;
        height: 3px;
        background: #181818;
        margin: 0 20px 0 0;
    }

    .sec06_item_info .date {
        position: relative;
        padding-left: 15px;
    }

        .sec06_item_info .date:before {
            content: '';
            position: absolute;
            width: 4px;
            height: 4px;
            background: #8E8E8E;
            border-radius: 50%;
            left: 0;
            top: 15px;
        }

.sec06_item_ttl {
    width: 238px;
    font-size: 24px;
    font-family: var(--f-utm);
    line-height: 1.2em;
    text-align: justify;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.sec06_itm_des {
	font-size: 16px;
	text-align: justify;
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.sec06_item .btn {
    position: absolute;
    top: 320px;
    right: 0;
}

.slick-dots {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

    .slick-dots li button {
        width: 13px;
        height: 13px;
        background: #D9D9D9;
        border-radius: 50%;
        transition: all 0.3s;
        text-indent: -50000px;
        cursor: pointer;
        border: none;
    }

    .slick-dots li {
        margin: 0 3px;
        line-height: 0;
    }

        .slick-dots li.slick-active button {
            background-color: var(--scolor);
            cursor: default;
        }

        .slick-dots li:hover button {
            background-color: var(--scolor);
        }

.sec06_item_img a:hover img {
    transform: scale(1.1);
}

.sec07 {
    padding: 60px 0;
}

.sec07_bnr {
    display: flex;
    justify-content: space-between;
}

.sec07_bnr_item {
    width: calc((100% - 30px)/2);
}

    .sec07_bnr_item a {
        height: 373px;
        display: flex;
        flex-direction: column;
        padding: 46px;
        z-index: 2;
        position: relative;
        width: 100%;
        justify-content: center;
        align-items: flex-end;
        text-decoration: none;
        color: #fff;
        font-size: 32px;
        font-family: var(--f-utm);
        text-align: right;
        border-radius: 24px;
        overflow: hidden;
    }

    .sec07_bnr_item .img {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: -2;
    }

        .sec07_bnr_item .img img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: all 0.3s;
        }

    .sec07_bnr_item .ttl {
        font-size: 225%;
        line-height: 1em;
        margin: 5px 0;
    }

    .sec07_bnr_item .small {
        color: var(--mcolor);
    }

    .sec07_bnr_item .more {
        width: 194px;
        height: 42px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        font-size: 20px;
        font-family: var(--f-utm);
        color: #fff;
        background: var(--scolor);
        border-radius: 40px;
        text-decoration: none;
        margin: 40px auto 0;
        transition: all 0.3s;
    }

        .sec07_bnr_item .more:after {
            content: '';
            position: relative;
            display: inline-block;
            background: url("/assets/images/ic_arr.svg") no-repeat center center/100% auto;
            width: 24px;
            height: 12px;
            margin: 0 0 0 10px;
        }

    .sec07_bnr_item a:hover .img img {
        transform: scale(1.1);
    }

    .sec07_bnr_item a:hover .more {
        background-color: var(--mcolor);
    }


#footer {
    background: url("/assets/images/ft_bg.png") no-repeat top center/cover;
    color: #fff;
    padding: 160px 0 60px;
}

    #footer .container {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
    }

.ft_logo_ttl {
    text-align: center;
    font-size: 32px;
    color: var(--mcolor);
    font-family: var(--f-utm);
    line-height: 1em;
    margin: 0 0 20px;
}

.ft_logo {
    width: 171px;
    margin: 0 auto;
}

.ft_info {
    margin: 0 0 10px;
    display: flex;
}

    .ft_info:before {
        content: '';
        position: relative;
        display: inline-block;
        flex-shrink: 0;
        background: url("/assets/images/ic_add.svg") no-repeat center center;
        width: 18px;
        height: 18px;
        margin-right: 5px;
        margin-top: 5px;
    }

    .ft_info.tel:before {
        background-image: url("/assets/images/ic_tel.svg");
    }

    .ft_info.web:before {
        background-image: url("/assets/images/ic_web.svg");
    }

.ft_ttl {
    font-size: 32px;
    color: var(--mcolor);
    font-family: var(--f-utm);
    line-height: 1em;
    margin: 0 0 24px;
}

.ft_map {
    width: 285px;
    height: 132px;
    border-radius: 16px;
    overflow: hidden;
}

    .ft_map iframe {
        width: 100%;
        height: 100%;
    }

.ft_link li a {
    display: inline-block;
    text-decoration: none;
    color: #fff;
}

    .ft_link li a:hover {
        color: var(--mcolor);
    }

.ft_link li:not(:last-child), .ft_link:not(:last-child) {
    margin: 0 0 20px;
}

.ft_social {
    display: flex;
}

    .ft_social a:not(:last-child) {
        margin-right: 16px;
    }

.ft_form {
    width: 267px;
    position: relative;
}

    .ft_form input {
        width: 100%;
        border: none;
        border-bottom: 1px solid #fff;
        background: url("/assets/images/ic_mail.svg") no-repeat left center;
		color: #fff;
        padding: 7px 30px;
        ;
    }

        .ft_form input::placeholder {
            color: #fff;
        }

    .ft_form button {
        background: url(../images/ic_arr.svg) no-repeat center center / 100% auto;
        width: 24px;
        height: 12px;
        right: 0;
        top: 10px;
        cursor: pointer;
        position: absolute;
        border: none;
    }

    .ft_form input[type="checkbox"] {
        width: 24px;
        height: 24px;
        border: 1px solid #fff;
        border-radius: 8px;
        background: none;
        opacity: 0;
        margin-right: 10px;
    }

    .ft_form label {
        display: flex;
        align-items: center;
        position: relative;
        margin-top: 25px;
    }

        .ft_form label:before {
            content: '';
            position: absolute;
            width: 24px;
            height: 24px;
            border: 1px solid #fff;
            border-radius: 8px;
            left: 0;
            top: 0;
            pointer-events: none;
        }

        .ft_form label .txt:before {
            content: '\002713';
            position: absolute;
            left: 6px;
            opacity: 0;
        }

    .ft_form input[type="checkbox"]:checked ~ .txt:before {
        opacity: 1;
    }


@media screen and (max-width: 1700px) and (min-width: 769px) {
    .sec04_theme_default_thumb {
        margin-right: 60px;
    }

    .sec04_theme_item_info {
        margin-right: 50px;
    }

    .sec04_theme_default_item_img {
        width: 160px;
        margin-right: 50px;
    }

    .sec04_theme_singer_item_main {
        width: 100%;
        padding-top: 100px;
    }

    .sec04_theme_singer_item .sec04_theme_item_info {
        width: auto;
        flex: 1;
        margin-left: 200px;
    }

    .sec04_theme_singer .idx_ttl {
        top: 47px;
        left: calc(50% - 205px);
    }

    .sec04_theme_singer_list.slick-initialized .slick-slide {
        height: 700px;
    }

    .sec04_theme_item_list {
        margin-top: 50px;
        max-width: 300px;
    }

    .sec04_theme_edge_item_img {
        width: 500px;
        margin-top: -100px;
    }

    .sec04_theme_edge_item .sec04_theme_item_list dl {
        max-width: 350px;
    }

    .sec05_map {
        /* width: 1000px; */
    }

    #totop, .btn_fixed {
        right: 10px;
        width: 60px;
    }

    .mv_scroll {
        right: 20px;
    }
}

@media screen and (max-width: 1400px) and (min-width: 769px) {
    .gnavi > li > a, .h_right li a, .mv_nav > li > a {
        font-size: 28px;
    }

    .main_ttl .lager {
        font-size: 100px;
    }

    .idx_ttl .lager, .sec07_bnr_item .ttl {
        font-size: 180%;
    }

    .sec01 .idx_ttl {
        width: 50%;
    }

    .sec01_img {
        margin-top: -200px;
        height: 850px;
    }

        .sec01_img .img, .sec02_img .img {
            height: 600px;
        }

            .sec01_img .img:nth-child(1) {
                width: 42%;
            }

            .sec02_img .img:nth-child(1) {
                margin-top: 90px;
            }

    .sec05_map {
        /* width: 950px; */
    }

    .sec05_info_list li .ttl {
        padding: 0 25px;
    }

    .idx_ttl {
        margin-bottom: 50px;
    }
}

@media screen and (max-width: 768px) {
    h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
        font-size: 14px;
    }

    #wrapper {
        min-width: 100%;
        margin: 0;
    }

    #main, #footer {
        min-width: 100%;
    }

    .container {
        padding: 0 3%;
        width: 100%;
    }

    .sp {
        display: block;
    }

    .pc {
        display: none;
    }
    /* MENU-ICON */
    .menu-icon {
        width: 24px;
        height: 24px;
        box-sizing: border-box;
        text-align: center;
        text-transform: uppercase;
        line-height: 1em;
        cursor: pointer;
        color: #fff;
        font-size: 14px;
        padding: 3px 0;
        z-index: 99999;
    }

        .menu-icon span {
            display: block;
            margin: 0 auto 15px;
            width: 20px;
            height: 2px;
            background-color: #fff;
            -webkit-transition-duration: 0;
            -moz-transition-duration: 0;
            -ms-transition-duration: 0;
            -o-transition-duration: 0;
            transition-duration: 0;
            top: 12px;
            left: 0;
            position: relative;
        }

            .menu-icon span::after, .menu-icon span::before {
                display: block;
                content: '';
                position: absolute;
                width: 20px;
                height: 2px;
                background-color: #fff;
                -webkit-transition-property: margin, -webkit-transform;
                -webkit-transition-duration: 0.2s;
                -moz-transition-duration: 0.2s;
                -ms-transition-duration: 0.2s;
                -o-transition-duration: 0.2s;
                transition-duration: 0.2s;
            }

            .menu-icon span::before {
                margin-top: -7px;
            }

            .menu-icon span::after {
                margin-top: 7px;
            }

        .menu-icon.active span {
            background-color: transparent;
        }

            .menu-icon.active span::before, .menu-icon.active span::after {
                margin-top: 0px;
                -webkit-transition-delay: 0, 0.2s;
                -moz-transition-delay: 0, 0.2s;
                -ms-transition-delay: 0, 0.2s;
                -o-transition-delay: 0, 0.2s;
                transition-delay: 0, 0.2s;
                background: var(--txt);
            }

            .menu-icon.active span::before {
                -webkit-transform: rotate(45deg);
                -moz-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                -o-transform: rotate(45deg);
                transform: rotate(45deg);
            }

            .menu-icon.active span::after {
                -webkit-transform: rotate(-45deg);
                -moz-transform: rotate(-45deg);
                -ms-transform: rotate(-45deg);
                -o-transform: rotate(-45deg);
                transform: rotate(-45deg);
            }

    .gnv-ico {
        width: 50px;
        height: 48px;
        position: absolute;
        background: rgba(255, 255, 255, 0.3);
        right: 0;
        top: 0 !important;
        transform: none !important;
        border: none !important;
    }

        .gnv-ico:before {
            content: '';
            position: absolute;
            border: solid #fff;
            border-width: 0 1px 1px 0;
            display: inline-block;
            padding: 3px;
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            left: calc(50% - 3px);
            top: calc(50% - 3px);
            transition: all 0.5s ease;
        }

    .gnavi li.active > .gnv-ico:before {
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    #totop {
        width: 50px;
        right: 3%;
        bottom: 20px;
        line-height: 0;
        z-index: 5;
    }

    .btn_fixed {
        width: 50px;
        bottom: 150px;
        right: 3%;
        z-index: 5;
    }

        .btn_fixed a {
            margin: 0 0 15px;
        }

    .h_right {
        display: none;
    }

    #gnavi {
        position: fixed;
        right: -100%;
        top: 0;
        height: 100%;
        width: 100%;
        z-index: 10;
        background: #fff;
        padding: 60px 0;
        transition: all 0.3s;
    }

        #gnavi.show {
            right: 0;
        }

    .gnavi {
        display: block;
        width: 100%;
        max-width: 300px;
        margin: 0 0 0 auto;
        height: 100%;
        overflow: auto;
    }

        .gnavi > li > a {
            display: block;
            color: var(--txt);
            font-size: 16px;
            text-align: right;
            padding: 10px 0;
        }

    .h_main {
        position: relative;
        z-index: 20;
        display: flex;
        justify-content: space-between;
        width: 100%;
        align-items: center;
    }

    .h_box {
        padding-top: 15px;
        position: fixed;
		background: transparent;
    }

    .logo {
        width: 75px;
        opacity: 0;
        visibility: hidden;
    }

        .logo.show {
            opacity: 1;
            visibility: visible;
        }

    .gnavi > li {
        padding: 0 3%;
    }

    .mv_main {
        height: 264px;
        mask-image: url("/assets/images/mv_mask_sp.png");
        mask-size: auto 100%;
        background-size: cover;
        background-position: center center;
        align-items: flex-start;
        padding-top: 40px;
    }

    .main_ttl {
        font-size: 16px;
    }

        .main_ttl .lager {
            font-size: 300%;
        }

    .mv_bnr {
        position: fixed;
        left: 3%;
        bottom: 130px;
        width: 127px;
        z-index: 5;
    }

	.mv_scroll {
        right: auto;
        left: 87%;
        transform: translateX(-50%);
        font-size: 12px;
        bottom: 30px !important;
    }

        .mv_scroll:before {
            width: 15px;
            height: 33px;
        }

    .mv_nav > li > a {
        font-size: 16px;
        padding: 5px 0;
    }

    .mv_nav > li:not(:last-child):after {
        height: 24px;
        top: calc(50% - 12px);
    }

    .mv_nav > li {
        padding: 0 13px;
    }

    .sec01 {
        padding: 40px 0 0;
    }

    .idx_ttl {
        font-size: 16px;
        margin: 0 0 30px;
    }

        .idx_ttl .lager {
            font-size: 287.5%;
        }

    .sec01 .idx_ttl {
        width: 100%;
        margin: 0 0 30px;
    }

    .sec01_img {
        width: 100%;
        height: 59vw;
        margin: 0 0 30px;
    }

        .sec01_img .img {
            height: 100%;
            width: calc((100% - 16px) / 2) !important;
        }

    .sec01_txt {
        width: 100%;
        margin: 0;
        max-width: 100%;
    }

    .sec02 {
        margin-top: -60px;
        background-size: auto 235px;
    }

    .sec02_main {
        display: block;
    }

    .sec02_img .img {
        height: 70vw;
    }

        .sec02_img .img:nth-child(1) {
            margin-top: 13vw;
        }

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

    .btn a {
        margin: 0 auto;
    }

    .sec03 {
        background-size: auto 235px;
        padding: 150px 0 40px;
    }

    .sec03_list {
        display: block;
    }

    .sec03_item {
        width: 100%;
        margin: 0 0 24px;
    }

        .sec03_item:last-child {
            margin-bottom: 0;
        }

        .sec03_item .img {
            height: 57vw;
        }

        .sec03_item .info {
            font-size: 9px;
            margin-bottom: 10px;
        }

    .sec03_item_main {
        left: 20px;
        bottom: 20px;
    }

    .sec03_item .info .lager {
        font-size: 12px;
    }

    .sec03_item .counter-block .counter-caption {
        font-size: 6px;
    }

    .sec03_item .counter-block .counter .number {
        font-size: 40px;
        line-height: 40px;
    }

    .sec03_item .counter-block .counter {
        width: 44px;
        height: 40px;
        margin: 0;
    }

    .sec03_item a:after {
        width: 63px;
        height: 25px;
        right: 32px;
        bottom: 25px;
        background-size: 29px auto;
    }

    .sec04_theme_default .container {
        display: block;
    }

    .sec04 .idx_ttl {
        position: relative;
        left: 0;
        text-align: center;
        font-size: 24px;
        margin: 0 0 20px;
    }

    .sec04_theme_default_thumb {
        width: 335px;
        margin: 0 auto 20px;
        max-width: 100%;
    }

        .sec04_theme_default_thumb.slick-initialized .slick-slide {
            border-width: 3px;
            padding: 4px;
            border-radius: 11px;
            margin: 0 3px;
        }

        .sec04_theme_default_thumb .item {
            height: 37px;
            border-radius: 5px;
        }

    .sec04_theme_default_main.slick-initialized .sec04_theme_default_item {
        display: block;
    }

    .sec04_theme_default_item_img {
        width: 145px;
        margin: 0 auto;
    }

    .sec04_theme_default_main {
        width: 100%;
    }

    .sec04_theme_item_info {
        width: 100%;
        margin: 0;
    }

    .sec04_theme_item_ttl {
        font-size: 20px;
    }

    .sec04_theme_item_list {
        max-width: none;
        margin: 30px 0 40px;
        text-align: center;
    }

        .sec04_theme_item_list dl:before {
            position: relative;
            display: block;
            width: 50px;
            height: 50px;
            margin: 0 auto 6px;
            top: 0;
            left: 0;
        }

        .sec04_theme_item_list dt {
            font-size: 16px;
            text-align: center;
        }

        .sec04_theme_item_list dl {
            padding: 0;
            margin: 0 0 30px;
        }

        .sec04_theme_item_list dd {
            text-align: center;
            max-width: 200px;
            margin: 0 auto;
        }

    .slick-prev {
        left: auto;
        right: calc(50% + 100px);
    }

    .slick-arrow {
        bottom: auto;
        top: 180px;
        width: 68px;
        height: 27px;
        background-size: 30px auto;
    }

    .slick-next {
        left: calc(50% + 100px);
        background-size: 30px auto;
    }

    .sec04_theme_default {
        background-image: url("/assets/images/sec04_bg1_sp.png");
        background-position: bottom center;
        background-size: 100% auto;
    }

    .sec04_theme_singer .idx_ttl {
        top: 0;
    }

    .sec04_theme_singer {
        padding: 50px 0;
        background: url("/assets/images/sec04_theme_single.jpg") no-repeat center center/cover;
    }

    .sec04_theme_singer_item_main {
        display: block;
        padding: 0;
    }

    .sec04_theme_singer_item .sec04_theme_item_info {
        width: 100%;
        margin: 0;
    }

    .sec04_theme_singer_item_img {
        position: relative;
        display: block;
        width: 124px;
        margin: 0 auto 20px;
        height: auto;
    }

        .sec04_theme_singer_item_img .pc {
            display: none;
        }

        .sec04_theme_singer_item_img .sp {
            display: block;
            object-fit: contain;
        }

    .sec04_theme_singer_list .slick-next {
        left: calc(50% + 100px)
    }

    .sec04_theme_singer_list .slick-prev {
        left: auto;
    }

    .sec04_theme_singer_list.slick-initialized .slick-slide {
        height: auto;
    }

    .sec04_theme_multi_row {
        flex-wrap: wrap;
        margin: 0;
    }

    .sec04_theme_multi_item {
        width: calc(50% - 8px);
        margin: 0 0 16px;
    }

        .sec04_theme_multi_item.item_full {
            width: 100%;
        }

        .sec04_theme_multi_item a {
            height: 45vw;
            padding: 3vw;
        }

    .sec04_theme_multi_item_main {
        opacity: 1;
    }

    .sec04_theme_multi_item_ttl {
        font-size: 22px;
        margin: 0 0 5px;
    }

    .sec04_theme_multi_item_txt {
        text-align: left;
        line-height: 1.3em;
    }

    .sec04_theme_multi_item a:after {
        opacity: 1;
        border: none;
        background: #093921;
        background: linear-gradient(180deg, rgba(9, 57, 33, 0) 30%, rgba(9, 57, 33, 0.86) 100%);
    }

    .sec04_theme_multi {
        padding: 50px 0;
    }

    .sec04_theme_edge .idx_ttl {
        top: 0;
    }

    .sec04_theme_edge {
        padding: 50px 0;
    }

    .sec04_theme_edge_main {
        display: block;
    }

    .sec04_theme_edge_thumb {
        width: 100%;
        max-width: 335px;
        top: 0;
        position: relative !important;
        margin: 0 auto 20px;
    }

        .sec04_theme_edge_thumb.slick-initialized .slick-slide {
            border-width: 3px;
            padding: 4px;
            border-radius: 11px;
            margin: 0 3px;
        }

        .sec04_theme_edge_thumb .item {
            height: 37px;
            border-radius: 5px;
        }

    .sec04_theme_edge_list.slick-initialized .slick-slide {
        padding: 0;
    }

    .sec04_theme_edge_item_img {
        width: 300px;
        max-width: 100%;
        margin: 0 auto;
    }

    .sec04_theme_edge_item_info {
        display: block;
    }

    .sec04_theme_edge_item .sec04_theme_item_list {
        margin: 0;
        display: block;
    }

        .sec04_theme_edge_item .sec04_theme_item_list dl {
            max-width: 100%;
            margin: 0 0 20px;
        }

    .sec04_theme_classic .container {
        display: block;
        width: 100%;
    }

    .sec04_theme_classic .sec04_theme_item_list {
        margin-bottom: 0;
    }

    .sec05 {
        background-size: auto 235px;
    }

    .sec05_main {
        display: block;
    }

    .sec05_map {
        width: 100%;
        margin: 0 0 30px;
    }

    .sec05_map_frame {
        height: 254px;
    }

    .sec05_form {
        width: calc(100% - 30px);
        left: 15px;
        top: 20px;
    }

    .sec05_info_list {
        justify-content: center;
    }

        .sec05_info_list li:not(:last-child) {
            margin-right: 20px;
        }

    .sec06_list {
        margin: 0 0 30px;
    }

        .sec06_list .slick-list {
            overflow: visible;
        }

        .sec06_list.slick-initialized .slick-slide {
            margin: 0 32px 0 0;
            width: 260px;
        }

    .sec06_item_img a {
        height: 154px;
        margin: 0 0 10px;
    }

    .sec06_item_img {
        margin: 0;
    }

    .sec06_item_info {
        font-size: 12px;
        margin: 0 0 10px;
    }

        .sec06_item_info .date:before {
            width: 3px;
            height: 3px;
            top: 9px;
        }

    .sec06_item_ttl {
        width: 100%;
        font-size: 16px;
        -webkit-line-clamp: 2;
    }

    .sec06_item .btn {
        display: none;
    }

    .sec07_bnr {
        display: block;
    }

    .sec07_bnr_item {
        width: 100%;
        margin: 0 0 24px;
    }

        .sec07_bnr_item a {
            height: 183px;
            padding: 22px;
            font-size: 16px;
            max-width: 398px;
            margin: 0 auto;
        }

        .sec07_bnr_item .ttl {
            font-size: 218.75%;
        }

        .sec07_bnr_item .more {
            width: 94px;
            height: 20px;
            font-size: 10px;
            margin: 20px auto 0;
        }

            .sec07_bnr_item .more:after {
                width: 12px;
                height: 6px;
                margin-left: 5px;
            }

    #footer {
        background-image: url("/assets/images/ft_bg_sp.png");
        padding-top: 300px;
    }

        #footer .container {
            flex-wrap: wrap;
            max-width: 330px;
        }

    .sec07 {
        padding: 60px 0 0;
    }

    .ft_mod {
        margin: 0 0 30px;
    }

        .ft_mod:nth-child(3) {
            order: 1;
        }

        .ft_mod:nth-child(5) {
            order: 2;
        }

        .ft_mod:last-child {
            margin-bottom: 0;
        }

    #header.fixed .menu-icon:not(.active) span, #header.fixed .menu-icon span::after, #header.fixed .menu-icon span::before {
        background: var(--txt);
        transition-delay: 0;
    }

    .h_right {
        display: block;
        position: fixed;
        left: 3%;
        bottom: 250px;
        z-index: 5;
    }

        .h_right li:nth-child(1) {
            display: none;
        }
}

@media screen and (max-width: 400px) {
    .idx_ttl .lager {
        font-size: 220%;
    }

    .slick-next {
        left: calc(50% + 80px) !important;
    }

    .slick-prev {
        right: calc(50% + 80px) !important;
    }

    .sec05_info_list li .ttl {
        padding: 0 15px;
        font-size: 17px;
    }

    .main_ttl .lager {
        font-size: 220%;
    }

    .mv_nav > li {
        padding: 0 3vw;
    }

        .mv_nav > li > a {
            font-size: 3.7vw;
        }

    .sec03_item a:after {
        width: 50px;
        background-size: 20px auto;
        height: 20px;
        right: 15px;
        bottom: 10px;
    }
}




.sec05_info_list{
    display:flex;
    justify-content:space-between;
    margin:0 0 10px;
    gap:10px;
}

/* wrapper */
.sec05_info_list .dropdown{
    position:relative;
    width:48%;
}

/* select */
.sec05_info_list select{
    width:100%;
    height:44px;
    padding:0 50px 0 30px;
    border-radius:40px;
    border:none;
    outline:none;
    font-size:20px;
    font-family:var(--f-utm);
    color:#fff;
    background:var(--scolor);
    appearance:none;          /* hide default arrow */
    -webkit-appearance:none;
    -moz-appearance:none;
    cursor:pointer;
    transition:all .3s;
}

/* hover giống cũ */
.sec05_info_list select:hover{
    background:var(--mcolor);
}

/* custom arrow */
.sec05_info_list .dropdown:after{
    content:'';
    position:absolute;
    top:50%;
    right:20px;
    transform:translateY(-50%);
    width:16px;
    height:16px;
    background:url("/assets/images/ic_down.svg") no-repeat center/100% auto;
    pointer-events:none;
}