/* CSS Document */
/* -----------------------------------------
 *
 * Table of Contents:
 *
 * 0.0 - tags
 * 1.0 - Repeatable Patterns
 * 2.0 - Basic Layout
 * 3.0 - Page setting
 ----------------------------------------- */
/* -----------------------------------------

	0.0 - tags

-----------------------------------------*/
html {
    touch-action: manipulation;
}
body {
    -ms-content-zooming: none;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #000;
    line-height: 1.6;
    font-family: 'Noto Sans JP', sans-serif;
    font-feature-settings: "palt";
}

/* .en{
    font-family: 'IBM Plex Sans', sans-serif;
} */
a{
    text-decoration: none;
    color: #000;
    transition: opacity 0.3s ease-out;
}
a:hover {
    opacity: 0.8;
}

img {
    vertical-align: bottom;
    display: block;
}
a:hover img {
    opacity: 0.8;
}
a img {
    transition: opacity 0.3s ease-out;
}

hr.dash{
    border-top: 1px dashed #aaa;
}
.sp {
    display: none;
}
.pc {
    display: block;
}

@media (min-width: 751px) and (max-width: 1120px) {
    .sp {
        display: block;
    }
    .tab {
        display: block;
    }
    .pc {
        display: none;
    }
}
@media (max-width: 750px) {
    .sp {
        display: block;
    }
    .tab {
        display: none;
    }
    .pc {
        display: none;
    }
}
.mb-5 {margin-bottom: 5px;}
.mb-10 {margin-bottom: 10px;}
.mb-20 {margin-bottom: 20px;}
.mb-30 {margin-bottom: 30px;}
.mb-40 {margin-bottom: 40px;}
.mb-50 {margin-bottom: 50px;}
.mb-60 {margin-bottom: 60px;}
.pb-20 {padding-bottom: 20px;}
.pb-60 {padding-bottom: 60px;}
@media (max-width: 750px) {
    .mb-5 {margin-bottom:1.329787vw;}
    .mb-10 {margin-bottom:2.659574vw;}
    .mb-20 {margin-bottom:5.3191vw;}
    .mb-30 {margin-bottom:7.9787vw;}
    .mb-40 {margin-bottom:10.63829vw;}
    .mb-50 {margin-bottom:13.29787vw;}
    .pb-20 {padding-bottom:5.3191vw;}
    .pb-60 {padding-bottom:15.957vw;}
}

/* -----------------------------------------
wrapper
-----------------------------------------*/
#wrapper {
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    margin: auto;
    padding-bottom: 60px;
}

/* -----------------------------------------

	2.0 - Basic Layout

-----------------------------------------*/
#contents {
    color: #1A1311;
    margin: 0 auto;
    line-height: 1.6;
    font-size: 16px;
    font-family: 'Noto Sans JP', sans-serif;
    font-style: normal;
}

@media (max-width: 750px) {
    #contents {
        font-size: 3.2vw;
    }
}
#contents img {
    width: 100%;
}
#contents .w-750 {
    max-width: 750px;
    margin: auto;
}
#contents img {
    width: 100%;
}
#contents .w-750 {
    max-width: 750px;
    margin: auto;
}
li {
    list-style-type: none;
}
.fw-b {
    font-weight: 600;
}
.ta-c {
    text-align: center;
}
.mincho {
    font-family: 'Noto Serif JP', serif;
}

.btn-top {
    text-align: center;
    font-weight: 500;
    margin-bottom: 3em;
}

/* -----------------------------------------
page Layout
-----------------------------------------*/
#wrapper {
    padding-bottom: unset;
}
#contents {
	font-family: 'Noto Sans JP', sans-serif;
}
:root{
    --white: #fff;
	--blue: #02304D;
    --black: #000;
    --brown: #953E18;
    --art: #305177;
    --yellow: #E2A22A;

    --vast: 'Vast Shadow', cursive;
    --dela: 'Dela Gothic One', cursive;
    --nota: 'Notable', sans-serif;
}

/* -----------------------------------------
original
-----------------------------------------*/

#contents .pagewrapper{
	position: relative;
	margin: 0 auto;
    background: url('../img/230905/bg.png') repeat;
    background-size: 161px 154px;
    min-height: 100vh;
}

/*トップ分割*/

#contents .l-ac_left{
	position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
}

#contents .l-ac_right{
	position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
}

#contents .l-ac_inner{
	position: relative;
	z-index: 1;
    background: rgba(0,0,0,0.4);
}

@media screen and (min-width: 961px){
	.l-ac_inner{
		width: 400px;
		margin: 0 auto;
	}
	.l-ac_left{
		width: calc(50% - 200px);
	}
	.l-ac_right {
		width: calc(50% - 200px);
	}
}

@media screen and (min-width: 751px) and  (max-width: 960px) {
	.l-ac_inner{
		width: 400px;
		margin: 0;
	}
	.l-ac_left{
        width: 0;
		display: none;
	}
	.l-ac_right {
		width: calc(100% - 400px);
	}
}

@media screen and (max-width: 750px){
    .l-ac_inner{
		width: 100%;
		margin: 0;
        background: rgba(0,0,0,0);
	}
	.l-ac_left{
        width: 0;
		display: none;
	}
	.l-ac_right {
		width: 0;
		display: none;
	}
}


.l-ac_left .l-logo_wrapper{
   position: relative;
   width: 100%;
   height: 100%;
}

.l-ac_left .l-logo_wrapper p{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 258px;
    height: 258px;
}

