/* ------------------------------ */
/* BAIJIU WEB3.0 FAN CLUB        */
/* ---------------------------- */

/* COMMON SETTING             */

@import url("https://p.typekit.net/p.css?s=1&k=myk2sun&ht=tk&f=15665.15666&a=12014073&app=typekit&e=css");

@font-face {
    font-family:"trajan-pro-3";
    src:url("https://use.typekit.net/af/6799c3/000000000000000000012e92/27/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff2"),url("https://use.typekit.net/af/6799c3/000000000000000000012e92/27/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("woff"),url("https://use.typekit.net/af/6799c3/000000000000000000012e92/27/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3") format("opentype");
    font-display:auto;font-style:normal;font-weight:400;font-stretch:normal;
}

@font-face {
    font-family:"trajan-pro-3";
    src:url("https://use.typekit.net/af/183be2/000000000000000000012e8f/27/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff2"),url("https://use.typekit.net/af/183be2/000000000000000000012e8f/27/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("woff"),url("https://use.typekit.net/af/183be2/000000000000000000012e8f/27/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n7&v=3") format("opentype");
    font-display:auto;font-style:normal;font-weight:700;font-stretch:normal;
}

.tk-trajan-pro-3 {
    font-family: "trajan-pro-3",serif;
}

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;700&display=swap');

*:focus {
    outline: none;
}

html {
    font-size: 62.5%;
}

body {
    background: #000;
    font-family: 'Noto Serif JP', serif;
    font-size: 1.6em;
    line-height: 2.3;
    letter-spacing: 1.1px;
    color: #B4B3B3;
    font-weight: 500;
}

.no-scroll {
    overflow: hidden;
}

.border_btn {
    border: solid 1px #B4B3B3;
    background: #000;
    position: relative;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.border_btn:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    border: 4px solid transparent;
    border-left: 7px solid #B4B3B3;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.border_btn:hover {
    border: solid 1px #8E6A1A;
}

.border_btn:hover a {
    color: #8E6A1A;
}

.border_btn:hover:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    border: 4px solid transparent;
    border-left: 7px solid #8E6A1A;
}

.bg_yellow_btn {
    border: solid 1px #8E6A1A;
    background: #8E6A1A;
    color: #FFF;
    position: relative;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.bg_yellow_btn:hover {
    border: solid 1px #FFF;
    background: #FFF;

}

.bg_yellow_btn:hover a {
    color: #8E6A1A;
}

.bg_yellow_btn:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    border: 4px solid transparent;
    border-left: 7px solid #FFF;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.bg_yellow_btn:hover:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    border: 4px solid transparent;
    border-left: 7px solid #8E6A1A;
}

.bg_yellow_btn a {
    color: #FFF;
}

.border_btn a,
.bg_yellow_btn a {
    display: block;
    text-align: center;
    padding: 18px;
    line-height: 1;
}

.bg_yellow_btn a {
    padding: 24px;
    line-height: 1.0;
}

a,
a span {
    color: #B4B3B3;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

a.text_link:hover,
a.text_link:hover span {
    color: #8E6A1A;
}

.fade-out{
    opacity:0;
    -webkit-transition:all 0.8s;
    -moz-transition:all 0.8s;
    -o-transition:all 0.8s;
    -ms-transition:all 0.8s;
    transition:all 0.8s;
}

.fade-out2{
    opacity:0;
    -webkit-transition:all 0.4s;
    -moz-transition:all 0.4s;
    -o-transition:all 0.4s;
    -ms-transition:all 0.4s;
    transition:all 0.4s;
}


.fade-in{
    opacity:1;
}

.fade-in2{
    opacity:1;
}

.to_pc {
    display: block;
}

.to_sp {
    display: none;
}

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

    .to_sp {
        display: block !important;
    }

    .border_btn:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 2.667vw;
        transform: translateY(-50%);
        border: 0.8vw solid transparent;
        border-left: 1.6vw solid #B4B3B3;
    }
    
    .border_btn:hover:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 2.667vw;
        transform: translateY(-50%);
        border: 0.8vw solid transparent;
        border-left: 1.6vw solid #8E6A1A;
    }

    .bg_yellow_btn:after {
        border: 1.067vw solid transparent;
        border-left: 1.867vw solid #FFF;
    }
}

/* PAGE LAYOUT */

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 130px;
    height: 100%;
    border-right: solid 2px #707070;
    background: #000;
    z-index: 10;
}

header .logo {
    width: 88px;
    height: 88px;
    position: absolute;
    top: 45px;
    left: 0;
    right: 0;
    margin: auto;
}

header .menu_btn {
    width: 33px;
    height: 33px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

header .menu_btn button {
    width: 33px;
    height: 24px;
    display: flex !important;
    background: none;
    align-items: center;
    justify-content: center;
}

header .menu_btn .menu_border {
    position: absolute;
    border-top: 2px solid #B4B3B3;
    width: 33px;
    height: 2px;
    transition: all .2s;
    transform: translateY(-2px);
    transform: rotate(0deg);
}

header .menu_btn .menu_border:first-child {
    transform: translateY(6px);
}

header .menu_btn.active .menu_border:nth-child(1) {
    transform: rotate(23deg);
    top: 36%;
}

header .menu_btn.active .menu_border:nth-child(2) {
    transform: rotate(-23deg);
    top: 36%;
}

header .bottom_text {
    width: 128px;
    height: 128px;
    background: #8E6A1A;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    display: flex;
    justify-content: center;
}

header .bottom_text p {
    font-family: "trajan-pro-3",serif;
    color: #FFFFFF;
    font-size: 1.7rem;
    line-height: 1.5;
    text-align: left;
    display: flex;
    align-items: center;
}

header .bottom_text p a {
	color: #FFFFFF;
}

.main_menu {
    display: none;
    margin-left: 130px;
    position: fixed;
    top: 0;
    left: 0;
    width: calc(100% - 130px);
    height: 100vh;
    overflow: hidden;
    background: #000;
    z-index: 3;
}

.main_menu .links {
    position: absolute;
    top: 4.167vw;
    left: 5.208vw;
}

.main_menu .buttons {
    width: 360px;
    position: absolute;
    bottom: 0;
    left: 14.611vw;
}

.main_menu .buttons .border_btn a, .bg_yellow_btn a {
    display: block;
    text-align: center;
    padding: 18px;
    line-height: 1;
}

.main_menu .menu ul li {
    margin-right: 4.861vw;
    margin-bottom: 4.167vw;
    line-height: 1;
} 

.main_menu .menu ul li:last-child {
    margin-bottom: 0;
}

.main_menu .menu ul li a {
    font-family: "trajan-pro-3",serif;
    font-size:clamp(16px, 1.667vw, 24px);
}


.main_menu .buttons ul li {
    margin-bottom: 2.083vw;
    width: 45%;
}
.main_menu .buttons ul li:last-child {
    width: 83%;
    margin-bottom: 0;
}

.main_menu .buttons ul li:nth-child(3) {
    margin-bottom: 50px;
}


.main_menu .language {
    position: absolute;
    bottom: 6.25vw;
    left: 5.208vw;
    width: 26.889vw;
    height: 2.5vw;
}

@media screen and (min-width: 1440px) {
    .main_menu .menu ul li {
        margin-right: 4.861vw;
        margin-bottom: 3.467vw;
        line-height: 1;
    }

    .main_menu .buttons {
        position: absolute;
        bottom: 0;
        left: 13.611vw;
    }

    .main_menu .menu ul li a {
        font-size: 1.667vw;
    }
    
    .main_menu .language {
        position: absolute;
        bottom: 3.25vw;
        width: 13.889vw;
        height: 2.5vw;
    }
} 

.main_menu .language ul {
    display: flex;
}

.main_menu .language ul li a {
    font-size: 1.8rem;
}

.main_menu .big_text {
    position: absolute;
    bottom: -2.222vw;
    right: -1.306vw;
    font-size: 9.0rem;
}

.main_menu .big_text p {
    font-family: "trajan-pro-3",serif;
    font-size: 8.328vw;
    line-height: 1.1;
}

footer {
    height: 363px;
/*     margin-top: 11.111vw; */
     margin-top: 0;
    margin-left: 138px;
    margin-bottom: 7.292vw;
}

#top-page footer {
	margin-top: 5vw;
}

footer .inner {
    display: flex;
    width: 71.944vw;
    height: 363px;
    margin: 0 auto;
    justify-content: space-between;
}

footer .inner .footer_logo {
    width: 18.611vw;
    max-width: 268px;
    display: flex;
    align-items: center;
}

footer .inner .footer_logo a {
    display: block;
    width: 100%;
}

footer .inner .footer_logo img {
    width: 100%;
    height: auto;
}

footer .inner .footer_link {
    display: flex;
}

footer .inner .footer_link div {
    display: flex;
    align-items: flex-end;
    margin-left: 4.167vw;
}

footer .inner .footer_link ul li a {
    font-family: "trajan-pro-3",serif;
}

main {
    margin: 0 0 0 130px;
    /*margin: 0 0 0 138px;*/
    overflow: hidden;
}

