/*サラヤ設定----------------------------------*/
#contents {
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/*オリーブオイル設定ここから----------------------------------*/

.cardo_r {
    font-family: "Cardo", serif;
    font-weight: 400;
    font-style: normal;
}
.cardo_b {
    font-family: "Cardo", serif;
    font-weight: 700;
    font-style: normal;
}

.noto_sans_r {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}
.noto_sans_m {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}
.noto_sans_b {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}

.noto_serif_r {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}
.noto_serif_m {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}
.noto_serif_b {
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}

.magon_wrap img{
    max-width: 100%;
    height: auto;
    width /***/: auto;
    border: none;
    vertical-align: bottom;
}

@media screen and ( max-width:1023px){
    .pc{
        display: none;
    }
}


.magon_wrap{
    padding-bottom: 30vw;
    background: #16353E;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 4vw;
    line-height: 1.7;
    color: #FFF;
    letter-spacing: 0.1em;
}
.wrapper{
    padding: 0 4vw;
}

.product_title_box{
    text-align: center;
    text-shadow: 0px 0px 10px #010805;
}
.product_title_box .name{
    padding-top: 2vw;
    position: relative;
    font-family: "Cardo", serif;
    font-weight: 400;
    font-style: normal;
    font-size: 21vw;
    line-height: 1;
}
.product_title_box .name::after{
    content: "";
    width: 100%;
    height: 1px;
    background: #FFF;
    box-shadow: 0px 0px 10px #010805;
    position: absolute; bottom: 0; left: 0;
}
.product_title_box .name_small{
    padding: 2vw 0;
    position: relative;
    font-weight: 700;
    font-size: 5vw;
    letter-spacing: 0.2em;
}
.product_title_box .name_small::after{
    content: "";
    width: 100%;
    height: 3px;
    background: #FFF;
    box-shadow: 0px 0px 10px #010805;
    position: absolute; bottom: 0; left: 0;
}
.product_title_box .type{
    margin-top: 3vw;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 6vw;
    line-height: 1.5;
}

.h2_box{
    padding-bottom: 4vw;
    position: relative;
    text-align: center;
}
.h2_box::after{
    content: "";
    width: 15vw;
    height: 2px;
    background: #AA822E;
    position: absolute; bottom: 0; left: 50%;
    transform: translateX(-50%);
}
.h2_box h2{
    font-family: "Cardo", serif;
    font-weight: 700;
    font-style: normal;
    font-size: 14vw;
    line-height: 1.2;
}
.h2_box .h2_small{
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 6vw;
}

.kv{
}
.kv .wrapper{
    position: relative;
}
.kv .wrapper::before{
    content: "";
    width: 80vw;
    height: 160vw;
    background: #0A1C21;
    position: absolute; top: 0; left: 0;
}
.kv .wrapper::after{
    content: "";
    width: 95vw;
    height: 107vw;
    background: url(images/kv/webp/bg_sp.webp) no-repeat center;
    background-size: cover;
    position: absolute; top: 23vw; right: 0;
}
.kv .acc{
    width: 30vw;
    margin: 0 auto;
    padding-top: 13vw;
    position: relative;
    z-index: 10;
}
.kv .product_title_box{
    position: relative;
    z-index: 10;
}

.intro{
    margin-top: 11vw;
}
.intro .acc{
    text-align: center;
}
.intro p{
    margin-top: -15vw;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 5vw;
    text-align: center;
}
.intro .box{
    padding-top: 2vw;
}
.intro .item{
    margin-top: 4vw;
    text-align: center;
}