.l-ac_right .l-navi_wrapper{
    width: 100%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50% , -50%);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list{
    width: 100%;
    margin: auto auto 20px;
    padding: 12px 0 ;
    position: relative;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li{
    position: relative;
    padding: 0  0 12px;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a{
    display: block;
    color: var(--white);
    font-family: var(--nota);
    font-size: 18px;
    padding: 2vh 0 2vh 20%;
    position: relative;
    transition: all 0.3s ease-out;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a:hover{
    background: rgba(255,255,255,0.8);
    color: var(--blue);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a:active,
.l-ac_right .l-navi_wrapper ul.l-navi_list li a:focus{
    background: rgba(255,255,255,1);
    color: var(--blue);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a::before{
    content: '';
    width: 8px;
    height: 8px;
    border: 0;
    border-top: solid 2px var(--white);
    border-right: solid 2px var(--white);
    position: absolute;
    top: 50%;
    right: 20%;
    margin-top: -4px;
    transform: rotate(45deg);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a:focus::before{
    border-top: solid 2px var(--blue);
    border-right: solid 2px var(--blue);
    transition: all 0.3s ease-out;
    transform: rotate(135deg);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a.ico_next::before{
    transform: rotate(45deg);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a.ico_down::before{
    transform: rotate(135deg);
}


@media screen and (max-width: 1280px){
    .l-ac_right .l-navi_wrapper ul.l-navi_list li a{
        padding: 2vh 0 2vh 4vw;
    }

    .l-ac_right .l-navi_wrapper ul.l-navi_list li a::before{
        right: 4vw;
    }
}

@media screen and (max-width: 1024px){
    .l-ac_right .l-navi_wrapper ul.l-navi_list li a{
        padding: 2vh 0 2vh 2vw;
    }

    .l-ac_right .l-navi_wrapper ul.l-navi_list li a::before{
        right: 2vw;
    }
}

@media screen and (max-width: 960px){
    .l-ac_right .l-navi_wrapper ul.l-navi_list li a{
        padding: 2vh 0 2vh 7vw;
    }

    .l-ac_right .l-navi_wrapper ul.l-navi_list li a::before{
        right: 7vw;
    }
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a:hover::before{
    border-top: solid 2px var(--blue);
    border-right: solid 2px var(--blue);
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a p{
    font-family: var(--dela);
    font-size: 15px;
    line-height: 16px;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li a span{
    font-size: 18px;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list::before,
.l-ac_right .l-navi_wrapper ul.l-navi_list li::after{
    content: '';
    background: url('../img/230905/navi_border.png');
    background-size: 100% auto;
    position: absolute;
    left: 0;
    width: 100%;
    height: 12px;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list::before{
    top: 0;
}

.l-ac_right .l-navi_wrapper ul.l-navi_list li:not(:last-child)::after{
    bottom: 0;
}

.l-ac_right .l-navi_wrapper .l-navi_banner a{
    display: block;
    border: 2px solid #fff;
    width: 220px;
    margin: auto;
    box-sizing: border-box;
}

.l-ac_right .l-navi_wrapper .l-navi_sns{
    max-width: 76px; 
    display: flex;
    justify-content: space-between;
    margin: auto;
}

.l-ac_right .l-navi_wrapper .l-navi_sns li a{
    display: block;
}

.l-ac_right .l-navi_wrapper .l-navi_sns li a .ico_line{
    width: 42.1%;
    height: auto;
}

.l-ac_right .l-navi_wrapper .l-navi_sns li a .ico_line{
    width: 36.84%;
    height: auto;
}

/* -----------------------------------------
** #main-wrapper
-----------------------------------------*/
#main-wrapper{
    max-width: 376px;
    margin: auto;
    background: url('../img/230905/bg.png') repeat;
    background-size: 161px 154px;
}

#page01 #main-wrapper{
    max-width: 376px;
    margin: auto;
    background: url('../img/230905/bg_art.png') repeat;
    background-size: 161px 154px;
}

#main-wrapper .l-section_inner{
    max-width: 352px;
    width: 93.62%;
    margin: auto;
}

@media screen and (max-width: 750px){
    #main-wrapper{
        max-width: 100%;
        width: 100%;
    }

    #page01 #main-wrapper{
        max-width: 100%;
        width: 100%;
    }

    #main-wrapper .l-section_inner{
        max-width: 93.62%;
        width: 93.62%;
    }
}

/* -----------------------------------------
** header
-----------------------------------------*/
#main-wrapper header{
    background: var(--black);
    display: flex;
    padding: 18px;
    width: 100%;
    height: 68px;
    box-sizing: border-box;
}

#main-wrapper header .logo_w{
    width: 134px;
    height: auto;
}

#main-wrapper header nav{
    display: none;
}

@media (max-width: 750px) {
    #main-wrapper header{
        position: fixed;
        width: 100%;
        z-index: 6;
    }

    #main-wrapper header .l-header_wrapper{
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

    #main-wrapper header nav{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #main-wrapper header .hamburger-menu {
        width: 36px;
        display: flex;
        flex-direction: column;
        cursor: pointer;
        z-index: 10;
    }

    #main-wrapper header .hamburger-menu .bar {
        width: 30px;
        height: 2px;
        background-color: white;
        margin: 4px 0;
        transition: 0.4s;
    }

    #main-wrapper header .hamburger-menu.active .bar:nth-child(1) {
        transform: translateY(11.5px) rotate(-35deg);
        width: 9.334vw;
    }

    #main-wrapper header .hamburger-menu.active .bar:nth-child(2) {
        opacity: 0;
    }

    #main-wrapper header .hamburger-menu.active .bar:nth-child(3) {
        transform: translateY(-8.5px) rotate(35deg);
        width: 9.334vw;
    }
  
    #main-wrapper header .menu {
        position: fixed;
        top: 68px;
        left: 100vw;
        width: 100%;
        min-height: 100%;
        flex-direction: column;
        background: url(../img/230905/bg.png) repeat;
        background-size: 161px 154px;
        transition: all 0.3s ease-out;
    }

    #main-wrapper header .menu.active {
        left: 0;
        display: flex;
        justify-content: flex-start;
        z-index: 5;
        transition: all 0.3s ease-out;
        height: 100%;
        overflow: auto;
    }

    body.menu-active {
        overflow: hidden;
    }

     #main-wrapper header .menu ul.l-menu_list{
        width: 100%;
        margin: 0 auto 3vh;
        padding: 12px 0 ;
        position: relative;
    }

    #main-wrapper header ul.l-menu_list li{
        position: relative;
        padding: 0  0 12px;
    }

    #main-wrapper header ul.l-menu_list li a{
        display: block;
        color: var(--white);
        font-family: var(--nota);
        font-size: 18px;
        padding: 2vh 0 2vh 12px;
        position: relative;
        transition: all 0.3s ease-out;
    }

    #main-wrapper header ul.l-menu_list li a:hover{
        background: rgba(255,255,255,0.8);
        color: var(--blue);
    }

    #main-wrapper header ul.l-menu_list li a:active{
        background: rgba(255,255,255,1);
        color: var(--blue);
    }

    #main-wrapper header ul.l-menu_list li a.ico_next::before{
        content: '';
        width: 8px;
        height: 8px;
        border: 0;
        border-top: solid 2px var(--white);
        border-right: solid 2px var(--white);
        position: absolute;
        top: 50%;
        right: 20%;
        margin-top: -4px;
        transform: rotate(45deg);
    }

    #main-wrapper header ul.l-menu_list li a::before{
        content: '';
        border: 0;
        border-top: solid 2px var(--white);
        border-right: solid 2px var(--white);
        position: absolute;
        top: 50%;
        margin-top: -4px;
    }

    #main-wrapper header ul.l-menu_list li a:focus::before{
        border-top: solid 2px var(--blue);
        border-right: solid 2px var(--blue);
    }

    #main-wrapper header ul.l-menu_list li a.ico_next::before{
        width: 8px;
        height: 8px;
        right: 16px;
        margin-top: -4px;
        transform: rotate(45deg);
    }

    #main-wrapper header ul.l-menu_list li a.ico_up::before{
        width: 8px;
        height: 8px;
        right: 12px;
        margin-top: -4px;
        transform: rotate(-45deg);
    }

    #main-wrapper header ul.l-menu_list li a:hover::before{
        border-top: solid 2px var(--blue);
        border-right: solid 2px var(--blue);
    }

    #main-wrapper header ul.l-menu_list li a p{
        font-family: var(--dela);
        font-size: 3.989vw;
        line-height: 1.6;
    }

    #main-wrapper header ul.l-menu_list li a span{
        font-size: 4.787vw;
    }

    #main-wrapper header ul.l-menu_list::before,
    #main-wrapper header ul.l-menu_list li::after{
        content: '';
        background: url('../img/230905/navi_border.png');
        background-size: 100% auto;
        position: absolute;
        left: 0;
        width: 100%;
        height: 12px;
    }

    #main-wrapper header ul.l-menu_list::before{
        top: 0;
    }

    #main-wrapper header ul.l-menu_list li:not(:last-child)::after{
        bottom: 0;
    }

    #main-wrapper header .l-menu_banner{
        margin-bottom: 3dvh;
    }

    #main-wrapper header .l-menu_banner a{
        display: block;
        border: 2px solid #fff;
        width: 58.5%;
        margin: auto;
        box-sizing: border-box;
    }

    #main-wrapper header .l-menu_sns{
        width: 100px;
        display: flex;
        justify-content: space-between;
        margin: 0 auto 80px;
        padding-bottom: 100px;
    }

    #main-wrapper header .l-menu_sns li a{
        display: block;
    }

    #main-wrapper header .l-menu_sns li.ico_line a{
        width: 40px;
        height: auto;
    }

    #main-wrapper header .l-menu_sns li.ico_insta a{
        width: 38px;
        height: auto;
        
    }

}    