main .column {
    -webkit-display: flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

main .column img {
    width: 100%;
    height: auto;
}

main h2,
main h3 {
    font-family: "trajan-pro-3",serif;
}

main h2 span,
main h3 span {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.4rem;
}

main h2 {
    font-size: 5.2rem;
    line-height: 1.0;
}

main h3 {
    font-size: 3.0rem;
    line-height: 1.6;
    margin-bottom: 40px;
}


@media screen and (max-width: 820px) {
    body {
        font-size: 3.733vw;
        line-height: 1.7;
    }

    body.menu-open {
        overflow: hidden;
    }
    
    header {
        position: fixed;
        top: 0;
        width: 100%;
        height: 19.733vw;
        border: none;
        transition: top 0.8s, opacity 0.8s;
    }
        
    #top-page header {
        opacity: 0;
    }

    header.header-visible {
        opacity: 1 !important;
    }
    
    header .logo {
        width: 14.133vw;
        height: 14.133vw;
        position: absolute;
        top: 3.2vw;
        left: 3.733vw;
        right: unset;
    }

    header .logo a {
        display: block;
    }

    header .logo a img {
        width: 100%;
        height: auto;
    }

    
    header .menu_btn {
        width: 9.6vw;
        height: 9.6vw;
        position: absolute;
        top: 0.733vw;
        left: unset;
        right: 6.133vw;
        margin: auto;
    }
    
    header .menu_btn button {
        width: 9.6vw;
        height: 6.6vw;
        display: flex !important;
        background: none;
        align-items: center;
        justify-content: center;
    }
    
    header .menu_btn .menu_border {
        position: absolute;
        border-top: 2px solid #B4B3B3;
        width: 8.8vw;
        height: 0.533vw;
        transition: all .2s;
        transform: translateY(-0.533vw);
        transform: rotate(0deg);
    }
    
    header .menu_btn .menu_border:first-child {
        transform: translateY(1.6vw);
    }
    
    header .menu_btn.active .menu_border:nth-child(1) {
        transform: rotate(23deg);
        top: 36%;
    }
    
    header .menu_btn.active .menu_border:nth-child(2) {
        transform: rotate(-23deg);
        top: 36%;
    }
    
    .main_menu {
        display: none;
        margin-left: 0;
        z-index: 5;
        width: 100%;
    }
    
    .main_menu .links {
        position: absolute;
        top: 21.333vw;
        width: 85.667vw;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .main_menu .buttons {
        width: 56.533vw;
        position: absolute;
        bottom: 0;
        left: unset;
        right: 0;
    }
    
    .main_menu .buttons .border_btn a, .bg_yellow_btn a {
        display: block;
        text-align: center;
        padding: 3.07vw;
        line-height: 1;
        font-size: 3.733vw;
    }
    
    .main_menu .menu ul li {
        margin-right: 4.861vw;
        margin-bottom: 13.2vw;
        line-height: 1;
    } 
    
    .main_menu .menu ul li:last-child {
        margin-bottom: 0;
    }
    
    .main_menu .menu ul li a {
        font-size: 3.733vw;
    }
    
    
    .main_menu .buttons ul li {
        margin-bottom: 7.467vw;
          text-align: right;
        margin-left: auto;
        width: 60%;
		    margin-left: auto;
		    margin-right: 0;
    }
    
    .main_menu .buttons ul li:nth-child(3) {
        margin-bottom: 7.467vw;
    }
        
    .main_menu .buttons ul li:last-child {
        width: 100%;
        margin-bottom: 0;
    }
        
    .main_menu .buttons ul li:last-child a {
        font-size: 2.933vw;
        padding: 4.07vw;
    }

    .main_menu .buttons ul li.border_btn:after {
        right: 0.8vw;
    }

    .main_menu .buttons ul li.bg_yellow_btn:after {
        right: 0.8vw;
    }

    .main_menu .menu_logo {
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 53.267vw;
        right: 4.8vw;
    }
    
    .main_menu .menu_logo img {
        width: 100%;
    }

    .main_menu .language {
        position: absolute;
        bottom: 37.25vw;
        left: 7vw;
        width: 77.889vw;
        height: 6.5vw;
    }

    .main_menu .language ul {
        display: flex;
        width: fit-content;
    }

    .main_menu .language ul li a {
        font-size: 3.467vw;
        letter-spacing: 0.2em;
    }

    .main_menu .big_text {
        width: 105vw;
        position: absolute;
        bottom: -3.4vw;
        left: -2.667vw;
        right: unset;
        font-size: 36.8vw;
    }

    .main_menu .big_text p {
        font-size: 14.1vw;
        line-height: 1;
    }

    footer {
        width: 86.08%;
        height: 89.4vw;
        margin: 18vw 6.96% 10.667vw;
    }

    footer .inner {
        position: relative;
        display: block;
        width: 100%;
        height: 77.194vw;
        margin: 0;
    }

    footer .inner .footer_logo {
        position: absolute;
        top: 0;
        right: 0;
        width: 33.867vw;
        display: block;
    }

    footer .inner .footer_logo a {
        display: block;
        width: 100%;
    }

    footer .inner .footer_logo img {
        width: 100%;
        height: auto;
    }

    footer .inner .footer_link {
        display: flex;
        flex-direction: row-reverse;
        justify-content: start;
        margin-bottom: 2.667vw;
    }

    footer .inner .footer_link div {
        display: flex;
        align-items: flex-end;
        margin-left: 0;
        margin-right: 8vw;
    }

    footer .inner .footer_link ul li {
        margin-bottom: 3.867vw;
    }

    footer .inner .footer_link ul li a {
        font-size: 3.2vw;
    }

    footer .inner .footer_bpttom ul li a {
        font-size: 2.667vw;
    }

    main {
        margin: 0;
    }

    main h2 span,
    main h3 span {
        font-size: 1.2rem;
    }

    main h3 {
        font-size: 1.6rem;
        line-height: 1.6;
        margin-bottom: 20px;
    }
} 

@media screen and (max-width: 820px) and (min-height: 780px) {
    .main_menu .menu ul li {
        margin-right: 4.861vw;
        margin-bottom: 12.6vw;
        line-height: 1;
    }

    .main_menu .menu_logo {
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 50.267vw;
        right: 4.8vw;
    }

    .main_menu .language {
        position: absolute;
        bottom: 38.25vw;
        left: 7vw;
        width: 68.889vw;
        height: 6.5vw;
    }
}

@media screen and (max-width: 355px) {
    .main_menu .big_text p {
        font-size: 14.0vw;
        line-height: 1;
    }

    .main_menu .menu ul li {
        margin-right: 4.861vw;
        margin-bottom: 8.6vw;
        line-height: 1;
    }

    .main_menu .menu_logo {
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 22.267vw;
        right: 4.8vw;
    }
}

/* INDEX */

.index h2 {
    margin-bottom: 50px;
}

.index h2.bg_black {
    line-height: 1.0;
    background: #000;
    width: fit-content;
/*     padding: 1.319vw 6.25vw 0.5vw; */
		padding:1.65vw 6.25vw 0.6vw;
    margin-bottom: 3.472vw;
}

.index h4 {
    font-size: 1.8rem;
    line-height: 1.0;
    margin-bottom: 1.667vw;
}

.index h2 span {
    font-size: 1.6rem;
    margin-left: 18px;
}

.index h2 span.faq_sub {
    margin-left: 40px;
}

.index p {
    line-height: 1.8;
}

.index .contents_block {
    width: 86.08%;
    margin: 0 6.96%;
}

.index .mv {
    width: 89.653vw;
    height: 50.694vw;
    position: relative;
    margin: 0 auto 3.889vw;
}

.mv_animation {
    display: block;
    background: #000;
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

.mv_animation .inner {
    width: 89.653vw;
    height: 50.694vw;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.mv_animation .circle_01 {
    background: url(../img/index/circle_01.png) no-repeat;
    background-size: 100%;
    width: 33.542vw;
    height: 12.431vw;
    position: absolute;
    bottom: 6.528vw;
    left: 31.042vw;
    opacity: 0;
}

.mv_animation .circle_02 {
    background: url(../img/index/circle_02.png) no-repeat;
    background-size: 100%;
    width: 25.208vw;
    height: 12.5vw;
    position: absolute;
    top: 19.306vw;
    right: 2.292vw;
    opacity: 0;
}

.mv_animation .circle_03 {
    background: url(../img/index/circle_03.png) no-repeat;
    background-size: 100%;
    width: 12.569vw;
    height: 12.569vw;
    position: absolute;
    top: 19.444vw;
    right: 9.028vw;
    opacity: 0;
}

.mv_animation .circle_04 {
    background: url(../img/index/circle_04.png) no-repeat;
    background-size: 100%;
    width: 28.264vw;
    height: 12.431vw;
    position: absolute;
    top: 7.014vw;
    left: 3.472vw;
    opacity: 0;
}

.mv_animation .circle_05 {
    background: url(../img/index/circle_05.png) no-repeat;
    background-size: 100%;
    width: 12.708vw;
    height: 12.708vw;
    position: absolute;
    bottom: 6.528vw;
    left: 7.986vw;
    opacity: 0;
}

.mv_animation .circle_06 {
    background: url(../img/index/circle_06.png) no-repeat;
    background-size: 100%;
    width: 12.5vw;
    height: 12.5vw;
    position: absolute;
    bottom: 6.458vw;
    left: 14.514vw;
    opacity: 0;
}

.mv_animation .circle_07 {
    background: url(../img/index/circle_07.png) no-repeat;
    background-size: 100%;
    width: 12.5vw;
    height: 12.917vw;
    position: absolute;
    bottom: 6.319vw;
    right: 7.5vw;
    opacity: 0;
}

.mv_animation .circle_08 {
    background: url(../img/index/circle_08.png) no-repeat;
    background-size: 100%;
    width: 12.5vw;
    height: 12.5vw;
    position: absolute;
    top: 19.375vw;
    left: 5.417vw;
    opacity: 0;
}

.mv_animation .circle_09 {
    background: url(../img/index/circle_09.png) no-repeat;
    background-size: 100%;
    width: 22.986vw;
    height: 25vw;
    position: absolute;
    top: 7.222vw;
    left: 18.056vw;
    opacity: 0;
}

.mv_animation .circle_10 {
    background: url(../img/index/circle_10.png) no-repeat;
    background-size: 100%;
    width: 12.431vw;
    height: 12.431vw;
    position: absolute;
    top: 19.931vw;
    left: 21.736vw;
    opacity: 0;
}

.mv_animation .circle_11 {
    background: url(../img/index/circle_11.png) no-repeat;
    background-size: 100%;
    width: 12.361vw;
    height: 12.431vw;
    position: absolute;
    top: 7.014vw;
    left: 13.472vw;
    opacity: 0;
}

.mv_animation .circle_12 {
    background: url(../img/index/circle_12.png) no-repeat;
    background-size: 100%;
    width: 12.5vw;
    height: 12.5vw;
    position: absolute;
    top: 19.306vw;
    left: 27.847vw;
    opacity: 0;
}

.mv_animation .circle_13 {
    background: url(../img/index/circle_13.png) no-repeat;
    background-size: 100%;
    width: 22.847vw;
    height: 24.861vw;
    position: absolute;
    bottom: 6.528vw;
    right: 12.153vw;
    opacity: 0;
}

.mv_animation .circle_14 {
    background: url(../img/index/circle_14.png) no-repeat;
    background-size: 100%;
    width: 12.361vw;
    height: 12.431vw;
    position: absolute;
    top: 7.083vw;
    left: 42.014vw;
    opacity: 0;
}

.mv_animation .circle_15 {
    background: url(../img/index/circle_15.png) no-repeat;
    background-size: 100%;
    width: 25.208vw;
    height: 13.125vw;
    position: absolute;
    bottom: 5.833vw;
    left: 26.597vw;
    opacity: 0;
}

.mv_animation .circle_16 {
    background: url(../img/index/circle_16.png) no-repeat;
    background-size: 100%;
    width: 12.431vw;
    height: 12.431vw;
    position: absolute;
    bottom: 6.597vw;
    left: 58.681vw;
    opacity: 0;
}

.mv_animation .circle_17 {
    background: url(../img/index/circle_17.png) no-repeat;
    background-size: 100%;
    width: 11.944vw;
    height: 12.569vw;
    position: absolute;
    bottom: 6.389vw;
    left: 27.153vw;
    opacity: 0;
}

.mv_animation .circle_18 {
    background: url(../img/index/circle_18.png) no-repeat;
    background-size: 100%;
    width: 12.431vw;
    height: 12.431vw;
    position: absolute;
    bottom: 6.458vw;
    left: 46.111vw;
    opacity: 0;
}

.mv_animation .circle_19 {
    background: url(../img/index/circle_19.png) no-repeat;
    background-size: 100%;
    width: 11.875vw;
    height: 12.292vw;
    position: absolute;
    top: 7.083vw;
    left: 36.111vw;
    opacity: 0;
}

.mv_animation .circle_20 {
    background: url(../img/index/circle_20.png) no-repeat;
    background-size: 100%;
    width: 12.431vw;
    height: 12.5vw;
    position: absolute;
    top: 6.806vw;
    right: 23.125vw;
    opacity: 0;
}

.mv_animation .circle_21 {
    background: url(../img/index/circle_21.png) no-repeat;
    background-size: 100%;
    width: 12.431vw;
    height: 12.431vw;
    position: absolute;
    top: 7.083vw;
    right: 10.833vw;
    opacity: 0;
}

.mv_animation .line_01 {
    background: url(../img/index/line_01.png) no-repeat;
    background-size: 100%;
    width: 16.319vw;
    height: 28.264vw;
    position: absolute;
    top: 4.861vw;
    left: 2.847vw;
    opacity: 0;
}

.mv_animation .line_02 {
    background: url(../img/index/line_02.png) no-repeat;
    background-size: 100%;
    width: 15.556vw;
    height: 34.514vw;
    position: absolute;
    top: 11.319vw;
    left: 17.917vw;
    opacity: 0;
}

.mv_animation .line_03 {
    background: url(../img/index/line_03.png) no-repeat;
    background-size: 100%;
    width: 33.472vw;
    height: 36.736vw;
    position: absolute;
    top: 3.958vw;
    right: 5.208vw;
    opacity: 0;
}

.mv_animation .logo_area {
    width: 20.692vw;
    height: 20.692vw;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 3;
}

.mv_animation .logo_area .logo_circle_small {
    background: url(../img/index/mv_logo_circle_small.png) no-repeat;
    background-size: 100%;
    width: 7.692vw;
    height: 7.692vw;
    position: absolute;
    top: 13.056vw;
    left: -3.472vw;
    opacity: 0;
}

.mv_animation .logo_area .logo_circle_big {
    background: url(../img/index/mv_logo_circle_big.png) no-repeat;
    background-size: 100%;
    width: 15.522vw;
    height: 15.522vw;
    position: absolute;
    top: 0;
    left: 9.306vw;
    opacity: 0;
}

.mv_animation .logo_area .logo_stick {
    background: url(../img/index/mv_logo_stick.png) no-repeat;
    background-size: 100%;
    width: 1.597vw;
    height: 9.236vw;
    position: absolute;
    top: 9.722vw;
    left: 6.65vw;
    transform: rotate(80deg);
    opacity: 0;
}

.mv_animation .logo_area .logo_circle_bridge {
    background: url(../img/index/logo_bg.png) no-repeat;
    background-size: 100%;
    width: 19.931vw;
    height: 20.972vw;
    position: absolute;
    top: -0.139vw;
    left: 0.694vw;
    opacity: 0;
}

.mv_animation #particles-js {
    width: 85.653vw;
    height: 40.236vw;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -0.278vw;
    margin: auto;
    opacity: 0;
    z-index: 2;
}

.mv_animation p {
    text-align: center;
    font-size: 1.597vw;
    color: #8E6A1A;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4.7%;
    margin: auto;
    opacity: 0;
}

.index .mv img {
    width: 100%;
}

.index .mv p {
    text-align: center;
    font-size: 1.597vw;
    color: #8E6A1A;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4.7%;
    margin: auto;
}

.index .introduction {
    width: 60.319vw;
    max-width: 1030px;
    background: url(../img/index/introduction_bg.png) no-repeat;
    background-size: 100%;
    margin-bottom: 17.361vw;
    padding-right: 10.069vw;
    padding-bottom: 14.847vw;
    position: relative;
}

.index .introduction .img01 {
    width: 33.542vw;
    height: 30.069vw;
    position: absolute;
    top: 3.472vw;
    right: -26.389vw;
}

.index .introduction .img01 .img_inner {
    width: 33.542vw;
    height: 30.069vw;
    position: relative;
}

.index .introduction .img01 .img01_1 {
    width: 14.167vw;
    height: 14.236vw;
    background: url(../img/index/introduction_img01_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 15.486vw;
    left: 6.042vw;
}

.index .introduction .img01 .img01_2 {
    width: 14.167vw;
    height: 14.236vw;
    background: url(../img/index/introduction_img01_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 2.917vw;
    left: 16.875vw;
}

.index .introduction .img01 .img01_3 {
    width: 14.167vw;
    height: 14.236vw;
    background: url(../img/index/introduction_img01_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 11.389vw;
    left: 0.625vw;
}

.index .introduction .img01 .img01_4 {
    width: 21.875vw;
    height: 32.569vw;
    background: url(../img/index/introduction_img01_4.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 0.278vw;
    left: 10.347vw;
}

.index .introduction .img02 {
    width: 33.542vw;
    height: 33.056vw;
    position: absolute;
    top: 31.944vw;
    right: -13.889vw;
}

.index .introduction .img02 .img_inner {
    width: 33.542vw;
    height: 30.069vw;
    position: relative;
}

.index .introduction .img02 .img02_1 {
    width: 13.611vw;
    height: 13.681vw;
    background: url(../img/index/introduction_img02_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 3.819vw;
    left: 16.25vw;
}

.index .introduction .img02 .img02_2 {
    width: 13.611vw;
    height: 13.681vw;
    background: url(../img/index/introduction_img02_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 15.417vw;
    left: 4.583vw;
}

.index .introduction .img02 .img02_3 {
    width: 32.222vw;
    height: 29.583vw;
    background: url(../img/index/introduction_img02_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 1.806vw;
    left: 0.625vw;
}

.mask-image {
    mask-image: url(../img/circle_mask.svg);
    mask-position: 50% 50%;
    mask-size: 0%;
    mask-repeat: no-repeat;
    -webkit-transition:all 0.8s;
    -moz-transition:all 0.8s;
    -o-transition:all 0.8s;
    -ms-transition:all 0.8s;
    transition:all 0.8s;
}

.mask-image.not-circle {
    mask-image: none;
    opacity: 0;
}

.mask-none {
    mask-image: url(../img/circle_mask.svg);
    mask-position: 50% 50%;
    mask-size: 100%;
    mask-repeat: no-repeat;
}

.mask-image.not-circle {
    mask-image: none;
    opacity: 0;
}


.mask-image.not-circle.mask-none {
    mask-image: none;
    opacity: 1;
}

.mask-line {
    opacity: 0;
    -webkit-transition:all 0.8s;
    -moz-transition:all 0.8s;
    -o-transition:all 0.8s;
    -ms-transition:all 0.8s;
    transition:all 0.8s;
}

.mask-line.show {
    opacity: 1;
}

.index .introduction .inner {
    width: 100%;
    max-width: 770px;
    background: #000;
    padding: 5.139vw 6.944vw;
}

.index .introduction .inner h2 {
    margin-bottom: 40px;
    width: auto;
    padding: unset;
}

.index .introduction .inner h2 span {
    font-family: "trajan-pro-3",serif;
    font-size: 4.2rem;
    margin-left: 0;
}

.index .introduction .inner .small_title {
    font-family: "trajan-pro-3",serif;
    font-size: 1.8rem;
    margin-bottom: 10px;
}

.index .introduction .inner p {
    margin-bottom: 40px;
}

.index .introduction .inner .link p {
    margin-bottom: 0;
}

.index .scroll_text {
    overflow: hidden;
    width: 100%;
    margin-bottom: 187px;
}

.index .scroll_text .scroll_text_parent {
    height: inherit;
    display: flex;
    width: 100vw;
    overflow: hidden;
}

.index .scroll_text .scroll_text_child {
    display: flex;
}
 
.index .scroll_text .scroll_text_child > div {
    width: 2230px;
    margin: 0 45px;
}

.index .scroll_text .scroll_text_child p {
    font-family: "trajan-pro-3",serif;
    font-size: 16.5rem;
    color: #5A5A5A;
    line-height: 1.4;
}
   
.index .scroll_text .scroll_text_child:nth-child(1) {
animation: bg_scroll_text_first 80s -40s linear infinite;
}

.index .scroll_text .scroll_text_child:nth-child(2) {
animation: bg_scroll_text_second 80s linear infinite;
}

@keyframes bg_scroll_text_first {
    0% {
      transform: translateX(100%);
    }
    to {
      transform: translateX(-100%);
    }
}

@keyframes bg_scroll_text_second {
    0% {
        transform: translateX(0);
    }
    to {
        transform: translateX(-200%);
    }
}


.index .step {
    margin-bottom: 5.889vw;
    width: 100%;
    overflow: hidden;
    background: url(../img/index/step_bg.png) no-repeat;
    background-position: top left;
    padding: 3.472vw 0 0;
}


.index .step .title {
line-height: 0.85em;
}


.index .step .step-container {
    width: 100%;
    padding: 0 6.96%;
}

.index .step .step-container-inner {
    width: 100%;
    position: relative;
}

.index .step .step-container-inner .side-scroll-list-wrapper {
    width: 100%;
    height: 34.722vw;
}

.index .step ul.side-scroll-list {
    position: absolute;
    top: 0.694vw;
    left: 0;
    display: flex;
}

.index .step ul.side-scroll-list .side-scroll-item {
    display: flex;
    align-items: flex-start;
    width: 59.722vw;
    height: 32.639vw;
    margin: 0 2.083vw 0 0;
}

.index .step .step-container-inner .step-container-inner-item {
    display: flex;
    justify-content: space-between;
/*     width: calc(100% - -38px); */
}

.index .step ul li .image {
    width: 19.792vw;
margin: 0 !important;
}

.index .step ul li .image img {
    width: 100%;
}

.index .step ul li .details {
    width: 37.708vw;
    background: #000;
    padding: 3.472vw 2.778vw;
    /*padding: 3.472vw 2.778vw;*/
    position: relative;
}

.index .step ul li .details .num {
    font-family: "trajan-pro-3",serif;
    font-size: 8rem;
    line-height: 1.0;
    position: absolute;
    top: -2.778vw;
    right: 2.778vw;
    z-index: 2;
}

.index .step ul li .details p {
    margin-bottom: 0.95vw 
    /*margin-bottom: 2.778vw;*/
}

.index .step ul li .details p:last-child {
    margin-bottom: 0;
}

.index .step ul li .details p span {
    font-size: 1.2rem;
}

.index .step ul li .details .title {
    font-size: 2.6rem;
    line-height: 1.0;
    margin-bottom: 20px;
}

.index .step ul li .details .border_btn {
    width: 316px;
}

.index .step ul li .details .border_btn a {
    font-size: 2.0rem;
    padding: 21px 18px;
}

.index .store {
    margin-top: 300px;
    margin-bottom: 200px;
    position: relative;
}

.index .store .img01 {
    width: 39.167vw;
    height: 22.917vw;
    position: absolute;
    top: -17.361vw;
    right: 1.389vw;
}

.index .store .img01 .img_inner {
    width: 39.167vw;
    height: 22.917vw;
    position: relative;
}

.index .store .img01 .img01_1 {
    width: 10.417vw;
    height: 10.417vw;
    background: url(../img/index/store_img01_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 7.569vw;
    left: 10.278vw;
}

.index .store .img01 .img01_2 {
    width: 10.347vw;
    height: 10.417vw;
    background: url(../img/index/store_img01_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 11.806vw;
    left: 21.875vw;
}

.index .store .img01 .img01_3 {
    width: 10.417vw;
    height: 10.417vw;
    background: url(../img/index/store_img01_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 5.764vw;
    left: 5.486vw;
}

.index .store .img01 .img01_4 {
    width: 36.736vw;
    height: 14.097vw;
    background: url(../img/index/store_img01_4.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 5.833vw;
    left: 0.694vw;
}

.index .project_info {
    height: 23.611vw;
    margin: 0 auto 13.889vw;
    position: relative;
}

.index .project_info .inner {
    width: 68.056vw;
    max-width: 980px;
    height: 170px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.index .project_info .bg_text {
    font-size: 25vw;
    line-height: 1.0;
    font-family: "trajan-pro-3",serif;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.index .project_info a {
    width: 68.056vw;
    max-width: 980px;
    height: 11.806vw;
    max-height: 170px;
    background: url(../img/index/project_info_banner.jpg) no-repeat;
    background-size: 100%;
    position: relative;
    display:flex;
    align-items: center;
    justify-content: center;

}

.index .project_info a span {
    font-size:clamp(20px, 2.222vw, 32px);
    width: 100%;
    display: inline-block;
    text-align: center;
    z-index: 2;
}

.index .project_info a span:after {
    content: "";
    position: absolute;
    top: 52%;
    right: 10%;
    transform: translateY(-50%);
    border: 7px solid transparent;
    border-left: 13px solid #B4B3B3;
}

.index .project_info a:before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: rgba(0,0,0,.2);
    z-index: 1;
    transition: 0.3s ease-in-out;
}

.index .project_info a:hover:before {
    background-color: rgba(0,0,0,.6);
}

.index .faq {
    background: url(../img/index/faq_bg.png) no-repeat;
    background-size: 40%;
    background-position: top left;
    padding-top: 93px;
    margin-bottom: 200px;
    position: relative;
}

.index .faq .img01 {
    width: 37.153vw;
    height: 36.597vw;
    position: absolute;
    top: -4.167vw;
    left: 38.056vw;
}

.index .faq .img01 .img_inner {
    width: 37.153vw;
    height: 36.597vw;
    position: relative;
}

.index .faq .img01 .img01_1 {
    width: 20.208vw;
    height: 18.542vw;
    background: url(../img/index/faq_img01_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 12.361vw;
    left: 4.306vw;
}

.index .faq .img01 .img01_2 {
    width: 11.597vw;
    height: 11.597vw;
    background: url(../img/index/faq_img01_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 3.958vw;
    left: 23.194vw;
}

.index .faq .img01 .img01_3 {
    width: 37.153vw;
    height: 20.347vw;
    background: url(../img/index/faq_img01_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 6.836vw;
    left: 0;
}

.index .faq .questions {
    margin-top: 19.444vw;
}

.index .faq .questions .question .toggle {
    display: none;
}

.index .faq .questions .question {
    position: relative;
    margin-bottom: 60px;
}

.index .faq .questions .question .answer {
    padding: 0 50px;
}

.index .faq .questions .question .answer div {
    margin-top: 40px;
}

.index .faq .questions .question .title,
.index .faq .questions .question .answer {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.5s;
}

.index .faq .questions .question .title {
    display: block;
    font-size: 1.8rem;
    background: url(../img/index/icon_question.svg) no-repeat;
    background-position: top left;
    padding-left: 40px;
}

.index .faq .questions .question .title::after,
.index .faq .questions .question .title::before {
    content: "";
    position: absolute;
    right: 1.25em;
    top: 13px;
    width: 2px;
    height: 0.75em;
    background-color: #B4B3B3;
    transition: all 0.3s;
}

.index .faq .questions .question .answer {
    max-height: 0;
    overflow: hidden;
}

.index .faq .questions .question .title::after {
    transform: rotate(90deg);
}

.index .faq .questions .question .toggle:checked + .title + .answer {
    max-height: 500px;
    transition: all 1.5s;
}

.index .faq .questions .question .answer p {
    font-weight: 700;
}

.index .faq .questions .question .toggle:checked + .title::before {
    transform: rotate(90deg) !important;
}

.index .news {
    margin-bottom: 200px;
}

.index .contact {
    background: url(../img/index/contact_bg.png) no-repeat;
    background-size: 100%;
    position: relative;
    height: 31.389vw;
}

.index .contact .title {
margin: 100px 0 0 0 !important;
}


.index .contact .bg_yellow_btn {
    width: 418px;
    height: 86px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.index .contact .bg_yellow_btn a {
    font-size: 1.8rem;
    padding: 30px 18px;
}

@media screen and (max-width: 820px) {
    .index h2 {
        font-size: 10.133vw;
        line-height: 1.0;
        margin-bottom: 6.933vw;
    }
    
    .index h2.bg_black {
        line-height: 1.4;
        background: #000;
        width: fit-content;
        padding: 5.39vw 4.867vw 3.48vw;
    }

    @media screen and (-webkit-min-device-pixel-ratio: 2) {
        .index h2.bg_black {
            line-height: 0.7; /* iOS用のline-heightの値 */
        }
    }
    
    .index h4 {
        font-size: 4.8vw;
        line-height: 1.7;
        margin-bottom: 4.8vw;
    }
    
    .index h2 span {
        font-size: 2.667vw;
        margin-left: 4.8vw;
        letter-spacing: -0.1px;
    }    

    @media screen and (-webkit-min-device-pixel-ratio: 2) {
        .index h2 span {
            font-size: 3.2vw;
            letter-spacing:normal;
        }    
    }

    .index h2 span.sub_br {
        margin-left: 0;
    }
    
    .index p {
        line-height: 1.8;
    }
    
    .index .contents_block {
        width: 86.08%;
        margin: 0 6.96%;
    }
    
    .index .mv {
        width: 86.08%;
        height: 146.667vw;
        margin: 0 6.96%;
        position: relative;
        margin-top: 5vw;
        margin-bottom: 33.067vw;
    }
    
    .index .mv p {
        font-size: 4.3vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -6.3%;
        margin: auto;
    }
    
    .mv_animation {
        display: block;
        background: #000;
        width: 100vw;
        height: 100vh;
        height: 100dvh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
    }
    
    .mv_animation .inner {
        width: 86.08%;
        height: 147.667vw;
        margin: auto;
        position: absolute;
        top: -8vw;
        left: 0;
        right: 0;
        bottom: 0;
    }
    
    .mv_animation .circle_01 {
        background: url(../img/index/sp/circle_01.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 62.667vw;
        position: absolute;
        bottom: 39.4vw;
        left: 8.533vw;
        opacity: 0;
    }
    
    .mv_animation .circle_02 {
        background: url(../img/index/sp/circle_02.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 47.2vw;
        position: absolute;
        top: 99.2vw;
        right: 31.467vw;
        opacity: 0;
    }
    
    .mv_animation .circle_03 {
        background: url(../img/index/sp/circle_03.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 23.467vw;
        position: absolute;
        top: 108vw;
        right: 31.733vw;
        opacity: 0;
    }
    
    .mv_animation .circle_04 {
        background: url(../img/index/sp/circle_04.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 53.333vw;
        position: absolute;
        top: 8.267vw;
        left: 54.667vw;
        opacity: 0;
    }
    
    .mv_animation .circle_05 {
        background: url(../img/index/sp/circle_05.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 6.133vw;
        bottom: auto;
        left: 8.8vw;
        opacity: 0;
    }
    
    .mv_animation .circle_06 {
        background: url(../img/index/sp/circle_06.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 15.467vw;
        bottom: auto;
        left: 8.8vw;
        opacity: 0;
    }
    
    .mv_animation .circle_07 {
        background: url(../img/index/sp/circle_07.png) no-repeat;
        background-size: 100%;
        width: 22.933vw;
        height: 22.4vw;
        position: absolute;
        bottom: 7.733vw;
        right: 54.667vw;
        opacity: 0;
    }
    
    .mv_animation .circle_08 {
        background: url(../img/index/sp/circle_08.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 1.333vw;
        left: 30.667vw;
        opacity: 0;
    }
    
    .mv_animation .circle_09 {
        background: url(../img/index/sp/circle_09.png) no-repeat;
        background-size: 100%;
        width: 46.133vw;
        height: 42.667vw;
        position: absolute;
        top: 22.667vw;
        left: 30.667vw;
        opacity: 0;
    }
    
    .mv_animation .circle_10 {
        background: url(../img/index/sp/circle_10.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 27.2vw;
        left: 30.667vw;
        opacity: 0;
    }
    
    .mv_animation .circle_11 {
        background: url(../img/index/sp/circle_11.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 23.467vw;
        position: absolute;
        top: 21.6vw;
        left: 53.867vw;
        opacity: 0;
    }
    
    .mv_animation .circle_12 {
        background: url(../img/index/sp/circle_12.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 23.467vw;
        position: absolute;
        top: 35.733vw;
        left: 31.467vw;
        opacity: 0;
    }
    
    .mv_animation .circle_13 {
        background: url(../img/index/sp/circle_13.png) no-repeat;
        background-size: 100%;
        width: 45.6vw;
        height: 42.133vw;
        position: absolute;
        bottom: 19.4vw;
        right: 31.2vw;
        opacity: 0;
    }
    
    .mv_animation .circle_14 {
        background: url(../img/index/sp/circle_14.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        top: 74.133vw;
        left: 53.867vw;
        opacity: 0;
    }
    
    .mv_animation .circle_15 {
        background: url(../img/index/sp/circle_15.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 47.2vw;
        position: absolute;
        bottom: 61.067vw;
        left: 8.533vw;
        opacity: 0;
    }
    
    .mv_animation .circle_16 {
        background: url(../img/index/sp/circle_16.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 23.467vw;
        position: absolute;
        bottom: 25.867vw;
        left: 8.8vw;
        opacity: 0;
    }
    
    .mv_animation .circle_17 {
        background: url(../img/index/sp/circle_17.png) no-repeat;
        background-size: 100%;
        width: 23.467vw;
        height: 22.133vw;
        position: absolute;
        bottom: 85.333vw;
        left: 8.267vw;
        opacity: 0;
    }
    
    .mv_animation .circle_18 {
        background: url(../img/index/sp/circle_18.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 23.2vw;
        position: absolute;
        bottom: 54.933vw;
        left: 8.533vw;
        opacity: 0;
    }
    
    .mv_animation .circle_19 {
        background: url(../img/index/sp/circle_19.png) no-repeat;
        background-size: 100%;
        width: 23.2vw;
        height: 22.4vw;
        position: absolute;
        top: 62.933vw;
        left: 54.133vw;
        opacity: 0;
    }
    
    .mv_animation .circle_20 {
        background: url(../img/index/sp/circle_20.png) no-repeat;
        background-size: 100%;
        width: 22.667vw;
        height: 22.667vw;
        position: absolute;
        top: 97.067vw;
        right: 8.533vw;
        opacity: 0;
    }
    
    .mv_animation .circle_21 {
        background: url(../img/index/sp/circle_21.png) no-repeat;
        background-size: 100%;
        width: 22.933vw;
        height: 22.933vw;
        position: absolute;
        top: 119.733vw;
        right: 9.067vw;
        opacity: 0;
    }
    
    .mv_animation .line_01 {
        background: url(../img/index/sp/line_01.png) no-repeat;
        background-size: 100%;
        width: 84.267vw;
        height: 56.533vw;
        position: absolute;
        top: 0.267vw;
        left: 1.867vw;
        opacity: 0;
    }
    
    .mv_animation .line_02 {
        background: url(../img/index/sp/line_02.png) no-repeat;
        background-size: 100%;
        width: 53.867vw;
        height: 31.467vw;
        position: absolute;
        top: 1.867vw;
        left: 28vw;
        opacity: 0;
    }
    
    .mv_animation .line_03 {
        background: url(../img/index/sp/line_03.png) no-repeat;
        background-size: 100%;
        width: 85.6vw;
        height: 48.533vw;
        position: absolute;
        top: 96.533vw;
        right: 0px;
        opacity: 0;
    }
    
    .mv_animation .logo_area {
        width: 39.692vw;
        height: 39.692vw;
        position: absolute;
        top: 6.133vw;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        z-index: 3;
    }
    
    .mv_animation .logo_area .logo_circle_small {
        background: url(../img/index/mv_logo_circle_small.png) no-repeat;
        background-size: 100%;
        width: 15.2vw;
        height: 15.2vw;
        position: absolute;
        top: 24.267vw;
        left: -4.533vw;
        opacity: 0;
    }
    
    .mv_animation .logo_area .logo_circle_big {
        background: url(../img/index/mv_logo_circle_big.png) no-repeat;
        background-size: 100%;
        width: 30.667vw;
        height: 30.667vw;
        position: absolute;
        top: -2.4vw;
        left: 13.067vw;
        opacity: 0;
    }
    
    .mv_animation .logo_area .logo_stick {
        background: url(../img/index/mv_logo_stick.png) no-repeat;
        background-size: 100%;
        width: 3vw;
        height: 16.333vw;
        position: absolute;
        top: 18.033vw;
        left: 11.9vw;
        transform: rotate(1deg);
        opacity: 0;
    }
    
    .mv_animation .logo_area .logo_circle_bridge {
        background: url(../img/index/logo_bg.png) no-repeat;
        background-size: 100%;
        width: 40vw;
        height: 45.6vw;
        position: absolute;
        top: -2.4vw;
        left: -0.267vw;
        opacity: 0;
    }
    
    .mv_animation #particles-js {
        width: 86.333vw;
        height: 147.236vw;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: -0.333vw;
        margin: auto;
        opacity: 0;
        z-index: 2;
    }
    
    .mv_animation p {
        font-size: 4.3vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -7.1%;
        margin: auto;
    }
    
    .index .introduction {
        width: 100%;
        max-width: unset;
        background: url(../img/index/sp/introduction_bg.png) no-repeat;
        background-size: 100%;
        margin-bottom: 37.867vw;
        padding-top: 14.667vw;
        padding-right: 7.2vw;
        padding-bottom: 14.847vw;
        position: relative;
    }
    
    .index .introduction .img01 {
        width: 61.867vw;
        height: 60.8vw;
        position: absolute;
        top: unset;
        bottom: -7.333vw;
        right: 0px;
    }

    .index .introduction .img01 .img_inner {
        width: 61.867vw;
        height: 60.8vw;
        position: relative;
    }
    
    .index .introduction .img01 .img01_1 {
        width: 25.867vw;
        height: 25.867vw;
        background: url(../img/index/introduction_img01_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 28.533vw;
        left: 11.2vw;
    }
    
    .index .introduction .img01 .img01_2 {
        width: 25.867vw;
        height: 25.867vw;
        background: url(../img/index/introduction_img01_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 5.333vw;
        left: 31.2vw;
    }
    
    .index .introduction .img01 .img01_3 {
        width: 25.867vw;
        height: 26.667vw;
        background: url(../img/index/introduction_img01_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 20.8vw;
        left: 1.067vw;
    }
    
    .index .introduction .img01 .img01_4 {
        width: 40vw;
        height: 61.333vw;
        background: url(../img/index/introduction_img01_4.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 0.533vw;
        left: 19.2vw;
    }
    
    .index .introduction .img02 {
        width: 52.267vw;
        height: 51.467vw;
        position: absolute;
        top: unset;
        right: unset;
        bottom: -26.667vw;
        left: 2.667vw;
    }
    
    .index .introduction .img02 .img_inner {
        width: 52.267vw;
        height: 51.467vw;
        position: relative;
    }
    
    .index .introduction .img02 .img02_1 {
        width: 21.333vw;
        height: 21.333vw;
        background: url(../img/index/sp/introduction_img02_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 5.867vw;
        left: 5.067vw;
    }
    
    .index .introduction .img02 .img02_2 {
        width: 21.333vw;
        height: 21.333vw;
        background: url(../img/index/sp/introduction_img02_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 24vw;
        left: 23.467vw;
    }
    
    .index .introduction .img02 .img02_3 {
        width: 50.4vw;
        height: 47.2vw;
        background: url(../img/index/sp/introduction_img02_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 2.667vw;
        left: 0.533vw;
    }

    .index .introduction .inner {
        width: 100%;
        max-width: unset;
        background: #000;
        padding: 20vw 6.667vw;
    }
    
    .index .introduction .inner h2 {
        margin-bottom: 6.933vw;
        width: auto;
        padding: unset;
        letter-spacing: -1px;
    }

    .index .introduction .inner h2 span {
        font-size: 9.133vw;
    }

    .index .introduction .inner p {
        margin-bottom: 8vw;
    }
    
    .index .introduction .inner .link p {
        margin-bottom: 0;
    }    

    .index .introduction .inner .link p a {
        font-size: 4.267vw;
    }
    
    .index .scroll_text {
        overflow: hidden;
        width: 100%;
        margin-bottom: 18.667vw;
    }
    
    .index .scroll_text .scroll_text_parent {
        height: inherit;
        display: flex;
        width: 100vw;
        overflow: hidden;
    }

    .index .scroll_text .scroll_text_child > div {
        width: 394.667vw;
        margin: 0 12vw;
    }
    
    .index .scroll_text .scroll_text_child p {
        font-size: 28.133vw;
        color: #5A5A5A;
        line-height: 1.2;
    }


    .index .step {
        width: 100%;
        margin: 0 0 1.333vw;
        overflow: hidden;
        /*background: url(../img/index/sp/step_bg.png) repeat-y;*/
        background-position: top left;
    }
    
    .index .step .step-container {
        width: 100%;
        padding: 0;
    }
    
    .index .step .step-container-inner {
        width: 100%;
        position: static;
    }
    
    .index .step .step-container-inner .side-scroll-list-wrapper {
        width: auto;
        height: 192.533vw; 
        display: flex;
        overflow-x: scroll;
    }
    
    .index .step ul.side-scroll-list {
        display: flex;
        position: static;
    }
    
    .index .step ul.side-scroll-list .side-scroll-item {
        margin: 0 7.2vw 0 0;
        width:82.8vw;
        height: 192vw;
    }
    
    .index .step .step-container-inner .step-container-inner-item {
        display: block;
        width: 100%;
    }
    
    .index .step ul li .image {
        width: 100%;
        margin-bottom: 8vw;
    }
    
    .index .step ul li .image img {
        width: 100%;
    }
    
    .index .step ul li .details {
        width: 100%;
        background: #000;
        padding: 10.667vw 6.667vw;
        position: relative;
    }


    .index .step ul li .details {
        width: 100%;
        background: #000;
        padding: 10.667vw 6.667vw;
        position: relative;
    }


    
    .index .step ul li .details .num {
        font-size: 10.667vw;
        line-height: 1.0;
        position: absolute;
        top: -2vw;
        right: 10.667vw;
        z-index: 2;
    }
    
    .index .step ul li .details p {
        margin-bottom: 5.333vw;
    }
    
    .index .step ul li .details p:last-child {
        margin-bottom: 0;
    }
    
    .index .step ul li .details p span {
        font-size: 3.2vw;
    }
    
    .index .step ul li .details .title {
        font-size: 4.8vw;
        line-height: 1.0;
        margin-bottom: 5.333vw;
    }
    
    .index .step ul li .details .border_btn {
        width: 61.867vw;
    }
    .index .step ul li .details .border_btn a {
        font-size: 3.733vw;
        padding: 3.2vw 4.8vw;
    }
    
    .scroll-hint-icon {
        position: absolute;
        top: 53.333vw !important;
        left: calc(50% - 16vw) !important;
        box-sizing: border-box;
        width: 33vw !important;
        height: 23.333vw !important;
        border-radius: 1.333vw !important;
        transition: opacity .3s;
        opacity: 0;
        padding: 5.333vw 2.667vw 2.667vw 2.667vw !important;
    }

    .scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
        animation: scroll-hint-appear 1.2s linear;
        animation-iteration-count: 2;
        fill: black !important;
    }
    
    .scroll-hint-text {
        font-size: 2.667vw !important;
        color: #000 !important;
        margin-top: 1.333vw !important;
    }

    .index .store {
        margin-top: 40vw;
        margin-bottom: 21.333vw;
        position: relative;
    }
    
    .index .store .img01 {
        width: 78.933vw;
        height: 46.4vw;
        position: absolute;
        top: -46vw;
        right: -7vw;
    }

    .index .store .img01 .img_inner {
        width: 78.933vw;
        height: 46.4vw;
        position: relative;
    }
    
    .index .store .img01 .img01_1 {
        width: 21.867vw;
        height: 21.867vw;
        background: url(../img/index/store_img01_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 5.067vw;
        left: 22.4vw;
    }
    
    .index .store .img01 .img01_2 {
        width: 21.867vw;
        height: 21.867vw;
        background: url(../img/index/store_img01_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 13.867vw;
        left: 47.2vw;
    }
    
    .index .store .img01 .img01_3 {
        width: 22.133vw;
        height: 21.867vw;
        background: url(../img/index/store_img01_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 1.067vw;
        left: 12.267vw;
    }
    
    .index .store .img01 .img01_4 {
        width: 77.867vw;
        height: 53.333vw;
        background: url(../img/index/store_img01_4.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 1.333vw;
        left: 2.133vw;
    }
    
    .index .project_info {
        width: 100%;
        height: 37.333vw;
        margin: 30vw auto 40vw;
    }
    
    .index .project_info .inner {
        width: auto;
        max-width: none;
        height: auto;
        position: static;
        top: auto;
        left: auto;
        right: auto;
        bottom: auto;
        margin: 0;
    }
    
		.index .project_info .bg_text {
		    font-size: 34vw;
		    line-height: 1.0;
		    font-family: "trajan-pro-3",serif;
		    position: absolute;
		    top: -25px;
		    left: -5px;
		    right: 0;
		    bottom: 0;
		    margin: 0 auto -25px;
		}
    .index .project_info a {
        width: 85%;
        height: 20vw;
        background: url(../img/index/sp/project_info_banner.jpg) no-repeat;
        background-size: 100%;
        position: relative;
        display:flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto;
    
    }
    
    .index .project_info a span {
        font-size: 4.8vw;
        FONT-WEIGHT: 200;
        display: inline-block;
        text-align: center;
        z-index: 2;
    }
    
    .index .project_info a span:after {
        content: "";
        position: absolute;
        top: 52%;
        right: 0%;
        transform: translateY(-50%);
        border: 1.333vw solid transparent;
        border-left: 2.133vw solid #B4B3B3;
    }
    
    .index .project_info a:before {
        position: absolute;
        content: '';
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        background-color: rgba(0,0,0,.2);
        z-index: 1;
        transition: 0.3s ease-in-out;
    }
    
    .index .project_info a:hover:before {
        background-color: rgba(0,0,0,.6);
    }
    
    .index .faq {
        background: url(../img/index/sp/faq_bg.png) no-repeat;
        background-size: 85%;
        background-position: top left;
        padding-top: 8.467vw;
        margin-bottom: 21.333vw;
        position: relative;
    }
    
    .index .faq .img01 {
        width: 72.8vw;
        height: 73.867vw;
        position: absolute;
        top: -40vw;
        right: 0px;
        left: unset;
    }

    .index .faq .img01 .img_inner {
        width: 72.8vw;
        height: 73.867vw;
        position: relative;
    }

    .index .faq .img01 .img01_1 {
        width: 39.2vw;
        height: 36vw;
        background: url(../img/index/sp/faq_img01_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 11.467vw;
        left: 8.533vw;
    }

    .index .faq .img01 .img01_2 {
        width: 21.333vw;
        height: 21.333vw;
        background: url(../img/index/sp/faq_img01_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 41.067vw;
        left: 45.867vw;
    }

    .index .faq .img01 .img01_3 {
        width: 73.6vw;
        height: 40.8vw;
        background: url(../img/index/sp/faq_img01_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 18.133vw;
        left: -0.533vw;
    }    

    .index .faq .questions {
        margin-top: 24vw;
    }
    
    .index .faq .questions .question .toggle {
        display: none;
    }
    
    .index .faq .questions .question {
        position: relative;
        margin-bottom: 16vw;
    }
    
    .index .faq .questions .question .answer {
        padding: 0;
    }
    
    .index .faq .questions .question .answer div {
        margin-top: 2.133vw;
    }
    
    .index .faq .questions .question .title,
    .index .faq .questions .question .answer {
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transform: translateZ(0);
        transition: all 0.5s;
    }
    
    .index .faq .questions .question .title {
        display: block;
        font-size: 3.733vw;
        background: url(../img/index/icon_question.svg) no-repeat;
        background-size: 3.733vw;
        background-position: top -0.8vw left;
        padding-left: 8vw;
        padding-right: 10vw;
    }
    
    .index .faq .questions .question .title::after,
    .index .faq .questions .question .title::before {
        content: "";
        position: absolute;
        right: 1.25em;
        top: 1.867vw;
        width: 0.533vw;
        height: 0.75em;
        background-color: #B4B3B3;
        transition: all 0.3s;
    }
    
    .index .faq .questions .question .answer {
        max-height: 0;
        overflow: hidden;
    }
    
    .index .faq .questions .question .title::after {
        transform: rotate(90deg);
    }
    
    .index .faq .questions .question .toggle:checked + .title + .answer {
        max-height: 133.333vw;
        transition: all 1.5s;
    }
    
    .index .faq .questions .question .toggle:checked + .title::before {
        transform: rotate(90deg) !important;
    }
    
    .index .news {
        margin-bottom: 21.333vw;
    }
    
    .index .contact {
        background: url(../img/index/sp/contact_bg.png) no-repeat;
        background-size: 100%;
        position: relative;
        height: 62.2vw;
								margin: 0 0 100px 0 !important;
    }
    
    .index .contact .bg_yellow_btn {
        width: 69.867vw;
        height: 13.867vw;
        position: absolute;
        top: 17.667vw;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
    }
    
    .index .contact .bg_yellow_btn a {
        font-size: 3.733vw;
        padding: 4.8vw;
    }
} 

@media screen and (min-width: 768px) and (max-width: 820px) {
	
    .main_menu {
        display: none;
        margin-left: 0;
        z-index: 2;
    }
    
        
    .main_menu .links {
        position: absolute;
        top: 19.333vw;
        width: 92.667vw;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .main_menu .buttons {
        width: 56.533vw;
        position: absolute;
        bottom: 0;
        left: unset;
        right: 0;
    }
    
    .main_menu .buttons .border_btn a, .bg_yellow_btn a {
        display: block;
        text-align: center;
        padding: 2.07vw;
        line-height: 1;
    }
    
    .main_menu .menu ul li {
        margin-right: 4.861vw;
        margin-bottom: 5.633vw;
        line-height: 1;
    } 
    
    .main_menu .menu ul li:last-child {
        margin-bottom: 0;
    }
    
    .main_menu .menu ul li a {
        font-size: 3.233vw;
    }
    
    
    .main_menu .buttons ul li {
        margin-bottom: 3.467vw;
        width: 50%;
        text-align: right;
        margin-left: auto;
    }
        
    .main_menu .buttons ul li a {
        font-size: 3.233vw;
    }

    .main_menu .buttons ul li:nth-child(3) {
        margin-bottom: 7.467vw;
    }
        
    .main_menu .buttons ul li:last-child {
        width: 90%;
        margin-bottom: 0;
    }
        
    .main_menu .buttons ul li:last-child a {
        font-size: 2.333vw;
        padding: 3.07vw;
    }

    .main_menu .buttons ul li.border_btn:after {
        right: 0.8vw;
    }

    .main_menu .buttons ul li.bg_yellow_btn:after {
        right: 0.8vw;
    }

    .main_menu .menu_logo {
        width: 18.2vw;
        height: 18.2vw;
        position: absolute;
        top: 21.267vw;
        right: 4.8vw;
    }

    .main_menu .menu_logo img {
        width: 100%;
    }

    .main_menu .language {
        position: absolute;
        bottom: 31.25vw;
        left: 3.608vw;
        width: 27.889vw;
        height: 4.5vw;
    }

    .main_menu .language ul {
        display: flex;
    }

    .main_menu .language ul li {
        font-size: 2.4vw;
    }

    .main_menu .language ul li a {
        font-size: 2.4vw;
    }

    .main_menu .big_text {
        width: 105vw;
        position: absolute;
        bottom: -3.4vw;
        left: -2.667vw;
        right: unset;
        font-size: 13.8rem;
    }

    .main_menu .big_text p {
        font-size: 14.1vw;
        line-height: 1;
    }

    .main_menu .border_btn:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 2.667vw;
        transform: translateY(-50%);
        border: 0.8vw solid transparent;
        border-left: 1.4vw solid #B4B3B3;
    }
    
    .main_menu .border_btn:hover:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 2.667vw;
        transform: translateY(-50%);
        border: 0.8vw solid transparent;
        border-left: 1.6vw solid #8E6A1A;
    }

    .main_menu .bg_yellow_btn:after {
        border: 0.867vw solid transparent;
        border-left: 1.467vw solid #FFF;
    }

    .mv_animation {
        display: block;
        background: #000;
        width: 100vw;
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
    }
    
    .mv_animation .inner {
        width: 62.309vw;
        height: 106.951vw;
        margin: auto;
        position: absolute;
        top: -13.667vw;
        left: 0;
        right: 0;
        bottom: 0;
    }
    
    .mv_animation .circle_01 {
        background: url(../img/index/sp/circle_01.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 44.878vw;
        position: absolute;
        bottom: 27.805vw;
        left: 6.463vw;
    }
    
    .mv_animation .circle_02 {
        background: url(../img/index/sp/circle_02.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 33.659vw;
        position: absolute;
        top: 72.317vw;
        right: 23.171vw;
        opacity: 0;
    }
    
    .mv_animation .circle_03 {
        background: url(../img/index/sp/circle_03.png) no-repeat;
        background-size: 100%;
        width: 16.829vw;
        height: 16.829vw;
        position: absolute;
        top: 78.415vw;
        right: 22.927vw;
        opacity: 0;
    }
    
    .mv_animation .circle_04 {
        background: url(../img/index/sp/circle_04.png) no-repeat;
        background-size: 100%;
        width: 16.829vw;
        height: 37.805vw;
        position: absolute;
        top: 5.976vw;
        left: 39.268vw;
        opacity: 0;
    }
    
    .mv_animation .circle_05 {
        background: url(../img/index/sp/circle_05.png) no-repeat;
        background-size: 100%;
        width: 16.829vw;
        height: 16.829vw;
        position: absolute;
        top: 4.818vw;
        bottom: auto;
        left: 6.901vw;
        opacity: 0;
    }
    
    .mv_animation .circle_06 {
        background: url(../img/index/sp/circle_06.png) no-repeat;
        background-size: 100%;
        width: 16.707vw;
        height: 16.707vw;
        position: absolute;
        top: 11.341vw;
        bottom: auto;
        left: 6.22vw;
        opacity: 0;
    }
    
    .mv_animation .circle_07 {
        background: url(../img/index/sp/circle_07.png) no-repeat;
        background-size: 100%;
        width: 16.463vw;
        height: 15.854vw;
        position: absolute;
        bottom: 6.341vw;
        right: 39.634vw;
        opacity: 0;
    }
    
    .mv_animation .circle_08 {
        background: url(../img/index/sp/circle_08.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.707vw;
        position: absolute;
        top: 1.22vw;
        left: 22.317vw;
        opacity: 0;
    }
    
    .mv_animation .circle_09 {
        background: url(../img/index/sp/circle_09.png) no-repeat;
        background-size: 100%;
        width: 33.537vw;
        height: 30.854vw;
        position: absolute;
        top: 16.098vw;
        left: 22.195vw;
        opacity: 0;
    }
    
    .mv_animation .circle_10 {
        background: url(../img/index/sp/circle_10.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        top: 20vw;
        left: 22.073vw;
        opacity: 0;
    }
    
    .mv_animation .circle_11 {
        background: url(../img/index/sp/circle_11.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        top: 15.732vw;
        left: 39.146vw;
        opacity: 0;
    }
    
    .mv_animation .circle_12 {
        background: url(../img/index/sp/circle_12.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        top: 26.098vw;
        left: 22.683vw;
        opacity: 0;
    }
    
    .mv_animation .circle_13 {
        background: url(../img/index/sp/circle_13.png) no-repeat;
        background-size: 100%;
        width: 33.293vw;
        height: 30.732vw;
        position: absolute;
        bottom: 13.049vw;
        right: 22.561vw;
        opacity: 0;
    }
    
    .mv_animation .circle_14 {
        background: url(../img/index/sp/circle_14.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        top: 54.024vw;
        left: 38.902vw;
        opacity: 0;
    }
    
    .mv_animation .circle_15 {
        background: url(../img/index/sp/circle_15.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 33.659vw;
        position: absolute;
        bottom: 45.366vw;
        left: 6.341vw;
        opacity: 0;
    }
    
    .mv_animation .circle_16 {
        background: url(../img/index/sp/circle_16.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        bottom: 19.756vw;
        left: 6.341vw;
        opacity: 0;
    }
    
    .mv_animation .circle_17 {
        background: url(../img/index/sp/circle_17.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        bottom: 61.829vw;
        left: 6.22vw;
        opacity: 0;
    }
    
    .mv_animation .circle_18 {
        background: url(../img/index/sp/circle_18.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        bottom: 40.366vw;
        left: 6.341vw;
        opacity: 0;
    }
    
    .mv_animation .circle_19 {
        background: url(../img/index/sp/circle_19.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 15.732vw;
        position: absolute;
        top: 45.732vw;
        left: 39.39vw;
        opacity: 0;
    }
    
    .mv_animation .circle_20 {
        background: url(../img/index/sp/circle_20.png) no-repeat;
        background-size: 100%;
        width: 16.585vw;
        height: 16.585vw;
        position: absolute;
        top: 70vw;
        right: 6.098vw;
        opacity: 0;
    }
    
    .mv_animation .circle_21 {
        background: url(../img/index/sp/circle_21.png) no-repeat;
        background-size: 100%;
        width: 15.854vw;
        height: 15.854vw;
        position: absolute;
        top: 86.707vw;
        right: 6.707vw;
        opacity: 0;
    }
    
    .mv_animation .line_01 {
        background: url(../img/index/sp/line_01.png) no-repeat;
        background-size: 100%;
        width: 60.488vw;
        height: 40.61vw;
        position: absolute;
        top: 0.366vw;
        left: 1.585vw;
        opacity: 0;
    }
    
    .mv_animation .line_02 {
        background: url(../img/index/sp/line_02.png) no-repeat;
        background-size: 100%;
        width: 38.902vw;
        height: 22.561vw;
        position: absolute;
        top: 1.463vw;
        left: auto;
        right: 3.049vw;
        opacity: 0;
    }
    
    .mv_animation .line_03 {
        background: url(../img/index/sp/line_03.png) no-repeat;
        background-size: 100%;
        width: 61.829vw;
        height: 34.878vw;
        position: absolute;
        top: 69.634vw;
        right: 0px;
        opacity: 0;
    }
    
    .mv_animation .logo_area {
        width: 29.692vw;
        height: 31.692vw;
        position: absolute;
        top: 3.133vw;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        z-index: 3;
    }
    
    .mv_animation .logo_area .logo_circle_small {
        background: url(../img/index/mv_logo_circle_small.png) no-repeat;
        background-size: 100%;
        width: 11.2vw;
        height: 12.2vw;
        position: absolute;
        top: 19.667vw;
        left: -3.933vw;
        opacity: 0;
    }
    
    .mv_animation .logo_area .logo_circle_big {
        background: url(../img/index/mv_logo_circle_big.png) no-repeat;
        background-size: 100%;
        width: 22.667vw;
        height: 24.667vw;
        position: absolute;
        top: 0.1vw;
        left: 11.067vw;
        opacity: 0;
    }
    
    .mv_animation .logo_area .logo_stick {
        background: url(../img/index/mv_logo_stick.png) no-repeat;
        background-size: 100%;
        width: 2.2vw;
        height: 12.033vw;
        position: absolute;
        top: 15.033vw;
        left: 8.9vw;
        transform: rotate(-1deg);
        opacity: 0;
    }
    
    .mv_animation .logo_area .logo_circle_bridge {
        background: url(../img/index/logo_bg.png) no-repeat;
        background-size: 100%;
        width: 29vw;
        height: 30.6vw;
        position: absolute;
        top: 0.2vw;
        left: 0.233vw;
        opacity: 0;
    }
    
    .mv_animation #particles-js {
        width: 100.08%;
        height: 105.236vw;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 2.667vw;
        margin: auto;
        opacity: 0;
        z-index: 2;
    }
    
    .mv_animation p {
        font-size: 3.8vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -7.682vw;
        margin: auto;
    }
    
    .index .mv {
        width: 63.08%;
        height: 107.667vw;
        margin: 0 auto;
        position: relative;
        margin-top: 2.667vw;
        margin-bottom: 33.067vw;
    }

    .index .mv p {
        font-size: 3.5vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -7.682vw;
        margin: auto;
    }
}


/* UTILITY */

.utility {
    background-image: url(../img/index/utility_bg01.png), url(../img/index/utility_bg02.png);
    background-repeat: no-repeat,no-repeat;
    background-position: top left, top 990px left;
    background-size: 100%;
    padding: 4.653vw 7.708vw 0 0;
    margin-bottom: 13.889vw;
    position: relative;
}

.index .utility .title {
        line-height: 0.65em;
        }


.utility .img01 {
    width: 12.778vw;
    height: 12.778vw;
    background: url(../img/index/utility_img01.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 20.139vw;
    right: 3.472vw;
}

.utility .img02 {
    width: 12.5vw;
    height: 22.708vw;
    background: url(../img/index/utility_img02.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 35.417vw;
    left: -6.944vw;
}

.utility .img03 {
    width: 33.542vw;
    height: 30.069vw;
    position: absolute;
    bottom: -5vw;
    left: -3.333vw;
}

.utility .img03 .img_inner {
    width: 33.542vw;
    height: 30.069vw;
    position: relative;
}

.utility .img03 .img03_1 {
    width: 10.694vw;
    height: 10.694vw;
    background: url(../img/index/utility_img03_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 7.431vw;
    left: 1.736vw;
}

.utility .img03 .img03_2 {
    width: 10.694vw;
    height: 10.694vw;
    background: url(../img/index/utility_img03_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 13.333vw;
    left: 12.431vw;
}

.utility .img03 .img03_3 {
    width: 30.069vw;
    height: 25.069vw;
    background: url(../img/index/utility_img03_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 2.708vw;
    left: 2.361vw;
}

.utility .img04 {
    width: 34.097vw;
    height: 33.611vw;
    position: absolute;
    bottom: -7.639vw;
    right: 1.389vw;
}

.utility .img04 .img_inner {
    width: 34.097vw;
    height: 33.611vw;
    position: relative;
}

.utility .img04 .img04_1 {
    width: 20.764vw;
    height: 19.236vw;
    background: url(../img/index/utility_img04_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 7.153vw;
    left: 8.958vw;
}

.utility .img04 .img04_2 {
    width: 11.458vw;
    height: 11.458vw;
    background: url(../img/index/utility_img04_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 10.903vw;
    left: 5.069vw;
}

.utility .img04 .img04_3 {
    width: 29.722vw;
    height: 24.167vw;
    background: url(../img/index/utility_img04_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 2.986vw;
    left: 2.153vw;
}

.utilities {
    background: #000;
    padding: 10.417vw 0 15.972vw;
}

.utilities .inner {
    width: 57.639vw;
    margin: 0 auto;
}

.utilities .inner img {
    width: 100%;
}

.utilities .inner .image {
    position: relative;
    margin-bottom: 2.083vw;
}

.utilities .inner .image .num {
    font-family: "trajan-pro-3",serif;
    position: absolute;
    font-size: 7.917vw;
    font-weight: 600;
    line-height: 1.0;
}

.utilities .inner .image .num.num_begin {
    top: -4.792vw;
    left: 2.778vw;
}

.utilities .inner .image .num.num_odd {
    top: 2.5vw;
    right: -2.569vw;
}

.utilities .inner .image .num.num_even {
    top: 2.5vw;
    left: -2.569vw;
}

.utilities .inner .beginning,
.utilities .inner .utility_column {
    margin-bottom: 3.472vw;
}

.utilities .inner .secondary {
    -webkit-display: flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.utilities .inner .secondary .utility_column {
    width: calc(50% - 2.917vw);
}

@media screen and (max-width: 820px) {
    .utility {
        background-image: url(../img/index/sp/utility_bg.png);
        background-repeat: no-repeat,no-repeat;
        background-position: top left;
        background-size: 100%;
        padding: 0;
        margin-bottom: 53.333vw;
        position: relative;
    }
    
    .utility .img03 {
        width: 67.2vw;
        height: 66.4vw;
        position: absolute;
        bottom: -53.333vw;
        left: 2.667vw;
    }

    .utility .img03 .img_inner {
        width: 67.2vw;
        height: 66.4vw;
        position: relative;
    }
    
    .utility .img03 .img03_1 {
        width: 21.333vw;
        height: 21.333vw;
        background: url(../img/index/utility_img03_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 15.2vw;
        left: 3.467vw;
    }
    
    .utility .img03 .img03_2 {
        width: 21.333vw;
        height: 21.333vw;
        background: url(../img/index/utility_img03_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 26.933vw;
        left: 25.067vw;
    }
    
    .utility .img03 .img03_3 {
        width: 60.8vw;
        height: 53.333vw;
        background: url(../img/index/utility_img03_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 5.333vw;
        left: 4.8vw;
    }

    .utilities {
        background: unset;
        padding: 0;
    }
    
    .utilities .inner {
        width: 100%;
        margin: 0 auto;
    }

    .utilities .inner .utility_block {
        width: 100%;
        max-width: unset;
        margin-bottom: 37.867vw;
        position: relative;
        padding-bottom: 0;
    }

    .utilities .inner .utility_block_inner {
        width: 100%;
        max-width: unset;
        background: #000;
        padding: 10.667vw 6.667vw;
    }

    .utilities .inner .utility_odd {
        padding-top: 0;
        padding-right: 7.2vw;
    }

    .utilities .inner .utility_even {
        padding-top: 0;
        padding-left: 7.2vw;
    }

    .utilities .inner .secondary {
        display: inline;
    }

    .utilities .inner .secondary .utility_column {
        width: 100%;
    }
    
    .utilities .inner img {
        width: 100%;
    }
    
    .utilities .inner .image {
        position: relative;
        margin-bottom: 8vw;
    }
    
    .utilities .inner .image .num {
        position: absolute;
        font-size: 10.667vw;
        line-height: 1.0;
        top: -6.133vw !important;
        left: 2.133vw !important;
    }
    
    .utilities .inner .beginning,
    .utilities .inner .utility_column {
        margin-bottom: 12.533vw;
    }
    
    .utilities .inner .column_2 .utility_column {
        width: calc(50% - 42px);
    }
}

/* STORE */

.store .product {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 80px;
}

.store .product div {
    width: calc(50% - 32px);
}

.store .product .image img {
    width: 100%;
}

.store .product .details {
    display:flex;
    align-items:center;
}

.store .product .details .inner {
    width: 100%;
}

.store .product .details h3 span {
    font-size: 2.8rem;
}

.store .product .details p {
    margin-bottom: 36px;
}

.store .product .details .bg_yellow_btn {
    width: 270px;
}

.store .product .details .bg_yellow_btn a {
    padding: 18px 0;
}

.store .product .details .bg_yellow_btn:after {
    content: "";
    position: absolute;
    top: 52%;
    right: 10px;
    transform: translateY(-50%);
    border: 3px solid transparent;
    border-left: 6px solid #FFF;
}

.store .product .details .bg_yellow_btn:hover:after {
    border-left: 6px solid #8E6A1A;
}

.store .border_btn {
    width: 316px;
    margin: 0 auto;
}

.store .border_btn a {
    font-size: 2.0rem;
}


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


.fonts p span{display: block; font-size: 12px;line-height: 150% !important;margin: 0% !important;}

.border_btn {margin: 0% auto;}

    .store .product {
        display: inline;
        margin-bottom: -60px !important;
    }
    
    .store .product div {
        width: 100%;
    }
    
    .store .product .image {
        margin-bottom: 5.333vw;
    }   

    .store .product .image img {
        width: 100%;
        margin: 0% !important ;
    }
    
    .store .product .details {
        display:flex;
        align-items:center;
    }
    
    .store .product .details .inner {
        width: 100%;
        margin-bottom: 5.333vw;
    }
    
    .store .product .details h3 {
        font-size: 5.867vw;
    }
    
    .store .product .details h3 span {
        font-size: 4.8vw;
    }
    
    .store .product .details p {
        margin-bottom: 6.4vw;
    }
    
    .store .product .details .bg_yellow_btn {
        width: 100%;
    }
    
    .store .product .details .bg_yellow_btn a {
        padding: 4vw 0;
    }
    
    .store .product .details .bg_yellow_btn:after {
        content: "";
        position: absolute;
        top: 52%;
        right: 10px;
        transform: translateY(-50%);
        border: 0.8vw solid transparent;
        border-left: 1.6vw solid #FFF;
    }
    
    .store .product .details .bg_yellow_btn:hover:after {
        border-left: 1.6vw solid #8E6A1A;
    }
    
    .store .border_btn {
        width: 48.8vw;
        margin: 0 auto;
    }
    
    .store .border_btn a {
        font-size: 3.733vw;
        display: block;
        text-align: center;
        padding: 3.467vw;
        line-height: 1;
    }
}

@media screen and (max-width: 820px) {
    .index .store .product {
        display: inline;
        margin-bottom: 21.333vw;
    }
    
   .index .store .product div {
        width: 100%;
    }
    
   .index .store .product .image {
        margin-bottom: -10vw;
    }   

   .index .store .product .image img {
        width: 100%;
    }
    
   .index .store .product .details {
        display:flex;
        align-items:center;
    }
    
   .index .store .product .details .inner {
        width: 100%;
        margin-bottom: 0vw;
    }
    
   .index .store .product .details h3 {
        font-size: 5.867vw;
    }
    
   .index .store .product .details h3 span {
        font-size: 4.8vw;
    }
    
   .index .store .product .details p {
        margin-bottom: 6.4vw;
    }
    
   .index .store .product .details .bg_yellow_btn {
        width: 100%;
    }
    
   .index .store .product .details .bg_yellow_btn a {
        padding: 4vw 0;
    }
    
   .index .store .product .details .bg_yellow_btn:after {
        content: "";
        position: absolute;
        top: 52%;
        right: 10px;
        transform: translateY(-50%);
        border: 0.8vw solid transparent;
        border-left: 1.6vw solid #FFF;
    }
    
   .index .store .product .details .bg_yellow_btn:hover:after {
        border-left: 1.6vw solid #8E6A1A;
    }
    
   .index .store .border_btn {
        width: 48.8vw;
        margin: 25px auto 0 auto;
    }
    
   .index .store .border_btn a {
        font-size: 3.733vw;
        display: block;
        text-align: center;
        padding: 3.467vw;
        line-height: 1;
    }
}

/* NEWS */

.news .news_list .news_column {
    width: calc(33.3% - 29px);
}

.news .news_list .news_column .thumbnail {
    width: 100%;
    margin-bottom: 24px;
    overflow: hidden;
}

.news .news_list .news_column .thumbnail img {
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.news .news_list .news_column a:hover .thumbnail img {
    transform: scale(1.1, 1.1);
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.news .news_list .news_column dl {
    display: flex;
    justify-content: space-between;
}

.news .news_list .news_column dt {
    font-size: 1.5rem;
}


.news .news_list .news_column dd {
    font-size: 1.4rem;
    font-family: "trajan-pro-3",serif;
}

@media screen and (max-width: 768px) {
    .news .news_list .news_column {
        width: calc(50% - 4vw);
        margin-bottom: 10.667vw;
    }
    
    .news .news_list .news_column:last-child {
        margin-bottom: 0;
    }
    
    .news .news_list .news_column .thumbnail {
        width: 100%;
        margin-bottom: 2.667vw;
        overflow: hidden;
    }
        
    .news .news_list .news_column dl {
        display: inline;
    }
    
    .news .news_list .news_column dt {
        font-size: 3.2vw;
    }
    
    
    .news .news_list .news_column dd {
        font-size: 2.667vw;
    }
}

@media screen and (max-width: 820px) {
    .index .news .news_list .news_column {
        width: calc(50% - 4vw);
        margin-bottom: 10.667vw;
    }
    
    .index .news .news_list .news_column:last-child {
        margin-bottom: 0;
    }
    
    .index .news .news_list .news_column .thumbnail {
        width: 100%;
        margin-bottom: 2.667vw;
        overflow: hidden;
    }
        
    .index .news .news_list .news_column dl {
        display: inline;
    }
    
    .index .news .news_list .news_column dt {
        font-size: 3.2vw;
    }    
    
    .index .news .news_list .news_column dd {
        font-size: 2.667vw;
    }
}

/* CONCEPT */

.concept .concept_mv {
    width: 100%;
    height: 83.194vw;
    position: relative;
}

.concept .concept_mv .mv_bg {
    width: 100%;
    height: 83.194vw;
    background: #000 url(../img/concept/concept_mv.jpg) no-repeat;
    background-size: cover;
    position: absolute;
    opacity: 0;
}

.concept .concept_mv .mask {
    width: 100%;
    height: 23.661vw;
    background: url(../img/concept/concept_mv_mask.png) no-repeat;
    background-size: cover;
    position: absolute;
    top: 59.944vw;
}

.concept .description {
    width: 80%;
    margin: 0 auto 17.944vw;
}

.concept .description_bottom {
    margin: 0 auto !important;
}

.concept .description {
    width: 80%;
    margin: 0 auto 17.944vw;
}
.concept .description .text {
    margin-bottom: 60px;
}

.concept .description p {
    margin-bottom: 40px;
    line-height: 2.1;
    text-align: center;
}

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

.concept .description .modal_btn {
    width: 316px;
    margin: 0 auto;
}

.concept img {
    width: 100%;
}

.concept .concept_mv .inner {
    width: 100vw;
    height: 100vh;
    position: relative;
}

.concept .concept_mv .title {
    width: 30.764vw;
    height: 6.806vw;
    position: absolute;
    top: 0;
    left: 0;
    right: 138px;
    bottom: 0;
    margin: auto;
}

.concept .concept_mv h1 {
    font-size: 3.611vw;
    font-family: "trajan-pro-3",serif;
    text-align: center;
    line-height: 1.4;
    color: #FFF;
}

.concept .concept_mv p {
    font-size: 1.6rem;
    text-align: center;
    line-height: 1.6;
    color: #FFF;
}

.fade-in {
    filter: blur(10px);
    animation: blur-anime 0.3s linear forwards;
}

.fade-in2 {
    filter: blur(10px);
    animation: blur-anime 0.1s linear forwards;
}

.fade-in-paragraph {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s, transform 0.8s;
  }

@keyframes blur-anime {
    100% {  filter: blur(0); }
  }

.concept .modal_link {
    width: 316px;
    margin: 0 auto;
    cursor: pointer;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.concept .modal_link:hover span {
    color: #8E6A1A;
}

.concept .modal_link span {
    display: block;
    text-align: center;
    padding: 18px;
    line-height: 1;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.concept .concept_mv .img01 {
    width: 33.403vw;
    height: 32.847vw;
    position: absolute;
    top: 71.403vw;
    left: 0;
}

.concept .concept_mv .img01 .img_inner {
    width: 33.403vw;
    height: 32.847vw;
    position: relative;
}

.concept .concept_mv .img01 .img01_1 {
    width: 11.25vw;
    height: 11.25vw;
    background: url(../img/concept/concept_img01_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 6.319vw;
    left: 7.431vw;
}

.concept .concept_mv .img01 .img01_2 {
    width: 11.806vw;
    height: 11.806vw;
    background: url(../img/concept/concept_img01_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 11.25vw;
    left: 14.375vw;
}

.concept .concept_mv .img01 .img01_3 {
    width: 20.139vw;
    height: 31.25vw;
    background: url(../img/concept/concept_img01_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 0.972vw;
    left: 6.667vw;
}

.concept .concept_mv .img02 {
    width: 32.431vw;
    height: 32.014vw;
    position: absolute;
    top: 94.014vw;
    right: -4.736vw;
}

.concept .concept_mv .img02 .img_inner {
    width: 32.431vw;
    height: 32.014vw;
    position: relative;
}

.concept .concept_mv .img02 .img02_1 {
    width: 11.458vw;
    height: 11.458vw;
    background: url(../img/concept/concept_img02_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 10.139vw;
    left: 14.375vw;
}

.concept .concept_mv .img02 .img02_2 {
    width: 11.458vw;
    height: 11.458vw;
    background: url(../img/concept/concept_img02_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 18.333vw;
    left: 5.278vw;
}

.concept .concept_mv .img02 .img02_3 {
    width: 19.028vw;
    height: 29.167vw;
    background: url(../img/concept/concept_img02_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 2.361vw;
    left: 8.333vw;
}

@media screen and (max-width: 1009px) {
    .concept .concept_mv .img02 {
        display: none;
    }
}


.concept .concept_feature {
    width: 100%;
    height: 55.194vw;
    background: url(../img/concept/concept_picture01.jpg) no-repeat;
    background-size: cover;
    position: relative;
    margin-bottom: 6.944vw;
}

.concept .concept_feature .description {
    width: 100%;
    height: 30.1vw;
    position: absolute;
    top: 77.778vw;
}

.concept .concept_feature .title {
    width: 49.778vw;
    position: static;
    padding: 28.278vw 0 0;
    margin: 0 auto;
}

.concept .concept_feature .title h2 {
    font-size: 3.056vw;
    line-height: 1.4;
    color: #FFF;
    text-align: center !important;
}

.concept .concept_feature .mask01 {
    width: 100%;
    height: 27.778vw;
    background: url(../img/concept/concept_picture_mask01.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 0;
}

.concept .concept_feature .mask02 {
    width: 100%;
    height: 5.778vw;
    background: url(../img/concept/concept_picture_mask02.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 49.944vw;
}

.concept .concept_feature .img03 {
    width: 32.083vw;
    height: 29.444vw;
    position: absolute;
    top: -9.764vw;
    left: 3.014vw;
}

.concept .concept_feature .img03 .img_inner {
    width: 32.083vw;
    height: 29.444vw;
    position: relative;
}

.concept .concept_feature .img03 .img03_1 {
    width: 11.806vw;
    height: 11.806vw;
    background: url(../img/concept/concept_img03_1.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 7.708vw;
    left: 4.097vw;
}

.concept .concept_feature .img03 .img03_2 {
    width: 20.278vw;
    height: 18.819vw;
    background: url(../img/concept/concept_img03_2.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 5.417vw;
    left: 8.889vw;
}

.concept .concept_feature .img03 .img03_3 {
    width: 27.431vw;
    height: 15.347vw;
    background: url(../img/concept/concept_img03_3.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 6.25vw;
    left: 0.625vw;
}

.concept .modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    background: rgba(0,0,0,50%);
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: 1.0s;
    box-sizing: border-box;
    z-index: 10;
}

.concept .modal:before{
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}

.concept .modal.active{
    opacity: 1;
    visibility: visible;
}

.concept .modal .modal_body {
    background: #000;
    border: solid 1px #B4B3B3;
    width: 69.444vw;
    max-width: 1000px;
height: auto;
    /*height: fit-content;*/
max-height: 979px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 100px auto;
    padding: 40px;
    overflow: scroll;
}

.modal_inner {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 96%;
}

.modal .modal_close {
    width: 33px;
    height: 24px;
    display: flex !important;
    background: none;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 12px;
    right: 12px;
}

.modal .modal_close button {
    width: 33px;
    height: 24px;
    display: flex !important;
    background: none;
    align-items: center;
    justify-content: center;
}

.modal .modal_close button .menu_border {
    position: absolute;
    border-top: 2px solid #B4B3B3;
    width: 33px;
    height: 2px;
    transition: all .2s;
    transform: translateY(-2px);
    transform: rotate(0deg);
}

.modal .modal_close button .menu_border:nth-child(1) {
    transform: rotate(23deg);
}

.modal .modal_close button .menu_border:nth-child(2) {
    transform: rotate(-23deg);
}

.concept .modal .title {
    width: 100%;
    height: 28.472vw;
    max-height: 410px;
    background: url(../img/concept/modal_picture.jpg) no-repeat;
    background-size: 100%;
    position: relative;
    margin-bottom: 2.111vw;
}

.concept .modal .title .image {
    width: 100%;
    height: 117.194vw;
    position: absolute;
    top: 0;
    left: 0;
}

.concept .modal .title h2 {
    width: 100%;
    height: 3.194vw;
    color: #FFF;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    font-size:clamp(10px, 3.611vw, 52px);
}

.concept .modal .description {
    width: 100%;
    color: #FFF;
    margin: 0;
}

.concept .modal .description p {
    margin-bottom: 1.389vw;
    line-height: 2.1;
    text-align: center;
    font-size:clamp(12px, 1.111vw, 16px);
    color: #B4B3B3;
}

.concept .modal .description p:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 820px) {
    .concept .concept_mv {
        width: 100%;
        height: 198.194vw;
        margin-bottom: 12.444vw;
        position: relative;
    }
        
    .concept .concept_mv .mv_bg {
        width: 100%;
        height: 198.194vw;
        background: #000 url(../img/concept/sp/concept_mv.jpg) no-repeat;
        background-size: 100%;
        background-position: 0 2.667vw;
        position: absolute;
        opacity: 0;
    }


    .concept .concept_mv .description {
        width: 86.08%;
        height: 117.1vw;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .concept .concept_feature .description {
        width: 86.08%;
        height: 184.1vw;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .concept .description .text {
        margin-bottom: 8vw;
    }

    .concept .description {
        width: 80%;
        margin: 0 auto 49.944vw;
    }

    .concept .description_bottom {
        margin: 0 auto;
    }

    .concept .description p {
        margin-bottom: 8vw;
        line-height: 1.7;
        text-align: left !important;
        font-size: 3.733vw !important;
    }
    
    .concept .description p:last-child,
    .concept .description p:nth-child(4) {
        margin-bottom: 0;
    }
    
    .concept .concept_mv .img02 {
        display: block;
    }

    .concept .description .modal_link {
        width: 62.667vw;
        margin: 0 auto;
    }
    
    .concept .description .modal_link span {
        display: block;
        text-align: center;
        padding: 2.933vw;
        line-height: 1;
        font-size: 3.733vw;
    }

    .concept img {
        width: 100%;
    }
    
    .concept .concept_mv .title {
        width: 78.4vw;
        height: 18vw;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .concept .concept_mv h1 {
        font-size: 9.867vw;
        font-family: "trajan-pro-3",serif;
        text-align: center;
        line-height: 1.4;
        color: #FFF;
    }
    
    .concept .concept_mv p {
        font-size: 3.2vw;
        text-align: center;
        line-height: 1.6;
    }
    
    .concept .concept_mv .title p {
        color: #FFF;
    }
    
    .concept .concept_mv .img01 {
        width: 66.133vw;
        height: 65.067vw;
        position: absolute;
        top: 145.2vw;
        left: -6.4vw;

    }
    
    .concept .concept_mv .img01 .img_inner {
        width: 66.133vw;
        height: 65.067vw;
        position: relative;
    }
    
    .concept .concept_mv .img01 .img01_1 {
        width: 22.4vw;
        height: 22.4vw;
        background: url(../img/concept/concept_img01_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 12.8vw;
        left: 14.667vw;
    }
    
    .concept .concept_mv .img01 .img01_2 {
        width: 23.467vw;
        height: 23.467vw;
        background: url(../img/concept/concept_img01_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 22.4vw;
        left: 28.267vw;
    }
    
    .concept .concept_mv .img01 .img01_3 {
        width: 39.467vw;
        height: 61.333vw;
        background: url(../img/concept/concept_img01_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 2.4vw;
        left: 13.333vw;
    }

    .concept .concept_mv .img02 {
        width: 58.933vw;
        height: 57.867vw;
        position: absolute;
        top: 319.014vw;
        right: -5.736vw;
    }    
    
    .concept .concept_mv .img02 .img_inner {
        width: 23.467vw;
        height: 23.467vw;
        position: relative;
    }

    .concept .concept_mv .img02 .img02_1 {
        width: 20.533vw;
        height: 20.533vw;
        background: url(../img/concept/concept_img02_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 18.667vw;
        left: 26.133vw;
    }

    .concept .concept_mv .img02 .img02_2 {
        width: 21.067vw;
        height: 21.067vw;
        background: url(../img/concept/concept_img02_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 33.067vw;
        left: 9.6vw;
    }

    .concept .concept_mv .img02 .img02_3 {
        width: 34.667vw;
        height: 53.067vw;
        background: url(../img/concept/concept_img02_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 4.267vw;
        left: 14.933vw;
    }

    .concept .concept_feature {
        width: 100%;
        height: 136.194vw;
        background: url(../img/concept/sp/concept_picture01.jpg) no-repeat;
        background-size: 100%;
        position: relative;
    }
    
    .concept .concept_feature .title {
        width: 87.778vw;
        position: absolute;
        top: 34.111vw;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .concept .concept_feature .title h2 {
        font-size: 5.333vw;
        line-height: 1.7;
        text-align: center !important;
    }
    
    .concept .concept_feature .mask01 {
        width: 100%;
        height: 27.778vw;
        background: url(../img/concept/concept_picture_mask01.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: -2.083vw;
    }
    
    .concept .concept_feature .mask02 {
        width: 100%;
        height: 27.778vw;
        background: url(../img/concept/concept_picture_mask02.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 52.944vw;
    }
    
    .concept .concept_feature .img03 {
        width: 53.867vw;
        height: 49.6vw;
        position: absolute;
        top: -6.764vw;
        left: 4.014vw;
    }   

    .concept .concept_feature .img03 .img_inner {
        width: 53.867vw;
        height: 49.6vw;
        position: relative;
    }
    
    .concept .concept_feature .img03 .img03_1 {
        width: 20vw;
        height: 20vw;
        background: url(../img/concept/concept_img03_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 12.8vw;
        left: 6.667vw;
    }
    
    .concept .concept_feature .img03 .img03_2 {
        width: 34.667vw;
        height: 32.267vw;
        background: url(../img/concept/concept_img03_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 9.067vw;
        left: 14.667vw;
    }
    
    .concept .concept_feature .img03 .img03_3 {
        width: 45.867vw;
        height: 29.333vw;
        background: url(../img/concept/concept_img03_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 10.667vw;
        left: 1.067vw;
    }
        
    .concept .concept_feature .img04 {
        width: 45.867vw;
        height: 45.333vw;
        position: absolute;
        top: 95.236vw;
        right: 1.014vw;
    }

    .concept .concept_feature .img04 .img_inner {
        width: 45.867vw;
        height: 45.333vw;
        position: relative;
    }
    
    .concept .concept_feature .img04 .img04_1 {
        width: 35.467vw;
        height: 28.533vw;
        background: url(../img/concept/sp/concept_img04_1.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 5.067vw;
        left: 7.467vw;
    }
    
    .concept .concept_feature .img04 .img04_2 {
        width: 18.667vw;
        height: 18.667vw;
        background: url(../img/concept/sp/concept_img04_2.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 14.833vw;
        left: 7.2vw;
    }
    
    .concept .concept_feature .img04 .img04_3 {
        width: 38.4vw;
        height: 43.733vw;
        background: url(../img/concept/sp/concept_img04_3.png) no-repeat;
        background-size: 100%;
        position: absolute;
        top: 1.067vw;
        left: 2.933vw;
    }

    .concept .modal {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        text-align: center;
        background: rgba(0,0,0,50%);
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
        transition: .3s;
        box-sizing: border-box;
        z-index: 10;
    }

    .concept .modal:before{
        content: "";
        display: inline-block;
        vertical-align: middle;
        height: 100%;
    }

    .concept .modal.active{
    opacity: 1;
    visibility: visible;
    }

    .concept .modal .modal_body {
        width: 86.08%;
        margin: auto;
        max-width: unset;
        height: 91%;
        max-height: unset;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 10.667vw 3.333vw;
        overflow: auto;
    }

    .modal_inner {
        position: relative;
        display: inline-block;
        vertical-align: middle;
        width: 96%;
    }

    .modal .modal_close {
        width: 8.8vw;
        height: 6.4vw;
        display: flex !important;
        background: none;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 3.2vw;
        right: 3.2vw;
    }

    .modal .modal_close button {
        width: 8.8vw;
        height: 6.4vw;
        display: flex !important;
        background: none;
        align-items: center;
        justify-content: center;
    }

    .modal .modal_close button .menu_border {
        position: absolute;
        border-top: 2px solid #B4B3B3;
        width: 8.8vw;
        height: 0.533vw;
        transition: all .2s;
        transform: translateY(-2px);
        transform: rotate(0deg);
    }

    .modal .modal_close button .menu_border:nth-child(1) {
        transform: rotate(23deg);
    }

    .modal .modal_close button .menu_border:nth-child(2) {
        transform: rotate(-23deg);
    }

    .concept .modal .title {
        width: 100%;
        height: 45.4vw;
        max-height: unset;
        background: url(../img/concept/sp/modal_picture.jpg) no-repeat;
        background-size: 100%;
        position: relative;
        margin-bottom: 3.111vw;
    }

    .concept .modal .title .image {
        width: 100%;
        height: 117.194vw;
        position: absolute;
        top: 0;
        left: 0;
    }

    .concept .modal .title h2 {
        width: 100%;
        height: 5.194vw;
        color: #FFF;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        margin: auto;
        font-size: 5.333vw;
    }

    .concept .modal .description {
        width: 100%;
        color: #FFF;
        margin: 0;
    }

    .concept .modal .description p {
        margin-bottom: 5.333vw;
        line-height: 1.7;
        text-align: center;
        font-size: 3.733vw !important;
        color: #B4B3B3;
    }

    .concept .modal .description p:last-child {
        margin-bottom: 0;
    }
}

/* 以下にコードを追加ください */
.container {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: stretch;
	flex-wrap: wrap;
}

.element_wrapper .inner {
	width: 100%;
	background: #000;
	padding: 10.41vw 6.25vw 14vw;
}

.element_wrapper h2 {
	margin-bottom: 48px;
}

.element_wrapper .inner .border_btn,
.element_wrapper .inner .border_btn_back
 {
	width: 220px;
}

.border_btn_back{margin: 0 auto;}

@media screen and (min-width: 1440px) {
    .border_btn_back{margin: 0;}
}

.registration_btnset .border_btn_back {
  margin-right: 10px; 
  width: 124px!important;
}
.registration_btnset .border_btn {
	width: 209px!important;
}

.border_btn input[type=submit]{
	display: block;
	width: 100%;
	padding: 10px 0%;
	text-align: center;
}

.border_btn input[type=submit]:hover {
	color: #8E6A1A;
	transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 768px) {
.element_wrapper .inner {
	margin-top:60px
}
.element_wrapper h2 {
	margin-bottom: 60px;
	width: auto;
	padding: unset;
	letter-spacing: -1px;
}

.element_wrapper h2 span {
	font-size: 3.2vw;
}

}

/* ============= style_ryo =================== */
.mb40  {margin-bottom: 40px;}
.mb20  {margin-bottom: 20px;}

main.element_wrapper h2 span,
main.element_wrapper h3 span {
  font-family: 'Noto Serif JP', serif;
  font-size: 1.6rem;
}

@media (max-width: 768px) {
.to_sp + span {
  font-family: 'Noto Serif JP', serif;
  font-size: 1.6rem;
  display: block;
  content: "";
  margin-top: 0.5em;
}

.element_wrapper h2 {
	font-size: 10.133vw 
}
.privacy_policy h2 {
	font-size: 9.5vw 
}

}

.privacy_policy ul {
  list-style: none;
  padding: 0;
  margin-bottom: 40px;
}

.privacy_policy ul li::before {
  content: "-";
  padding: 0;
}

.privacy_policy h3 {
	margin-left: 1em;
	font-size: 1.6rem;
	margin-bottom: 0px;
	line-height: 1.8;
}

.privacy_policy h3::before {
  content: "・"; 
  color: #B4B3B3;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}

.no-margin {margin: 0px!important;}

/* フォーム */

.form_container {margin-bottom: 50px;}
.formWrap ::placeholder {
  color: #969696;
  font-size: 0.875em;
}

.formWrap label {
  display: block;
}

.formWrap.input_form label {
  display: block;
  margin-bottom: 20px;
}

.formWrap input[type="text"],
.formWrap input[type="date"],
.formWrap input[type="email"],
.formWrap input[type="password"],
.formWrap input[type="tel"] {
  width: 100%;
  margin-bottom: 15px;
  border-bottom: 1px solid #A2A2A2;
  box-sizing: border-box;
}

.formWrap input[type="checkbox"] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.formWrap input[type="checkbox"]  {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
  }

/* チェックボックスデザイン */
.formWrap input[type="checkbox"] {
	cursor: pointer;
	padding-left: 36px;
	vertical-align: middle;
	position: relative;
}

.formWrap input[type="checkbox"]::before,
.formWrap input[type="checkbox"]::after {
	content: "";
	display: block; 
	position: absolute;
}

.formWrap input[type="checkbox"]::before {
	border: 1px solid #A2A2A2;
	width: 35px;
	height: 35px;
	transform: translateY(-50%);
	top: 50%;
	left: 0px;
}

.formWrap input[type="checkbox"]::after {
	content: "";
	background-color: #A2A2A2; 
	border-radius: 50%; 
	width: 9px;
	height: 9px;
	opacity: 0; 
	transform: translateY(-50%) translateX(-50%); 
	top: 50%;
	left: 50%;
}

.formWrap input[type="checkbox"]:checked::after {
	opacity: 1; 
}

.formWrap textarea {
	border: 1px solid #a2a2a2;
	width: 44vw;
	height: 28.125vw;
}

.formWrap textarea:focus {
	border:1px solid #a2a2a2;
	outline:0;
}

.name-container {
  display: flex;
  justify-content: start;
}

.name-container input[type="text"] {
  width: 160px; 
  margin-right: 10px;
}

.formWrap #birthdate {width: 14.444vw;}
.formWrap #country {width: 11.111vw;}
.formWrap #postalCode {width: 14.444vw;}
.formWrap #address {width: 44.03vw;}
.formWrap #phoneNumber {width: 14.444vw;}
.formWrap #email {width: 44.097vw;}
.formWrap #password {width: 14.444vw;}
.formWrap.mypage #password {width: 44.097vw;}

.login .formWrap #password {
	min-width: 20.56vw;
}

@media (max-width: 768px) {
.formWrap #birthdate {width: 55.81vw;}
.formWrap #country {width: 55.81vw;}
.formWrap #postalCode {width: 55.81vw;}
.formWrap #address {width: 100%;}
.formWrap #phoneNumber {width: 100%;}
.formWrap #email {width: 100%;}
.formWrap #password {width: 55.81vw;}
.formWrap.mypage #password {width: 44.097vw;}
.formWrap textarea {
	border: 1px solid #a2a2a2;
	width: 100%;
	height: 270px;
}

.login .formWrap #password {
	width: 100%;
}

.name-container input[type="text"] {
  width: 50%; 
  margin-right: 10px;
}

}

/* REGISTRATION */
.element_wrapper p.read {margin-bottom: 50px;}
.element_wrapper p.read2 {
	margin-bottom: 50px;
	top: -30px;
	position: relative;
	margin-bottom: 30px;
}

.smalltxt {
	font-size: 14px;
	letter-spacing: 0.03em;
	line-height: 29px;
	text-align: left;
	color: #969696;
}

.smalltxt a {color: #969696;text-decoration: underline;}

p.xsTxt {
	font-size: 0.75em;
	color: #B4B3B3;
}

.registration_btnset .border_btn_back,
.registration_btnset .border_btn {
  margin-right: 20px; 
}

.registration_check {
  display: flex;
  justify-content: start;
  align-items: center;
}

.formWrap.input_form .registration_check label {margin-bottom: 0px;}

.registration_btnset {
  display: flex;
  justify-content: start; 
  margin-top: 20px; 
}

.contact_btnset {
  display: flex;
  justify-content: start; 
  margin-top: 20px; 
}

.registration_btnset label {
	margin-right: 300px;
}
.registration_check input[type="checkbox"]{
	margin-right: 20px;
}

.regconfirm label{
	color: #969696;
}

.registration_check a {text-decoration: underline;}

@media (max-width: 768px) {
.registration_btnset label {
	margin-right: 10px;
}

.registration_btnset {
  margin-top: 20px; 
}

.registration_check{
	margin-bottom: 48px;
}

.signup .registration_check{
	margin-bottom: 0px;
}

.contact .registration_btnset {
  display: block;
  justify-content: start; 
  margin-top: 20px; 
}

.contact .registration_btnset .border_btn_back {margin-bottom: 50px;}

.element_wrapper p.read2 {
	font-size: 0.875em;
}
}

/* MYPAGE パスワードの変更 */
.input-group {
	display: flex;
	align-items: center; 
	margin-bottom: 10px; 
	justify-content: flex-start;
}

.last-group {
	margin-bottom: 70px;
}

.input-group label {
	flex: 1; 
	margin-right: 10px;
	max-width: 160px;
}

.input-group input {
	flex: 2; 
	max-width: 296px;
}

@media (max-width: 768px) {
.input-group {
	display: block;
	align-items: center;
	margin-bottom: 10px; 
	justify-content: flex-start;
}
.input-group label  {
	max-width: inherit;
}

.last-group {
	margin-bottom: 30px; 
}

}

/* 購入履歴 */
.responsive-table {
  display: table;
  width: 100%;
}

.table-row {
  display: table-row;
}

.table-cell {
  display: table-cell;
  padding: 5px 10px;
  border-bottom: 1px solid #ccc;
}

/* 画面が狭い場合のスタイル */
@media (max-width: 768px) {
  .order_table{
  margin: 0 0 5% 0 !important;
  }

  .responsive-table {
    display: block;
  }
  .table-row {
    display: block;
    margin-bottom: 10px;
  }
  .table-cell {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
}

/* mypage */
.mypage .btnSet {
  display: flex;
  align-items: center;
  flex-wrap: wrap; 
  
}

.mypage .btnSet .border_btn {
	
  margin-right: 10px; 
	width: 250px;
	height: 110px;
	margin-right: 1.94vw;
	margin-bottom: 18px; 
}

.mypage .btnSet .border_btn a {
	display: block;
	text-align: center;
	line-height: 110px;
	padding: 0px;
}

.mypage .border_btn a{
	font-size: 1.6rem;
	padding: 21px 18px;
}

.mypage .btnSet .border_btn:after {
    display: none;
}
.mypage .btnSet .border_btn:hover:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0.69vw;
	transform: inherit;
	border: inherit;
	border-left: inherit
}


 @media only screen and (max-width: 768px) {
.mypage h2 {
 margin-bottom: 40px;
}

.mypage .btnSet {
	display: flex;
	align-items: center;
	flex-wrap: wrap; 
	width: 100%;

	justify-content: space-between;

}
.mypage .btnSet .border_btn {
	width: 50%; 
	box-sizing: border-box;  
	margin: inherit;
	margin-right: 0px;
	margin-bottom: 18px; 
	flex: 0 0 calc(50% - 14px);
	
}
  
.mypage .btnSet .border_btn a {
	font-size: 3.733vw;
	display: block;
	text-align: center;
}

}

/* 購入履歴 */

table.order_table {
  width: 100%;
  border-collapse: collapse;
	margin-bottom: 88px;
}

.order_table th,
.order_table td {
  border: 1px solid #DEDEDB;
  font-size: 0.85em;
  padding: 10px;
}

.order_table th:nth-child(3),
.order_table th:nth-child(4),
.order_table th:nth-child(5) {text-align: center;}

.order_table td:nth-child(3),
.order_table td:nth-child(4),
.order_table td:nth-child(5) {text-align: center;}

@media screen and (max-width: 768px) {
table.order_table  {margin-bottom: inherit;}
.order_table {
	width: 100%;
}
.order_table .thead {
	display: none;
}

.order_table tr {
	width: 100%;
	display: block; 
	margin-bottom: 20px !important;
  }
.order_table td {
	display: block; 
	text-align: left;
	border: 1px solid #DEDEDB; 
	border-bottom: none;
	height: 40px;
	line-height: 40px;
	padding: 0px;
}
.order_table td:first-child {
	font-weight: bold;
	text-align: left;
}
  
.order_table td:nth-child(3),
.order_table td:nth-child(5) {text-align: left;}
.order_table td:nth-child(4) {text-align: left;}

.order_table td:before {
	content: attr(data-label);
	float: left;
	font-weight: bold;
	margin-right: 10px;
	border-right: 1px solid #DEDEDB; 
	width: 30%;
	height: 40px;
	margin-left: 10px;
}
  
.order_table td:last-child {border-bottom:1px solid #DEDEDB}
  
.bd1 {
	border-left: 1px solid #CCC;
	display: block;
	height: 10px;
}

}

/* コンタクト */
/* .contact .inner {margin: 0 0 -150px 0;} */

.contact_p {width: 60%;}

@media screen and (max-width: 768px) {
		.contact_p {width: 100%;}
}


/* ボタン関連 */
.border_btn_back {
	border: solid 1px #969696;
	background: #000;
	position: relative;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.border_btn:hover:after{
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	border: 4px solid transparent;
	border-left: 7px solid #8E6A1A;
}

.border_btn_back:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
	border: 4px solid transparent;
	border-right: 7px solid #969696; /* 左向きの三角形 */
	transition: 0.3s ease-in-out; /* プレフィックス不要のtransition */
}

.border_btn_back:hover:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translateY(-50%);
	border: 4px solid transparent;
	border-right: 7px solid #8E6A1A; /* ホバー時の色 */
}

.border_btn_back:hover {
	border: solid 1px #8E6A1A;
}
.border_btn_back a {color: #969696;}
.border_btn_back:hover a {
	color: #8E6A1A;
}

.border_btn_back a {
	display: block;
	text-align: center;
	padding: 18px;
	line-height: 1;
}

.br-sp {
	display: none;
}

@media screen and (max-width: 768px) {
.br-sp {
 	display: block;
}

.border_btn_back:before {
	transition: 0.3s ease-in-out;
	content: "";
	position: absolute;
	top: 50%;
	left: 2.667vw; 
	transform: translateY(-50%);
	border: 0.8vw solid transparent;
	border-right: 1.6vw solid #B4B3B3; 
}

.border_btn_back:hover:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 2.667vw; 
	transform: translateY(-50%);
	border: 0.8vw solid transparent;
	border-right: 1.6vw solid #8E6A1A; 
}
}

/* ============= style_ryo END =================== */


/* ============= style_yam  =================== */

/* ------------------------------ */
/* BAIJIU WEB3.0 FAN CLUB        */
/* ---------------------------- */

h2 span{
margin: 0% 0% 0% 15px;
letter-spacing: 1px;}

/*  MODAL---------------------------- */
.border_btn .button, .bg_yellow_btn .button {
display: block;
cursor: pointer;
text-align: center !important;
}

.border_btn .button:hover , .bg_yellow_btn .button:hover  {color: #8E6A1A;}

.layer {
width: 100%;
height: 100vh;
height:100dvh;
position: fixed;
top: 0;
left: 0;
z-index: -1;
opacity: 0;
visibility: hidden;
background: rgba(0, 0, 0, .5);
transition: opacity 1s linear, visibility 1s linear, z-index 1s linear;
}

.modal {
position: relative;
margin-right: auto;
margin-left: auto;
width: 100%;
opacity: 0;
visibility: hidden;
}


.modal__contents {
	max-height: calc(100vh - 140px);
	overflow-y: scroll;     
}

.modal__contents::-webkit-scrollbar{
  display: none;
}

.modal__inner_a {
width: 69.44vw;
margin: 50px auto 0% auto;
position: relative;
background: #000;
border: solid 1px #fff;
display: block;
padding:4% 5% 10% 5%;
height: 92vh;
height:92dvh;
transition: visibility .7s linear, opacity .7s linear;
}

.modal__inner_b {
width: 69.44vw;
margin: 100px auto 0% auto;
position: relative;
background: #000;
border: solid 1px #fff;
display: block;
padding:8% 5%;
transition: visibility .7s linear, opacity .7s linear;
}

.modal__button-wrap {
position: absolute;
top: 5px;
right: 20px;
display: inline-flex;
}

.close-button {
position: relative;
width: 32px;
height: 32px;
padding: 0;
border: transparent;
cursor: pointer;
}

.close-button span {
width: 32px;
height: 2px;
background: #969696;
display: inline-block;
position: absolute;
top: 50%;
left: calc(50% - 12px);
}

.close-button span:nth-child(1) {transform: rotate(15deg) translate(0px, -1px);}
.close-button span:nth-child(2) {transform: rotate(-15deg) translate(1px, -1px);}

.layer.is-open {
z-index: 999;
opacity: 1;
visibility: visible;
}

.layer.is-open .modal{
opacity: 1;
visibility: visible;
}

.modal__content dl dt{
width:100%;
background: url(../img/concept/about.png) no-repeat;
background-size: cover;
background-position: center top;
margin: 0% auto 50px auto;
padding: 18% 0%;
font-size: 3em;
color: #fff;
text-align: center !important;
}

.modal__content dl dd p{
color: #fff;
text-align: center !important;
}

.modal__inner_b p{
margin: 0% auto 30px auto;
text-align: center;
}

.modal_signin ,.modal_fanclub{
width: 60%;
margin: 0% auto;
-webkit-display: flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.modal_signin div{
display: flex;
justify-content: space-between;
width: calc(50% - 20px);
}

.modal_fanclub div{
width: 100%;
}

.modal_signin .border_btn a{
width: 221px !important;
font-size: 1em !important;
text-align: center !important;
}

.modal_fanclub .border_btn{
width: 377px !important;
}

.modal_fanclub .border_btn a{
width: 377px !important;
font-size: 1em !important;
text-align: center !important;
}

.border_btn button:hover{
color: #8E6A1A !important;
}
/*MODAL---------------------------- */



/*  CONCEPT---------------------------- */
.concept{}

.concept_wrap_a{
position: relative;
width: 100%;
margin: 0 auto 3.8vw auto;
background: url(../img/concept/bg_main_01.webp) no-repeat;
background-size: 100%;
background-position: center top;
}

.concept_wrap_a h2{
margin: 0% auto;
padding: 31vw 0 50vw 0;
font-size: 3.25em;
line-height: 1em;
text-align: center;
color: #fff;
}

.concept_wrap_a h2 span{font-size: 0.346em;}

.concept_text_a{
width:100%;
margin: 0% auto;
}

.concept_text_a p,.concept_text_b p{text-align: center;}

.concept_btn{
width: 14.5vw;
min-width: 316px;
margin: 3.5vw auto 0 auto;
}

.concept_wrap_b{
position: relative;
width: 100%;
margin: 0% auto 8vw auto !important;
background: url(../img/concept/bg_main_02.webp) no-repeat;
background-size: contain;
}

.concept_wrap_b h2{
margin: 0% auto;
padding: 38vw 0 22vw 0;
font-size: 2.75em;
line-height: 1.5em;
text-align: center;
color: #fff;
}

.concept_text_b{
width:100%;
margin: 0% auto;
}

.border_btn button{
width: 100%;
padding: 10px;
display: flex;
justify-content: center;
align-items: center;
}

.concept .img06 {
width: 21.52vw;
height: 25vw;
background: url(../img/concept/deco_01.png) no-repeat;
background-size:contain;
background-position: left center;
position: absolute;
top: 50.35vw;
left: 9.5vw;
}

.concept .img07 {
width: 25.5vw;
height: 26vw;
background: url(../img/concept/deco_02.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
transform: rotate(6deg);
bottom:-5vw;
right: 15vw;
}

@media only screen and (min-width:767px) and (max-width:1439px){
.concept .img07 {
width: 25.5vw;
height: 26vw;
background: url(../img/concept/deco_02.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
transform: rotate(6deg);
bottom:-5vw;
right: 5vw;
}
}

.concept .img08 {
width: 25vw;
height: 25vw;
background: url(../img/concept/deco_03.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
top: -5vw;
left: 5vw;
}

/*  CONCEPT---------------------------- */


/*  STORE---------------------------- */

.details h4{
font-size: 1.125em;
font-weight: bold;
margin: 10px 0%;
}

.stores{padding: 0 0 70px 0;}

.store_wrap{
width: 100%;
margin: 0 0 -150px 0;
padding: 0;
display: flex;
justify-content:flex-start;
flex-wrap: wrap;
}

.store_box{
width: 23.4vw;
max-width: 337px;
margin: 0% 3.19vw 0% 0%;
padding: 0%;
}

.store_box img{width: 100%;}

.store_box dl dt {height: 50px;}

.product_name_a dl dt{
margin:30px 0% 29px 0%;
padding: 0%;
line-height: 5.25em;
}

.product_name_b dl dt {
margin:30px 0%;
line-height: 1.8em;
}

.product_name_b dl dt span{
font-size: 0.875em;
}

.stores .product {
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin-bottom: 0px;
}

.stores .product div {width: calc(50% - 32px);}

.stores .product .image img {width: 100%;}

.stores .product .details {
display:flex;
align-items:center;
}

.stores .product .details .inner {
width: 100%;
padding: 0% !important;
}

.stores .product .details h3 span {font-size: 2.8rem;}

.stores .product .details p {margin-bottom: 36px;}

.stores .product .details .bg_yellow_btn {width: 270px !important;}

.stores .product .details .bg_yellow_btn a{padding: 18px 0;}

.stores .product .details .bg_yellow_btn button{
display: block;
width: 270px;
padding: 5px 0%;
text-align: center;
}

.stores .product .details .bg_yellow_btn button:hover{color: #8E6A1A;}

.stores .product .details .bg_yellow_btn:after {
content: "";
position: absolute;
top: 52%;
right: 10px;
transform: translateY(-50%);
border: 3px solid transparent;
border-left: 6px solid #FFF;
}

.stores .product .details .bg_yellow_btn:hover:after {
border-left: 6px solid #8E6A1A;
}

.stores .border_btn {
width: 316px;
margin: 0 auto;
}

.stores .border_btn a {font-size: 2.0rem;}

.stores .utility {
position: relative;
margin:200px auto -200px auto;
padding: 60px 0% 0% 0%;
background-image: none;
}

.stores .utility .img01 {
width: 30vw;
height: 20vw;
background: url(../img/index/store_img01.png) no-repeat;
background-size: 100%;
position: absolute;
transform: rotate(-15deg);
top: -14vw;
left: 0;
}

.stores .utility .img05 {
width: 25vw;
height: 30vw;
background: url(https://yri.boy.jp/baiju/ja/img/store/details/store_img05.png) no-repeat;
background-size: 100%;
position: absolute;
bottom: -8vw;
left: 2vw;
}

.stores .utility .title{
width: 100%;
text-align: center;
font-size: 3em;
}

.stores .utilities {
background: #000;
padding: 0;
}

.stores .utilities .inner {
width: 57.639vw;
margin: 0 auto;
padding: 50px 0% 80px 0% !important;
}

.stores .utilities .inner img {width: 100%;}

.stores .utilities .inner .image {
    position: relative;
    margin-bottom: 2.083vw;
}

.stores .utilities .inner .image .num {
    font-family: "trajan-pro-3",serif;
    position: absolute;
    font-size: 7.917vw;
    line-height: 1.0;
}

.stores .utilities .inner .image .num.num_begin {
    top: -4.792vw;
    left: 2.778vw;
}

.stores .utilities .inner .image .num.num_odd {
    top: 2.5vw;
    right: -2.569vw;
}

.stores .utilities .inner .image .num.num_even {
    top: 2.5vw;
    left: -2.569vw;
}

.stores .utilities .inner .beginning,
.stores .utilities .inner .utility_column {
    margin-bottom: 3.472vw;
}

.stores .utilities .inner .secondary {
-webkit-display: flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.stores .utilities .inner .secondary .utility_column {width: calc(50% - 42px);}

.utility_btn{
width:28vw;
margin: 7% auto 0% auto;
}

.bg_beginning_btn{width: 90% !important;}

.bg_beginning_btn a{
width: 100%;
height: 5vw;
margin: 30px 0% 0% 0%;
text-align: center;
display: flex;
justify-content: center;
align-items: center;
background:url(../img/store/details/bg_sotre_btn.png) no-repeat;
background-size:100% !important;
font-size:1.25em;
font-size: clamp(12px, 1.25vw, 20px);
color: #CDA35E;
}

.bg_beginning_btn a:hover{opacity: 0.8;}

.beginning{}

.beginning .product{
flex-wrap: wrap;
justify-content:flex-start !important;
}

.beginning .product .image{
width: 29.23vw;
max-width: 421px;
margin:0% 6.94vw 0% 0%;
flex-wrap: wrap;
justify-content:flex-start !important;
}

.beginning .product .details{
width: 35vw;
margin: -20px 0% 0% 0%;
flex-wrap: wrap;
justify-content:flex-start !important;
}

.beginning .product .details h3 {margin: 0% 0% 20px 0%;}
.beginning .product .details h3 span.caption_a {font-size: 0.6em;}
.beginning .product .details h3 span.caption_b {font-size: 0.4em;}
.beginning .product .details p {width: 28em;}
.beginning .product .details p span{display: flex; font-size: 0.85em;line-height:1.65em !important;}

.fanclub_btn_box{
width: 100%;
margin: 9vw auto 0 auto;
text-align: center;
}

.fanclub_btn_box p{
margin:0 0 0.85vw 0 !important;
font-size:0.875em ;
}

.fanclub_btn_box .border_btn{width: 23.61vw !important;}
.fanclub_btn_box .border_btn a span:hover{color:#8E6A1A;}


/*  STORE---------------------------- */


/*  STEP---------------------------- */
.step{}

.step_wrap{
width: 100%;
margin: -180px 0% 0% 0%;
}

.step_box{
width:100%;
height: 539px;
background-image: url(../img/step/bg_01.png);
background-size:contain !important;
background-repeat: no-repeat;
}

.step_box_in_l , .step_box_in_r {width:60.41vw;}

.step_box_in_l {margin: 0% auto 0% 0%;}
.step_box_in_r {margin: 0% 0% 0% auto;}

.step_box_l{
width: 19.79vw;
margin: 0% 2.63vw 0% 0%;
padding: 0%;
}

.step_box_l img{width: 100%;}

.step_box_r{
position: relative;
width: 37.98vw;
padding: 0px 25px 70px 25px;
background: #000;
}

.step_box_r dl dt{font-size:1.5em !important;font-weight: bold;margin: 0 0 10px 0 !important;}

.step_box_r dl dd .cou_list{font-size:1em !important;margin: 10px 0 !important; }


.step_box_r dl dd span{
display: block;
margin: 5px 0% 0% 0% ;
font-size:0.75em;
line-height: 2em;
}

.step_box_r .border_btn{
margin: 30px 0% 0% 0%;
width: 21.9vw;
}

.step1, .step3, .step5{
padding: 110px 0% 110px 4.4vw;
background-position: left top;
justify-content: flex-start !important;
}

.step2{
margin: 0% 0% 0% auto;
padding: 110px 4.4vw 110px 0%;
background-position: right top;
justify-content: flex-start !important;
}

.step4{
margin: 0% 0% 0% auto;
padding: 110px 4.4vw 500px 0% !important;
background-position: right top;
justify-content: flex-start !important;
}

.step_box_r .num {
position: absolute;
top: -40px;
right: 20%;
}
.step_box_r .num p{
margin: 0% !important;
font-size:5em;
line-height: 1em;
font-family: "trajan-pro-3",serif;
}

.step_btn_box{
width: 22.0vw;
margin: 70px auto 0px;
padding: 0% 0% 0px 0%;
}

.step_btn_box .border_btn{
padding:2% 1%;
background: #8E6A1A;
border: none;
position: relative;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
 transition: 0.3s ease-in-out;
}

.step_btn_box .border_btn a{color: #fff !important;}
.step_btn_box .border_btn a:hover{color: #b4b4b4 !important;}
.step_btn_box .border_btn:after{border-left: 7px solid #fff;}

.step_btn_box .border_btn:hover:after{
content: "";
position: absolute;
top: 50%;
right: 10px;
transform: translateY(-50%);
border: 4px solid transparent;
border-left: 7px solid #b4b4b4;
}

/*  STEP---------------------------- */


/*  TEAM---------------------------- */

.team .inner{
margin: 0 0 -100px 0;
}

.team .profwrap{
width: 100%;
margin: 5vw 0 0 0;
}

.team .profwrap .profbox{
width: 100%;
margin: 0 0 5.5vw 0;
-webkit-display: flex;
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.team .profwrap .profbox .profbox_l{width: 22vw;}

.team .profwrap .profbox .profbox_l img{width: 100%;}

.team .profwrap .profbox .profbox_r{
width: 55vw;
padding: 0 0 0 6vw;
box-sizing: border-box;
}

.team .profwrap .profbox .profbox_r dl dt{
margin: 0 0 1.25vw 0;
font-size: 1.125em;
}
/*  TEAM---------------------------- */

/*  CART---------------------------- */
.cart{position: relative;overflow: visible;}

.carts .coution_list ul {
margin: 1.5vw 0 0 0;
}

.carts .coution_listb ul {
margin: 1.5vw 0;
}

.carts .coution_list ul li,.carts .coution_listb ul li{
font-size:0.75em;
list-style-type:disc;
list-style-position: inside;
}

.paymentbox_l{
width: 65%;
}

.paymentbox_r{
position: sticky;
width:35%;
top: 20px;
right:0px;
}

.payment_boxin{
width: 100%;
padding: 30px 30px 10px 30px;
border: solid 1px #fff;
}

.payment_title,.payment_price{
margin: 0% 0% 10px 0% !important;
font-size: 1.125em;
}

.payment_subtotal{
margin:0% !important;
font-size: 0.875em;
}

.cart .border_btn{
width: 100% !important;
margin: 0% 0% 20px 0% !important;
}

.cancell_box{margin: 0% 0% 20px 0%;font-size: 0.75em;}
input[type="checkbox"]#originala_checkbox{display:none;}
input[type="checkbox"]#originala_checkbox:checked + label{background:#000;color:#fff;}

input[type="checkbox"]#originalb_checkbox {
position: relative;
width: 27px;
height: 27px;
margin: 0% 0% 0% 0%;
border: 1px solid #fff;
vertical-align: -5px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
cursor: pointer;
}

input[type="checkbox"]#originalb_checkbox:checked:before {
position: absolute;
content: '●';
top: 1px;
left: 7px;
color: #fff;
font-size: 0.65em;
}

.merch_box{margin: 0% 0% 35px 0%;}
.merch_box_l{
width: 5%;
margin:7% 0% 0% 0%;
display: flex;
justify-content: center;
align-items: center;
}
.merch_box_r{width:95%;padding: 0% 5%;}
.merch_box_in_l{width: 35%;}
.merch_box_in_l img{width: 100%;}
.merch_box_in_r{width: 65%;padding: 0% 3% 0% 7%;}
.cart p.product{margin: -10px 0% 30px 0% !important;}
.cart p.price{font-size: 1.125em;margin: 0% !important;}
.cart p.delete{font-size: 0.875em;margin: 0% !important;}

.cart select{
position: relative;
width: 100%;
margin: 0% 0% 0% 3px;
padding: 0% 3%;
font-size: 0.875em;
text-align: center;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}

.cart .pieces_box{float: left;}
.cart .price_box{float: right;}

.cart .pieces_box .select{
position: relative;
width: 60px;
border: 1px solid #fff;
}

.cart .pieces_box .select:after {
content: "";
position: absolute;
top: 18px;
right: 8px;
width: 0;
height: 0;
border-style: solid;
border-right: 2px solid transparent;
border-left: 2px solid transparent;
border-top: 3px solid #B4B3B3;
border-bottom: 0;
}

.cart .total_box{
width: 92%;
margin: 0% 0% 80px 0%;
padding: 20px 0px;
border-top: solid 1px #fff;
border-bottom: solid 1px #fff;
}

.cart .total_box p{
margin: 0%;
text-align: right;
line-height: 1.5em;
}

.cart .total_box p span.sm{
margin: 0%;
padding: 0% 33px 0% 0%;
text-align: center;
font-size: 0.875em;
}

.cart .total_box p span.lg{
margin: 0%;
font-size: 1.125em;
}

.cart h3{font-size: 2em;}

.cart h3 span{
padding: 0% 0% 0% 2%;
font-size: 0.438em;
}

.addinfo_box p{margin: 0% !important;}

.addinfo_box input[type="text"].wallet{
width: 100%;
max-width: 415px;
margin: 0% 0% 80px 0%;
border-bottom: solid 1px #fff;
}

.addinfo_box input[type="text"].country,.addinfo_box input[type="text"].postcode{
width: 100%;
max-width: 255px;
border-bottom: solid 1px #fff;
}

.addinfo_box input[type="text"].country{margin: 20px 0% 50px 0%;}

.addinfo_box input[type="text"].postcode{margin: 0% 0% 50px 0%;}

.addinfo_box input[type="text"].address{
width: 100%;
max-width: 635px;
margin: 0%;
border-bottom: solid 1px #fff;
}


.carts.element_wrapper .inner .border_btn_back {
    width: 220px;
/*     margin-left: inherit; */
}

@media only screen and (max-width: 768px) {
	.carts.element_wrapper .inner .border_btn_back {
    width: 220px;
    margin-left: auto;
}
}
    
/*  CART---------------------------- */


/*  SIGN IN---------------------------- */

.signup p a,.login p a{text-decoration: underline;}

.formbox_a,.formbox_b{
width: 100%;
max-width: 1050px;
}

.formbox_a{margin: 0%;}
.formbox_b{margin: -30px 0% 60px 0%;}


.formbox_a p{margin: 0%;}

.formtype_a{
width: 100%;
max-width: 635px;
 font-size: 1.25em;
border-bottom: solid 1px #A2A2A2;
margin: 0% 0% 60px 0%;
}
.formbox_a .lead{margin: 0% 0% 30px 0% !important;}
.formbox_b .example{margin: -40px 0% 40px 0% !important;color: #969696;}
.formbox_b .caution{font-size: 0.8em;}
/*  SIGN IN---------------------------- */


/*  NEWS---------------------------- */
.news{}

.news_wrap{
width: 100% !important;
margin: 7vw 0% 0% 0%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	align-content: stretch;
	flex-wrap: wrap;
}

.news_box{
width:calc((100% - 60px) / 3) ;
margin: 0 0 5.5vw 0 !important;
	display: flex;
	justify-content: space-between;
overflow: hidden;
}

.news_box img {
width:100%;
margin: 0% 0% 1vw 0%;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.news_box img:hover {
transform: scale(1.1, 1.1);
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.news_box a:hover {color: #8E6A1A;}

.news_box p,.news_box time{font-size: 0.875em;}

.pager_box{
width: 100%;
margin: 100px auto 0% auto;
}

.pager {
width: 50%;
margin: 0% auto;
display: flex;
justify-content: center;
align-items: center;
}
.pager li {display:inline;}
.pager li {
display: inline-block;
height:64px;
line-height:64px;
width:64px;
text-align:center;
border-radius: 100px;
}
.pager li:first-child {margin: 0% 20px 0% 0%;}
.pager li:last-child {margin: 0% 0% 0% 20px;}
.pager .pre {}
.pager .this {color:#fff;border:1px #ccc solid;color:#fff;}
.pager li a{display:block;text-decoration: none;}
.pager li a:hover {color: #fff;text-decoration: none;}

/*  NEWS---------------------------- */

/*  NEWS details---------------------------- */
.news_details{}

.news_details_wrap{
width: 100%;
max-width: 918px;
margin: 0% 0% 0% 5%;
}

.news_details_title{width: 100%;}
.news_details_date{
width: 100%;
text-align: right;
}

.news_details_wrap h2{font-size: 1.625em;line-height: 1.8em;}

.news_details_wrap img{width: 100%;}

.news_details_text{
margin: 5vw auto;
padding: 0% 5%;
}

.news_details_btn {
display: flex;
justify-content: center;
align-items: center;
}

/*  NEWS details---------------------------- */


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

h2 span{margin: 15px 0 0 0;letter-spacing: 1px;}

.border_btn .button {
display: block;
cursor: pointer;
text-align: center;
}

.button:hover {color: #8E6A1A;}

.layer {
width: 100%;
height: 100vh;
height:100dvh;
position: fixed;
top: 0;
left: 0;
z-index: -1;
opacity: 0;
visibility: hidden;
background: rgba(0, 0, 0, .7);
transition: opacity 1s linear, visibility 1s linear, z-index 1s linear;
}

.modal {
position: relative;
margin-right: auto;
margin-left: auto;
width: 100%;
opacity: 0;
visibility: hidden;
}

.modal__inner_a {
width: 90vw;
margin: 50px auto 0% auto;
position: relative;
background: #000;
border: solid 1px #fff;
display: block;
padding:4% 5% 10% 5%;
height: 92vh;
height:92dvh;
transition: visibility .7s linear, opacity .7s linear;
}

.modal__inner_b {
width: 90vw;
margin: 100px auto 0% auto;
position: relative;
background: #000;
border: solid 1px #fff;
display: block;
padding:10% 5%;
transition: visibility .7s linear, opacity .7s linear;
}


.modal__button-wrap {
position: absolute;
top: 5px;
right: 20px;
display: inline-flex;
}

.close-button {
position: relative;
width: 32px;
height: 32px;
padding: 0;
border: transparent;
cursor: pointer;
}

.close-button span {
width: 32px;
height: 2px;
background: #969696;
display: inline-block;
position: absolute;
top: 50%;
left: calc(50% - 12px);
}

.close-button span:nth-child(1) {transform: rotate(15deg) translate(0px, -1px);}
.close-button span:nth-child(2) {transform: rotate(-15deg) translate(1px, -1px);}

.layer.is-open {
z-index: 999;
opacity: 1;
visibility: visible;
}

.layer.is-open .modal{
opacity: 1;
visibility: visible;
}

.modal__content dl dt{
width:100%;
background: url(../img/sp/concept/about.png) no-repeat;
background-size: cover;
background-position: center top;
margin: 5% auto 30px auto;
padding: 20% 0%;
font-size: 1.25em;
color: #fff;
text-align: center !important;
}

.modal__content dl dd p{
color: #fff;
text-align: left !important;
font-size: 0.875em;
}

.modal__inner_b p{
margin: 0% auto 30px auto;
text-align: center;
}

.modal_signin ,.modal_fanclub{
width: 100%;
margin: 0% auto;
-webkit-display: flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.modal_signin div{
width:100%;
margin: 0% auto 20px auto !important;
}

.modal_fanclub div{
width: 100%;
}

.modal_signin .border_btn a{
width: 100% !important;
font-size: 1em !important;
text-align: center !important;
}

.modal_fanclub .border_btn{
width: 100% !important;
}

.modal_fanclub .border_btn a{
width: 100% !important;
font-size: 1em !important;
text-align: center !important;
}

.modal_signin .border_btn a{
width: 100% !important;
font-size: 1em !important;
text-align: center !important;
}

/*MODAL---------------------------- */


/*  CONCEPT---------------------------- */

.concept_wrap_a{
position: relative;
width: 100%;
margin: 0 auto 35vw auto;
background: url(../img/sp/concept/bg_main_01.webp) no-repeat;
background-size: 100%;
background-position: center top;
}

.concept_wrap_a h2{
margin: 0% auto;
padding: 79vw 0 110vw 0%;
font-size: 2.313em;
line-height: 1em;
text-align: center;
color: #fff;
letter-spacing: 1px;
}

.concept_wrap_a h2 span{font-size:0.324em;}

.concept_text_a{
width:90%;
margin: 0 auto;
}

.concept_text_a p,.concept_text_b p{text-align: left;}

.concept_btn{
width: 60vw;
margin: 5vw auto 0 5vw;
}

.concept_wrap_b{
position: relative;
width: 100%;
margin: 0% auto -50px auto !important;
background: url(../img/sp/concept/bg_main_02.webp) no-repeat;
background-size: contain;
}

.concept_wrap_b h2{
margin: 0% auto;
padding: 63vw 0 60vw 0;
font-size: 1.25em;
line-height: 1.5em;
text-align: center;
color: #fff;
letter-spacing: 1px;
}

.concept_text_b{
width:90%;
margin: 0% auto;
}

.concept .img06 {
width:45vw;
height: 65vw;
background: url(../img/concept/deco_01.png) no-repeat;
background-size:contain;
background-position: left center;
position: absolute;
top: 133vw;
left: 1vw;
}

.concept .img07 {
width: 50vw;
height: 52vw;
background: url(../img/concept/deco_02.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
transform: rotate(10deg);
bottom: -35vw;
right:5vw;
}

.concept .img08 {
width: 50vw;
height: 35vw;
background: url(../img/concept/deco_03.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
top: 2vw;
left: 7vw;
}

/*  CONCEPT---------------------------- */


/*  STORE---------------------------- */

.store{margin: 0;}
.stores{padding: 0 !important;}

.store .inner {margin: 20vw 0 -15vw 0;}

.stores .inner {width: 100% !important;margin: 20vw 0 0 0;}


.store_wrap{
width: 100%;
margin: -30px 0 0 0;
padding: 0;
display: flex;
justify-content:flex-start;
flex-wrap: wrap;
}

.store_box{
width: 100%;
margin: 0;
padding: 0;
}

.store_box img{width: 100%;}

.store_box dl dt {height: 100%;}

.product_name_a dl ,.product_name_b dl{
margin:5vw 0 15vw 0;
}

.product_name_a dl dt{
margin:0;
padding: 0;
line-height: 1.5em;
}

.product_name_b dl dt {
margin:0;
line-height: 1.8em;
}

.product_name_b dl dt span{
font-size: 0.875em;
}

.stores.element_wrapper {margin: 0px auto -80px auto;}

.stores .product div {width:100%;}
.stores .product .image {width: 100%;}
.stores .product .image img {width: 100%;}

.stores .product .details {
display:flex;
align-items:center;
}

.details h4{
font-size: 1.125em;
font-weight: bold;
margin: 15px 0%;
}

.stores .product .details .inner {
width: 100%;
margin: 0 auto;
padding: 0 !important;
}

.stores .product .details h3 {font-size: 1.125em;}
.stores .product .details h3 span {font-size: 1em;}

.stores .product .details p {margin-bottom: 36px;font-size: 0.875em;}

.stores .product .details .bg_yellow_btn {width: 100% !important;}

.stores .product .details .bg_yellow_btn button{
display: block;
width: 100%;
margin: 0% auto;
padding: 10px 0%;
text-align: center;
}

.stores .product .details .bg_yellow_btn:after {
content: "";
position: absolute;
top: 52%;
right: 10px;
transform: translateY(-50%);
border: 3px solid transparent;
border-left: 6px solid #FFF;
}

.stores .product .details .bg_yellow_btn:hover:after {
border-left: 6px solid #8E6A1A;
}

.stores .border_btn {
width: 316px;
margin: 0 auto;
}

.stores .border_btn a {font-size: 2.0rem;}

.stores .utility {
width: 100% !important;
position: relative;
margin:150px auto -30px auto;
padding: 60px 0% 0% 0%;
background-image: none;
}

.stores .utility .img01 {
width: 72vw;
height: 32vw;
background: url(../img/sp/store/details/deco7.png) no-repeat;
background-size: 100%;
position: absolute;
transform: rotate(0deg);
top: -17vw;
left: 20% ;
}

.stores .utility .img05 {
width: 50vw;
height: 40vw;
background: url(https://yri.boy.jp/baiju/ja/img/store/details/store_img05.png) no-repeat;
background-size: 100%;
position: absolute;
bottom: -50vw;
left: 0;
}

.stores .utility .title{
width: 100%;
margin:0% 0% 50px 0%;
text-align: left;
font-size: 1.375em;
line-height: 1.5em;
}

.stores .utilities {
width: 100%;
background: #000;
padding: 0px;
}

.stores .utilities .inner {
width: 100% !important;
margin: 0 auto;
padding: 0% !important;
}

.stores .utilities .inner img {width: 100%;}

.stores .utilities .inner .image {
    position: relative;
    margin-bottom: 2.083vw;
}

.stores .utilities .inner .image .num {
    font-family: "trajan-pro-3",serif;
    position: absolute;
    font-size: 2.5em;
    line-height: 1.0;
}

.stores .utilities .inner .image .num.num_begin {
    top: -4.792vw;
    left: 2.778vw;
}

.stores .utilities .inner .image .num.num_odd {
    top: 2.5vw;
    right: -2.569vw;
}

.stores .utilities .inner .image .num.num_even {
    top: 2.5vw;
    left: -2.569vw;
}

.stores .utilities .inner .beginning,
.stores .utilities .inner .utility_column {
    margin-bottom: 3.472vw;
}

.stores .utilities .inner .secondary {
-webkit-display: flex;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.stores .utilities .inner .secondary .utility_column {width: calc(50% - 42px);}

.utility_btn{
width:100%;
margin: 50px auto 100px auto;
}

.utility_btn a{
line-height: 120%;
}

.bg_beginning_btn{width: 100% !important;}

.bg_beginning_btn a{
width: 100%;
height: 91px;
margin: 30px 0% 0% 0%;
text-align: left;
display: flex;
justify-content: center;
align-items: center;
background:url(../img/sp/store/details/bg_sotre_btn.png) no-repeat;
background-size:100% !important;
font-size: 1.25em;
color: #CDA35E;
}

.bg_beginning_btn a:hover{opacity: 0.8;}

.beginning{width: 100%;}

.beginning .product{
flex-wrap: wrap;
justify-content:flex-start !important;
}

.beginning .product .image{
width: 100%;
margin:0% auto;
flex-wrap: wrap;
justify-content:flex-start !important;
}

.beginning .product .details{
width:100%;
margin:0%;
flex-wrap: wrap;
justify-content:flex-start !important;
}

.beginning .product .details h3 {margin: 15px 0% 20px 0%;}
.beginning .product .details h3 span.caption_a {font-size: 0.6em;}
.beginning .product .details h3 span.caption_b {font-size: 0.75em;}
.beginning .product .details p {width: 100%;}
.beginning .product .details p span{display: flex; font-size: 0.85em;line-height:1.65em !important;}

.fanclub_btn_box{
width: 100%;
margin:10vw auto 50px auto;
text-align: center;
}

.fanclub_btn_box p{
margin:0 0 3vw 0 !important;
font-size:0.875em ;
}

.fanclub_btn_box .border_btn{width: 78vw !important;}
.fanclub_btn_box .border_btn a{font-size: 0.875em;}
.fanclub_btn_box .border_btn a span:hover{color:#8E6A1A;font-size: 0.875em;}

.stores .utilities .inner .utility_block_inner {
width: 100%;
max-width: unset;
background: #000;
padding: 0%;
}

.stores .utilities .inner .utility_odd {
padding-top: 0;
padding-right: 0;
}

.stores .utilities .inner .utility_even {
padding-top: 0;
padding-left: 0;
}

.stores .utilities .inner .secondary {
display: block;
margin:70px 0% 0% 0%;
}

.stores .utilities .inner .secondary .utility_column {
width: 100%;
margin:70px 0% 0% 0%;
}
    
.stores .utilities .inner img {width: 100%;}



/*  STORE---------------------------- */


/*  STEP---------------------------- */
.step{}

.step_wrap{
width: 100%;
margin: -70px 0% -70px 0%;
}

.step_box{
width:100%;
background-image: url(../img/step/bg_01.png);
background-size:contain !important;
background-repeat: no-repeat;
}

.step_box_in_l , .step_box_in_r {
width:100%;
padding: 0% 7%;
}

.step_box_l{
width: 100%;
margin: 0% ;
padding: 0%;
text-align: center;
}

.step_box_l img, .step_box_r img{
width: 95%;
height: 252px;
object-fit:cover;
object-position:0% 0%;
margin: 0% auto;
}

.step_box_r{
position: relative;
width: 100%;
margin: 0%;
padding: 0% 5% 15% 5%;
background: #000;
}

.step_box_r dl dt{
margin: 0%;
padding: 0%;
font-size:1.125em;
}

.step_box_r dl dd span{
display: block;
margin: 5px 0% 0% 0% ;
font-size:0.75em;
line-height: 2em;
}

.step_box_r .border_btn{
margin: 20px 0% 0% 0%;
width: 80%;
}

.step1, .step3, .step5{
margin: 0%;
padding: 0%;
background-position: left top;
justify-content: flex-start !important;
}

.step3{margin: 0% 0% 20px 0% !important;}

.step2,.step4 {
padding: 0% !important;
background-position: right top;
justify-content: flex-start !important;
}

.step2 {
margin: 0% 0% -40px 0% !important;
padding: 0% !important;
}

.step4 {
margin: 0% 0% 60px 0% !important;
padding: 0% !important;
}

/*
.step4 .step_box_r .num{
position: absolute;
top: -7px !important;
right: 5%;
}
*/

.step5{margin: 0% 0% -150px 0% !important;}

.step_box_r .num {
position: absolute;
top: -7px !important;
right: 5%;
}
.step_box_r .num p{
margin: 0% !important;
font-size:2.5em;
line-height: 1em;
font-family: "trajan-pro-3",serif;
}

.step_btn_box{
width: 85%;
margin: 70px auto;
padding: 0% 0% 0% 0%;
}

.step_btn_box .border_btn{
padding:0% 1%;
background: #8E6A1A;
border: none;
position: relative;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
 transition: 0.3s ease-in-out;
}

.step_btn_box .border_btn a{color: #fff !important;}
.step_btn_box .border_btn a:hover{color: #b4b4b4 !important;}
.step_btn_box .border_btn:after{border-left: 7px solid #fff;}

.step_btn_box .border_btn:hover:after{
content: "";
position: absolute;
top: 50%;
right: 10px;
transform: translateY(-50%);
border: 4px solid transparent;
border-left: 7px solid #b4b4b4;
}

/*  STEP---------------------------- */


/*  TEAM---------------------------- */
.team{
    width: 100%;
    margin: 50px 0% 0px 0%;
}

.team .profwrap{
width: 100%;
margin: 0% 0% -130px 0%;
}

.team .profwrap .profbox{
width: 100%;
margin: 0% 0% 130px 0%;
}

.team .profwrap .profbox .profbox_l{
width: 100%;
margin: 0% auto 30px auto;
}
.team .profwrap .profbox .profbox_l img{width: 100%;text-align: center;}

.team .profwrap .profbox .profbox_r{
width: 100%;
padding: 0;
}

.team .profwrap .profbox .profbox_r dl dt{
margin: 0% 0% 10px 0%;
font-size: 1.125em;
}
/*  TEAM---------------------------- */


/*  CART---------------------------- */
.cart{padding: 0 0 20px 0;}
.cart,.carts{position: relative;}

.carts h2{font-size: 2.125em;}

.carts .coution_list ul{
margin: 30px 0% 0% 0%;
}

.carts .coution_listb ul{
margin: 30px 0%;
}

.carts_in{margin:0%;}

.carts .coution_list ul li,.carts .coution_listb ul li{
font-size:0.75em;
list-style-type:disc ;
list-style-position: inside;
}

.paymentbox_l{
width: 100%;
margin: 0% !important;
}

.paymentbox_r{
position:static;
width:100%;
margin: 0% 0% -50px 0% !important;
top: 0%;
right:0%;
}

.payment_boxin{
width: 100%;
padding: 30px 30px 10px 30px;
border: solid 1px #fff;
}

.payment_title,.payment_price{
margin: 0% 0% 10px 0% !important;
font-size: 1.125em;
}

.payment_subtotal{
margin:0% !important;
font-size: 0.875em;
}

.cart .border_btn{
width: 100% !important;
margin: 0% 0% 20px 0% !important;
}

.cancell_box{margin: 0% 0% 20px 0%;font-size: 0.75em;}
input[type="checkbox"]#originala_checkbox{display:none;}
input[type="checkbox"]#originala_checkbox:checked + label{background:#000;color:#fff;}

input[type="checkbox"]#originalb_checkbox {
position: relative;
width: 27px;
height: 27px;
margin: 60% 0% 0% 0%;
border: 1px solid #fff;
vertical-align: -5px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
cursor: pointer;
}

input[type="checkbox"]#originalb_checkbox:checked:before {
position: absolute;
content: '●';
top: 5px;
left: 8px;
color: #fff;
}

.merch_box{margin: 0% 0% 35px 0%;}
.merch_box_l{
width: 15%;
margin:0%;
display: flex;
justify-content: center;
align-items: center;
}
.merch_box_r{width:85%;padding: 0% 5%;}
.merch_box_in_l{width: 100%;margin: 0% 0% 20px 0% !important;}
.merch_box_in_l img{width: 50%;}
.merch_box_in_r{width: 100%;padding: 0%;}
.cart p.product{margin: -10px 0% 30px 0% !important;}
.cart p.price{font-size: 1.125em;margin: 0% !important;}
.cart p.delete{font-size: 0.875em;margin: 0% !important;}

.cart select{
position: relative;
width: 100%;
margin: 0% 0% 0% 3px;
padding:8% 3%;
font-size: 0.875em;
text-align: center;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}

.cart .pieces_box{float: right;}
.cart .price_box{float: left;}

.cart .pieces_box .select{
position: relative;
width: 60px;
margin: 0% 0% 10px 0%;
border: 1px solid #fff;
}

.cart .pieces_box .select:after {
content: "";
position: absolute;
top: 13px;
right: 8px;
width: 0;
height: 0;
border-style: solid;
border-right: 2px solid transparent;
border-left: 2px solid transparent;
border-top: 3px solid #B4B3B3;
border-bottom: 0;
}

.cart .total_box{
width: 100%;
margin: 0% 0% 75px 0%;
padding: 20px 0px;
border-top: solid 1px #fff;
border-bottom: solid 1px #fff;
}

.cart .total_box p{
margin: 0%;
text-align: right;
line-height: 1.5em;
}

.cart .total_box p span.sm{
margin: 0%;
padding: 0% 33px 0% 0%;
text-align: center;
font-size: 0.875em;
}

.cart .total_box p span.lg{
margin: 0%;
font-size: 1.125em;
}

.cart h3{font-size: 1.75em;line-height: 0.75em;margin: 0 0 30px 0;}

.cart h3 span{
padding: 0% 0% 0% 2%;
font-size: 0.5em !important;
}

.addinfo_box{margin: 0% 0% 45px 0% !important;}

.addinfo_box p{margin: 0% 0% 10px 0% !important;}

.addinfo_box input[type="text"].wallet{
width: 100%;
margin: 0% 0% 50px 0%;
border-bottom: solid 1px #fff;
}

.addinfo_box input[type="text"].country,.addinfo_box input[type="text"].postcode{
width:80%;
border-bottom: solid 1px #fff;
}

.addinfo_box input[type="text"].country{margin: 20px 0% 40px 0%;}

.addinfo_box input[type="text"].postcode{margin: 0% 0% 40px 0%;}

.addinfo_box input[type="text"].address{
width: 100%;
margin: 0%;
border-bottom: solid 1px #fff;
}

/*  CART---------------------------- */


/*  SIGN IN---------------------------- */
.formbox_a,.formbox_b{
width: 100%;
}

.formbox_a{margin: 0%;}
.formbox_b{margin: -30px 0% 60px 0%;}


.formbox_b p a{
text-decoration: underline;
}

.formtype_a{
width: 100%;
 font-size: 1.25em;
border-bottom: solid 1px #A2A2A2;
margin: 0% 0% 60px 0%;
}
/*  SIGN IN---------------------------- */

/*  NEWS---------------------------- */
.news{margin:0% 0% -60px 0% !important;}

.news_wrap{
width: 100%;
margin:50px 0% 0% 0%;
}

.news_box{
width:calc((100% - 15px) / 2) ;
margin: 0%;
}

.news_box img{width:100%;}

.news_box p,.news_box time{
width: 100%;
font-size: 0.875em;
}

.news_box p{margin: 10px 0% 0% 0% !important;}
.news_box time{display: block;margin: 0% 0% 50px 0% !important;}

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

.pager {
width: 100%;margin: 0% auto;
display: flex;
justify-content: center;
align-items: center;
}
.pager li {display:inline;}
.pager li {
display: inline-block;
height:55px;
line-height:55px;
width:55px;
text-align:center;
border-radius: 100px;
}
.pager li:first-child {margin: 0% 20px 0% 0%;}
.pager li:last-child {margin: 0% 0% 0% 20px;}
.pager .pre {}
.pager .this {color:#fff;border:1px #ccc solid;color:#fff;}
.pager li a{display:block;text-decoration: none;}
.pager li a:hover {color: #fff;text-decoration: none;}

/*  NEWS---------------------------- */

/*  NEWS details---------------------------- */
.news_details{}

.news_details_wrap{
width: 100%;
margin: 0% auto;
}

.news_details_title{width: 100%;margin: 0%;}
.news_details_date{width: 100%;margin: 0% 0% 30px 0% !important;text-align: left;}

.news_details_wrap h2{font-size: 1.125em;margin: 0% 0% 10px 0% !important;}

.news_details_wrap img{width: 100%;}

.news_details_text{
margin: 8vw auto;
padding: 0%;
}
.news_details_text p{text-align: justify;}

/*  NEWS details---------------------------- */

}





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

/*  CONCEPT---------------------------- */
.concept{}

.concept_wrap_a{
position: relative;
width: 100%;
margin: 0% auto 5vw auto;
background: url(../img/concept/bg_main_01.webp?=v1) no-repeat;
background-size: 100%;
background-position: center top;
}

.concept_wrap_a h2{
margin: 0% auto;
padding: 28.25vw 0 42.35vw 0;
font-size: 3.25em;
line-height: 1em;
text-align: center;
color: #fff;
}

.concept_wrap_a h2 span{font-size: 0.346em;}

.concept_text_a{
width:33.3vw;
margin: 0% auto;
}

.concept_text_a p,.concept_text_b p{text-align: center;}

.concept_btn{
width: 20vw;
margin: 4.15vw auto 0 auto;
}

.concept_wrap_b{
position: relative;
width: 100%;
margin: 0% auto 250px auto !important;
background: url(../img/concept/bg_main_02.webp) no-repeat;
background-size: contain;
}

.concept_wrap_b h2{
margin: 0% auto;
padding: 475px 0% 380px 0%;
font-size: 2.75em;
line-height: 1.5em;
text-align: center;
color: #fff;
}

.concept_text_b{
width:48.8vw;
margin: 0% auto;
}

.border_btn button{
width: 100%;
padding: 10px;
display: flex;
justify-content: center;
align-items: center;
}

.concept .img06 {
width: 32.5vw;
height: 29vw;
background: url(../img/concept/deco_01.png) no-repeat;
background-size:contain;
background-position: left center;
position: absolute;
top: 48.5vw;
left: 5.25vw;
}

.concept .img07 {
width: 30.5vw;
height: 28.75vw;
background: url(../img/concept/deco_02.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
transform: rotate(6deg);
bottom: -5vw;
right: 5vw;
}

.concept .img08 {
width: 27vw;
height: 27vw;
background: url(../img/concept/deco_03.png) no-repeat;
background-size:cover;
background-position: left center;
position: absolute;
top: -3vw;
left: 3vw;
}

/*  CONCEPT---------------------------- */


/*  TEAM---------------------------- */
.team .profwrap{
width: 100%;
margin: 100px 0% -130px 0%;
}

.team .profwrap .profbox{
width: 100%;
max-width: 1080px;
margin: 0% 0% 130px 0%;
-webkit-display: flex;
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
}

.team .profwrap .profbox .profbox_l{
width: 28vw;
max-width: 300px;
}
.team .profwrap .profbox .profbox_l img{width: 100%;}

.team .profwrap .profbox .profbox_r{
width: 78vw;
max-width: 780px;
padding: 0vw 0vw 0vw 6vw;
}

.team .profwrap .profbox .profbox_r dl dt{
margin: 0% 0% 10px 0%;
font-size: 1.125em;
}
/*  TEAM---------------------------- */


}

/* ============= style_yam END =================== */

/* 追加コードここまで */