@charset 'UTF-8';
.f12
{
    font-size: 12px;
}

@media print, screen and (max-width: 1921px)
{
    .f12
    {
        font-size: .625vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f12
    {
        font-size: 1.09091vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f12
    {
        font-size: .97656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f12
    {
        font-size: 3.2vw;
    }
}

.f13
{
    font-size: 13px;
}

@media print, screen and (max-width: 1921px)
{
    .f13
    {
        font-size: .67708vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f13
    {
        font-size: 1.18182vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f13
    {
        font-size: 1.07422vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f13
    {
        font-size: 3.33333vw;
    }
}

.f14
{
    font-size: 14px;
}

@media print, screen and (max-width: 1921px)
{
    .f14
    {
        font-size: .72917vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f14
    {
        font-size: 1.27273vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f14
    {
        font-size: 1.17188vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f14
    {
        font-size: 3.46667vw;
    }
}

.f15
{
    font-size: 15px;
}

@media print, screen and (max-width: 1921px)
{
    .f15
    {
        font-size: .78125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f15
    {
        font-size: 1.36364vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f15
    {
        font-size: 1.26953vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f15
    {
        font-size: 3.6vw;
    }
}

.f16
{
    font-size: 16px;
}

@media print, screen and (max-width: 1921px)
{
    .f16
    {
        font-size: .83333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f16
    {
        font-size: 1.45455vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f16
    {
        font-size: 1.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f16
    {
        font-size: 3.73333vw;
    }
}

.f17
{
    font-size: 17px;
}

@media print, screen and (max-width: 1921px)
{
    .f17
    {
        font-size: .88542vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f17
    {
        font-size: 1.54545vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f17
    {
        font-size: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f17
    {
        font-size: 3.86667vw;
    }
}

.f18
{
    font-size: 18px;
}

@media print, screen and (max-width: 1921px)
{
    .f18
    {
        font-size: .9375vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f18
    {
        font-size: 1.63636vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f18
    {
        font-size: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f18
    {
        font-size: 4vw;
    }
}

.f19
{
    font-size: 19px;
}

@media print, screen and (max-width: 1921px)
{
    .f19
    {
        font-size: .98958vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f19
    {
        font-size: 1.72727vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f19
    {
        font-size: 1.66016vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f19
    {
        font-size: 4.13333vw;
    }
}

.f20
{
    font-size: 20px;
}

@media print, screen and (max-width: 1921px)
{
    .f20
    {
        font-size: 1.04167vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f20
    {
        font-size: 1.81818vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f20
    {
        font-size: 1.75781vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f20
    {
        font-size: 4.26667vw;
    }
}

.f21
{
    font-size: 21px;
}

@media print, screen and (max-width: 1921px)
{
    .f21
    {
        font-size: 1.09375vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f21
    {
        font-size: 1.90909vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f21
    {
        font-size: 1.85547vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f21
    {
        font-size: 4.4vw;
    }
}

.f22
{
    font-size: 22px;
}

@media print, screen and (max-width: 1921px)
{
    .f22
    {
        font-size: 1.14583vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f22
    {
        font-size: 2vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f22
    {
        font-size: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f22
    {
        font-size: 4.53333vw;
    }
}

.f23
{
    font-size: 23px;
}

@media print, screen and (max-width: 1921px)
{
    .f23
    {
        font-size: 1.19792vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f23
    {
        font-size: 2.09091vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f23
    {
        font-size: 2.05078vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f23
    {
        font-size: 4.66667vw;
    }
}

.f24
{
    font-size: 24px;
}

@media print, screen and (max-width: 1921px)
{
    .f24
    {
        font-size: 1.25vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f24
    {
        font-size: 2.18182vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f24
    {
        font-size: 2.14844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f24
    {
        font-size: 4.8vw;
    }
}

.f25
{
    font-size: 25px;
}

@media print, screen and (max-width: 1921px)
{
    .f25
    {
        font-size: 1.30208vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f25
    {
        font-size: 2.27273vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f25
    {
        font-size: 2.24609vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f25
    {
        font-size: 4.93333vw;
    }
}

.f26
{
    font-size: 26px;
}

@media print, screen and (max-width: 1921px)
{
    .f26
    {
        font-size: 1.35417vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f26
    {
        font-size: 2.36364vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f26
    {
        font-size: 2.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f26
    {
        font-size: 5.06667vw;
    }
}

.f27
{
    font-size: 27px;
}

@media print, screen and (max-width: 1921px)
{
    .f27
    {
        font-size: 1.40625vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f27
    {
        font-size: 2.45455vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f27
    {
        font-size: 2.44141vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f27
    {
        font-size: 5.2vw;
    }
}

.f28
{
    font-size: 28px;
}

@media print, screen and (max-width: 1921px)
{
    .f28
    {
        font-size: 1.45833vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f28
    {
        font-size: 2.54545vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f28
    {
        font-size: 2.53906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f28
    {
        font-size: 5.33333vw;
    }
}

.f29
{
    font-size: 29px;
}

@media print, screen and (max-width: 1921px)
{
    .f29
    {
        font-size: 1.51042vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f29
    {
        font-size: 2.63636vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f29
    {
        font-size: 2.63672vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f29
    {
        font-size: 5.46667vw;
    }
}

.f30
{
    font-size: 30px;
}

@media print, screen and (max-width: 1921px)
{
    .f30
    {
        font-size: 1.5625vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f30
    {
        font-size: 2.72727vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f30
    {
        font-size: 2.73438vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f30
    {
        font-size: 5.6vw;
    }
}

.f31
{
    font-size: 31px;
}

@media print, screen and (max-width: 1921px)
{
    .f31
    {
        font-size: 1.61458vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f31
    {
        font-size: 2.81818vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f31
    {
        font-size: 2.83203vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f31
    {
        font-size: 5.73333vw;
    }
}

.f32
{
    font-size: 32px;
}

@media print, screen and (max-width: 1921px)
{
    .f32
    {
        font-size: 1.66667vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f32
    {
        font-size: 2.90909vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f32
    {
        font-size: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f32
    {
        font-size: 5.86667vw;
    }
}

.f33
{
    font-size: 33px;
}

@media print, screen and (max-width: 1921px)
{
    .f33
    {
        font-size: 1.71875vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f33
    {
        font-size: 3vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f33
    {
        font-size: 3.02734vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f33
    {
        font-size: 6vw;
    }
}

.f34
{
    font-size: 34px;
}

@media print, screen and (max-width: 1921px)
{
    .f34
    {
        font-size: 1.77083vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f34
    {
        font-size: 3.09091vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f34
    {
        font-size: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f34
    {
        font-size: 6.13333vw;
    }
}

.f35
{
    font-size: 35px;
}

@media print, screen and (max-width: 1921px)
{
    .f35
    {
        font-size: 1.82292vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f35
    {
        font-size: 3.18182vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f35
    {
        font-size: 3.22266vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f35
    {
        font-size: 6.26667vw;
    }
}

.f36
{
    font-size: 36px;
}

@media print, screen and (max-width: 1921px)
{
    .f36
    {
        font-size: 1.875vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .f36
    {
        font-size: 3.27273vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .f36
    {
        font-size: 3.32031vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .f36
    {
        font-size: 6.4vw;
    }
}

html,
body
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 15px;
    line-height: 1.6;

    text-align: center;

    color: #000;
}

a
{
    text-decoration: none;

    color: #000;
}

.sp
{
    display: none !important;
}

@media print, screen and (max-width: 430px)
{
    .sp
    {
        display: block !important;
    }
}

.pc
{
    display: block;
}

@media print, screen and (max-width: 430px)
{
    .pc
    {
        display: none !important;
    }
}

.spi
{
    display: none;
}

@media print, screen and (max-width: 430px)
{
    .spi
    {
        display: inline;
    }
}

.pci
{
    display: inline;
}

@media print, screen and (max-width: 430px)
{
    .pci
    {
        display: none;
    }
}

br
{
    font-size: 0;
}

.fade-section
{
    margin: 50px 0;
}

.fade-section--hiring
{
    margin: 0;
}

/* フェードアイテム共通 */
.fade-item
{
    -webkit-transition: all 1s ease;
            transition: all 1s ease;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);

    opacity: 0;
}

/* 表示されたときのクラス */
.fade-item.active
{
    -webkit-transform: translateY(0);
            transform: translateY(0);

    opacity: 1;
}

/* 遅延用クラス（秒数は任意で調整可能） */
.fade-item.delay-0
{
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
}

.fade-item.delay-1
{
    -webkit-transition-delay: .3s;
            transition-delay: .3s;
}

.fade-item.delay-2
{
    -webkit-transition-delay: .6s;
            transition-delay: .6s;
}

.fade-item.delay-3
{
    -webkit-transition-delay: .9s;
            transition-delay: .9s;
}

.fade-item.delay-4
{
    -webkit-transition-delay: 1.2s;
            transition-delay: 1.2s;
}

/* ============== .l-sec ============== */
.l-sec
{
    width: 100%;
}

.l-sec__inner
{
    width: 62.5vw;
    max-width: 1200px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1025px)
{
    .l-sec__inner
    {
        width: 80.46875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .l-sec__inner
    {
        width: 92vw;
    }
}

.l-sec--fixed
{
    overflow: hidden;
}

/* ============== .head ============== */
.head
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;

    width: 100%;

    -webkit-transition: all 1s ease-in-out;
            transition: all 1s ease-in-out;

    opacity: 0;
    background-color: #fff;
    /* FV上ヘッダー用クラス */
    /* 追従用ヘッダー（スクロール後） */
}

.head--open
{
    -webkit-transition: all .5s ease-in-out;
            transition: all .5s ease-in-out;

    background-color: transparent !important;
}

.head__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 52px 73px;

    -webkit-transition: all 1s ease;
            transition: all 1s ease;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media print, screen and (max-width: 1921px)
{
    .head__inner
    {
        padding: 2.70833vw 3.80208vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__inner
    {
        padding: 8vw 4vw;
    }
}

.head__rBox
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.head.fv
{
    opacity: 0;
}

.head.fv.show
{
    opacity: 1;
}

.head.fixed .head__inner
{
    height: 100px;
    padding: 0 73px;
}

@media print, screen and (max-width: 1921px)
{
    .head.fixed .head__inner
    {
        height: 5.20833vw;
        padding: 0 3.80208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head.fixed .head__inner
    {
        height: 7.8125vw;
        padding: 0 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head.fixed .head__inner
    {
        height: 13.33333vw;
        padding: 0 4vw;
    }
}

.head__logoLink
{
    display: block;

    width: 205.8px;
}

@media print, screen and (max-width: 1921px)
{
    .head__logoLink
    {
        width: 10.71875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__logoLink
    {
        width: 15.625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__logoLink
    {
        width: 27.44vw;
    }
}

.head__logo
{
    width: 100%;

    -webkit-transition: .4s;
            transition: .4s;
}

.head__logo:hover
{
    opacity: .6;
}

.head__logo > img
{
    display: block;

    width: 100%;
}

@media print, screen and (max-width: 1025px)
{
    .head__nav
    {
        display: none;
    }
}

.head__listBox
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.head__list
{
    margin-left: 40px;
}

@media print, screen and (max-width: 1921px)
{
    .head__list
    {
        margin-left: 2.08333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .head__list
    {
        margin-left: 2.19619vw;
    }
}

.head__list:first-of-type
{
    margin-left: 0;
}

.head__link
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-weight: 800;

    position: relative;
    z-index: 0;

    display: block;

    -webkit-transition: all .3s ease;
            transition: all .3s ease;
    letter-spacing: .124em;
}

@media print, screen and (max-width: 1367px)
{
    .head__link
    {
        font-size: 1.0981vw;
    }
}

.head__link::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 10%;
    bottom: 8px;

    width: 56.82px;
    height: 44.2px;
    margin: auto 0;

    content: '';
    -webkit-transition: opacity .3s;
            transition: opacity .3s;

    opacity: 0;
    background-image: url('../images/img_head_nav.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .head__link::before
    {
        bottom: .41667vw;

        width: 2.95937vw;
        height: 2.30208vw;
    }
}

.head__link.active::before
{
    opacity: 1;
}

.head__link:hover
{
    -webkit-transition: all .3s ease;
            transition: all .3s ease;

    opacity: .7;
}

.head__languageWrp
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-weight: 800;

    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 112px;
    margin-left: 44px;
    padding-left: 44px;

    letter-spacing: .124em;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media print, screen and (max-width: 1921px)
{
    .head__languageWrp
    {
        width: 5.83333vw;
        margin-left: 2.29167vw;
        padding-left: 2.29167vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .head__languageWrp
    {
        width: 7.32064vw;
        margin-left: 2.19619vw;
        padding-left: 2.19619vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__languageWrp
    {
        width: 11.71875vw;
        margin-left: 52.73438vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__languageWrp
    {
        width: 16vw;
        margin-left: 32vw;
    }
}

.head__languageWrp::before
{
    position: absolute;
    top: 50%;
    left: 0;

    width: 1px;
    height: 15px;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background-color: #000;
}

@media print, screen and (max-width: 1921px)
{
    .head__languageWrp::before
    {
        height: .78125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .head__languageWrp::before
    {
        height: .87848vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__languageWrp::before
    {
        display: none;
    }
}

.head__language
{
    display: block;
}

@media print, screen and (max-width: 1367px)
{
    .head__language > span
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__language > span
    {
        font-size: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__language > span
    {
        font-size: 2.93333vw;
    }
}

.head__language--active
{
    color: #006230;
}

.head__language:first-child
{
    position: relative;
}

.head__language:first-child::after
{
    position: absolute;
    top: 50%;
    right: -11px;

    width: 6.22px;
    height: 12.74px;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background-image: url(../images/img_head_language_line.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .head__language:first-child::after
    {
        right: -.57292vw;

        width: .32396vw;
        height: .66354vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .head__language:first-child::after
    {
        right: -10.32211vw;

        width: .45534vw;
        height: .93265vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__language:first-child::after
    {
        right: -2.63672vw;

        width: .60742vw;
        height: 1.24414vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__language:first-child::after
    {
        right: -2.4vw;

        width: 1.33333vw;
        height: 2.66667vw;
    }
}

.head__language:hover
{
    -webkit-transition: all .3s ease;
            transition: all .3s ease;

    opacity: .5;
}

.head__spNav
{
    display: none;
}

@media print, screen and (max-width: 1025px)
{
    .head__spNav
    {
        position: relative;

        display: block;

        width: 4.49219vw;
        height: 1.75781vw;

        cursor: pointer;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spNav
    {
        width: 6.13333vw;
        height: 2.93333vw;
    }
}

.head__spNav > span
{
    position: absolute;
    right: 0;
    left: 0;

    margin: 0 auto;

    -webkit-transition: all .3s ease-out;
            transition: all .3s ease-out;

    background-color: #006230;
}

@media print, screen and (max-width: 1025px)
{
    .head__spNav > span
    {
        width: 4.88281vw;
        height: .19531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spNav > span
    {
        width: 6.13333vw;
        height: .53333vw;
    }
}

.head__spNav > span:nth-of-type(1)
{
    top: 0;
}

.head__spNav > span:nth-of-type(2)
{
    bottom: 0;
}

.head__spNav--open > span:nth-of-type(1)
{
    top: 9px;

    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
}

@media print, screen and (max-width: 1921px)
{
    .head__spNav--open > span:nth-of-type(1)
    {
        top: .46875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__spNav--open > span:nth-of-type(1)
    {
        top: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spNav--open > span:nth-of-type(1)
    {
        top: 1.2vw;
    }
}

.head__spNav--open > span:nth-of-type(2)
{
    top: 9px;

    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
}

@media print, screen and (max-width: 1921px)
{
    .head__spNav--open > span:nth-of-type(2)
    {
        top: .46875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__spNav--open > span:nth-of-type(2)
    {
        top: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spNav--open > span:nth-of-type(2)
    {
        top: 1.2vw;
    }
}

.head__spMenu
{
    position: fixed;
    z-index: 5;
    top: 0;
    right: 0;

    overflow: scroll;

    width: 100%;
    height: 100vh;

    -webkit-transition: all .2s;
            transition: all .2s;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);

    opacity: 0;
    background-color: #d5dccf;

    -webkit-overflow-scrolling: touch;
}

.head__spMenu--open
{
    -webkit-transform: translateY(0);
            transform: translateY(0);

    opacity: 1;
}

@media print, screen and (max-width: 1025px)
{
    .head__spMenuContent
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
        height: auto;
        min-height: 100vh;
        padding: 19.53125vw 2.92969vw 0vw 2.92969vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spMenuContent
    {
            flex-direction: column;

        padding: 26.66667vw 4vw 33.33333vw 4vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

.head__spMenuItem
{
    list-style-type: none;
}

@media print, screen and (max-width: 1025px)
{
    .head__spMenuItem
    {
        padding: 2.92969vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spMenuItem
    {
        padding: 5.86667vw 0;
    }
}

.head__spMenuLink
{
    display: block;
}

@media print, screen and (max-width: 1025px)
{
    .head__spMenuLink
    {
        font-family: 'avenir-lt-pro', sans-serif;
        font-size: 1.75781vw;
        font-weight: 800;

        letter-spacing: .124em;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spMenuLink
    {
        font-size: 3.73333vw;
    }
}

.head__spMenuLink > span
{
    position: relative;
}

.head__spMenuLink > span::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;

    margin: auto 0;

    content: '';

    opacity: 0;
    background-image: url('../images/img_nav_sp_bg.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1025px)
{
    .head__spMenuLink > span::before
    {
        bottom: .97656vw;
        left: -4.10156vw;

        width: 6.83594vw;
        height: 6.83594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spMenuLink > span::before
    {
        bottom: 1.86667vw;
        left: -5.6vw;

        width: 12vw;
        height: 12vw;
    }
}

.head__spMenuLink:hover > span::before
{
    opacity: 1;
}

.head.show
{
    opacity: 1;
}

/* ============== .foot ============== */
.foot
{
    padding: 52px 0;

    background-color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .foot
    {
        padding: 2.70833vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot
    {
        padding: 4vw 0;
    }
}

.foot__wrp
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.foot__img
{
    width: 128px;
}

@media print, screen and (max-width: 1921px)
{
    .foot__img
    {
        width: 6.66667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__img
    {
        width: 16vw;
    }
}

.foot__img > img
{
    display: block;

    width: 100%;
}

.foot__txt
{
    font-weight: 500;

    margin-left: 24px;

    letter-spacing: .12em;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .foot__txt
    {
        margin-left: 1.25vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__txt
    {
        margin-left: 3.2vw;
    }
}

/* ============== .fv ============== */
.fv
{
    /* 表示中のスライド */
}

.fv__slideWrp
{
    position: relative;

    overflow: hidden;

    width: 1440px;
    height: 950px;
    margin: 0 auto;
    margin-top: 140px;
}

@media print, screen and (max-width: 1921px)
{
    .fv__slideWrp
    {
        width: 75vw;
        height: 49.47917vw;
        margin-top: 7.29167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .fv__slideWrp
    {
        width: 80.07812vw;
        height: 56.64062vw;
        margin-top: 19.53125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__slideWrp
    {
        width: 93.33333vw;
        height: 61.33333vw;
        margin-top: 32vw;
    }
}

.fv__slide
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 1440px;
    height: 950px;
    /* 初期は非表示 */

    -webkit-transition: opacity 6s ease-in-out;
            transition: opacity 6s ease-in-out;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    /* 中央寄せ */

    opacity: 0;
}

@media print, screen and (max-width: 1921px)
{
    .fv__slide
    {
        width: 75vw;
        height: 49.47917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .fv__slide
    {
        width: 80.07812vw;
        height: 56.64062vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__slide
    {
        width: 93.33333vw;
        height: 61.33333vw;
    }
}

.fv__slide img
{
    display: block;

    width: 100%;
    height: auto;
    /* 比率保持 */
}

.fv__slide.show
{
    opacity: 1;
}

/* ============== .contactSec ============== */
.contactSec
{
    width: 500px;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec
    {
        width: 26.04167vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec
    {
        width: 36.60322vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec
    {
        width: 100%;
        margin-top: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec
    {
        margin-top: 13.33333vw;
    }
}

.contactSec__lead
{
    font-weight: 500;
    line-height: 2.14;

    margin: 56px 0 60px;

    text-align: left;
    letter-spacing: .12em;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__lead
    {
        margin: 2.91667vw 0 3.125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__lead
    {
        font-size: 1.02489vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__lead
    {
        font-size: 1.46484vw;

        margin: 3.90625vw 0 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__lead
    {
        font-size: 3.73333vw;

        margin: 4vw 0 5.33333vw;
    }
}

.contactSec__ttlBox
{
    position: relative;

    margin-bottom: 44px;

    text-align: left;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__ttlBox
    {
        margin-bottom: 2.29167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__ttlBox
    {
        margin-bottom: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__ttlBox
    {
        margin-bottom: 4vw;
    }
}

.contactSec__ttlBox::before
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    width: 392px;
    height: 1px;
    margin: auto 0;

    content: '';

    background-color: #000;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__ttlBox::before
    {
        width: 20.41667vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__ttlBox::before
    {
        width: 28.69693vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__ttlBox::before
    {
        width: 53.71094vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__ttlBox::before
    {
        right: 4vw;

        width: 56vw;
    }
}

.contactSec__ttl
{
    font-weight: 500;

    letter-spacing: .124em;
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__ttl
    {
        font-size: 1.02489vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__ttl
    {
        font-size: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__ttl
    {
        font-size: 3.73333vw;
    }
}

.contactSec__table
{
    width: 100%;
}

@media print, screen and (max-width: 430px)
{
    .contactSec__row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        width: 100%;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

.contactSec__th
{
    font-weight: 500;

    width: 146px;

    text-align: left;
    letter-spacing: .124em;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__th
    {
        width: 7.60417vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__th
    {
        font-size: 1.02489vw;

        width: 10.68814vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__th
    {
        font-size: 1.46484vw;

        width: 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__th
    {
        font-size: 3.73333vw;

        width: 100%;
    }
}

.contactSec__th--textArea
{
    vertical-align: top;
}

.contactSec__td
{
    width: 354px;
    padding-bottom: 36px;

    text-align: left;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__td
    {
        width: 18.4375vw;
        padding-bottom: 1.875vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__td
    {
        font-size: 1.02489vw;

        width: 25.91508vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__td
    {
        font-size: 1.46484vw;

        width: 53.71094vw;
        padding-bottom: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__td
    {
        font-size: 3.73333vw;

        width: 100%;
        padding: 1.86667vw 0 4vw 0;
    }
}

.contactSec__td--bottom
{
    padding-bottom: 0;
}

.contactSec__txt
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 10.5px 0 10.5px 15px;

    border: 1px solid #006230;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__txt
    {
        padding: .54688vw 0 .54688vw .78125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__txt
    {
        font-size: 1.02489vw;

        padding: .76867vw 0 .76867vw 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__txt
    {
        font-size: 1.46484vw;

        padding: 1.17188vw 0 1.17188vw 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__txt
    {
        font-size: 3.73333vw;

        padding: 1.86667vw 0 1.86667vw 4vw;

        border-radius: 0;
    }
}

.contactSec__txt::-webkit-input-placeholder
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: 500;

    letter-spacing: .124em;

    color: #6c6c6c;
}

.contactSec__txt::-moz-placeholder
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: 500;

    letter-spacing: .124em;

    color: #6c6c6c;
}

.contactSec__txt::-ms-input-placeholder
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: 500;

    letter-spacing: .124em;

    color: #6c6c6c;
}

.contactSec__txt::placeholder
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: 500;

    letter-spacing: .124em;

    color: #6c6c6c;
}

.contactSec__selectBoxWrp
{
    position: relative;
}

.contactSec__selectBoxWrp::before
{
    position: absolute;
    z-index: 1;
    top: 0;
    right: 15px;
    bottom: 0;

    width: 13px;
    height: 6.6px;
    margin: auto 0;

    content: '';

    background-image: url('../images/icon_contact_select_arrow.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__selectBoxWrp::before
    {
        right: .78125vw;

        width: .67708vw;
        height: .34375vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__selectBoxWrp::before
    {
        right: 1.0981vw;

        width: .95168vw;
        height: .48316vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__selectBoxWrp::before
    {
        right: 1.46484vw;

        width: 1.26953vw;
        height: .64453vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__selectBoxWrp::before
    {
        right: 4vw;

        width: 2.66667vw;
        height: 1.33333vw;
    }
}

.contactSec__selectBox
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 13px;
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 10.5px 0 10.5px 15px;

    cursor: pointer;
    text-align: left;
    letter-spacing: .124em;

    color: #6c6c6c;
    border: 1px solid #006230;
    border-radius: 0;
    background-color: #fff;

            appearance: none;
    -webkit-appearance: none;
       -moz-appearance: none;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__selectBox
    {
        font-size: .67708vw;

        padding: .54688vw 0 .54688vw .78125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__selectBox
    {
        font-size: 1.02489vw;

        padding: .76867vw 0 .76867vw 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__selectBox
    {
        font-size: 1.46484vw;

        padding: 1.17188vw 0 1.17188vw 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__selectBox
    {
        font-size: 3.73333vw;

        padding: 1.86667vw 0 1.86667vw 4vw;
    }
}

.contactSec .contactSec__selectBox
.active
{
    color: #000;
}

.contactSec__textArea
{
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: 500;
    line-height: 1.4;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 145px;
    padding: 10.5px 0 10.5px 15px;

    resize: none;
    letter-spacing: .124em;

    border: 1px solid #006230;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__textArea
    {
        padding: .54688vw 0 .54688vw .78125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__textArea
    {
        font-size: 1.02489vw;

        padding: .76867vw 0 .76867vw 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__textArea
    {
        font-size: 1.46484vw;

        padding: 1.17188vw 0 1.17188vw 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__textArea
    {
        font-size: 3.73333vw;

        padding: 1.86667vw 0 1.86667vw 4vw;
    }
}

.contactSec__btn
{
    font-weight: 500;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    margin-top: 44px;
    padding: 15px 0;

    -webkit-transition: all .3s ease;
            transition: all .3s ease;
    letter-spacing: .12em;

    color: #fff;
    border: 1px solid #006230;
    background-color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .contactSec__btn
    {
        margin-top: 2.29167vw;
        padding: .78125vw 0;
    }
}

@media print, screen and (max-width: 1367px)
{
    .contactSec__btn
    {
        font-size: 1.02489vw;

        margin-top: 1.75695vw;
        padding: 1.0981vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__btn
    {
        font-size: 1.46484vw;

        margin-top: 2.92969vw;
        padding: 1.46484vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__btn
    {
        font-size: 3.73333vw;

        margin-top: 5.33333vw;
        padding: 2.66667vw 0;
    }
}

.contactSec__btn:hover
{
    -webkit-transition: all .3s ease;
            transition: all .3s ease;

    color: #006230;
    background-color: #fff;
}

/* ============== .bottomSec ============== */
.bottomSec
{
    padding-top: 243px;
    padding-bottom: 197px;
}

@media print, screen and (max-width: 1921px)
{
    .bottomSec
    {
        padding-top: 12.65625vw;
        padding-bottom: 10.26042vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .bottomSec
    {
        padding-top: 13.17716vw;
        padding-bottom: 13.17716vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .bottomSec
    {
        padding-top: 11.71875vw;
        padding-bottom: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .bottomSec
    {
        padding-top: 16vw;
        padding-bottom: 16vw;
    }
}

.bottomSec__inner
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media print, screen and (max-width: 1367px)
{
    .bottomSec__inner
    {
        width: 80.52709vw;
        margin: 0 auto;
    }
}

@media print, screen and (max-width: 1025px)
{
    .bottomSec__inner
    {
            flex-direction: column;

        width: 68.35938vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

@media print, screen and (max-width: 430px)
{
    .bottomSec__inner
    {
        width: 92vw;
    }
}

/* ============== .aboutSec ============== */
.aboutSec
{
    width: 670px;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec
    {
        width: 34.89583vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .aboutSec
    {
        width: 43.92387vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec
    {
        width: 100%;
    }
}

.aboutSec__cont
{
    margin-top: 56px;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__cont
    {
        margin-top: 2.91667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__cont
    {
        margin-top: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__cont
    {
        margin-top: 4vw;
    }
}

.aboutSec__wrp:last-child
{
    margin-top: 60px;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__wrp:last-child
    {
        margin-top: 3.125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__wrp:last-child
    {
        margin-top: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__wrp:last-child
    {
        margin-top: 6.66667vw;
    }
}

.aboutSec__ttl
{
    font-weight: 500;

    margin-bottom: 36px;

    text-align: left;
    letter-spacing: .12em;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__ttl
    {
        margin-bottom: 1.875vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .aboutSec__ttl
    {
        font-size: .95168vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__ttl
    {
        font-size: 1.36719vw;

        margin-bottom: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__ttl
    {
        font-size: 4vw;

        margin-bottom: 2.66667vw;
    }
}

.aboutSec__ttl > span
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-size: 15px;
    font-weight: 700;

    margin-right: 16px;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__ttl > span
    {
        font-size: .78125vw;

        margin-right: .83333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .aboutSec__ttl > span
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__ttl > span
    {
        font-size: 1.5625vw;

        margin-right: 1.17188vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__ttl > span
    {
        font-size: 4.26667vw;

        margin-right: 2.66667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__row
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

.aboutSec__th
{
    font-weight: 500;

    width: 118px;

    text-align: left;
    letter-spacing: .1em;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__th
    {
        width: 6.14583vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .aboutSec__th
    {
        font-size: 1.02489vw;

        width: 8.05271vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__th
    {
        font-size: 1.46484vw;

        width: 19.53125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__th
    {
        font-size: 3.73333vw;

        width: 100%;
    }
}

.aboutSec__td
{
    font-weight: 500;
    line-height: 1.428;

    width: 552px;
    padding-bottom: 26px;

    text-align: left;
    letter-spacing: .1em;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__td
    {
        width: 28.75vw;
        padding-bottom: 1.35417vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .aboutSec__td
    {
        font-size: 1.02489vw;

        width: 35.13909vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__td
    {
        font-size: 1.46484vw;

        width: 48.82812vw;
        padding-bottom: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__td
    {
        font-size: 3.73333vw;

        width: 100%;
        padding: 1.86667vw 0 4vw 0;
    }
}

/* ============== .c-ttl ============== */
.c-ttl__ttl
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-weight: 800;

    text-align: center;
    letter-spacing: .12em;
}

@media print, screen and (max-width: 1367px)
{
    .c-ttl__ttl
    {
        font-size: 2.63543vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-ttl__ttl
    {
        font-size: 2.53906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__ttl
    {
        font-size: 5.33333vw;
    }
}

.c-ttl__ttl--left
{
    text-align: left;
}

.c-ttl__ttl--white
{
    color: #fff;
}

.c-ttl__ttl > span
{
    position: relative;
}

.c-ttl__ttl > span::before
{
    position: absolute;
    z-index: -1;

    content: '';
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation: yurayura 7s linear infinite;
            animation: yurayura 7s linear infinite;

    background-repeat: no-repeat;
    background-size: contain;
}

.c-ttl__ttl--01 > span::before
{
    top: -20px;
    right: -58px;

    width: 73.5px;
    height: 57.5px;

    background-image: url('../images/img_ttl_bg_01.svg');
}

@media print, screen and (max-width: 1921px)
{
    .c-ttl__ttl--01 > span::before
    {
        top: -1.04167vw;
        right: -3.02083vw;

        width: 3.82813vw;
        height: 2.99479vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-ttl__ttl--01 > span::before
    {
        top: -2.92969vw;
        right: -3.90625vw;

        width: 5.85938vw;
        height: 4.58984vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__ttl--01 > span::before
    {
        top: -4vw;
        right: -8vw;

        width: 13.33333vw;
        height: 10.4vw;
    }
}

.c-ttl__ttl--02 > span::before
{
    top: -30px;
    right: -40px;

    width: 62.59px;
    height: 68.5px;

    background-image: url('../images/img_ttl_bg_02.svg');
}

@media print, screen and (max-width: 1921px)
{
    .c-ttl__ttl--02 > span::before
    {
        top: -1.5625vw;
        right: -2.08333vw;

        width: 3.2599vw;
        height: 3.56771vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-ttl__ttl--02 > span::before
    {
        top: -2.92969vw;
        right: -2.92969vw;

        width: 4.88281vw;
        height: 5.37109vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__ttl--02 > span::before
    {
        top: -4vw;
        right: -5.33333vw;

        width: 10.66667vw;
        height: 9.06667vw;
    }
}

.c-ttl__ttl--03 > span::before
{
    top: -30px;
    left: -40px;

    width: 84px;
    height: 75px;

    background-image: url('../images/img_ttl_bg_03.svg');
}

@media print, screen and (max-width: 1921px)
{
    .c-ttl__ttl--03 > span::before
    {
        top: -1.5625vw;
        left: -2.08333vw;

        width: 4.375vw;
        height: 3.90625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-ttl__ttl--03 > span::before
    {
        top: -2.92969vw;
        left: -3.90625vw;

        width: 6.83594vw;
        height: 6.10352vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__ttl--03 > span::before
    {
        top: -4vw;
        left: -5.33333vw;

        width: 13.33333vw;
        height: 11.86667vw;
    }
}

@-webkit-keyframes yurayura
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

@keyframes yurayura
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

/* ============== .hiringSec ============== */
.hiringSec
{
    position: relative;

    overflow: hidden;

    padding: 70px 0 120px;

    background-color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec
    {
        padding: 3.64583vw 0 6.25vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .hiringSec
    {
        padding: 5.12445vw 0 8.78477vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec
    {
        padding: 5.85938vw 0 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec
    {
        padding: 10.66667vw 0 24vw;
    }
}

.hiringSec::before
{
    position: absolute;
    z-index: 1;
    right: 270px;
    bottom: 0;

    width: 236px;
    height: 195px;

    content: '';

    background-image: url('../images/img_hiring_illustration.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec::before
    {
        right: 14.0625vw;

        width: 12.29167vw;
        height: 10.15625vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .hiringSec::before
    {
        right: 13.17716vw;

        width: 13.90922vw;
        height: 11.49341vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec::before
    {
        right: 5.85938vw;

        width: 14.64844vw;
        height: 12.10938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec::before
    {
        right: 5.33333vw;

        width: 28vw;
        height: 23.2vw;
    }
}

.hiringSec__inner
{
    padding-left: 30.9375vw;
}

@media print, screen and (max-width: 1367px)
{
    .hiringSec__inner
    {
        padding-left: 13.17716vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__inner
    {
        padding-left: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__inner
    {
        padding-left: 4vw;
    }
}

.hiringSec__lead
{
    font-weight: 700;

    margin: 20px 0 64px;

    text-align: left;
    letter-spacing: .12em;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__lead
    {
        margin: 1.04167vw 0 3.33333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .hiringSec__lead
    {
        font-size: 1.1713vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__lead
    {
        font-size: 1.46484vw;

        margin: 1.46484vw 0 5.27344vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__lead
    {
        font-size: 3.73333vw;
        line-height: 2;

        margin: 4vw 0;
    }
}

.hiringSec__item
{
    position: relative;

    padding-left: 16px;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__item
    {
        padding-left: .83333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__item
    {
        padding-left: 1.17188vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__item
    {
        margin-bottom: 2.66667vw;
        padding-left: 2.66667vw;
    }
}

.hiringSec__item::before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 1px;
    height: 100%;

    content: '';

    background-color: #fff;
}

.hiringSec__item:last-child
{
    margin-top: 24px;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__item:last-child
    {
        margin-top: 1.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__item:last-child
    {
        margin-top: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__item:last-child
    {
        margin-top: 5.33333vw;
    }
}

.hiringSec__country
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-weight: 800;

    margin-bottom: 16px;

    text-align: left;
    letter-spacing: .12em;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__country
    {
        margin-bottom: .83333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .hiringSec__country
    {
        font-size: 1.1713vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__country
    {
        font-size: 1.46484vw;

        margin-bottom: .58594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__country
    {
        font-size: 3.73333vw;

        margin-bottom: 1.33333vw;
    }
}

.hiringSec__txt
{
    font-weight: 700;

    text-align: left;
    letter-spacing: .12em;

    color: #fff;
}

@media print, screen and (max-width: 1367px)
{
    .hiringSec__txt
    {
        font-size: 1.02489vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__txt
    {
        font-size: 1.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__txt
    {
        font-size: 3.73333vw;
    }
}

.hiringSec__deco
{
    position: relative;
    position: absolute;
}

.hiringSec__deco--left
{
    top: 0;
    left: 302px;

    width: 160px;
    height: 259px;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__deco--left
    {
        left: 15.72917vw;

        width: 8.33333vw;
        height: 13.48958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .hiringSec__deco--left
    {
        left: 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__deco--left
    {
        left: 2.66667vw;

        width: 19.46667vw;
        height: 24vw;
    }
}

.hiringSec__deco--right
{
    right: 124px;
    bottom: 0;

    width: 178px;
    height: 273px;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__deco--right
    {
        right: 6.45833vw;

        width: 9.27083vw;
        height: 14.21875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__deco--right
    {
        right: 4vw;
        bottom: 4vw;

        width: 19.46667vw;
        height: 29.86667vw;
    }
}

.hiringSec__shape
{
    position: absolute;
    z-index: 0;

    display: block;
}

.hiringSec__shape--l1,
.hiringSec__shape--l2,
.hiringSec__shape--l3,
.hiringSec__shape--l4
{
    -webkit-animation-name: floatDiagonal;
            animation-name: floatDiagonal;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
            animation-direction: alternate;
}

.hiringSec__shape--l1
{
    top: -69px;
    right: 0;

    width: 67px;
    height: 65px;

    -webkit-animation-duration: 8s;
            animation-duration: 8s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--l1
    {
        top: -3.59375vw;

        width: 3.48958vw;
        height: 3.38542vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--l1
    {
        top: -6.66667vw;

        width: 8.93333vw;
        height: 8.66667vw;
    }
}

.hiringSec__shape--l2
{
    top: 24px;
    right: 35px;

    width: 82px;
    height: 91px;

    -webkit-animation-duration: 7.5s;
            animation-duration: 7.5s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--l2
    {
        top: 1.25vw;
        right: 1.82292vw;

        width: 4.27083vw;
        height: 4.73958vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--l2
    {
        right: 4vw;

        width: 10.93333vw;
        height: 12.13333vw;
    }
}

.hiringSec__shape--l3
{
    top: 101px;
    left: 0;

    width: 65px;
    height: 69px;

    -webkit-animation-duration: 8s;
            animation-duration: 8s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--l3
    {
        top: 5.26042vw;

        width: 3.38542vw;
        height: 3.59375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--l3
    {
        top: 10.66667vw;

        width: 8.66667vw;
        height: 9.2vw;
    }
}

.hiringSec__shape--l4
{
    top: 171px;
    left: 36px;

    width: 73px;
    height: 57px;

    -webkit-animation-duration: 7.5s;
            animation-duration: 7.5s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--l4
    {
        top: 8.90625vw;
        left: 1.875vw;

        width: 3.80208vw;
        height: 2.96875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--l4
    {
        top: 18.66667vw;
        left: 4vw;

        width: 9.73333vw;
        height: 7.6vw;
    }
}

.hiringSec__shape--r1,
.hiringSec__shape--r2,
.hiringSec__shape--r3,
.hiringSec__shape--r4
{
    -webkit-animation-name: floatUp;
            animation-name: floatUp;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
            animation-direction: alternate;
}

.hiringSec__shape--r1
{
    bottom: -20px;
    left: 0;

    width: 82px;
    height: 64px;

    -webkit-animation-duration: 6.7s;
            animation-duration: 6.7s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--r1
    {
        bottom: -1.04167vw;

        width: 4.27083vw;
        height: 3.33333vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--r1
    {
        bottom: -1.33333vw;

        width: 10.93333vw;
        height: 8.53333vw;
    }
}

.hiringSec__shape--r2
{
    top: 110px;
    right: 8px;

    width: 82px;
    height: 87px;

    -webkit-animation-duration: 6.2s;
            animation-duration: 6.2s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--r2
    {
        top: 5.72917vw;
        right: .41667vw;

        width: 4.27083vw;
        height: 4.53125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--r2
    {
        top: 10.66667vw;
        right: 1.06667vw;

        width: 10.93333vw;
        height: 11.6vw;
    }
}

.hiringSec__shape--r3
{
    top: 93px;
    right: 0;

    width: 65px;
    height: 50px;

    -webkit-animation-duration: 6s;
            animation-duration: 6s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--r3
    {
        top: 4.84375vw;

        width: 3.38542vw;
        height: 2.60417vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--r3
    {
        top: 9.33333vw;

        width: 8.66667vw;
        height: 6.66667vw;
    }
}

.hiringSec__shape--r4
{
    top: 0;
    left: 32px;

    width: 79px;
    height: 62px;

    -webkit-animation-duration: 6.7s;
            animation-duration: 6.7s;
}

@media print, screen and (max-width: 1921px)
{
    .hiringSec__shape--r4
    {
        left: 1.66667vw;

        width: 4.11458vw;
        height: 3.22917vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .hiringSec__shape--r4
    {
        left: 4vw;

        width: 10.53333vw;
        height: 8.26667vw;
    }
}

@-webkit-keyframes floatDiagonal
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    50%
    {
        -webkit-transform: translate(-10px, 25px);
                transform: translate(-10px, 25px);
        /* 横に15px、上に25px */
    }
    100%
    {
        -webkit-transform: translate(30px, 50px);
                transform: translate(30px, 50px);
    }
}

@keyframes floatDiagonal
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    50%
    {
        -webkit-transform: translate(-10px, 25px);
                transform: translate(-10px, 25px);
        /* 横に15px、上に25px */
    }
    100%
    {
        -webkit-transform: translate(30px, 50px);
                transform: translate(30px, 50px);
    }
}

@-webkit-keyframes floatUp
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    50%
    {
        -webkit-transform: translate(10px, -25px);
                transform: translate(10px, -25px);
        /* 左に10px、上に25px */
    }
    100%
    {
        -webkit-transform: translate(0, -60px);
                transform: translate(0, -60px);
    }
}

@keyframes floatUp
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    50%
    {
        -webkit-transform: translate(10px, -25px);
                transform: translate(10px, -25px);
        /* 左に10px、上に25px */
    }
    100%
    {
        -webkit-transform: translate(0, -60px);
                transform: translate(0, -60px);
    }
}

/* ============== .sustainabilitySec ============== */
.sustainabilitySec
{
    max-width: 1920px;
    margin: 0 auto;
    margin-top: 293px;
    margin-bottom: 256px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec
    {
        margin-top: 15.26042vw;
        margin-bottom: 13.33333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec
    {
        margin-top: 13.17716vw;
        margin-bottom: 10.98097vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec
    {
        margin-top: 11.71875vw;
        margin-bottom: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec
    {
        margin-top: 20vw;
        margin-bottom: 16vw;
    }
}

.sustainabilitySec__cont
{
    max-width: 1920px;
    margin-top: 173px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__cont
    {
        margin-top: 9.01042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__cont
    {
        margin-top: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__cont
    {
        margin-top: 10.66667vw;
    }
}

.sustainabilitySec__item
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
}

.sustainabilitySec__item--01
{
    padding-left: 360px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--01
    {
        padding-left: 18.75vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__item--01
    {
        padding-left: 13.17716vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--01
    {
        padding-left: 6.83594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--01
    {
        padding-left: 0;
    }
}

.sustainabilitySec__item--01 .sustainabilitySec__img
{
    width: 1457px;
    margin-top: 45px;
    margin-right: 0;
    margin-left: auto;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--01 .sustainabilitySec__img
    {
        width: 75.88542vw;
        margin-top: 2.34375vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--01 .sustainabilitySec__img
    {
        width: 78.125vw;
        margin-top: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--01 .sustainabilitySec__img
    {
        width: 93.33333vw;
        margin-top: 4vw;
    }
}

.sustainabilitySec__item--02
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 200px;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--02
    {
        margin-top: 10.41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--02
    {
        margin-top: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--02
    {
            flex-direction: column-reverse;

        margin-top: 18.66667vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
    }
}

.sustainabilitySec__item--02 .sustainabilitySec__img
{
    width: 1018px;
    margin-top: 154px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--02 .sustainabilitySec__img
    {
        width: 53.02083vw;
        margin-top: 8.02083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--02 .sustainabilitySec__img
    {
        width: 58.59375vw;
        margin-top: 21.48438vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--02 .sustainabilitySec__img
    {
        width: 93.33333vw;
        margin-top: 4vw;
    }
}

.sustainabilitySec__item--03
{
    margin-top: 176px;
    padding-left: 360px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--03
    {
        margin-top: 9.16667vw;
        padding-left: 18.75vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__item--03
    {
        padding-left: 13.17716vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--03
    {
        margin-top: 7.8125vw;
        padding-left: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--03
    {
        margin-top: 18.66667vw;
        padding-left: 0;
    }
}

.sustainabilitySec__item--03 .sustainabilitySec__img
{
    width: 960px;
    margin-top: -186px;
    margin-right: 0;
    margin-left: auto;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--03 .sustainabilitySec__img
    {
        width: 50vw;
        margin-top: -9.6875vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__item--03 .sustainabilitySec__img
    {
        margin-top: -5.12445vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--03 .sustainabilitySec__img
    {
        width: 58.59375vw;
        margin-top: 0vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--03 .sustainabilitySec__img
    {
        width: 93.33333vw;
        margin-top: 4vw;
    }
}

.sustainabilitySec__item--04
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 221px;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--04
    {
        margin-top: 11.51042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--04
    {
        margin-top: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--04
    {
            flex-direction: column-reverse;

        margin-top: 18.66667vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
    }
}

.sustainabilitySec__item--04 .sustainabilitySec__img
{
    width: 1018px;
    margin-top: 154px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--04 .sustainabilitySec__img
    {
        width: 53.02083vw;
        margin-top: 8.02083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--04 .sustainabilitySec__img
    {
        width: 58.59375vw;
        margin-top: 8.78906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--04 .sustainabilitySec__img
    {
        width: 93.33333vw;
        margin-top: 4vw;
    }
}

.sustainabilitySec__item--05
{
    margin-top: 236px;
    padding-left: 335px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--05
    {
        margin-top: 12.29167vw;
        padding-left: 17.44792vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--05
    {
        margin-top: 7.8125vw;
        padding-left: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--05
    {
        margin-top: 18.66667vw;
        padding-left: 0;
    }
}

.sustainabilitySec__item--05 .sustainabilitySec__img
{
    width: 1585px;
    margin-top: -172px;
    margin-right: 0;
    margin-left: auto;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__item--05 .sustainabilitySec__img
    {
        width: 82.55208vw;
        margin-top: -8.95833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__item--05 .sustainabilitySec__img
    {
        width: 78.125vw;
        margin-top: -7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__item--05 .sustainabilitySec__img
    {
        width: 100vw;
        margin-top: 4vw;
    }
}

.sustainabilitySec__img > img
{
    display: block;

    width: 100%;
}

.sustainabilitySec__box--01
{
    width: 706px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__box--01
    {
        width: 36.77083vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__box--01
    {
        width: 51.68375vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__box--01
    {
        width: 66.40625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__box--01
    {
        width: 92vw;
        margin: 0 auto;
    }
}

.sustainabilitySec__box--02
{
    width: 465px;
    margin-left: 122px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__box--02
    {
        width: 24.21875vw;
        margin-left: 6.35417vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__box--02
    {
        width: 34.041vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__box--02
    {
        width: 35.15625vw;
        margin-left: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__box--02
    {
        width: 92vw;
        margin: 0 auto;
    }
}

.sustainabilitySec__box--03
{
    width: 668px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__box--03
    {
        width: 34.79167vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__box--03
    {
        width: 48.9019vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__box--03
    {
        width: 58.59375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__box--03
    {
        width: 92vw;
        margin: 0 auto;
    }
}

.sustainabilitySec__box--04
{
    width: 623px;
    margin-left: 82px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__box--04
    {
        width: 32.44792vw;
        margin-left: 4.27083vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__box--04
    {
        width: 38.79941vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__box--04
    {
        width: 34.17969vw;
        margin-left: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__box--04
    {
        width: 92vw;
        margin: 0 auto;
    }
}

.sustainabilitySec__box--05
{
    width: 532px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__box--05
    {
        width: 27.70833vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__box--05
    {
        width: 38.94583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__box--05
    {
        width: 48.82812vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__box--05
    {
        width: 92vw;
        margin: 0 auto;
    }
}

.sustainabilitySec__ttl
{
    font-weight: 700;

    position: relative;

    margin-bottom: 30px;

    text-align: left;
    letter-spacing: .12em;

    color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__ttl
    {
        margin-bottom: 1.5625vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__ttl
    {
        font-size: 1.75695vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__ttl
    {
        font-size: 2.14844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__ttl
    {
        font-size: 4.26667vw;
    }
}

.sustainabilitySec__ttl::before
{
    position: absolute;
    z-index: -1;
    top: -97px;
    left: -153px;

    width: 196px;
    height: 144px;

    content: '';
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation: yurayura 7s linear infinite;
            animation: yurayura 7s linear infinite;

    background-image: url('../images/img_sustaTtl_bg_04.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__ttl::before
    {
        top: -5.05208vw;
        left: -7.96875vw;

        width: 10.20833vw;
        height: 7.5vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__ttl::before
    {
        top: -6.66667vw;
        left: -10.66667vw;

        width: 26.13333vw;
        height: 19.2vw;
    }
}

.sustainabilitySec__ttl--02::before
{
    top: -69px;
    right: 124px;
    left: auto;

    width: 182px;
    height: 140px;

    background-image: url('../images/img_sustaTtl_bg_02.svg');
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__ttl--02::before
    {
        top: -3.59375vw;
        right: 6.45833vw;

        width: 9.47917vw;
        height: 7.29167vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__ttl--02::before
    {
        top: -7.86667vw;
        right: 10.66667vw;

        width: 24.26667vw;
        height: 18.66667vw;
    }
}

.sustainabilitySec__ttl--03::before
{
    top: -69px;
    left: 137px;

    width: 190px;
    height: 150px;

    background-image: url('../images/img_sustaTtl_bg_03.svg');
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__ttl--03::before
    {
        top: -3.59375vw;
        left: 7.13542vw;

        width: 9.89583vw;
        height: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__ttl--03::before
    {
        top: -7.86667vw;
        left: 10.66667vw;

        width: 25.33333vw;
        height: 20vw;
    }
}

.sustainabilitySec__ttl--04::before
{
    top: -69px;
    right: 143px;
    left: auto;

    width: 205px;
    height: 151px;

    background-image: url('../images/img_sustaTtl_bg_04.svg');
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__ttl--04::before
    {
        top: -3.07292vw;
        right: 7.44792vw;

        width: 10.67708vw;
        height: 7.86458vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__ttl--04::before
    {
        top: -11.86667vw;
        right: 24vw;

        width: 27.33333vw;
        height: 20.13333vw;
    }
}

.sustainabilitySec__ttl--05::before
{
    top: -69px;
    left: -80px;

    width: 209px;
    height: 161px;

    background-image: url('../images/img_sustaTtl_bg_05.svg');
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__ttl--05::before
    {
        top: -6.14583vw;
        left: -4.16667vw;

        width: 10.88542vw;
        height: 8.38542vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__ttl--05::before
    {
        top: -7.86667vw;
        left: -6.66667vw;

        width: 27.86667vw;
        height: 21.46667vw;
    }
}

.sustainabilitySec__txtBox
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__txtBox
    {
            flex-direction: column;

        gap: 1.95312vw;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__txtBox
    {
            flex-direction: column;

        gap: 2.66667vw;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

.sustainabilitySec__logo
{
    width: 128px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__logo
    {
        width: 6.66667vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__logo
    {
        width: 8.63836vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__logo
    {
        width: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__logo
    {
        width: 20vw;
    }
}

.sustainabilitySec__logo > img
{
    display: block;

    width: 100%;
}

.sustainabilitySec__txt
{
    font-weight: 500;
    line-height: 2;

    text-align: left;
    letter-spacing: .12em;
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__txt
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__txt
    {
        font-size: 1.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__txt
    {
        font-size: 3.73333vw;
    }
}

.sustainabilitySec__txt > span
{
    color: #006230;
    background-color: rgba(0, 98, 48, .1);
}

.sustainabilitySec__txt--04
{
    width: 460px;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__txt--04
    {
        width: 23.95833vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__txt--04
    {
        width: 27.08638vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__txt--04
    {
        width: 100%;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__txt--04
    {
        width: 100%;
    }
}

.sustainabilitySec__btnBox
{
    position: relative;
    z-index: 10;
}

.sustainabilitySec__btn
{
    font-weight: 700;

    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 190px;
    margin-top: 40px;
    padding: 10px 0 10px 20px;

    -webkit-transition: all .3s ease;
            transition: all .3s ease;
    text-align: left;

    color: #fff;
    border: 1px solid #006230;
    border-radius: 30px;
    background-color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__btn
    {
        font-size: .78125vw;

        width: 9.89583vw;
        margin-top: 2.08333vw;
        padding: .52083vw 0 .52083vw 1.04167vw;

        border-radius: 1.5625vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__btn
    {
        font-size: 1.0981vw;

        width: 13.90922vw;
        margin-top: 2.92826vw;
        padding: .73206vw 0 .73206vw 1.46413vw;

        border-radius: 2.19619vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__btn
    {
        font-size: 1.36719vw;

        width: 16.60156vw;
        margin-top: 1.95312vw;
        padding: .78125vw 0 .78125vw 1.46484vw;

        border-radius: 2.44141vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__btn
    {
        font-size: 3.73333vw;

        width: 45.33333vw;
        margin-top: 4vw;
        padding: 1.6vw 0 1.6vw 5.33333vw;

        border-radius: 5.33333vw;
    }
}

.sustainabilitySec__btn::before
{
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;

    width: 6.6px;
    height: 13px;
    margin: auto 0;

    content: '';
    -webkit-transition: all .3s ease;
            transition: all .3s ease;

    background-image: url('../images/icon_ustainability_btn_arrow_white.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .sustainabilitySec__btn::before
    {
        right: .78125vw;

        width: .34375vw;
        height: .67708vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .sustainabilitySec__btn::before
    {
        right: 1.0981vw;

        width: .48316vw;
        height: .95168vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .sustainabilitySec__btn::before
    {
        right: 1.46484vw;

        width: .64453vw;
        height: 1.26953vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .sustainabilitySec__btn::before
    {
        top: .26667vw;
        right: 3.46667vw;

        width: 1.6vw;
        height: 3.46667vw;
    }
}

.sustainabilitySec__btn:hover
{
    color: #006230;
    background-color: #fff;
}

.sustainabilitySec__btn:hover::before
{
    background-image: url('../images/icon_ustainability_btn_arrow_green.svg');
}

@keyframes yurayura
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    100%
    {
        -webkit-transform: rotate(360deg);
                transform: rotate(360deg);
    }
}

/* ============== .productsSec ============== */
.productsSec
{
    position: relative;

    margin-top: 135px;
    padding: 70px 0 120px;

    background-color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec
    {
        margin-top: 7.03125vw;
        padding: 3.64583vw 0 6.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec
    {
        margin-top: 9.76562vw;
        padding: 5.85938vw 0 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec
    {
        margin-top: 13.33333vw;
        padding: 10.66667vw 0 13.33333vw;
    }
}

.productsSec::before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 186px;
    height: 214px;

    content: '';

    background-image: url('../images/img_products_bg_left.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec::before
    {
        width: 9.6875vw;
        height: 11.14583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec::before
    {
        width: 12.69531vw;
        height: 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec::before
    {
        width: 17.33333vw;
        height: 20vw;
    }
}

.productsSec::after
{
    position: absolute;
    top: 90px;
    right: 0;

    width: 188px;
    height: 193px;

    content: '';

    background-image: url('../images/img_products_bg_right.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec::after
    {
        top: 4.6875vw;

        width: 9.79167vw;
        height: 10.05208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec::after
    {
        top: 5.85938vw;

        width: 11.71875vw;
        height: 12.01172vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec::after
    {
        top: 4vw;

        width: 16vw;
        height: 16.4vw;
    }
}

.productsSec__txt
{
    font-weight: 500;
    line-height: 2;

    margin-top: 20px;

    letter-spacing: .12em;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec__txt
    {
        margin-top: 1.04167vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .productsSec__txt
    {
        font-size: 1.1713vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec__txt
    {
        font-size: 1.46484vw;

        margin-top: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec__txt
    {
        font-size: 3.73333vw;

        margin-top: 2vw;
    }
}

.productsSec__swiper
{
    overflow: hidden;

    width: 100%;
    margin-top: 92px;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec__swiper
    {
        margin-top: 4.79167vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .productsSec__swiper
    {
        margin-top: 5.85652vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec__swiper
    {
        margin-top: 5.85938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec__swiper
    {
        margin-top: 10.66667vw;
    }
}

.productsSec__wrapper
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
}

.productsSec__slide
{
    width: initial;
    margin-right: 32px;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec__slide
    {
        margin-right: 1.66667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec__slide
    {
        margin-right: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec__slide
    {
        margin-right: 4vw;
    }
}

.productsSec__slide--02
{
    margin-top: 86px;
}

@media print, screen and (max-width: 1921px)
{
    .productsSec__slide--02
    {
        margin-top: 4.47917vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .productsSec__slide--02
    {
        margin-top: 4.39239vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .productsSec__slide--02
    {
        margin-top: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .productsSec__slide--02
    {
        margin-top: 4vw;
    }
}

.productsSec__slide > img
{
    display: block;

    width: 100%;
    height: auto;

    -o-object-fit: cover;
       object-fit: cover;
}

/* ============== .valueSec ============== */
.valueSec
{
    max-width: 1920px;
    margin: 0 auto;
    padding-top: 186px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec
    {
        padding-top: 9.6875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec
    {
        padding-top: 17.57812vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec
    {
        padding-top: 40vw;
    }
}

.valueSec__item
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

.valueSec__item--01 .valueSec__txtBox
{
    margin-top: 340px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__item--01 .valueSec__txtBox
    {
        margin-top: 17.70833vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__item--01 .valueSec__txtBox
    {
        margin-top: 16.10542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__item--01 .valueSec__txtBox
    {
        margin-top: 17.57812vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item--01 .valueSec__txtBox
    {
        margin-top: 6.66667vw;
    }
}

.valueSec__item--02
{
    margin-top: 280px;
    padding-left: 330px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__item--02
    {
        margin-top: 14.58333vw;
        padding-left: 17.1875vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__item--02
    {
        margin-top: 13.17716vw;
        padding-left: 5.85652vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__item--02
    {
        margin-top: 11.71875vw;
        padding-left: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item--02
    {
        margin-top: 10.66667vw;
        padding-left: 0;
    }
}

.valueSec__item--02 .valueSec__img--04
{
    margin-top: 5px;
    margin-right: 65px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__item--02 .valueSec__img--04
    {
        margin-top: .26042vw;
        margin-right: 3.38542vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__item--02 .valueSec__img--04
    {
        margin-top: .21962vw;
        margin-right: 2.92826vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__item--02 .valueSec__img--04
    {
        margin-top: .29297vw;
        margin-right: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item--02 .valueSec__img--04
    {
        margin-top: 0;
        margin-right: 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__item--02 .valueSec__txtBox
    {
        width: 56.64062vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item--02 .valueSec__txtBox
    {
        width: 92vw;
        margin-top: 6.66667vw;
    }
}

.valueSec__item--03
{
    margin-top: 107px;
    padding-left: 208px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__item--03
    {
        margin-top: 5.57292vw;
        padding-left: 10.83333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__item--03
    {
        margin-top: 8.78477vw;
        padding-left: 5.85652vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__item--03
    {
        margin-top: 5.85938vw;
        padding-left: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item--03
    {
        margin-top: 10.66667vw;
        padding-left: 0;
    }
}

.valueSec__item--03 .valueSec__img--04
{
    margin-top: 167px;
    margin-left: 40px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__item--03 .valueSec__img--04
    {
        margin-top: 8.69792vw;
        margin-left: 2.08333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__item--03 .valueSec__img--04
    {
        margin-top: 10.98097vw;
        margin-left: 1.83016vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__item--03 .valueSec__img--04
    {
        margin-top: 9.76562vw;
        margin-left: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__item--03 .valueSec__img--04
    {
        margin-top: 37.33333vw;
        margin-left: 40vw;
    }
}

.valueSec__img--01
{
    width: 168.54px;
    margin-right: 173.5px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__img--01
    {
        width: 8.77812vw;
        margin-right: 9.03646vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__img--01
    {
        width: 8.78477vw;
        margin-right: 5.85652vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__img--01
    {
        width: 8.78906vw;
        margin-right: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__img--01
    {
        width: 13.33333vw;
        margin-right: 0;
    }
}

.valueSec__img--02
{
    width: 199.94px;
    margin-top: 380px;
    margin-left: 292px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__img--02
    {
        width: 10.41354vw;
        margin-top: 19.79167vw;
        margin-left: 15.20833vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__img--02
    {
        width: 10.39531vw;
        margin-top: 20.4978vw;
        margin-left: 5.12445vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__img--02
    {
        width: 9.76562vw;
        margin-top: 23.4375vw;
        margin-left: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__img--02
    {
        width: 20vw;
        margin-top: 21.86667vw;
        margin-left: 36vw;
    }
}

.valueSec__img--03
{
    width: 492px;
    margin-top: 156px;
    margin-right: 0;
    margin-left: auto;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__img--03
    {
        width: 25.625vw;
        margin-top: 8.125vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__img--03
    {
        width: 26.35432vw;
        margin-top: 8.41874vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__img--03
    {
        width: 25.39062vw;
        margin-top: 11.71875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__img--03
    {
        width: 40vw;
        margin-top: 6.66667vw;
    }
}

.valueSec__img--04
{
    width: 197.5px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__img--04
    {
        width: 10.28646vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__img--04
    {
        width: 10.2489vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__img--04
    {
        width: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__img--04
    {
        width: 17.33333vw;
    }
}

.valueSec__img--05
{
    width: 290px;
    margin-top: 120px;
    margin-left: 64px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__img--05
    {
        width: 15.10417vw;
        margin-top: 6.25vw;
        margin-left: 3.33333vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__img--05
    {
        width: 19.03367vw;
        margin-top: 6.58858vw;
        margin-left: 3.29429vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__img--05
    {
        width: 19.53125vw;
        margin-top: 9.76562vw;
        margin-left: 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__img--05
    {
        width: 40vw;
        margin-top: 6.66667vw;
        margin-right: 0;
        margin-left: auto;
    }
}

.valueSec__img--06
{
    width: 303px;
    margin-right: 96px;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__img--06
    {
        width: 15.78125vw;
        margin-right: 5vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__img--06
    {
        width: 17.56955vw;
        margin-right: 5.12445vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__img--06
    {
        width: 18.55469vw;
        margin-right: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__img--06
    {
        width: 37.33333vw;
        margin-top: 6.66667vw;
        margin-right: 0;
        margin-left: auto;
    }
}

.valueSec__img > img
{
    display: block;

    width: 100%;
}

.valueSec__txtBox
{
    text-align: left;
}

@media print, screen and (max-width: 430px)
{
    .valueSec__txtBox
    {
        width: 92vw;
        margin: 0 auto;
    }
}

.valueSec__txtEn
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-weight: 800;

    letter-spacing: .12em;

    color: #006230;
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__txtEn
    {
        font-size: 1.61054vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__txtEn
    {
        font-size: 1.75781vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__txtEn
    {
        font-size: 4vw;
    }
}

.valueSec__ttl
{
    font-weight: 700;

    margin: 24px 0;

    letter-spacing: .12em;
}

@media print, screen and (max-width: 1921px)
{
    .valueSec__ttl
    {
        margin: 1.25vw 0;
    }
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__ttl
    {
        font-size: 2.04978vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__ttl
    {
        font-size: 2.14844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__ttl
    {
        font-size: 4.26667vw;

        margin: 3.46667vw 0 2.66667vw;
    }
}

.valueSec__txt
{
    font-weight: 700;

    letter-spacing: .12em;
}

@media print, screen and (max-width: 1367px)
{
    .valueSec__txt
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .valueSec__txt
    {
        font-size: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .valueSec__txt
    {
        font-size: 3.73333vw;
    }
}

/* ============== .loading ============== */
.loading
{
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;
    /* 初期状態は透明 */

    -webkit-transition: opacity 1s ease;
            transition: opacity 1s ease;

    opacity: 0;
    background: #fff;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    /* フェードイン・アウトのアニメーション */
    /* ロゴ */
}

.loading__inner
{
    position: relative;

    width: 1668px;
    height: 800px;
    margin: 0 auto;

    text-align: center;
}

@media print, screen and (max-width: 1921px)
{
    .loading__inner
    {
        width: 86.875vw;
        height: 41.66667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__inner
    {
        width: 95.70312vw;
        height: 42.1875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__inner
    {
        width: 93.33333vw;
        height: 53.33333vw;
    }
}

.loading__logo
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 512px;
    height: 101px;

    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-animation: fade 6s infinite ease-in-out;
            animation: fade 6s infinite ease-in-out;
}

@media print, screen and (max-width: 1921px)
{
    .loading__logo
    {
        width: 26.66667vw;
        height: 5.26042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__logo
    {
        width: 39.0625vw;
        height: 7.71484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__logo
    {
        width: 40vw;
        height: 7.86667vw;
    }
}

.loading__deco
{
    position: relative;
    position: absolute;
}

.loading__deco--left
{
    top: 0;
    left: 0;

    width: 297px;
    height: 532px;
}

@media print, screen and (max-width: 1921px)
{
    .loading__deco--left
    {
        width: 15.46875vw;
        height: 27.70833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__deco--left
    {
        width: 21.48438vw;
        height: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__deco--left
    {
        width: 17.86667vw;
        height: 32.26667vw;
    }
}

.loading__deco--right
{
    right: 103px;
    bottom: 0;

    width: 362.5px;
    height: 466px;
}

@media print, screen and (max-width: 1921px)
{
    .loading__deco--right
    {
        right: 5.36458vw;

        width: 18.88021vw;
        height: 24.27083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__deco--right
    {
        right: 3.90625vw;

        width: 26.36719vw;
        height: 26.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__deco--right
    {
        right: 2.66667vw;

        width: 21.86667vw;
        height: 28.26667vw;
    }
}

.loading__shape
{
    position: absolute;

    display: block;
}

.loading__shape--l1
{
    top: 0;
    right: 0;

    width: 157px;
    height: 150px;

    -webkit-animation: moveDiagonal 9.5s linear infinite;
            animation: moveDiagonal 9.5s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--l1
    {
        width: 8.17708vw;
        height: 7.8125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--l1
    {
        width: 10.74219vw;
        height: 10.25391vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--l1
    {
        width: 10.66667vw;
        height: 10.13333vw;
    }
}

.loading__shape--l2
{
    top: 116px;
    left: 0;

    width: 216px;
    height: 212px;

    -webkit-animation: moveDiagonal 8s linear infinite;
            animation: moveDiagonal 8s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--l2
    {
        top: 6.04167vw;

        width: 11.25vw;
        height: 11.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--l2
    {
        top: 7.8125vw;

        width: 14.64844vw;
        height: 14.35547vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--l2
    {
        top: 6.66667vw;

        width: 13.33333vw;
        height: 13.06667vw;
    }
}

.loading__shape--l3
{
    top: 253px;
    left: 0;

    width: 146px;
    height: 163px;

    -webkit-animation: moveDiagonal 7.2s linear infinite;
            animation: moveDiagonal 7.2s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--l3
    {
        top: 13.17708vw;

        width: 7.60417vw;
        height: 8.48958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--l3
    {
        top: 14.64844vw;

        width: 9.76562vw;
        height: 10.9375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--l3
    {
        top: 13.33333vw;

        width: 10.66667vw;
        height: 12vw;
    }
}

.loading__shape--l4
{
    bottom: 0;
    left: 64px;

    width: 163px;
    height: 154px;

    -webkit-animation: moveDiagonal 5s linear infinite;
            animation: moveDiagonal 5s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--l4
    {
        left: 3.33333vw;

        width: 8.48958vw;
        height: 8.02083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--l4
    {
        left: 3.90625vw;

        width: 10.74219vw;
        height: 10.15625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--l4
    {
        left: 4vw;

        width: 10.66667vw;
        height: 10.13333vw;
    }
}

.loading__shape--r1
{
    top: 0;
    right: 0;

    width: 120px;
    height: 155px;

    -webkit-animation: moveUp 4.5s linear infinite;
            animation: moveUp 4.5s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--r1
    {
        width: 6.25vw;
        height: 8.07292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--r1
    {
        width: 7.8125vw;
        height: 10.15625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--r1
    {
        width: 8vw;
        height: 10.4vw;
    }
}

.loading__shape--r2
{
    top: 107px;
    right: 49px;

    width: 104px;
    height: 121px;

    -webkit-animation: moveUp 6s linear infinite;
            animation: moveUp 6s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--r2
    {
        top: 5.57292vw;
        right: 2.55208vw;

        width: 5.41667vw;
        height: 6.30208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--r2
    {
        top: 6.83594vw;
        right: 2.92969vw;

        width: 6.83594vw;
        height: 7.91016vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--r2
    {
        top: 5.33333vw;
        right: 2.66667vw;

        width: 6.66667vw;
        height: 7.73333vw;
    }
}

.loading__shape--r3
{
    top: 188px;
    right: 0;

    width: 216px;
    height: 188px;

    -webkit-animation: moveUp 8s linear infinite;
            animation: moveUp 8s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--r3
    {
        top: 9.79167vw;

        width: 11.25vw;
        height: 9.79167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--r3
    {
        top: 11.71875vw;

        width: 14.64844vw;
        height: 12.69531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--r3
    {
        top: 10.66667vw;

        width: 13.33333vw;
        height: 11.6vw;
    }
}

.loading__shape--r4
{
    bottom: 0;
    left: 0;

    width: 182px;
    height: 174px;

    -webkit-animation: moveUp 9s linear infinite;
            animation: moveUp 9s linear infinite;
}

@media print, screen and (max-width: 1921px)
{
    .loading__shape--r4
    {
        width: 9.47917vw;
        height: 9.0625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .loading__shape--r4
    {
        width: 11.71875vw;
        height: 11.23047vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .loading__shape--r4
    {
        width: 10.66667vw;
        height: 10.13333vw;
    }
}

@-webkit-keyframes moveDiagonal
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
        /* 初期位置 */
    }
    50%
    {
        -webkit-transform: translate(30px, 100px);
                transform: translate(30px, 100px);
        /* 右斜め下に移動 */
    }
    100%
    {
        -webkit-transform: translate(50px, 140px);
                transform: translate(50px, 140px);
        /* 右斜め下に移動 */
    }
}

@keyframes moveDiagonal
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
        /* 初期位置 */
    }
    50%
    {
        -webkit-transform: translate(30px, 100px);
                transform: translate(30px, 100px);
        /* 右斜め下に移動 */
    }
    100%
    {
        -webkit-transform: translate(50px, 140px);
                transform: translate(50px, 140px);
        /* 右斜め下に移動 */
    }
}

@-webkit-keyframes moveUp
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
        /* 初期位置（下） */
    }
    50%
    {
        -webkit-transform: translate(0, -50px);
                transform: translate(0, -50px);
        /* 中間位置（少し上） */
    }
    100%
    {
        -webkit-transform: translate(0, -100px);
                transform: translate(0, -100px);
        /* 最終位置（上） */
    }
}

@keyframes moveUp
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
        /* 初期位置（下） */
    }
    50%
    {
        -webkit-transform: translate(0, -50px);
                transform: translate(0, -50px);
        /* 中間位置（少し上） */
    }
    100%
    {
        -webkit-transform: translate(0, -100px);
                transform: translate(0, -100px);
        /* 最終位置（上） */
    }
}

/* フェードイン状態 */
.loading.fade-in
{
    opacity: 1;
}

/* フェードアウト状態 */
.loading.fade-out
{
    pointer-events: none;

    opacity: 0;
    /* フェードアウト後にクリックを無効化 */
}

/* ============== .thanksSec ============== */
.thanksSec
{
    margin-top: 476px;
    padding-bottom: 490px;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec
    {
        margin-top: 24.79167vw;
        padding-bottom: 25.52083vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec
    {
        margin-top: 21.96193vw;
        padding-bottom: 21.96193vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec
    {
        margin-top: 25.39062vw;
        padding-bottom: 19.53125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec
    {
        margin-top: 40vw;
        padding-bottom: 46.66667vw;
    }
}

.thanksSec__inner
{
    position: relative;

    width: 870px;
    margin: 0 auto;
    padding-top: 50px;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__inner
    {
        width: 45.3125vw;
        padding-top: 2.60417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__inner
    {
        width: 78.125vw;
        padding-top: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__inner
    {
        width: 93.33333vw;
        padding-top: 4vw;
    }
}

.thanksSec__contact
{
    font-family: 'avenir-lt-pro', sans-serif;
    font-weight: 800;

    margin-bottom: 24px;

    letter-spacing: .12em;

    color: #006230;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__contact
    {
        margin-bottom: 1.25vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__contact
    {
        font-size: 1.61054vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__contact
    {
        font-size: 1.95312vw;

        margin-bottom: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__contact
    {
        font-size: 4.26667vw;

        margin-bottom: 2.66667vw;
    }
}

.thanksSec__ttl
{
    font-weight: 700;

    margin: 24px 0 32px;

    letter-spacing: .12em;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__ttl
    {
        margin: 1.25vw 0 1.66667vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__ttl
    {
        font-size: 2.34261vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__ttl
    {
        font-size: 2.73438vw;

        margin: 1.95312vw 0 2.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__ttl
    {
        font-size: 5.33333vw;

        margin: 2.66667vw 0 4vw;
    }
}

.thanksSec__ttl--en
{
    letter-spacing: .06em;
}

.thanksSec__txt
{
    font-weight: 700;
    line-height: 1.86666;

    letter-spacing: .12em;
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__txt
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__txt
    {
        font-size: 1.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__txt
    {
        font-size: 3.73333vw;
    }
}

.thanksSec__txt--en
{
    letter-spacing: .06em;
}

.thanksSec__btn
{
    font-weight: 500;

    display: block;

    margin-top: 200px;

    -webkit-transition: all .3s ease;
            transition: all .3s ease;
    letter-spacing: .12em;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__btn
    {
        margin-top: 10.41667vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__btn
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__btn
    {
        font-size: 1.36719vw;

        margin-top: 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__btn
    {
        font-size: 3.73333vw;

        margin-top: 29.33333vw;
    }
}

.thanksSec__btn--en
{
    font-weight: 500;

    display: block;

    margin-top: 190px;

    -webkit-transition: all .3s ease;
            transition: all .3s ease;
    letter-spacing: .06em;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__btn--en
    {
        margin-top: 9.89583vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__btn--en
    {
        font-size: 1.0981vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__btn--en
    {
        font-size: 1.36719vw;

        margin-top: 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__btn--en
    {
        font-size: 3.73333vw;

        margin-top: 29.33333vw;
    }
}

.thanksSec__btn--en > span
{
    position: relative;
}

.thanksSec__btn--en > span::before
{
    position: absolute;
    top: 4px;
    left: -20px;

    width: 6.6px;
    height: 13px;

    content: '';

    background-image: url(../images/icon_thanks_arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__btn--en > span::before
    {
        top: .20833vw;
        left: -1.04167vw;

        width: .34375vw;
        height: .67708vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__btn--en > span::before
    {
        top: .29283vw;
        left: -1.46413vw;

        width: .48316vw;
        height: .95168vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__btn--en > span::before
    {
        top: .39062vw;
        left: -1.95312vw;

        width: .64453vw;
        height: 1.26953vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__btn--en > span::before
    {
        top: 1.6vw;
        left: -5.33333vw;

        width: 1.6vw;
        height: 3.2vw;
    }
}

.thanksSec__btn > span
{
    position: relative;
}

.thanksSec__btn > span::before
{
    position: absolute;
    top: 6px;
    left: -20px;

    width: 6.6px;
    height: 13px;

    content: '';

    background-image: url(../images/icon_thanks_arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__btn > span::before
    {
        top: .3125vw;
        left: -1.04167vw;

        width: .34375vw;
        height: .67708vw;
    }
}

@media print, screen and (max-width: 1367px)
{
    .thanksSec__btn > span::before
    {
        top: .43924vw;
        left: -1.46413vw;

        width: .48316vw;
        height: .95168vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__btn > span::before
    {
        top: .58594vw;
        left: -1.95312vw;

        width: .64453vw;
        height: 1.26953vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__btn > span::before
    {
        top: 1.6vw;
        left: -5.33333vw;

        width: 1.6vw;
        height: 3.2vw;
    }
}

.thanksSec__btn:hover
{
    -webkit-transition: all .3s ease;
            transition: all .3s ease;

    color: #006230;
}

.thanksSec__deco
{
    position: relative;
    position: absolute;
}

.thanksSec__deco--left
{
    top: -50px;
    left: 0;

    width: 120px;
    height: 200px;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__deco--left
    {
        top: -2.60417vw;

        width: 6.25vw;
        height: 10.41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__deco--left
    {
        top: -3.90625vw;

        width: 8.78906vw;
        height: 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__deco--left
    {
        top: -14.66667vw;

        width: 13.33333vw;
        height: 26.66667vw;
    }
}

.thanksSec__deco--right
{
    top: 170px;
    right: 0;

    width: 105.63px;
    height: 224px;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__deco--right
    {
        top: 8.85417vw;

        width: 5.50156vw;
        height: 11.66667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__deco--right
    {
        top: 14.64844vw;

        width: 7.8125vw;
        height: 16.60156vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__deco--right
    {
        top: 34.66667vw;

        width: 16vw;
        height: 30.66667vw;
    }
}

.thanksSec__shape
{
    position: absolute;

    display: block;
}

.thanksSec__shape--l1,
.thanksSec__shape--l2,
.thanksSec__shape--l3
{
    -webkit-animation-name: floatDiagonal;
            animation-name: floatDiagonal;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
            animation-direction: alternate;
}

.thanksSec__shape--l1
{
    top: 0;
    right: 0;

    width: 80px;
    height: 73px;

    -webkit-animation-duration: 8s;
            animation-duration: 8s;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__shape--l1
    {
        width: 4.16667vw;
        height: 3.80208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__shape--l1
    {
        width: 5.85938vw;
        height: 5.37109vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__shape--l1
    {
        width: 10.66667vw;
        height: 9.6vw;

        -webkit-animation-duration: 9s;
                animation-duration: 9s;
    }
}

.thanksSec__shape--l2
{
    top: 40px;
    left: 0;

    width: 76px;
    height: 83px;

    -webkit-animation-duration: 7.5s;
            animation-duration: 7.5s;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__shape--l2
    {
        top: 2.08333vw;

        width: 3.95833vw;
        height: 4.32292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__shape--l2
    {
        top: 2.92969vw;

        width: 5.85938vw;
        height: 6.44531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__shape--l2
    {
        top: 5.33333vw;

        width: 10.66667vw;
        height: 11.73333vw;

        -webkit-animation-duration: 9.05s;
                animation-duration: 9.05s;
    }
}

.thanksSec__shape--l3
{
    bottom: 0;
    left: 16px;

    width: 60px;
    height: 71px;

    -webkit-animation-duration: 8s;
            animation-duration: 8s;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__shape--l3
    {
        left: .83333vw;

        width: 3.125vw;
        height: 3.69792vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__shape--l3
    {
        left: .97656vw;

        width: 3.90625vw;
        height: 4.58984vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__shape--l3
    {
        left: 2.13333vw;

        width: 8vw;
        height: 9.6vw;

        -webkit-animation-duration: 9.1s;
                animation-duration: 9.1s;
    }
}

.thanksSec__shape--r1,
.thanksSec__shape--r2,
.thanksSec__shape--r3
{
    -webkit-animation-name: floatUp;
            animation-name: floatUp;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
            animation-direction: alternate;
}

.thanksSec__shape--r1
{
    top: 0;
    right: 16;

    width: 64px;
    height: 76px;

    -webkit-animation-duration: 6.7s;
            animation-duration: 6.7s;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__shape--r1
    {
        right: .83333vw;

        width: 3.85417vw;
        height: 3.95833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__shape--r1
    {
        right: .97656vw;

        width: 6.05469vw;
        height: 6.44531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__shape--r1
    {
        right: 2.66667vw;

        width: 10.66667vw;
        height: 12vw;

        -webkit-animation-duration: 7.5s;
                animation-duration: 7.5s;
    }
}

.thanksSec__shape--r2
{
    top: 103px;
    right: 0;

    width: 48px;
    height: 60px;

    -webkit-animation-duration: 6.2s;
            animation-duration: 6.2s;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__shape--r2
    {
        top: 5.36458vw;

        width: 2.5vw;
        height: 3.125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__shape--r2
    {
        top: 6.83594vw;

        width: 4.49219vw;
        height: 5.66406vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__shape--r2
    {
        top: 10.66667vw;

        width: 8vw;
        height: 9.6vw;

        -webkit-animation-duration: 7.45s;
                animation-duration: 7.45s;
    }
}

.thanksSec__shape--r3
{
    bottom: 0;
    left: 0;

    width: 82px;
    height: 80px;

    -webkit-animation-duration: 6s;
            animation-duration: 6s;
}

@media print, screen and (max-width: 1921px)
{
    .thanksSec__shape--r3
    {
        width: 4.27083vw;
        height: 4.16667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanksSec__shape--r3
    {
        width: 5.85938vw;
        height: 5.66406vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanksSec__shape--r3
    {
        width: 10.66667vw;
        height: 10.66667vw;

        -webkit-animation-duration: 7.4s;
                animation-duration: 7.4s;
    }
}

@keyframes floatDiagonal
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    50%
    {
        -webkit-transform: translate(-10px, 25px);
                transform: translate(-10px, 25px);
        /* 横に15px、上に25px */
    }
    100%
    {
        -webkit-transform: translate(30px, 50px);
                transform: translate(30px, 50px);
    }
}

@keyframes floatUp
{
    0%
    {
        -webkit-transform: translate(0, 0);
                transform: translate(0, 0);
    }
    50%
    {
        -webkit-transform: translate(10px, -25px);
                transform: translate(10px, -25px);
        /* 左に10px、上に25px */
    }
    100%
    {
        -webkit-transform: translate(0, -60px);
                transform: translate(0, -60px);
    }
}