/* -----------------------------------------
** footer
-----------------------------------------*/
#main-wrapper footer{
    background: var(--black);
    color: var(--white);
    text-align: center;
}

#main-wrapper footer small{
    display: block;
    width: 100%;
    padding: 1em 0;
    font-size: 9px;
}

/* -----------------------------------------
** kv
-----------------------------------------*/
.l-section_kv{
    background: url('../img/230905/bg_kv.png') repeat;
    background-size: 120px 120px;
    border-bottom: 4px solid var(--white);
}

.l-section_kv h1{
    max-width: 332px;
    width: 89%;
    height: auto;
    margin: auto;
    padding: 50px 0 130px;
}

@media (max-width: 750px) {
    .l-section_kv{
        padding-top: 68px;
    }
}

/* -----------------------------------------
** goldrush
-----------------------------------------*/
#goldrush h2{
    position: relative;
    width: 93.617%;
    margin: -100px auto 24px;
    z-index: 2
}

.l-section_goldrush{
    position: relative;
    margin-top: -92px;
    padding-top: 100px;
    background: linear-gradient(#02304d 0%, #02304d 25.09%, rgba(2, 48, 77, 0.12) 100%);
    background-size: 100% 213px;
    background-repeat: no-repeat;
}


.l-section_goldrush .goldrush_read{
    color: var(--white);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.714;
    text-align: justify;
}

.l-section_goldrush .goldrush_link a{
    display: flex;
    flex-direction: column;
    background: var(--white);
    color: var(--black);
    box-sizing: border-box;
}

.l-section_goldrush .goldrush_link a > span{
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    padding: 0.3em 0;
}

@media screen and (max-width: 750px){
    .l-section_goldrush .goldrush_read{
        font-size: 3.7234vw;
    }

    .l-section_goldrush .goldrush_link a > span{
        font-size: 4.2553vw;
    }
}

/* -----------------------------------------
** special message
-----------------------------------------*/
.l-section_message{
    margin-bottom: 50px;
}

.l-section_message .l-message_header{
    background: url('../img/230905/bg_message_title.png') no-repeat;
    background-size: 120px 47px;
    background-position: center top;
    color: var(--white);
    max-width: 328px;
    width: 93.18%;
    margin: 0 auto;
    padding: 50px 0 20px;
    text-align: center;
}

.l-section_message .l-message_header p{
    font-size: 12px;
    font-weight: 700;
    line-height: 1.66;
}

.l-section_message .l-message_header h3 span{
    font-family: var(--vast);
    font-size: 30px;
    line-height: 1.2;
    display: inline; 
    background:linear-gradient(transparent 50%, #000000 0%);
    padding: 0 0.2em;
}

.message_list li{
    background: rgba(255,255,255,0.9);
    position: relative;
}

.message_list li .list_title{
    position: absolute;
    background: url('../img/230905/bg_message_no.png') no-repeat;
    background-size: 100% auto;
    width: 64px;
    height: 82px;
    top: -8px;
    left: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.message_list li .list_title span{
    font-family: var(--vast);
    font-size: 28px;
    margin-top: -10px;
}

.message_list li .list_detail{
    margin-left: 100px;
    color: var(--blue);
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 94px;
}

.message_list li .list_detail .list_position{
    font-size: 11px;
    font-weight: 700;
}

.message_list li .list_detail .list_name{
    font-size: 14px;
    font-weight: 700;
}

.message_list li .list_detail .list_name span{
    font-size: 11px;
    font-weight: 700;
}

.message_list li dl{
    max-width: 328px;
    width: 93.18%;
    margin: auto;
    padding-bottom: 21px;
    margin-bottom: 28px;
}

.message_list li dt{
    background: var(--white);
    padding: 0.1em 1em;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 16px;
}

.message_list li dt .vast{
    font-family: var(--vast);
    font-size: 20px;
    font-weight: 400;
    margin-right: 5px;
}

.message_list li dd{
    color: var(--black);
    font-size: 13px;
    line-height: 1.69;
    text-align: justify;
}

.message_list li dd:not(:last-child){
    margin-bottom: 21px;
}

@media screen and (max-width: 750px){
    .l-section_message .l-message_header p{
        font-size: 3.191vw;
    }

    .l-section_message .l-message_header h3 span{
        font-size: 7.9787vw;
    }

    .message_list li .list_title span{
        font-size: 7.4468vw;
    }

    .message_list li .list_detail .list_position{
        font-size: 2.9255vw;
    }

    .message_list li .list_detail .list_name{
        font-size: 3.7234vw;
    }

    .message_list li .list_detail .list_name span{
        font-size: 2.9255vw;
    }

    .message_list li dl{
        max-width: 93.18%;
    }

    .message_list li dt{
        font-size: 3.191vw;
    }

    .message_list li dt .vast{
        font-size: 5.3191vw;
    }

    .message_list li dd{
        font-size: 3.4574vw;
    }
}

/* -----------------------------------------
** garage
-----------------------------------------*/
#garage{
    position: relative;
    padding-top: 10px;
}

#garage h2{
    max-width: 352px;
    width: 93.6%;
    margin: auto;
    position: relative;
    z-index: 2;
}

.l-section_garage{
    margin-top: -64px;
    background: url(../img/230905/bg_black.png) repeat;
    background-size: 161px 154px;
    padding-bottom: 50px;
    position: relative;
}

.l-section_garage_wrapper{
    margin-top: -64px;
    padding-top: 84px;
    background: linear-gradient(#242424 0%, rgba(36, 36, 36, 0.99) 13.2%, rgba(36, 36, 36, 0.12) 50%);
}

.l-section_garage_wrapper .garage_catch{
    color: var(--white);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.66;
    text-align: center;
}

.l-section_garage .garage_read{
    color: var(--white);
    font-size: 12px;
    line-height: 1.66;
}

/* garageカタログ用 */
.l-section_garage li.garage_01{
    background: #6C6C6C;
}

.l-section_garage li.garage_01 .image_wraper figure img{
    width: 240px!important;
    height: 240px;
    margin: auto;
}

.l-section_garage .garage_01 h4{
    background: var(--white);
    max-width: 100%;
    width: 100%;
    margin: 0 auto 0;
    padding: 10px 12px;
    box-sizing: border-box;
}

/* garageその他リンク */
.l-section_garage .garage_other li{
    padding-top: 0;
    margin-bottom: 0;
}

.l-section_garage .garage_other li::before{
    display: none;
}

.l-section_garage .garage_other li .more_wrapper a{
    border-top: none;
}

@media screen and (max-width: 750px){
    #garage h2{
        max-width: 93.6%;
        width: 93.6%;
    }
    
    .l-section_garage_wrapper .garage_catch{
        font-size: 3.1914vw;
    }
    
    .l-section_garage .garage_read{
        font-size: 3.1914vw;
    }
}

/* -----------------------------------------
** art cluture
-----------------------------------------*/
#page01 .l-section_kv{
    width: 100%;
    height: 156px;
    background: url(../img/230905/bg_kv.png) repeat;
    background-size: 120px 120px;
}