.youtube{
    margin-top: 10vw;
}
.youtube .box{
}
.youtube .inner{
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube .inner iframe {
    position: absolute; top: 0; right: 0;
    width: 100%;
    height: 100%;
}

.features{
    margin-top: 30vw;
    padding-top: 36vw;
    background: url(images/features/webp/bg.webp) no-repeat center top;
    background-size: 100% auto;
}
.features .box{
    padding-top: 8vw;
}
.features .item{
    padding: 8vw 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
}
.features .item:nth-child(odd)::before{
    content: "";
    width: 80vw;
    height: 100%;
    background: #0A1C21;
    position: absolute; top: 0; left: -4vw;
}
.features .item div{
    position: relative;
    z-index: 10;
}
.features .num{
    width: 6vw;
    font-family: "Cardo", serif;
    font-weight: 700;
    font-style: normal;
    font-size: 4.5vw;
    color: #AA822E;
    letter-spacing: 0.2em;
    writing-mode: vertical-rl;
}
.features .num + div{
    width: calc(100% - 6vw);
}
.features .thum_box{
}
.features .thum{
    position: relative;
}
.features .thum span{
    position: absolute; bottom: 2vw; left: 2vw;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    line-height: 1.5;
    text-shadow: 0px 0px 10px #132e36;
}
.features .thum span small{
    display: block;
}
.features .thum + .thum{
    margin-top: 1vw;
}
.features .inner{
    margin-top: 4vw;
}
.features .num + .inner{
    margin-top: 0;
    padding-left: 2vw;
}
.features .title{
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 7vw;
    line-height: 1.8;
    letter-spacing: 0.1em;
}
.features .text{
    margin-top: 4vw;
    line-height: 2;
}
.features .table_box{
    width: 100%;
    padding: 4vw 0 0 8vw;
}
.features .table{
}
.features .table .tr{
    display: flex;
    border-bottom: 1px solid #FFF;
    border-right: 1px solid #FFF;
}
.features .table .tr:nth-child(2){
    background: #AA822E;
}
.features .table .tr div{
    padding: 3vw;
    display: flex;
    justify-content: center;
    align-items: center;
}
.features .table .tr div:first-child{
    width: 65%;
}
.features .table .tr div:last-child{
    width: 35%;
    text-align: center;
}
.features .table .th{
}
.features .table .th:last-child{
    border-top: 1px solid #FFF;
    border-left: 1px solid #FFF;
}
.features .table .td{
    border-left: 1px solid #FFF;
}
.features .table_box .caution{
    margin-top: 2vw;
}
.features .blend{
}
.features .blend_item{
    margin-top: 4vw;
    padding: 6vw;
    border: 1px solid #FFF;
}
.features .bled_title{
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
}
.features .blend_text{
    margin-top: 4vw;
}

.attractive{
    margin-top: 35vw;
    padding-top: 36vw;
    background: url(images/attractive/webp/bg.webp) no-repeat center top;
    background-size: 100% auto;
}
.attractive p{
    margin-top: 10vw;
    line-height: 2;
}
.attractive .thum{
    margin-top: 4vw;
    text-align: center;
}
.attractive .box{
    margin-top: 8vw;
}
.attractive .inner{
}
.attractive .title{
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 7vw;
    letter-spacing: 0.1em;
}
.attractive .text{
    margin-top: 4vw;
    line-height: 2;
}
.attractive .map{
    margin-top: 4vw;
    text-align: center;
}

.recipe{
    margin-top: 62vw;
    background: url(images/recipe/webp/bg_sp.webp) no-repeat center top;
    background-size: 100% auto;
}
.recipe .title_box{
    position: relative;
}
.recipe .acc{
    width: 20vw;
    margin: 0 auto;
    position: absolute; top: -26vw; left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}
.recipe .product_title_box{
    padding: 70vw 4vw 0 4vw;
}
.recipe .product_title_box .name{
    padding-top: 0;
    font-size: 18vw;
}
.recipe .product_title_box .name_small{
    padding: 2vw 0;
    font-size: 4vw;
}
.recipe .product_title_box .type{
    margin-top: 2vw;
    font-size: 5vw;
}
.recipe .h2_box{
    margin-top: 8vw;
}
.recipe p{
    margin-top: 10vw;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 5.1vw;
}
.recipe .box{
    padding-top: 4vw;
}
.recipe .item{
    margin-top: 4vw;
}
.recipe .thum{
    text-align: center;
}
.recipe .text{
    margin-top: 2vw;
    text-align: center;
}

.product{
    margin-top: 35vw;
    padding-top: 12vw;
    background: url(images/product/webp/bg_sp.webp) no-repeat center top;
    background-size: 100% auto;
}
.product .acc{
    width: 26vw;
    margin: 0 auto;
}
.product .product_title_box{
}
.product .box{
    margin-top: 10vw;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
}
.product .text{
    padding: 6vw 0;
}
.product .btn{
    margin-top: 10vw;
}
.product .btn a{
    padding: 6vw 8vw;
    display: block;
    position: relative;
    background: #FFF;
    border-radius: 10vw;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 4.5vw;
    line-height: 8vw;
    color: #16353E;
    text-decoration: none;
}
.product .btn a::after{
    content: "";
    width: 5vw;
    height: 5vw;
    background: url(images/common/link.svg) no-repeat;
    background-size: 100% 100%;
    position: absolute; top: 50%; right: 6vw;
    transform: translateY(-50%);
}

.connection{
    margin-top: 35vw;
    padding-top: 36vw;
    background: url(images/connection/webp/bg.webp) no-repeat center top;
    background-size: 100% auto;
}
.connection .top{
    margin-top: 8vw;
    padding: 6vw 0 8vw 0;
    position: relative;
}
.connection .top::before{
    content: "";
    width: 80vw;
    height: 100%;
    background: #0A1C21;
    position: absolute; top: 0; right: -4vw;
}
.connection .top div{
    position: relative;
    z-index: 10;
}
.connection .top .text{
    line-height: 2;
}
.connection .top .thum{
    margin-top: 4vw;
}
.connection .bottom{
    margin-top: 10vw;
}
.connection .bottom .box{
}
.connection .bottom .text{
    line-height: 2;
}
.connection .bottom .inner{
    margin-top: 4vw;
    padding-top: 4vw;
    border-top: 1px solid #FFF;
}
.connection .bottom .title{
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 700;
    font-style: normal;
    font-size: 5vw;
    letter-spacing: 0.1em;
}
.connection .bottom .address{
}
.connection .bottom .thum{
    margin-top: 4vw;
    position: relative;
}
.connection .bottom .thum span{
    position: absolute; bottom: 2vw; left: 2vw;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    font-size: 3.5vw;
    line-height: 1.5;
    text-shadow: 0px 0px 10px #132e36;
    text-align: center;
}
.connection .bottom .thum span + span{
    left: auto;
    right: 2vw;
}
.connection .bottom .thum span small{
    display: block;
}

.page_top{
    width: 10vw;
    position: fixed; bottom: 8vw; right: 4vw;
    z-index: 20;
}

@media screen and (min-width:1024px){
    .sp{display: none !important;}

    .magon_wrap{
        padding-bottom: 100px;
        background: #16353E;
        overflow: hidden;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 400;
        font-style: normal;
        font-size: 16px;
        line-height: 1.7;
        color: #FFF;
        letter-spacing: 0.05em;
    }
    .wrapper{
        width: 1000px;
        margin: 0 auto;
        padding: 0;
    }

    .product_title_box{
        width: 368px;
        text-align: center;
        text-shadow: 0px 0px 10px #010805;
    }
    .product_title_box .name{
        padding-top: 0;
        position: relative;
        font-family: "Cardo", serif;
        font-weight: 400;
        font-style: normal;
        font-size: 80px;
        line-height: 1;
        letter-spacing: 0.08em;
    }
    .product_title_box .name::after{
        content: "";
        width: 100%;
        height: 1px;
        background: #FFF;
        box-shadow: 0px 0px 10px #010805;
        position: absolute; bottom: 0; left: 0;
    }
    .product_title_box .name_small{
        padding: 7px 0;
        position: relative;
        font-weight: 700;
        font-size: 16px;
        letter-spacing: 0.2em;
    }
    .product_title_box .name_small::after{
        content: "";
        width: 100%;
        height: 3px;
        background: #FFF;
        box-shadow: 0px 0px 10px #010805;
        position: absolute; bottom: 0; left: 0;
    }
    .product_title_box .type{
        margin-top: 7px;
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 24px;
        line-height: 1.5;
        letter-spacing: 0.1em;
    }

    .h2_box{
        padding-bottom: 22px;
        position: relative;
        text-align: center;
    }
    .h2_box::after{
        content: "";
        width: 64px;
        height: 2px;
        background: #AA822E;
        position: absolute; bottom: 0; left: 50%;
        transform: translateX(-50%);
    }
    .h2_box h2{
        font-family: "Cardo", serif;
        font-weight: 700;
        font-style: normal;
        font-size: 64px;
        line-height: 1.2;
    }
    .h2_box .h2_small{
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 28px;
        letter-spacing: 0.1em;
    }

    .kv{
        height: 630px;
    }
    .kv .wrapper{
        position: relative;
    }
    .kv .wrapper::before{
        content: "";
        width: 640px;
        height: 100%;
        background: #0A1C21;
        position: absolute; top: 0; left: -143px;
    }
    .kv .wrapper::after{
        content: "";
        width: 1050px;
        height: 470px;
        background: url(images/kv/webp/bg_pc.webp) no-repeat center;
        background-size: cover;
        position: absolute; top: 80px; right: -183px;
    }
    .kv .acc{
        width: 134px;
        margin: 0 auto;
        padding-top: 40px;
        position: relative;
        z-index: 10;
    }
    .kv .product_title_box{
        position: absolute; top: 50%; left: 0;
        transform: translateY(-50%);
        z-index: 10;
    }

    .intro{
        margin-top: 0;
    }
    .intro .acc{
        width: 550px;
        margin: 0 auto;
        text-align: center;
    }
    .intro p{
        margin-top: -72px;
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 20px;
        text-align: center;
    }
    .intro .box{
        padding-top: 20px;
        display: flex;
        justify-content: center;
    }
    .intro .item{
        width: 400px;
        margin: 0 5px;
        text-align: center;
    }

    .youtube{
        margin-top: 40px;
    }
    .youtube .box{
        width: 854px;
        margin: 0 auto;
    }
    .youtube .inner{
        position: relative;
        width: 100%;
        padding-top: 56.25%;
    }
    .youtube .inner iframe {
        position: absolute; top: 0; right: 0;
        width: 100%;
        height: 100%;
    }

    .features{
        margin-top: 100px;
        padding-top: 535px;
        background: url(images/features/webp/bg.webp) no-repeat center top;
        background-size: 1286px auto;
    }
    .features .box{
        padding-top: 40px;
    }
    .features .item{
        padding: 40px 0;
        position: relative;
        display: flex;
        flex-wrap: wrap;
    }
    .features .item:nth-child(odd)::before{
        content: "";
        width: 1060px;
        height: 100%;
        background: #0A1C21;
        position: absolute; top: 0; left: -143px;
    }
    .features .item div{
        position: relative;
        z-index: 10;
    }
    .features .num{
        width: 30px;
        padding-right: 5px;
        font-family: "Cardo", serif;
        font-weight: 700;
        font-style: normal;
        font-size: 20px;
        color: #AA822E;
        letter-spacing: 0.2em;
        writing-mode: vertical-rl;
    }
    .features .num + div{
        width: calc(100% - 30px);
    }
    .features .thum_box{
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .features .thum{
        position: relative;
    }
    .features .thum span{
        position: absolute; bottom: 10px; left: 10px;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 500;
        font-style: normal;
        line-height: 1.5;
        text-shadow: 0px 0px 10px #132e36;
    }
    .features .thum span small{
        display: block;
        font-size: 14px;
    }
    .features .thum + .thum{
        margin: 0 0 0 7px;
    }
    .features .inner{
        margin-top: 20px;
        padding-left: 30px;
        display: flex;
        justify-content: space-between;
    }
    .features .num + .inner{
        margin-top: 0;
        padding-left: 0;
    }
    .features .title{
        width: 390px;
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 28px;
        line-height: 1.8;
        letter-spacing: 0.1em;
    }
    .features .text{
        width: 580px;
        margin-top: 0;
    }
    .features .table_box{
        width: 100%;
        margin: 5px 0 0 30px;
        padding: 50px 0 62px 0;
        border: 1px solid #FFF;
    }
    .features .table{
        width: 495px;
        margin: 0 auto;
    }
    .features .table .tr{
        display: flex;
        border-bottom: 1px solid #FFF;
        border-right: 1px solid #FFF;
    }
    .features .table .tr:nth-child(2){
        background: #AA822E;
    }
    .features .table .tr div{
        padding: 13px 30px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .features .table .tr div:first-child{
        width: 335px;
    }
    .features .table .tr div:last-child{
        width: 160px;
        text-align: center;
    }
    .features .table .th{
    }
    .features .table .th:last-child{
        border-top: 1px solid #FFF;
        border-left: 1px solid #FFF;
    }
    .features .table .td{
        border-left: 1px solid #FFF;
    }
    .features .table_box .caution{
        width: 495px;
        margin: 10px auto 0 auto;
    }
    .features .blend{
        width: 100%;
        margin: 5px 0 0 30px;
        display: flex;
        justify-content: space-between;
    }
    .features .blend_item{
        width: 478px;
        margin-top: 0;
        padding: 30px;
        border: 1px solid #FFF;
    }
    .features .bled_title{
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
    }
    .features .blend_text{
        margin-top: 20px;
    }

    .attractive{
        margin-top: 100px;
        padding-top: 535px;
        background: url(images/attractive/webp/bg.webp) no-repeat center top;
        background-size: 1286px auto;
    }
    .attractive p{
        margin-top: 40px;
        line-height: 2;
    }
    .attractive .thum{
        margin-top: 20px;
        text-align: center;
    }
    .attractive .box{
        width: 100%;
        margin-top: 40px;
        display: flex;
        justify-content: space-between;
    }
    .attractive .inner{
        width: 500px;
    }
    .attractive .title{
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 28px;
        letter-spacing: 0.1em;
    }
    .attractive .text{
        margin-top: 20px;
        line-height: 2;
    }
    .attractive .map{
        width: 470px;
        margin-top: 0;
        text-align: center;
    }

    .recipe{
        margin-top: 208px;
        background: url(images/recipe/webp/bg_pc.webp) no-repeat center top;
        background-size: 1286px auto;
    }
    .recipe .title_box{
        position: relative;
    }
    .recipe .acc{
        width: 134px;
        margin: 0 auto;
        position: absolute; top: -68px; left: 50%;
        transform: translateX(-50%);
        z-index: 10;
    }
    .recipe .product_title_box{
        padding: 105px 0 0 0;
    }
    .recipe .product_title_box .name{
        padding-top: 0;
        font-size: 80px;
    }
    .recipe .product_title_box .name_small{
        padding: 7px 0;
        font-size: 16px;
    }
    .recipe .product_title_box .type{
        margin-top: 7px;
        font-size: 24px;
    }
    .recipe .h2_box{
        margin: -157px 0 0 626px;
    }
    .recipe p{
        margin-top: 259px;
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 20px;
        text-align: center;
    }
    .recipe .box{
        padding-top: 10px;
        display: flex;
        justify-content: space-between;
    }
    .recipe .item{
        width: 320px;
        margin-top: 0;
    }
    .recipe .thum{
        text-align: center;
    }
    .recipe .text{
        margin-top: 10px;
        text-align: center;
    }

    .product{
        margin-top: 140px;
        padding-top: 340px;
        background: url(images/product/webp/bg_pc.webp) no-repeat center top;
        background-size: 1286px auto;
    }
    .product .wrapper{
        min-height: 701px;
    }
    .product .acc{
        width: 452px;
        margin: 0;
        padding: 59px 159px;
        background: #FFF;
        border: 1px solid #707070;
    }
    .product .product_title_box{
        margin: -700px 0 0 559px;
    }
    .product .box{
        width: 530px;
        margin: 20px 0 0 471px;
        border-top: 1px solid #FFF;
        border-bottom: 1px solid #FFF;
    }
    .product .text{
        padding: 13px 0;
    }
    .product .btn{
        width: 340px;
        margin: 25px 0 0 570px;
    }
    .product .btn a{
        padding: 22px 48px;
        display: block;
        position: relative;
        background: #FFF;
        border: 1px solid #FFF;
        border-radius: 35px;
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 16px;
        line-height: 24px;
        color: #16353E;
        text-decoration: none;
        transition: .2s;
    }
    .product .btn a:hover{
        background: #16353E;
        color: #FFF;
    } 
    .product .btn a::after{
        content: "";
        width: 16px;
        height: 16px;
        background: url(images/common/link.svg) no-repeat;
        background-size: 100% 100%;
        position: absolute; top: 50%; right: 22px;
        transform: translateY(-50%);
    }
    .product .btn a:hover::after{
        filter: brightness(0) invert(1);
    }

    .connection{
        margin-top: 140px;
        padding-top: 535px;
        background: url(images/connection/webp/bg.webp) no-repeat center top;
        background-size: 1286px auto;
    }
    .connection .top{
        margin-top: 40px;
        padding: 40px 0;
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .connection .top::before{
        content: "";
        width: 1060px;
        height: 100%;
        background: #0A1C21;
        position: absolute; top: 0; right: auto; left: -143px;
    }
    .connection .top div{
        position: relative;
        z-index: 10;
    }
    .connection .top .text{
        width: 300px;
        line-height: 2;
    }
    .connection .top .thum{
        width: 670px;
        margin-top: 0;
    }
    .connection .bottom{
        margin-top: 40px;
        display: flex;
        justify-content: space-between;
        flex-flow: row-reverse;
    }
    .connection .bottom .box{
        width: 420px;
    }
    .connection .bottom .text{
        line-height: 2;
    }
    .connection .bottom .inner{
        margin-top: 20px;
        padding-top: 20px;
        border-top: 1px solid #FFF;
    }
    .connection .bottom .title{
        font-family: "Noto Serif JP", serif;
        font-optical-sizing: auto;
        font-weight: 700;
        font-style: normal;
        font-size: 20px;
        letter-spacing: 0.1em;
    }
    .connection .bottom .address{
        margin-top: 10px;
    }
    .connection .bottom .thum{
        width: 550px;
        margin-top: 0;
        position: relative;
    }
    .connection .bottom .thum span{
        position: absolute; bottom: 10px; left: 10px;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-weight: 500;
        font-style: normal;
        font-size: 16px;
        line-height: 1.5;
        text-shadow: 0px 0px 10px #132e36;
        text-align: center;
    }
    .connection .bottom .thum span + span{
        left: auto;
        right: 10px;
    }
    .connection .bottom .thum span small{
        display: block;
        font-size: 14px;
    }

    .page_top{
        width: 36px;
        position: fixed; bottom: 50px; right: 40px;
        z-index: 20;
    }
}