#art-culture h1{
    width: 93.617%;
    margin: -100px auto 24px;
}

.l-section_art{
    margin-top: -100px;
}

.l-section_art_wrapper{
    padding-top: 100px;
    background: linear-gradient(#305177 0%, rgba(48, 81, 119, 0.99) 29.2%, rgba(48, 81, 119, 0.12) 100%);
    background-size: 100% 213px;
    background-repeat: no-repeat;
}

/* -----------------------------------------
** special event
-----------------------------------------*/
#special-event{
    position: relative;
    padding-top: 10px;
}

#special-event h2{
    max-width: 352px;
    width: 93.6%;
    margin: auto;
    position: relative;
    z-index: 2;
}

.l-section_special{
    margin-top: -64px;
    background: url(../img/230905/bg_brown.png) repeat;
    background-size: 161px 154px;
    position: relative;
}

.l-section_special_wrapper{
    margin-top: -64px;
    padding-top: 84px;
    background: linear-gradient(#953e18 0%, rgba(149, 62, 24, 0.99) 29.2%, rgba(149, 62, 24, 0.12) 100%);
    background-size: 100% 213px;
    background-repeat: no-repeat;
}

/* -----------------------------------------
** limited item
-----------------------------------------*/
#limited-item{
    background: url(../img/230905/bg_yellow.png) repeat;
    background-size: 161px 154px;
}

.l-section_limited{
    padding: 56px 0 80px;
    max-width: 352px;
    width: 93.167%;
    margin: auto;
}

.l-section_limited h4{
    color: var(--white);
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

.l-limited_wrapper{
    width: 100%;
    background: #fff;
    padding: 8px 0 4px;
}

.l-limited_wrapper .limited_list{
    max-width: 328px;
    width: 93.1818%;
    margin: auto;
    display: flex;
    justify-content: space-between;
}

.l-limited_wrapper .limited_list .limited_floor{
    margin-top: 16px;
    background: url('../img/230905/ico_limited.png') no-repeat;
    background-size: 44px 54px;
    width: 45px;
    height: 54px;
    position: relative;
}

.l-limited_wrapper .limited_list .limited_floor p{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: var(--yellow);
    font-family: var(--vast);
    font-size: 20px;
}

.l-limited_wrapper .limited_list .limited_floor p span{
    font-size: 16px;
}

.l-limited_wrapper .limited_list .limited_list_inner{
    width: 265px;
}

.l-limited_wrapper .limited_list .limited_detail{
    position: relative;
    padding-top: 16px;
}

.l-limited_wrapper .limited_list:not(:last-child) .limited_detail::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(to right, var(--yellow), var(--yellow) 2px, transparent 2px, transparent 6px);
    background-size: 6px 2px;
    background-repeat: repeat-x;
    width: 100%;
    height: 2px;
}

.l-limited_wrapper .limited_list .limited_place{
    display: flex;
    align-items: flex-start;
}

.l-limited_wrapper .limited_list .limited_place span{
    background: url('../img/230905/ico_place_black.png') no-repeat;
    background-size: 12px 15px;
    width: 12px;
    height: 15px;
    padding-right: 4px;
    margin-top: 5px;
}

.l-limited_wrapper .limited_list .limited_place p{
    font-size: 13px;
    font-weight: 700;
    line-height: 1.846;
}

.l-limited_wrapper .limited_list .limited_item{
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    padding: 4px 0 16px 16px;
}

@media screen and (max-width: 750px){
    .l-section_limited{
        max-width: 93.167%;
        width: 93.167%;
    }
    
    .l-section_limited h4{
        font-size: 4.2553vw;
    }
    
    .l-limited_wrapper .limited_list{
        max-width: 93.1818%;
        width: 93.1818%;
    }
    
    .l-limited_wrapper .limited_list .limited_floor p{
        font-size: 5.3191vw;
    }
    
    .l-limited_wrapper .limited_list .limited_floor p span{
        font-size: 4.2553vw
    }

    .l-limited_wrapper .limited_list .limited_list_inner{
        width: calc(100% - 60px);
    }
    
    .l-limited_wrapper .limited_list .limited_place p{
        font-size: 3.4574vw;
    }
    
    .l-limited_wrapper .limited_list .limited_item{
        font-size: 4.2553vw;
    }
}


/* -----------------------------------------
** common item_list

blue
black
brown
-----------------------------------------*/

.item_list li{
    background: var(--white);
    position: relative;
    padding-top: 11px;
    margin-bottom: 28px;
}

.item_list li::before{
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    background: url('../img/230905/bg_item_head.png') no-repeat;
    background-size: 100% auto;
    width: 93.18%;
    height: 11px;
}

/* blue */
.item_list li.blue::before{
    border-left: 1px solid var(--blue);
    border-right: 1px solid var(--blue);
}

/* black */
.item_list li.black::before{
    border-left: 1px solid var(--black);
    border-right: 1px solid var(--black);
}

/* art */
.item_list li.art::before{
    border-left: 1px solid var(--art);
    border-right: 1px solid var(--art);
}

/* brown */
.item_list li.brown::before{
    border-left: 1px solid var(--brown);
    border-right: 1px solid var(--brown);
}

/* blue */
.item_list li.blue .image_wraper{
    border-top: 1px solid var(--blue);
    border-bottom: 1px solid var(--blue);
}

/* black */
.item_list li.black .image_wraper{
    border-top: 1px solid var(--black);
    border-bottom: 1px solid var(--black);
}

/* art */
.item_list li.art .image_wraper{
    border-top: 1px solid var(--art);
    border-bottom: 1px solid var(--art);
}

/* brown */
.item_list li.brown .image_wraper{
    border-top: 1px solid var(--brown);
    border-bottom: 1px solid var(--brown);
}

.item_list li .image_wraper figure{
    max-width: 328px;
    width: 93.18%;
    margin: auto;
}

/* blue */
.item_list li.blue .image_wraper figure{
    border-left: 1px solid var(--blue);
    border-right: 1px solid var(--blue);
}

/* black */
.item_list li.black .image_wraper figure{
    border-left: 1px solid var(--black);
    border-right: 1px solid var(--black);
}

/* art */
.item_list li.art .image_wraper figure{
    border-left: 1px solid var(--art);
    border-right: 1px solid var(--art);
}

/* brown */
.item_list li.brown .image_wraper figure{
    border-left: 1px solid var(--brown);
    border-right: 1px solid var(--brown);
}

.item_list li h4{
    max-width: 328px;
    width: 93.18%;
    margin: 0 auto 10px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
}

.uppercase{
    font-feature-settings: initial;
    font-style: normal;
}

.item_list li .item_list_inner{
    padding: 0.6em 3.41%;
    margin-bottom: 16px;
}

.item_list li .item_list_inner p{
    font-size: 13px;
    font-weight: 700;
    line-height: 1.845;
}

/* blue */
.item_list li.blue .item_list_inner{
    background: #E8EBED;
    color: var(--blue);
}

/* black */
.item_list li.black .item_list_inner{
    background: #E5E5E5;
    color: var(--black);
}

/* art */
.item_list li.art .item_list_inner{
    background: #EAEDF1;
    color:var(--art);
}

/* brown */
.item_list li.brown .item_list_inner{
    background: #F4EBE7;
    color:var(--brown);
}

@media screen and (max-width: 750px){
    .item_list li .image_wraper figure{
        max-width: 93.18%;
        width: 93.18%;
    }

    .item_list li h4{
        font-size: 4.2553vw;
        max-width: 93.18%;
        width: 93.18%;
    }

    .item_list li .item_list_inner p{
        font-size: 3.4574vw;
    }
}

/* -----------------------------------------
** date
-----------------------------------------*/

.item_list li .item_list_date{
    display: flex;
    align-items: center;
    padding-bottom: 0.6em;
    position: relative;
}

.item_list li .item_list_date.position-top{
    align-items: flex-start;
}

.item_list li .item_list_date.position-top span{
    margin-top: 0.3em;
}

/* blue */
.item_list li.blue .item_list_date{
    border-bottom: 1px dotted var(--blue);
}

/* black */
.item_list li.black .item_list_date{
    border-bottom: 1px dotted var(--black);
}

/* art */
.item_list li.art .item_list_date{
    border-bottom: 1px dotted var(--art);
}

/* brown */
.item_list li.brown .item_list_date{
    border-bottom: 1px dotted var(--brown);
}

.item_list li .item_list_date span{
    content: '';
    display: block;
    width: 13px;
    height: 15px;
    margin-right: 0.5em;
}

/* blue */
.item_list li.blue .item_list_date span{
    background: url('../img/230905/ico_date_blue.png') no-repeat;
    background-size: 100% auto;
}

/* black */
.item_list li.black .item_list_date span{
    background: url('../img/230905/ico_date_black.png') no-repeat;
    background-size: 100% auto;
}

/* art */
.item_list li.art .item_list_date span{
    background: url('../img/230905/ico_date_art.png') no-repeat;
    background-size: 100% auto;
}


/* brown */
.item_list li.brown .item_list_date span{
    background: url('../img/230905/ico_date_brown.png') no-repeat;
    background-size: 100% auto;
}


/* -----------------------------------------
** place
-----------------------------------------*/

.item_list li .item_list_place{
    display: flex;
    align-items: center;
    padding-top: 0.6em;
    position: relative;
}

.item_list li .item_list_place span{
    content: '';
    display: block;
    width: 12px;
    height: 15px;
    margin-right: 0.5em;
}

/* blue */
.item_list li.blue .item_list_place span{
    background: url('../img/230905/ico_place_blue.png') no-repeat;
    background-size: 100% auto;
}

/* black */
.item_list li.black .item_list_place span{
    background: url('../img/230905/ico_place_black.png') no-repeat;
    background-size: 100% auto;
}

/* art */
.item_list li.art .item_list_place span{
    background: url('../img/230905/ico_place_art.png') no-repeat;
    background-size: 100% auto;
}

/* brown */
.item_list li.brown .item_list_place span{
    background: url('../img/230905/ico_place_brown.png') no-repeat;
    background-size: 100% auto;
}

.item_list li .item_list_place.position-top{
    align-items: flex-start;
}

.item_list li .item_list_place.position-top span{
    margin-top: 0.4em;
}

/* -----------------------------------------
** reserve
-----------------------------------------*/

.item_list li .item_list_reserve{
    display: flex;
    align-items: center;
    padding-top: 0.6em;
    position: relative;
}

/* blue */
.item_list li.blue .item_list_reserve span{
    width: 13px;
    height: 12px;
    margin-top: 0.1em;
    margin-right: 0.5em;
    background: url('../img/230905/ico_reserve_blue.png') no-repeat;
    background-size: 100% auto;
}

.item_list li .item_list_reserve .item_list_reserve_inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 309px;
    width: 100%;
}

.item_list_reserve_inner .ico_reserve{
    font-size: 11px;
    font-weight: 700;
    line-height: 1.23;
    border: 1px solid var(--blue);
    border-radius: 100vh;
    padding: 0.25em 0.5em;
    /* margin: 0 1em; */
}

.item_list_reserve_inner .link_reserve{
    padding-left: 10px;
    margin-left: 25%;
    position: relative;
}

.item_list_reserve_inner .link_reserve::before{
    content: '';
    width: 4px;
    height: 4px;
    border: 0;
    border-top: solid 1px var(--blue);
    border-right: solid 1px var(--blue);
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -2px;
    transform: rotate(45deg);
}

.item_list_reserve_inner .link_reserve a{
    display: block;
    color: var(--blue);
    font-size: 13px;
    font-weight: 700;
    position: relative;
}

.item_list_reserve_inner .link_reserve a::after{
    content:'';
    display: inline-block;
    height: 1px;
    background-color: var(--blue);
    position:absolute;
    bottom: -0.1em;
    left: 0;
    width: 100%;
}



.item_list li .item_list_detail{
    max-width: 328px;
    width: 93.18%;
    margin: 0 auto 20px;
    font-size: 13px;
    line-height: 1.69;
    text-align: justify;
}

.item_list li .item_list_detail.pb-20{
    margin: 0 auto 0;
    padding-bottom: 20px;
}

.item_list li .item_list_detail span{
    display: block;
    font-size: 11px;
    text-indent: -1em;
    padding-left: 1em;
    margin-top: 0.2em;
}


@media screen and (max-width: 750px){
    .item_list li .item_list_reserve .item_list_reserve_inner{
        max-width: 100%;
        width: 100%;
    }

    .item_list_reserve_inner .ico_reserve{
        font-size: 2.9255vw;
    }

    .item_list_reserve_inner .link_reserve a{
        font-size: 3.4574vw;
    }

    .item_list li .item_list_detail{
        max-width: 93.18%;
        width: 93.18%;
        font-size: 3.4574vw;
    }


    .item_list li .item_list_detail span{
        font-size: 2.9255vw;
    }
}


/* -----------------------------------------
** common item_list more

blue
black
brown
-----------------------------------------*/
.item_list li .more_wrapper{
    border: 2px solid var(--white);
    box-sizing: border-box;
    position: relative;
}

.item_list li .more_wrapper .item_label{
    position: absolute;
    left: 0;
    top: -10px;
    background: var(--black);
    color: var(--white);
    font-family: var(--vast);
    font-size: 12px;
    line-height: 2.0;
    padding: 0 1em;
    border-radius: 0 0 8px 0;
}

/* blue */
.item_list li.blue .more_wrapper{
    background: var(--blue);
}

/* black */
.item_list li.black .more_wrapper{
    background: var(--black);
}

/* aart */
.item_list li.art .more_wrapper{
    background: var(--art);
}

/* brown */
.item_list li.brown .more_wrapper{
    background: var(--brown);
}

/* 単独用 */
.item_list li .more_wrapper .more_inner_01{
    display: flex;
    /* max-width: 328px; */
    margin: 34px auto 20px;
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
}

/* 複数用 */
.item_list li .more_wrapper .more_inner_01.multi{
    display: flex;
    margin: 0 auto 20px;
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;

}

.item_list li .more_wrapper .more_inner_01 figure{
    width: 43.42%;
    margin-top: 6px;
    margin-right: 10px;
}

.item_list li .more_wrapper .more_inner_01 div{
    color: var(--white);
    font-size: 14px;
    font-weight: 700;
    width: 100%;
}

.item_list li .more_wrapper .more_inner_01 div span{
    font-size: 11px;
    font-weight: 700;
}

.item_list li .more_wrapper .more_inner_01 div .more_title{
    margin-bottom: 10px;
    font-weight: 700;
}

.item_list li .more_wrapper .more_inner_01 dl{
    background: var(--white);
    border-radius: 4px;
    display: flex;
    max-width: 328px;
    width: 100%;
}

/* blue */
.item_list li.blue .more_wrapper .more_inner_01 dl{
    color: var(--blue);
}

/* black */
.item_list li.black .more_wrapper .more_inner_01 dl{
    color: var(--black);
}

/* art */
.item_list li.art .more_wrapper .more_inner_01 dl{
    color: var(--art);
}

/* brown */
.item_list li.brown .more_wrapper .more_inner_01 dl{
    color: var(--brown);
}

.item_list li .more_wrapper .more_inner_01 dt{  
    border-radius: 4px 0 0 4px;
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    padding: 0.8em 0.5em;
}

/* blue */
.item_list li.blue .more_wrapper .more_inner_01 dt{
    background: #E8EBED;
}

/* black */
.item_list li.black .more_wrapper .more_inner_01 dt{
    background: #E5E5E5;
}

/* brown */
.item_list li.brown .more_wrapper .more_inner_01 dt{
    background: #F4EBE7;
}

.item_list li .more_wrapper .more_inner_01 dd{
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    padding: 0.8em 0 0.8em 1em;
    width: 70%;
    display: flex;
}

.item_list li .more_wrapper a{
    display: block;
    width: 100%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 20%);
    border-top: 2px solid var(--white);
    color: var(--white);
    font-family: var(--nota);
    font-size: 16px;
    padding: 1em;
    box-sizing: border-box;
    position: relative;
    text-indent: 1em;
    transition: all 0.5s ease-out;
}

/* blue */
.item_list li.blue .more_wrapper a{
    background-color: #001D2F;
}

/* black */
.item_list li.black .more_wrapper a{
    background-color: #242424;
}

/* art */
.item_list li.art .more_wrapper a{
    background-color: #1E3550;
}

/* brown */
.item_list li.brown .more_wrapper a{
    background-color: #6F2A0C;
}

.item_list li .more_wrapper a::before{
    content: '';
    width: 20px;
    height: 2px;
    background: var(--white);
    border: 0;
    position: absolute;
    top: 50%;
    right: 2.5em;
    transform: translateX(0);
}

.item_list li .more_wrapper a::after{
    content: '';
    width: 10px;
    height: 10px;
    border: 0;
    border-top: solid 2px var(--white);
    border-right: solid 2px var(--white);
    position: absolute;
    top: 50%;
    right: 2em;
    margin-top: -5px;
    transform: rotate(45deg);
}

.item_list li .more_wrapper a:hover{
    background: var(--white);
}

/* blue */
.item_list li.blue .more_wrapper a:hover{
    color: var(--blue);
}

/* black */
.item_list li.black .more_wrapper a:hover{
    color: var(--black);
}

/* art */
.item_list li.art .more_wrapper a:hover{
    color: var(--art);
}

/* brown */
.item_list li.brown .more_wrapper a:hover{
    color: var(--brown);
}

.item_list li .more_wrapper a:hover::before,
.item_list li .more_wrapper a:active::before,
.item_list li .more_wrapper a:focus::before{
    transform: translateX(0.5em);
}

/* blue */
.item_list li.blue .more_wrapper a:hover::before{
    background: var(--blue);
}

/* black */
.item_list li.black .more_wrapper a:hover::before{
    background: var(--black);
}

/* art */
.item_list li.art .more_wrapper a:hover::before{
    background: var(--art);
}

/* brown */
.item_list li.brown .more_wrapper a:hover::before{
    background: var(--brown);
}

/* blue */
.item_list li.blue .more_wrapper a:hover::after{
    border-top: solid 2px var(--blue);
    border-right: solid 2px var(--blue);
}

/* black */
.item_list li.black .more_wrapper a:hover::after{
    border-top: solid 2px var(--black);
    border-right: solid 2px var(--black);
}

/* art */
.item_list li.art .more_wrapper a:hover::after{
    border-top: solid 2px var(--art);
    border-right: solid 2px var(--art);
}

/* brown */
.item_list li.brown .more_wrapper a:hover::after{
    border-top: solid 2px var(--brown);
    border-right: solid 2px var(--brown);
}

@media screen and (max-width: 750px){
    .item_list li .more_wrapper .item_label{
        font-size: 3.191vw;
    }

    .item_list li .more_wrapper .more_inner_01 div{
        font-size: 3.7234vw;
    }

    .item_list li .more_wrapper .more_inner_01 div span{
        font-size: 2.9255vw;
    }

    .item_list li .more_wrapper .more_inner_01 dl{
        max-width: 100%;
        width: 100%;
    }

    .item_list li.blue .more_wrapper .more_inner_01 dt{  
        font-size: 3.191vw;
    }

    .item_list li .more_wrapper .more_inner_01 dd{
        font-size: 3.191vw;
    }

    .item_list li .more_wrapper a{
        font-size: 4.2553vw;
    }
}

/* -----------------------------------------
** footer_nav
-----------------------------------------*/
.l-navi_footer{
    width: 100%;
    background: url(../img/230905/bg.png) repeat;
    background-size: 161px 154px;
}

.l-navi_footer ul.l-navi_footer_list{
    width: 100%;
    margin: auto auto 20px;
    padding: 12px 0 ;
    position: relative;
}

.l-navi_footer ul.l-navi_footer_list li{
    position: relative;
    padding: 0  0 12px;
}

.l-navi_footer ul.l-navi_footer_list li a{
    display: block;
    color: var(--white);
    font-family: var(--nota);
    font-size: 18px;
    padding: 20px 0 20px 12px;
    position: relative;
    transition: all 0.3s ease-out;
}

.l-navi_footer ul.l-navi_footer_list li a:hover{
    background: rgba(255,255,255,0.8);
    color: var(--blue);
}

.l-navi_footer ul.l-navi_footer_list li a:active,
.l-navi_footer ul.l-navi_footer_list li a:focus{
    background: rgba(255,255,255,1);
    color: var(--blue);
}

.l-navi_footer ul.l-navi_footer_list li a.ico_next::before{
    content: '';
    width: 8px;
    height: 8px;
    border: 0;
    border-top: solid 2px var(--white);
    border-right: solid 2px var(--white);
    position: absolute;
    top: 50%;
    right: 20%;
    margin-top: -4px;
    transform: rotate(45deg);
}

.l-navi_footer ul.l-navi_footer_list li a::before{
    content: '';
    border: 0;
    border-top: solid 2px var(--white);
    border-right: solid 2px var(--white);
    position: absolute;
    top: 50%;
    margin-top: -4px;
}

.l-navi_footer ul.l-navi_footer_list li a:focus::before{
    border-top: solid 2px var(--blue);
    border-right: solid 2px var(--blue);
}

.l-navi_footer ul.l-navi_footer_list li a.ico_next::before{
    width: 8px;
    height: 8px;
    right: 16px;
    margin-top: -4px;
    transform: rotate(45deg);
}

.l-navi_footer ul.l-navi_footer_list li a.ico_up::before{
    width: 8px;
    height: 8px;
    right: 12px;
    margin-top: -4px;
    transform: rotate(-45deg);
}

.l-navi_footer ul.l-navi_footer_list li a:hover::before{
    border-top: solid 2px var(--blue);
    border-right: solid 2px var(--blue);
}

.l-navi_footer ul.l-navi_footer_list li a p{
    font-family: var(--dela);
    font-size: 15px;
    line-height: 16px;
}

.l-navi_footer ul.l-navi_footer_list li a span{
    font-size: 18px;
}

.l-navi_footer ul.l-navi_footer_list::before,
.l-navi_footer ul.l-navi_footer_list li::after{
    content: '';
    background: url('../img/230905/navi_border.png');
    background-size: 100% auto;
    position: absolute;
    left: 0;
    width: 100%;
    height: 12px;
}

.l-navi_footer ul.l-navi_footer_list::before{
    top: 0;
}

.l-navi_footer ul.l-navi_footer_list li:not(:last-child)::after{
    bottom: 0;
}

.l-navi_footer .l-navi_footer_banner a{
    display: block;
    border: 2px solid #fff;
    width: 280px;
    margin: auto;
    box-sizing: border-box;
}

.l-navi_footer .l-navi_footer_sns{
    max-width: 76px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    padding-bottom: 80px;
}

.l-navi_wrapper .l-navi_footer_sns li a{
    display: block;
}

 .l-navi_wrapper .l-navi_footer_sns li a .ico_line{
    width: 42.1%;
    height: auto;
}

.l-navi_wrapper .l-navi_footer_sns li a .ico_line{
    width: 36.84%;
    height: auto;
}

@media screen and (max-width: 750px){
    .l-navi_footer ul.l-navi_footer_list li a{
        font-size: 4.787vw;
    }

    .l-navi_footer ul.l-navi_footer_list li a p{
        font-size: 3.989vw;
    }

    .l-navi_footer ul.l-navi_footer_list li a span{
        font-size: 4.787vw;
    }
}