@charset 'UTF-8';
.f16
{
    font-size: 16px;
}

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

@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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 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: 1025px)
{
    .f36
    {
        font-size: 3.32031vw;
    }
}

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

.f37
{
    font-size: 37px;
}

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

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

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

.f38
{
    font-size: 38px;
}

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

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

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

.f39
{
    font-size: 39px;
}

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

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

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

.f40
{
    font-size: 40px;
}

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

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

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

.f41
{
    font-size: 41px;
}

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

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

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

.f42
{
    font-size: 42px;
}

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

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

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

.f43
{
    font-size: 43px;
}

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

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

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

.f44
{
    font-size: 44px;
}

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

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

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

.f45
{
    font-size: 45px;
}

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

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

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

.f46
{
    font-size: 46px;
}

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

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

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

.f47
{
    font-size: 47px;
}

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

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

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

.f48
{
    font-size: 48px;
}

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

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

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

.f49
{
    font-size: 49px;
}

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

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

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

.f50
{
    font-size: 50px;
}

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

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

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

.f51
{
    font-size: 51px;
}

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

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

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

.f52
{
    font-size: 52px;
}

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

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

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

.f53
{
    font-size: 53px;
}

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

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

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

.f54
{
    font-size: 54px;
}

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

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

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

.f55
{
    font-size: 55px;
}

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

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

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

.f56
{
    font-size: 56px;
}

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

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

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

.f57
{
    font-size: 57px;
}

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

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

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

.f58
{
    font-size: 58px;
}

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

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

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

.f59
{
    font-size: 59px;
}

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

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

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

.f60
{
    font-size: 60px;
}

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

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

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

.f61
{
    font-size: 61px;
}

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

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

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

.f62
{
    font-size: 62px;
}

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

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

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

.f63
{
    font-size: 63px;
}

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

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

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

.f64
{
    font-size: 64px;
}

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

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

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

.f65
{
    font-size: 65px;
}

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

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

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

.f66
{
    font-size: 66px;
}

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

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

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

html,
body
{
    font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
    font-size: 20px;
    line-height: 2.25;

    text-align: center;

    color: #1c1c1c;
}

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;
    }
}

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

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

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

br
{
    font-size: 0;
}

.inview-blur
{
    -webkit-transition: -webkit-transform .5s linear;
            transition: -webkit-transform .5s linear;
            transition:         transform .5s linear;
            transition:         transform .5s linear, -webkit-transform .5s linear;
    -webkit-animation-duration: 1.5s;
            animation-duration: 1.5s;

    opacity: 0;

    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
}

.is-shown.inview-blur
{
    -webkit-transition: .5s;
            transition: .5s;
    -webkit-animation-name: imageBlur;
            animation-name: imageBlur;

    opacity: 1;
}

@-webkit-keyframes imageBlur
{
    from
    {
        opacity: 0;

        -webkit-filter: blur(15px);
                filter: blur(15px);
    }
    to
    {
        opacity: 1;

        -webkit-filter: blur(0px);
                filter: blur(0px);
    }
}

@keyframes imageBlur
{
    from
    {
        opacity: 0;

        -webkit-filter: blur(15px);
                filter: blur(15px);
    }
    to
    {
        opacity: 1;

        -webkit-filter: blur(0px);
                filter: blur(0px);
    }
}

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

.l-sec__inner
{
    width: 83.33333vw;
    max-width: 1600px;
    margin: 0 auto;
}

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

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

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

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

    width: 100%;
    height: 91px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1921px)
{
    .head
    {
        top: 1.71875vw;

        height: 4.73958vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .head
    {
        top: 3.33333vw;

        height: 11.06667vw;
    }
}

.head--fixed
{
    position: fixed;
    z-index: 1000;
    top: -10px;
    right: 0;
    left: 0;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 110px;
    padding: 0 36px 0 53px;

    -webkit-transition: -webkit-transform .45s ease;
            transition: -webkit-transform .45s ease;
            transition:         transform .45s ease;
            transition:         transform .45s ease, -webkit-transform .45s ease;
    -webkit-transform: translateY(-150%);
            transform: translateY(-150%);

    background: -webkit-gradient(linear, left top, left bottom, color-stop(90%, #fff), color-stop(100%, rgba(255, 255, 255, .5)), color-stop(110%, rgba(255, 255, 255, 0)));
    background: linear-gradient(to bottom, #fff 90%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 110%);
    -webkit-box-shadow: 3px 3px 4px rgba(88, 69, 78, .16);
    -webkit-box-shadow: 0 5px 15px -5px rgba(255, 255, 255, .9);
            box-shadow: 3px 3px 4px rgba(88, 69, 78, .16);
            box-shadow: 0 5px 15px -5px rgba(255, 255, 255, .9);
}

@media print, screen and (max-width: 1921px)
{
    .head--fixed
    {
        top: -.52083vw;

        height: 5.72917vw;
        padding: 0 1.875vw 0 2.76042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head--fixed
    {
        top: -.78125vw;

        height: 10.74219vw;
        padding: 0 4.39453vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head--fixed
    {
        top: -1.33333vw;

        height: 14.66667vw;
        padding: 0 6.66667vw 0 2.66667vw;
    }
}

.head--fixed .head__inner
{
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    height: 78px;
    padding: 0;
    padding-top: 12px;
}

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

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

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

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

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

.head__inner
{
    position: relative;
    z-index: 10;

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

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 91px;
    margin: 0 auto;
    padding: 0 39.5px 0 40px;

    -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
    {
        height: 4.73958vw;
        padding: 0 2.05729vw 0 2.08333vw;
    }
}

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

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

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

.head__logoLink
{
    display: block;

    width: 122px;
}

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

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

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

.head__logo
{
    width: 100%;

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

.head__logo:hover
{
    opacity: .6;
}

.head__logo > img
{
    display: block;

    width: 100%;
}

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

    gap: 70px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media print, screen and (max-width: 1921px)
{
    .head__rightBox
    {
        gap: 3.64583vw;
    }
}

@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-right: 3.14788vw;
}

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

.head__link
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;

    display: block;

    color: #1c1c1c;
}

.head__link--active
{
    font-weight: bold;

    border-bottom: 2px solid black;
}

.head__link:hover
{
    opacity: .7;
}

.head__btn
{
    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 252px;
    padding: 11px 0;

    border: 3px solid #113447;
    border-radius: 100vw;
    background-color: #113447;
}

@media print, screen and (max-width: 1921px)
{
    .head__btn
    {
        width: 13.125vw;
        padding: .57292vw 0;

        border: .15625vw solid #113447;
    }
}

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

@media (any-hover: hover)
{
    .head__btn:hover
    {
        -webkit-transition: all .3s;
                transition: all .3s;

        color: #1c1c1c;
        background-color: #fff;
    }
    .head__btn:hover .head__btnTxt
    {
        color: #1c1c1c;
    }
    .head__btn:hover .head__btnTxt::before
    {
        background-image: url(../images/ico_head_mail_hover.svg);
    }
}

.head__btnTxt
{
    font-family: 'Shippori Mincho', serif;
    line-height: 1;

    position: relative;

    margin-left: 38px;
    padding-left: 35px;

    text-align: left;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .head__btnTxt
    {
        margin-left: 1.97917vw;
        padding-left: 1.82292vw;
    }
}

.head__btnTxt::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 22px;
    height: 17px;
    margin: auto 0;

    content: '';

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

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

.head__spNavBox
{
    display: none;

    padding-top: 5px;
}

@media print, screen and (max-width: 1025px)
{
    .head__spNavBox
    {
        display: block;

        padding-top: .48828vw;

        cursor: pointer;
    }
}

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

.head__spNav
{
    display: none;
}

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

        display: block;

        width: 4.88281vw;
        height: 3.02734vw;
        margin: 0 auto;

        cursor: pointer;
    }
}

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

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

    display: block;

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

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

    border-top: 1px solid #113447;
}

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

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

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

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

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

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

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

.head__spNav--open > span
{
    border-top: 1px solid #113447;
}

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

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

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

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

.head__spNav--open > span:nth-of-type(2)
{
    display: none;
}

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

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

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

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

.head__Menu
{
    font-family: 'EB Garamond', serif;
    font-weight: 500;
    line-height: 1;

    padding-top: 10px;

    letter-spacing: .08em;

    color: #113447;
}

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

        padding-top: .97656vw;
    }
}

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

        padding-top: 1.33333vw;
    }
}

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

    overflow: scroll;

    width: 100%;
    height: 100vh;

    -webkit-transition: opacity .45s ease-out, -webkit-transform .45s cubic-bezier(.25, 1, .5, 1);
            transition: opacity .45s ease-out, -webkit-transform .45s cubic-bezier(.25, 1, .5, 1);
            transition: transform .45s cubic-bezier(.25, 1, .5, 1), opacity .45s ease-out;
            transition: transform .45s cubic-bezier(.25, 1, .5, 1), opacity .45s ease-out, -webkit-transform .45s cubic-bezier(.25, 1, .5, 1);
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);

    opacity: 0;

    -webkit-overflow-scrolling: touch;
}

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

    opacity: 1;
}

.head__spMenu--open .head__menuContent
{
    -webkit-animation-name: gnaviAnime;
            animation-name: gnaviAnime;
    -webkit-animation-duration: 1s;
            animation-duration: 1s;
    -webkit-animation-delay: .2s;
            animation-delay: .2s;

    opacity: 0;
    /*0.2 秒遅らせて出現*/

    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
}

@-webkit-keyframes gnaviAnime
{
    0%
    {
        opacity: 0;
    }
    100%
    {
        opacity: 1;
    }
}

@keyframes gnaviAnime
{
    0%
    {
        opacity: 0;
    }
    100%
    {
        opacity: 1;
    }
}

.head__spMenuContent
{
    background: rgba(255, 255, 255, .97);
}

@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 0 13.08594vw;

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

@media print, screen and (max-width: 430px)
{
    .head__spMenuContent
    {
        padding: 26.66667vw 0 17.86667vw;

        gap: 13.33333vw;
    }
}

.head__spMenuItem
{
    line-height: 1;

    list-style-type: none;
}

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

.head__spMenuLink
{
    font-family: 'Shippori Mincho', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', '游明朝', YuMincho, serif;
    font-weight: 600;

    display: block;

    color: #1c1c1c;
}

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

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

.head__circleBg
{
    position: fixed;
    z-index: 3;
    top: -50px;
    right: -50px;

    width: 100px;
    height: 100px;

    -webkit-transition: all .6s;
            transition: all .6s;
    /*0.6秒かけてアニメーション*/
}

@media print, screen and (max-width: 1921px)
{
    .head__circleBg
    {
        top: -2.60417vw;
        right: -2.60417vw;

        width: 5.20833vw;
        height: 5.20833vw;
    }
}

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

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

.head__circleBg--open
{
    -webkit-transform: scale(50);
            transform: scale(50);
}

.head__spBtn
{
    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 252px;
    padding: 11px 0;

    border: 3px solid #113447;
    border-radius: 100vw;
    background-color: #113447;
}

@media print, screen and (max-width: 1921px)
{
    .head__spBtn
    {
        width: 13.125vw;
        padding: .57292vw 0;

        border: .15625vw solid #113447;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__spBtn
    {
        width: 24.60938vw;
        padding: 1.07422vw 0;

        border: .29297vw solid #113447;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spBtn
    {
        width: 46.93333vw;
        padding: 2.26667vw 0;

        border: .4vw solid #113447;
    }
}

.head__spBtnTxt
{
    font-family: 'Shippori Mincho', serif;
    line-height: 1;

    position: relative;

    margin-left: 38px;
    padding-left: 35px;

    text-align: left;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .head__spBtnTxt
    {
        margin-left: 1.97917vw;
        padding-left: 1.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__spBtnTxt
    {
        margin-left: 3.71094vw;
        padding-left: 3.41797vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spBtnTxt
    {
        margin-left: 6.4vw;
        padding-left: 6vw;
    }
}

.head__spBtnTxt::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 22px;
    height: 17px;
    margin: auto 0;

    content: '';

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

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

@media print, screen and (max-width: 1025px)
{
    .head__spBtnTxt::before
    {
        width: 2.14844vw;
        height: 1.66016vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__spBtnTxt::before
    {
        width: 4.26667vw;
        height: 3.6vw;
    }
}

.head--fixed.is-visible
{
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
}

@media print, screen and (max-width: 1921px)
{
    .head--fixed.is-visible
    {
        -webkit-transform: translateY(.52083vw);
                transform: translateY(.52083vw);
    }
}

/* ============== .foot ============== */
.foot
{
    width: 100%;
    padding: 77px 0 20.5px;

    background-color: #f8f8f8;
}

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

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

.foot__inner
{
    width: 1300px;
    margin: 0 auto;
}

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

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

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

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

    width: 100%;
    padding-bottom: 60px;

    text-align: right;

    border-bottom: 1px solid #1c1c1c;

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

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

@media print, screen and (max-width: 1025px)
{
    .foot__topBlock
    {
        padding-bottom: 5.125vw;
    }
}

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

        padding-bottom: 10.66667vw;

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

.foot__topLeft
{
    width: 122px;
}

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

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

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

.foot__logo
{
    width: 100%;
}

.foot__logo > picture
{
    display: block;

    width: 100%;
}

.foot__logo > picture > img
{
    display: block;

    width: 100%;
}

@media (any-hover: hover)
{
    .foot__logo:hover
    {
        -webkit-transition: .3s;
                transition: .3s;

        opacity: .8;
    }
}

.foot__topRight
{
    width: 857px;
}

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

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

@media print, screen and (max-width: 430px)
{
    .foot__topRight
    {
        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;
        gap: 10.66667vw;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.foot__nav
{
    width: 100%;
    margin-bottom: 49px;
}

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

@media print, screen and (max-width: 430px)
{
    .foot__nav
    {
        margin-top: 8vw;
        margin-bottom: 0;
    }
}

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

    width: 100%;

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

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

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

.foot__navItem
{
    line-height: 1;

    display: inline-block;
}

.foot__navLink
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1;

    letter-spacing: 0;

    color: #1c1c1c;
}

.foot__navLink > span
{
    position: relative;
}

.foot__navLink > span:before
{
    position: absolute;
    bottom: -3px;
    left: 0;

    width: 100%;
    height: 1px;

    content: '';
    -webkit-transition: -webkit-transform .3s;
            transition: -webkit-transform .3s;
            transition:         transform .3s;
            transition:         transform .3s, -webkit-transform .3s;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;

    background-color: #1c1c1c;
}

@media print, screen and (max-width: 1921px)
{
    .foot__navLink > span:before
    {
        bottom: -.15625vw;
    }
}

@media (any-hover: hover)
{
    .foot__navLink:hover > span:before
    {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
    }
}

.foot__btn
{
    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 252px;
    padding: 11px 0;

    border: 3px solid #113447;
    border-radius: 100vw;
    background-color: #113447;
}

@media print, screen and (max-width: 1921px)
{
    .foot__btn
    {
        width: 13.125vw;
        padding: .57292vw 0;

        border: .15625vw solid #113447;
    }
}

@media print, screen and (max-width: 1025px)
{
    .foot__btn
    {
        width: 24.60938vw;
        padding: 1.07422vw 0;

        border: .29297vw solid #113447;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__btn
    {
        width: 49.6vw;
        margin: 0 auto;
        padding: 2.26667vw 0;

        border: .4vw solid #113447;
    }
}

@media (any-hover: hover)
{
    .foot__btn:hover
    {
        -webkit-transition: all .3s;
                transition: all .3s;

        color: #1c1c1c;
        background-color: #fff;
    }
    .foot__btn:hover .foot__btnTxt
    {
        color: #1c1c1c;
    }
    .foot__btn:hover .foot__btnTxt::before
    {
        background-image: url(../images/ico_head_mail_hover.svg);
    }
}

.foot__btnTxt
{
    font-family: 'Shippori Mincho', serif;
    line-height: 1;

    position: relative;

    margin-left: 38px;
    padding-left: 35px;

    text-align: left;

    color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .foot__btnTxt
    {
        margin-left: 1.97917vw;
        padding-left: 1.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .foot__btnTxt
    {
        margin-left: 3.71094vw;
        padding-left: 3.41797vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__btnTxt
    {
        margin-left: 6.4vw;
        padding-left: 7.33333vw;
    }
}

.foot__btnTxt::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 22px;
    height: 17px;
    margin: auto 0;

    content: '';

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

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

@media print, screen and (max-width: 1025px)
{
    .foot__btnTxt::before
    {
        width: 2.14844vw;
        height: 1.66016vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__btnTxt::before
    {
        width: 4.26667vw;
        height: 3.6vw;
    }
}

.foot__btmBlock
{
    padding-top: 55px;
}

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

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

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

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

    width: 1020.5px;
    margin: 0 auto;
    margin-bottom: 80px;

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

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

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

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

        width: 100%;
        margin-bottom: 13.33333vw;

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

.foot__btmItem
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

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

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

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

        gap: 9.33333vw;
    }
}

.foot__btmItem:first-child
{
    width: 502px;
}

@media print, screen and (max-width: 1921px)
{
    .foot__btmItem:first-child
    {
        width: 26.14583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .foot__btmItem:first-child
    {
        width: 44.14062vw;
    }
}

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

.foot__btmItem:last-child
{
    width: 386px;
}

@media print, screen and (max-width: 1921px)
{
    .foot__btmItem:last-child
    {
        width: 20.10417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .foot__btmItem:last-child
    {
        width: 38.08594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__btmItem:last-child
    {
        width: 100%;
        margin-bottom: 0;
    }
}

.foot__txt
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1;

    text-align: left;

    color: #1c1c1c;
}

@media print, screen and (max-width: 430px)
{
    .foot__txt
    {
        line-height: 1.833;

        text-align: center;
    }
}

.foot__copy
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1;

    letter-spacing: 0;

    color: #1c1c1c;
}

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

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

    overflow: hidden;

    width: 100%;
    height: 1165px;
}

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

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

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

.fv__catchWrp
{
    font-family: 'Shippori Mincho', serif;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 1920px;
    margin: 0 auto;
    padding: 343px 0 0 0;

    color: #113447;
}

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

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

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

.fv__catchCont
{
    font-weight: 500;

    position: relative;

    text-align: left;
}

.fv__catchCont::before
{
    position: absolute;
    bottom: -70px;
    left: 61px;

    width: 583px;
    height: 48px;

    content: '';

    background-image: url(../images/img_fv_line.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1921px)
{
    .fv__catchCont::before
    {
        bottom: -3.64583vw;
        left: 3.17708vw;

        width: 30.36458vw;
        height: 2.5vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__catchCont::before
    {
        bottom: -9.06667vw;
        left: 4.4vw;

        width: 77.2vw;
        height: 8vw;
    }
}

.fv__catchTop
{
    line-height: 1;

    margin: 0 0 50px 0;
    padding: 0;
}

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

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

        margin: 0 0 5.33333vw 0;
    }
}

.fv__catchCenter
{
    line-height: 1;

    margin: 0 0 50px 61px;
    padding: 0;
}

@media print, screen and (max-width: 1921px)
{
    .fv__catchCenter
    {
        margin: 0 0 2.60417vw 3.17708vw;
    }
}

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

        margin: 0 0 5.33333vw 4vw;
    }
}

.fv__catchUnder
{
    line-height: 1;

    margin: 0;
    margin-left: 61px;
    padding: 0;
}

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

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

        margin-left: 4vw;
    }
}

.fv__catchBlue
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 578px;
    margin: 151px 0 0 43px;
    padding: 8px 50px;

    color: #fff;
    background: -webkit-gradient(linear, left top, right top, from(#69b5ed), to(#2a84ea));
    background: linear-gradient(to right, #69b5ed, #2a84ea);
}

@media print, screen and (max-width: 1921px)
{
    .fv__catchBlue
    {
        width: 30.10417vw;
        margin: 7.86458vw 0 0 2.23958vw;
        padding: .41667vw 2.60417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .fv__catchBlue
    {
        width: 56.64062vw;
        margin: 11.71875vw 0 0 2.92969vw;
        padding: .78125vw 4.88281vw;
    }
}

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

        width: 77.06667vw;
        margin: 15.2vw 0 0 2.66667vw;
        padding: 1.06667vw 6.66667vw;
    }
}

.fv__photoWrp
{
    position: relative;
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    overflow: hidden;

    width: 100%;
}

.fv__photo
{
    width: 100%;
}

.fv__photo > picture
{
    display: block;

    width: 100%;
}

@media print, screen and (max-width: 1025px)
{
    .fv__photo > picture
    {
        width: 120%;
    }
}

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

.fv__photo > picture > img
{
    display: block;

    width: 100%;
}

.fv__mask
{
    position: absolute;
    z-index: 1;

    overflow: hidden;

    width: 100%;
    height: 100%;

    inset: 0;
}

.fv__svg
{
    position: absolute;

    width: 100vw;
    height: 100%;

    pointer-events: none;

    inset: 0;
}

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

    padding: 283px 0 200px 0;

    background-color: #f1fbfe;
    /* スクロールバー全体 */
    /* スクロールバーのトラック（背景） */
    /* スクロールバーのつまみ（ハンドル） */
}

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

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

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

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

    width: 100%;
    height: 83px;

    content: '';

    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to bottom, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

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

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

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

.entrySec__inner
{
    width: 1300px;
    margin: 0 auto;
}

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

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

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

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

    width: 505px;
    margin: 80px auto 0 auto;

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

@media print, screen and (max-width: 1921px)
{
    .entrySec__stepBox
    {
        width: 26.30208vw;
        margin: 4.16667vw auto 0 auto;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__stepBox
    {
        width: 49.31641vw;
        margin: 7.8125vw auto 0 auto;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__stepBox
    {
        width: 91.73333vw;
        margin: 13.33333vw auto 0 auto;
    }
}

.entrySec__step
{
    position: relative;

    width: 115px;

    list-style-type: none;

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

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

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

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

.entrySec__step > span
{
    font-family: 'Shippori Mincho', serif;
    font-size: 20px;
    font-weight: 700;

    letter-spacing: .1em;

    color: #9ac6e6;
}

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

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

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

.entrySec__step--active > span
{
    color: #2a84ea;
}

.entrySec__step--active .contactSec__num
{
    color: #9ac6e6;
}

.entrySec__step:before
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 115px;
    height: 115px;

    content: '';
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);

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

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

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

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

.entrySec__step::after
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 100px;

    width: 85px;
    height: 2px;
    margin: auto 0;

    content: '';

    background: -webkit-gradient(linear, left top, right top, from(#69b5ed), to(#fff));
    background: linear-gradient(to right, #69b5ed, #fff);
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__step::after
    {
        left: 6.25vw;

        width: 4.42708vw;
        height: .10417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__step::after
    {
        left: 11.71875vw;

        width: 8.30078vw;
        height: .19531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__step::after
    {
        left: 22.66667vw;

        width: 11.33333vw;
        height: .26667vw;
    }
}

.entrySec__step:last-child::after
{
    display: none;
}

.entrySec__num
{
    font-family: 'Inter', sans-serif;
    font-weight: 600;

    color: #ccc;
}

.entrySec__mainForm
{
    margin: 80px auto 0 auto;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__mainForm
    {
        margin: 4.16667vw auto 0 auto;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__mainForm
    {
        margin: 7.8125vw auto 0 auto;
    }
}

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

.entrySec__main
{
    width: 100%;
}

.entrySec__row
{
    display: block;

    padding-bottom: 30px;
}

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

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

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

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

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

.entrySec__th
{
    font-weight: 500;

    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 410px;
    padding-right: 30px;

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

@media print, screen and (max-width: 1921px)
{
    .entrySec__th
    {
        width: 21.35417vw;
        padding-right: 1.5625vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .entrySec__th
    {
        display: block;

        width: 100%;
        padding-right: 0;
    }
}

.entrySec__th > span
{
    position: relative;
}

.entrySec__th--last
{
    padding-top: 12px;

    vertical-align: top;
}

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

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

@media print, screen and (max-width: 430px)
{
    .entrySec__th--last
    {
        padding-top: 0;
    }
}

.entrySec__th--required::before
{
    font-size: 16px;
    font-weight: 700;

    position: absolute;
    z-index: 1;
    top: 16px;
    right: 18px;
    bottom: 0;

    width: 59px;
    margin: auto 0;

    content: '必須';
    letter-spacing: .1em;

    color: #fff;
}

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

        top: .83333vw;
        right: .9375vw;

        width: 3.07292vw;
    }
}

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

        top: 1.85547vw;
        right: 1.46484vw;

        width: 5.76172vw;
    }
}

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

        top: .93333vw;
        right: 2vw;

        width: 7.86667vw;
    }
}

.entrySec__th--required::after
{
    position: absolute;
    top: 23px;
    right: 30px;
    bottom: 0;

    width: 59px;
    height: 20px;

    content: '';

    border-radius: 5px;
    background-color: #69b5ed;

    -webkit-filter: blur(3px);
            filter: blur(3px);
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__th--required::after
    {
        top: 1.19792vw;
        right: 1.5625vw;

        width: 3.07292vw;
        height: 1.04167vw;

        border-radius: .26042vw;

        -webkit-filter: blur(.15625vw);
                filter: blur(.15625vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__th--required::after
    {
        top: 2.24609vw;
        right: 2.92969vw;

        width: 5.76172vw;
        height: 1.95312vw;

        border-radius: .48828vw;

        -webkit-filter: blur(.29297vw);
                filter: blur(.29297vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__th--required::after
    {
        top: 2.53333vw;
        right: 0;

        width: 13.33333vw;
        height: 4vw;

        border-radius: .66667vw;

        -webkit-filter: blur(.4vw);
                filter: blur(.4vw);
    }
}

.entrySec__td
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 890px;

    text-align: left;

    border-radius: 7px;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__td
    {
        width: 46.35417vw;

        border-radius: .36458vw;
    }
}

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

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__td
    {
        display: block;

        width: 100%;

        border-radius: .93333vw;
    }
}

.entrySec__td--post
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    background-color: transparent;

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

.entrySec__td--post > span
{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    line-height: 1;
}

.entrySec__zip
{
    font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 110px;
    padding: 17px 31px;

    letter-spacing: .1em;

    border: none;
    background-color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__zip
    {
        width: 5.72917vw;
        padding: .88542vw 1.61458vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .entrySec__zip
    {
        width: 18.66667vw;
        padding: 2.26667vw 4.13333vw;
    }
}

.entrySec__zip--left
{
    margin: 0 19px 0 17px;

    border-radius: 7px;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__zip--left
    {
        margin: 0 .98958vw 0 .88542vw;

        border-radius: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__zip--left
    {
        margin: 0 1.85547vw 0 1.66016vw;

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__zip--left
    {
        margin: 0 2.53333vw 0 2.26667vw;

        border-radius: .93333vw;
    }
}

.entrySec__zip--left::-webkit-input-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--left::-moz-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--left::-ms-input-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--left::placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--right
{
    width: 123px;
    margin-left: 19px;

    border-radius: 7px;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__zip--right
    {
        width: 6.40625vw;
        margin-left: .98958vw;

        border-radius: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__zip--right
    {
        width: 11.03516vw;
        margin-left: 1.85547vw;

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__zip--right
    {
        width: 21.33333vw;
        margin-left: 2.53333vw;

        border-radius: .93333vw;
    }
}

.entrySec__zip--right::-webkit-input-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--right::-moz-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--right::-ms-input-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__zip--right::placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__address
{
    font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    margin-top: 20px;
    padding: 23px 30px 22px 30px;

    border: none;
    border-radius: 7px;
    background-color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__address
    {
        margin-top: 1.04167vw;
        padding: 1.19792vw 1.5625vw 1.14583vw 1.5625vw;

        border-radius: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__address
    {
        margin-top: 1.95312vw;
        padding: 2.24609vw 2.92969vw 2.14844vw 2.92969vw;

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__address
    {
        margin-top: 2.66667vw;
        padding: 3.06667vw 4vw 2.93333vw 4vw;

        border-radius: .93333vw;
    }
}

.entrySec__address::-webkit-input-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__address::-moz-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__address::-ms-input-placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__address::placeholder
{
    letter-spacing: .1em;

    color: #a09f9f;
}

.entrySec__entry
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    text-align: left;

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

.entrySec .wpcf7-list-item
{
    margin-bottom: 30px;
    margin-left: 0;
}

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

@media print, screen and (max-width: 1025px)
{
    .entrySec .wpcf7-list-item
    {
        margin-bottom: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec .wpcf7-list-item
    {
        margin-bottom: 1.82292vw;
    }
}

.entrySec .wpcf7-list-item:last-child
{
    margin-bottom: 0;
}

.entrySec .wpcf7-list-item > label
{
    cursor: pointer;
}

.entrySec .wpcf7-list-item > label > input
{
    position: relative;

    width: 25px;
    height: 25px;
    margin-right: 10px;
    margin-bottom: 5px;

    border-radius: 50%;
    background-color: #f3f3f3;

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

@media print, screen and (max-width: 1921px)
{
    .entrySec .wpcf7-list-item > label > input
    {
        width: 1.30208vw;
        height: 1.30208vw;
        margin-right: .52083vw;
        margin-bottom: .26042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec .wpcf7-list-item > label > input
    {
        width: 2.14844vw;
        height: 2.14844vw;
        margin-right: .78125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec .wpcf7-list-item > label > input
    {
        width: 4.94792vw;
        height: 4.94792vw;
        margin-right: 1.30208vw;
    }
}

.entrySec .wpcf7-list-item > label > input:checked::before
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 15px;
    height: 15px;

    content: '';
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);

    border-radius: 50%;
    background: #2f2622;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec .wpcf7-list-item > label > input:checked::before
    {
        width: .78125vw;
        height: .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec .wpcf7-list-item > label > input:checked::before
    {
        width: 1.36719vw;
        height: 1.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec .wpcf7-list-item > label > input:checked::before
    {
        width: 3.38542vw;
        height: 3.38542vw;
    }
}

.entrySec__txt
{
    font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding: 18px 30px 22px 30px;

    border: none;
    border-radius: 7px;
    background-color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__txt
    {
        width: 100%;
        padding: .9375vw 1.5625vw 1.14583vw 1.5625vw;

        border-radius: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__txt
    {
        width: 100%;
        padding: 1.75781vw 2.92969vw 2.14844vw 2.92969vw;

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__txt
    {
        width: 100%;
        padding: 2.4vw 4vw 2.93333vw 4vw;

        border-radius: .93333vw;
    }
}

.entrySec__txt::-webkit-input-placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__txt::-moz-placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__txt::-ms-input-placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__txt::placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__textArea
{
    font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif;
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 250px;
    padding: 18px 30px 22px 30px;

    resize: none;

    border: none;
    border-radius: 7px;
    background-color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__textArea
    {
        height: 13.02083vw;
        padding: .9375vw 1.5625vw 1.14583vw 1.5625vw;

        border-radius: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__textArea
    {
        height: 24.41406vw;
        padding: 1.75781vw 2.92969vw 2.14844vw 2.92969vw;

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__textArea
    {
        height: 53.33333vw;
        padding: 2.4vw 4vw 2.93333vw 4vw;

        border-radius: .93333vw;
    }
}

.entrySec__textArea::-webkit-input-placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__textArea::-moz-placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__textArea::-ms-input-placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__textArea::placeholder
{
    letter-spacing: .1em;

    color: #b2b0b0;
}

.entrySec__privacyBox
{
    overflow: hidden;
    overflow-y: scroll;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 840px;
    height: 234px;
    margin-right: 50px;
    margin-left: auto;
    padding: 20px 30px;

    border-radius: 7px;
    background-color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__privacyBox
    {
        width: 43.75vw;
        height: 12.1875vw;
        margin-right: 2.60417vw;
        padding: 1.04167vw 1.5625vw;

        border-radius: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__privacyBox
    {
        width: 83.00781vw;
        height: 22.85156vw;
        margin-right: 4.88281vw;
        padding: 1.95312vw 2.92969vw;

        border-radius: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__privacyBox
    {
        width: 100%;
        height: 46.66667vw;
        margin: 0 auto;
        padding: 2.66667vw 4vw;

        border-radius: .93333vw;
    }
}

.entrySec .contactSec__privacyBox::-webkit-scrollbar
{
    width: 9px;
    /* 横幅 */
}

@media print, screen and (max-width: 1921px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar
    {
        width: .46875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar
    {
        width: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar
    {
        width: 1.2vw;
    }
}

.entrySec .contactSec__privacyBox::-webkit-scrollbar-track
{
    margin-top: 8px;
    margin-bottom: 8px;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar-track
    {
        margin-top: .41667vw;
        margin-bottom: .41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar-track
    {
        margin-top: .78125vw;
        margin-bottom: .78125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar-track
    {
        margin-top: 1.06667vw;
        margin-bottom: 1.06667vw;
    }
}

.entrySec .contactSec__privacyBox::-webkit-scrollbar-thumb
{
    /* ハンドル色 */
    top: 0;
    right: 0;

    border-right: 4px solid transparent;
    border-radius: 9px;
    border-radius: 9px;
    background: #e2e2e2;
    background-clip: padding-box;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar-thumb
    {
        border-right: .20833vw solid transparent;
        border-radius: .46875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar-thumb
    {
        border-right: .39062vw solid transparent;
        border-radius: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec .contactSec__privacyBox::-webkit-scrollbar-thumb
    {
        border-right: .53333vw solid transparent;
        border-radius: 1.2vw;
    }
}

.entrySec__privacyTxt
{
    font-weight: 500;
    line-height: 1.667;

    width: 780px;

    text-align: left;
}

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

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

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

.entrySec__privacyTxt:nth-child(2)
{
    font-weight: 700;

    margin: 25px 0;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__privacyTxt:nth-child(2)
    {
        margin: 1.30208vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__privacyTxt:nth-child(2)
    {
        margin: 3.33333vw 0;
    }
}

.entrySec__privacyTxt > span
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 41px;
}

.entrySec__agreeBox
{
    width: 840px;
    margin: 30px 50px 0 auto;
    margin-left: auto;

    cursor: pointer;
    text-align: left;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__agreeBox
    {
        width: 43.75vw;
        margin: 1.5625vw 2.60417vw 0 auto;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__agreeBox
    {
        width: 82.03125vw;
        margin: 2.92969vw 4.88281vw 0 auto;

        text-align: center;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__agreeBox
    {
        width: 100%;
        margin: 4vw auto 0 auto;
    }
}

.entrySec__agreeBox .wpcf7-list-item-label
{
    font-weight: 500;

    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 36px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__agreeBox .wpcf7-list-item-label
    {
        padding-left: 1.875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__agreeBox .wpcf7-list-item-label
    {
        padding-left: 3.51562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__agreeBox .wpcf7-list-item-label
    {
        padding-left: 6.66667vw;
    }
}

.entrySec__agreeBox .wpcf7-list-item-label::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 24px;
    height: 24px;
    margin: auto 0;

    content: '';

    border-radius: 3px;
    background-color: #fff;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__agreeBox .wpcf7-list-item-label::before
    {
        width: 1.25vw;
        height: 1.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__agreeBox .wpcf7-list-item-label::before
    {
        width: 2.34375vw;
        height: 2.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__agreeBox .wpcf7-list-item-label::before
    {
        width: 5.06667vw;
        height: 5.06667vw;
    }
}

.entrySec__agreeBox .wpcf7-list-item-label::after
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 3px;

    display: none;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 100%;
    margin: auto auto;

    content: '';

    background-color: #69b5ed;

    -webkit-filter: blur(3px);
            filter: blur(3px);
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__agreeBox .wpcf7-list-item-label::after
    {
        left: .15625vw;

        width: .78125vw;
        height: .52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__agreeBox .wpcf7-list-item-label::after
    {
        left: .29297vw;

        width: 1.46484vw;
        height: .97656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__agreeBox .wpcf7-list-item-label::after
    {
        left: .66667vw;

        width: 3.33333vw;
        height: 2.4vw;
    }
}

.entrySec__agreeCheck
{
    display: none;
}

.entrySec__agreeCheck:checked + .wpcf7-list-item-label ::after
{
    display: block;
}

.entrySec__agreeCheck:checked + .wpcf7-list-item-label::before
{
    background-color: #69b5ed;
}

.entrySec__btn
{
    margin-top: 50px;
}

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

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

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

        text-align: center;
    }
}

.entrySec__btnTxt
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 300px;
    padding: 12px 110px;

    cursor: pointer;
    -webkit-transition: all .3s;
            transition: all .3s;

    color: #fff;
    border: 3px solid #113447;
    border-radius: 60px;
    background-color: #113447;

    -webkit-appearance: none;
    /* Safariデフォルト外観を消す */
       -moz-appearance: none;
            appearance: none;
}

@media print, screen and (max-width: 1921px)
{
    .entrySec__btnTxt
    {
        width: 15.625vw;
        padding: .625vw 5.72917vw;

        border: .15625vw solid #113447;
        border-radius: 3.125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .entrySec__btnTxt
    {
        width: 29.29688vw;
        padding: 1.17188vw 10.74219vw;

        border: none;
        border-radius: 5.85938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .entrySec__btnTxt
    {
        width: 80%;
        max-width: 300px;
        padding: 1.6vw 0;

        border-radius: 8vw;
    }
}

@media (any-hover: hover)
{
    .entrySec__btnTxt:hover
    {
        -webkit-transition: all .3s;
                transition: all .3s;

        color: #1c1c1c;
        background-color: #fff;
    }
}

/* ============== .messageSec ============== */
.messageSec
{
    position: relative;
    z-index: 0;

    width: 100%;
    padding: 122px 0 142px;

    background-image: url(../images/img_message_bg.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

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

@media print, screen and (max-width: 430px)
{
    .messageSec
    {
        background-image: url(../images/img_message_bg_sp.webp);
    }
}

.messageSec:before
{
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(255, 255, 255, .03);

    backdrop-filter: blur(7px);
}

@media print, screen and (max-width: 1921px)
{
    .messageSec:before
    {
        backdrop-filter: blur(3.5px);
    }
}

.messageSec:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(118, 99, 72, .5);

    mix-blend-mode: hard-light;
}

.messageSec__txtBox
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

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

@media print, screen and (max-width: 1921px)
{
    .messageSec__txtBox
    {
        gap: 1.92708vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .messageSec__txtBox
    {
        gap: 2.26667vw;
    }
}

.messageSec__txt
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 500;
    line-height: 1;

    letter-spacing: .05em;

    color: #596064;
}

@media print, screen and (max-width: 1025px)
{
    .messageSec__txt
    {
        letter-spacing: 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .messageSec__txt
    {
        line-height: 1.875;

        letter-spacing: .05em;
    }
}

.messageSec__txt > span
{
    position: relative;
    z-index: 0;

    padding: 5px 15px;
}

@media print, screen and (max-width: 1921px)
{
    .messageSec__txt > span
    {
        padding: .26042vw .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .messageSec__txt > span
    {
        display: inline-block;
    }
}

@media print, screen and (max-width: 430px)
{
    .messageSec__txt > span
    {
        padding: 0 3vw;
    }
}

.messageSec__txt > span:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    border-radius: 5px;
    background-color: rgba(255, 255, 255, .8);

    -webkit-filter: blur(3px);
            filter: blur(3px);
}

@media print, screen and (max-width: 1921px)
{
    .messageSec__txt > span:before
    {
        border-radius: .26042vw;

        -webkit-filter: blur(.15625vw);
                filter: blur(.15625vw);
    }
}

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

    width: 100%;
}

.feesSec__brushWrp
{
    position: absolute;
    bottom: 81px;
    left: 0;

    overflow: hidden;

    width: 901px;

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

    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
}

@media print, screen and (max-width: 1921px)
{
    .feesSec__brushWrp
    {
        bottom: 4.21875vw;

        width: 46.92708vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .feesSec__brushWrp
    {
        bottom: 6.66667vw;

        width: 81.46667vw;
    }
}

.feesSec__brushWrp > picture
{
    display: block;

    width: 100%;
}

.feesSec__brushWrp > picture > img
{
    display: block;

    width: 100%;
}

.feesSec__brushWrp.is-shown
{
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
}

/* ============== .c-ttl ============== */
.c-ttl__en
{
    font-family: 'EB Garamond', serif;
    font-weight: 500;
    line-height: 1;

    position: relative;

    margin-bottom: 24px;
    padding-left: 24px;

    text-align: left;

    color: #113447;
}

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

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

        margin-bottom: 4.66667vw;
        padding-left: 4.4vw;
    }
}

.c-ttl__en:before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 17px;
    height: 17px;
    margin: auto 0;

    content: '';

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

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

@media print, screen and (max-width: 430px)
{
    .c-ttl__en:before
    {
        width: 2.26667vw;
        height: 2.26667vw;
    }
}

.c-ttl__en--contact
{
    text-align: center;
}

.c-ttl__en--contact:before
{
    left: 600px;
}

@media print, screen and (max-width: 1921px)
{
    .c-ttl__en--contact:before
    {
        left: 31.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-ttl__en--contact:before
    {
        left: 36.13281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__en--contact:before
    {
        left: 34.66667vw;
    }
}

.c-ttl__jp
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1;

    text-align: left;

    color: #113447;
}

@media print, screen and (max-width: 1025px)
{
    .c-ttl__jp
    {
        line-height: 1.75;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__jp
    {
        font-size: 6.93333vw;
        line-height: 1.75;
    }
}

.c-ttl__jp--contact
{
    text-align: center;
}

.c-ttl--vertical
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 31px;
}

@media print, screen and (max-width: 1921px)
{
    .c-ttl--vertical
    {
        gap: 1.61458vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl--vertical
    {
        gap: 3.33333vw;
    }
}

.c-ttl--vertical .c-ttl__en
{
    margin-bottom: 0;
    padding-left: 0;

    letter-spacing: .06em;
        -ms-writing-mode: tb-rl;

    -webkit-writing-mode: vertical-rl;
            writing-mode: vertical-rl;
}

.c-ttl--vertical .c-ttl__en:before
{
    top: -22px;
    right: 0;
    left: 0;

    margin: 0 auto;
}

@media print, screen and (max-width: 1921px)
{
    .c-ttl--vertical .c-ttl__en:before
    {
        top: -1.14583vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-ttl--vertical .c-ttl__en:before
    {
        top: -4.26667vw;
    }
}

.c-ttl--vertical .c-ttl__jp
{
    letter-spacing: .45em;
        -ms-writing-mode: tb-rl;

    -webkit-writing-mode: vertical-rl;
            writing-mode: vertical-rl;
}

@media print, screen and (max-width: 430px)
{
    .c-ttl--vertical .c-ttl__jp
    {
        letter-spacing: .3em;
    }
}

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

    width: 100%;
    padding: 283.5px 0;

    background-color: #f1fbfe;
}

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

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

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

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

    width: 100%;
    height: 83px;

    content: '';

    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to bottom, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

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

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

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

.flowSec:after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 83px;

    content: '';

    background: -webkit-gradient(linear, left bottom, left top, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to top, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

@media print, screen and (max-width: 1921px)
{
    .flowSec:after
    {
        height: 4.32292vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .flowSec:after
    {
        height: 8vw;
    }
}

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

    width: 100%;

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

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

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

.flowSec__photo
{
    position: relative;

    overflow: hidden;

    width: 830px;
    margin-top: 210px;

    border-radius: 10px;
}

@media print, screen and (max-width: 1921px)
{
    .flowSec__photo
    {
        width: 43.22917vw;
        margin-top: 10.9375vw;

        border-radius: .52083vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .flowSec__photo
    {
        width: 100%;
        margin-top: 9.33333vw;
    }
}

.flowSec__photo > picture
{
    display: block;

    width: 100%;
}

.flowSec__photo > picture > img
{
    display: block;

    width: 100%;
}

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

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(105, 181, 237, .4);

    mix-blend-mode: soft-light;
}

.flowSec__txtBox
{
    width: 636px;
}

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

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

@media print, screen and (max-width: 430px)
{
    .flowSec__txtBox
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
    }
}

.flowSec__stepWrp
{
    position: relative;

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

    width: 100%;
    margin-top: 71.5px;

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

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

        gap: 1.30208vw;
    }
}

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

        gap: 5.81395vw;
    }
}

.flowSec__stepWrp:before
{
    position: absolute;
    top: 91px;
    left: 79px;

    width: 1px;
    height: 483px;

    content: '';

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

@media print, screen and (max-width: 1921px)
{
    .flowSec__stepWrp:before
    {
        top: 4.73958vw;
        left: 4.11458vw;

        height: 25.15625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .flowSec__stepWrp:before
    {
        top: 5.83008vw;
        left: 5.43945vw;

        height: 32.32422vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .flowSec__stepWrp:before
    {
        top: 12.25581vw;
        left: 12.95349vw;

        height: 96.27907vw;

        background-image: url(../images/img_flow_solid_sp.webp);
    }
}

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

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding-left: 22px;

    border-radius: 10px;
    background-color: white;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 35px;
}

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

        border-radius: .52083vw;

        gap: 1.82292vw;
    }
}

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

        gap: 2.00195vw;
    }
}

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

        gap: 3.46512vw;
    }
}

.flowSec__itemLeft
{
    position: relative;
    z-index: 0;

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

    width: 115px;
    height: 115px;

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

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

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

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

.flowSec__itemLeft:before
{
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;

    width: 100%;
    height: 100%;

    content: '';
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);

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

.flowSec__stepTxt
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 700;
    line-height: 1;

    letter-spacing: .1em;

    color: #2a84ea;
}

.flowSec__itemTxt
{
    font-weight: 500;
    line-height: 1;

    letter-spacing: .1em;

    color: #1c1c1c;
}

/* ============== .c-block ============== */
.c-block
{
    width: 100%;
    padding: 209px 0 300px;
}

@media print, screen and (max-width: 1921px)
{
    .c-block
    {
        padding: 10.88542vw 0 15.625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-block
    {
        padding: 13.67188vw 0 15.625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block
    {
        position: relative;

        padding: 16vw 0 40vw;
    }
}

.c-block__cont
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;

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

@media print, screen and (max-width: 1025px)
{
    .c-block__cont
    {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

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

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

.c-block__txtBox
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 626px;

    gap: 60px;
}

@media print, screen and (max-width: 1921px)
{
    .c-block__txtBox
    {
        width: 32.60417vw;

        gap: 3.125vw;
    }
}

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

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

        width: 100%;

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

.c-block__detail
{
    width: 460px;
    margin-top: 35px;
}

@media print, screen and (max-width: 1921px)
{
    .c-block__detail
    {
        width: 23.95833vw;
        margin-top: 1.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-block__detail
    {
        width: 39.0625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__detail
    {
        width: 100%;
        margin-top: 26.66667vw;
    }
}

.c-block__subTtl
{
    font-weight: 700;
    line-height: 1;

    margin-bottom: 30px;

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

    color: white;
}

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

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

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

        margin-bottom: 5.33333vw;
    }
}

.c-block__subTtl > span
{
    position: relative;
    z-index: 0;

    padding: 7px 22px;
}

@media print, screen and (max-width: 1921px)
{
    .c-block__subTtl > span
    {
        padding: .36458vw 1.14583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-block__subTtl > span
    {
        padding: .48828vw 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__subTtl > span
    {
        padding: 1.13333vw 2.93333vw;
    }
}

.c-block__subTtl > span:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    border-radius: 5px;
    background-color: #69b5ed;

    -webkit-filter: blur(3px);
            filter: blur(3px);
}

@media print, screen and (max-width: 1921px)
{
    .c-block__subTtl > span:before
    {
        border-radius: .26042vw;

        -webkit-filter: blur(.15625vw);
                filter: blur(.15625vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__subTtl > span:before
    {
        border-radius: .66667vw;

        -webkit-filter: blur(.4vw);
                filter: blur(.4vw);
    }
}

.c-block__txt
{
    font-weight: 500;
    line-height: 2.25;

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

    color: #1c1c1c;
}

@media print, screen and (max-width: 1025px)
{
    .c-block__txt
    {
        line-height: 1.8;

        letter-spacing: 0;
    }
}

.c-block__txt--ajt
{
    line-height: 1;
}

.c-block__note
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    margin-top: 25px;
    margin-bottom: 50px;
    margin-left: 30px;

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

@media print, screen and (max-width: 1921px)
{
    .c-block__note
    {
        margin-top: 1.30208vw;
        margin-bottom: 2.60417vw;
        margin-left: 1.5625vw;

        gap: 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-block__note
    {
        margin-bottom: 2.92969vw;
        margin-left: 1.95312vw;

        gap: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__note
    {
        margin-bottom: 6.66667vw;
        margin-left: 4vw;

        gap: 2.66667vw;
    }
}

.c-block__noteTxt
{
    font-weight: 500;
    line-height: 1;

    position: relative;

    padding-left: 15px;

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

    color: #1c1c1c;
}

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

@media print, screen and (max-width: 1025px)
{
    .c-block__noteTxt
    {
        line-height: 1.5;

        padding-left: .97656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__noteTxt
    {
        line-height: 1.5;

        padding-left: 2.66667vw;
    }
}

.c-block__noteTxt:before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 5px;
    height: 5px;
    margin: auto 0;

    content: '';

    border-radius: 50%;
    background-color: #1c1c1c;
}

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

@media print, screen and (max-width: 1025px)
{
    .c-block__noteTxt:before
    {
        width: .29297vw;
        height: .29297vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__noteTxt:before
    {
        top: 2.66667vw;
        bottom: auto;

        width: .66667vw;
        height: .66667vw;
    }
}

.c-block__noteTxt .pdi
{
    display: none;
}

@media print, screen and (max-width: 1025px)
{
    .c-block__noteTxt .pdi
    {
        display: inline;
    }
}

.c-block__photo
{
    position: relative;

    overflow: hidden;

    width: 837px;
    margin-top: 116px;

    border-radius: 10px;
}

@media print, screen and (max-width: 1921px)
{
    .c-block__photo
    {
        width: 43.59375vw;
        margin-top: 6.04167vw;

        border-radius: .52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-block__photo
    {
        width: 40.03906vw;
        height: 26.5625vw;
        margin-top: 15.625vw;

        border-radius: .58594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-block__photo
    {
        position: absolute;
        z-index: -1;

        width: 100%;
        height: 46.66667vw;

        border-radius: 0;
    }
}

.c-block__photo:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(105, 181, 237, .4);

    mix-blend-mode: soft-light;
}

.c-block__photo > picture
{
    display: block;

    width: 100%;
}

.c-block__photo > picture > img
{
    display: block;

    width: 100%;
}

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

    width: 100%;
}

.serviceSec .c-block__detail
{
    width: 476px;
}

@media print, screen and (max-width: 1921px)
{
    .serviceSec .c-block__detail
    {
        width: 24.79167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec .c-block__detail
    {
        width: 39.0625vw;
    }
}

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

.serviceSec .c-block__photo
{
    z-index: 1;
}

@media print, screen and (max-width: 430px)
{
    .serviceSec .c-block__photo
    {
        z-index: 0;
    }
}

.serviceSec .c-block__photo:before
{
    background-color: rgba(253, 251, 242, .3);
}

.serviceSec .c-block__photo:after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    background-color: rgba(105, 181, 237, .2);

    mix-blend-mode: soft-light;
}

.serviceSec__txtItem .c-block__note
{
    margin-left: 0;
}

.serviceSec__txtItem:last-child .c-block__note
{
    margin-bottom: 0;
}

.serviceSec__brushWrp
{
    position: absolute;
    right: 0;
    bottom: 56.5px;

    overflow: hidden;

    width: 1073px;

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

    -webkit-clip-path: inset(0 0 0 100%);
            clip-path: inset(0 0 0 100%);
}

@media print, screen and (max-width: 1921px)
{
    .serviceSec__brushWrp
    {
        bottom: 2.94271vw;

        width: 55.88542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__brushWrp
    {
        bottom: 3.51562vw;

        width: 70.3125vw;
    }
}

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

        width: 94.4vw;
    }
}

.serviceSec__brushWrp > picture
{
    display: block;

    width: 100%;
}

.serviceSec__brushWrp > picture > img
{
    display: block;

    width: 100%;
}

.serviceSec__brushWrp.is-shown
{
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
}

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

    width: 100%;
    padding: 250px 0 283px;

    background-color: #f1fbfe;
}

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

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

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

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

    width: 100%;
    height: 83px;

    content: '';

    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to bottom, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

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

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

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

.featuresSec:after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 83px;

    content: '';

    background: -webkit-gradient(linear, left bottom, left top, from(#fff), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(to top, #fff 0%, rgba(255, 255, 255, 0) 100%);
}

@media print, screen and (max-width: 1921px)
{
    .featuresSec:after
    {
        height: 4.32292vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .featuresSec:after
    {
        height: 8vw;
    }
}

.featuresSec__cont
{
    width: 100%;
}

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

    width: 100%;
    margin-top: 73px;

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

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

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

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

        margin-top: 10.66667vw;

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

.featuresSec__item
{
    width: 500px;
    padding: 9.5px 0 40px;

    border-radius: 10px;
    background: white;

    backdrop-filter: blur(30px);
    backdrop-filter: brightness(1.15);
}

@media print, screen and (max-width: 1921px)
{
    .featuresSec__item
    {
        width: 26.04167vw;
        padding: .49479vw 0 2.08333vw;

        border-radius: .52083vw;

        backdrop-filter: blur(1.5625vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .featuresSec__item
    {
        width: 28.90625vw;
        padding: .58594vw 0 2.34375vw;

        border-radius: .58594vw;

        backdrop-filter: blur(1.95312vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .featuresSec__item
    {
        width: 100%;
        padding: 1.33333vw 0 4vw;

        border-radius: 1.33333vw;

        backdrop-filter: blur(2.66667vw);
    }
}

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

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 20px;
    padding-left: 15px;

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

@media print, screen and (max-width: 1921px)
{
    .featuresSec__ttlBox
    {
        margin-bottom: 1.04167vw;
        padding-left: .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .featuresSec__ttlBox
    {
        margin-bottom: .97656vw;
        padding-left: 0vw;
    }
}

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

.featuresSec__numImg
{
    width: 108px;
}

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

@media print, screen and (max-width: 1025px)
{
    .featuresSec__numImg
    {
        width: 6.83594vw;
        margin-left: -.58594vw;
    }
}

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

.featuresSec__numImg > picture
{
    display: block;

    width: 100%;
}

.featuresSec__numImg > picture > img
{
    display: block;

    width: 100%;
}

.featuresSec__ttl
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 500;
    line-height: 1;

    position: relative;

    margin-left: -12px;

    letter-spacing: .05em;

    color: #113447;
}

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

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

        margin-left: -.97656vw;
    }
}

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

        margin-left: -.8vw;
    }
}

.featuresSec__ttl:before
{
    position: absolute;
    bottom: -25px;
    left: 0;

    width: 305.83px;
    height: 19.91px;

    content: '';

    background-image: url(../images/img_features_solid.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

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

        width: 15.92865vw;
        height: 1.03698vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .featuresSec__ttl:before
    {
        bottom: -1.5625vw;

        width: 22.46094vw;
        height: 1.46484vw;
    }
}

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

        width: 49.33333vw;
        height: 3.2vw;
    }
}

.featuresSec__txt
{
    font-weight: 500;
    line-height: 2.25;

    margin: 0 40px;

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

    color: #1c1c1c;
}

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

@media print, screen and (max-width: 1025px)
{
    .featuresSec__txt
    {
        margin: 0 2.34375vw;
    }
}

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

    width: 100%;
    padding: 12px 0 545px;
}

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

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

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

.aboutSec__cont
{
    position: relative;

    width: 100%;
}

.aboutSec__txt
{
    font-weight: 500;
    line-height: 2.75;

    position: relative;
    z-index: 1;

    margin-top: 73px;

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

    color: #1c1c1c;
}

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

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

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

.aboutSec__photo
{
    position: absolute;
    right: 150px;
    bottom: -344px;

    overflow: hidden;

    width: 650px;

    border-radius: 10px;
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__photo
    {
        right: 7.8125vw;
        bottom: -17.91667vw;

        width: 33.85417vw;

        border-radius: .52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__photo
    {
        right: -2.92969vw;
        bottom: -17.57812vw;

        width: 42.1875vw;

        border-radius: .58594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__photo
    {
        position: static;

        width: 77.73333vw;
        margin-top: 9.33333vw;
        margin-right: -4vw;
        margin-left: auto;

        border-radius: 1.33333vw 0 0 1.33333vw;
    }
}

.aboutSec__photo > picture
{
    display: block;

    width: 100%;
}

.aboutSec__photo > picture > img
{
    display: block;

    width: 100%;
}

.aboutSec__brushWrp
{
    position: absolute;
    z-index: 0;
    bottom: 202px;
    left: 0;

    overflow: hidden;

    width: 1119px;

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

    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
}

@media print, screen and (max-width: 1921px)
{
    .aboutSec__brushWrp
    {
        bottom: 10.52083vw;

        width: 58.28125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .aboutSec__brushWrp
    {
        bottom: 11.71875vw;

        width: 65.42969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .aboutSec__brushWrp
    {
        bottom: 24vw;
        left: 0vw;

        width: 88.8vw;
    }
}

.aboutSec__brushWrp > picture
{
    display: block;

    width: 100%;
}

.aboutSec__brushWrp > picture > img
{
    display: block;

    width: 100%;
}

.aboutSec__brushWrp.is-shown
{
    -webkit-clip-path: inset(0);
            clip-path: inset(0);
}

/* ============== .thanks ============== */
.thanks
{
    padding: 270px 0 200px;

    background-color: #f1fbfd;
}

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

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

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

.thanks__txtBox
{
    margin: 70px 0 100px;
}

@media print, screen and (max-width: 1921px)
{
    .thanks__txtBox
    {
        margin: 3.64583vw 0 5.20833vw;
    }
}

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

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

.thanks__ttl
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    line-height: 1.667;

    letter-spacing: .05em;

    color: #113447;
}

.thanks__txt
{
    font-weight: 400;
    line-height: 2.25;

    margin-top: 50px;

    letter-spacing: .1em;
}

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

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

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

.thanks__btn
{
    display: inline-block;

    margin-inline: auto;
}

.thanks__btnTxt
{
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
            box-sizing: border-box;
    width: 300px;
    padding: 12px 0;

    -webkit-transition: all .3s;
            transition: all .3s;
    text-align: center;

    color: #fff;
    border: 3px solid #113447;
    border-radius: 100vw;
    background-color: #113447;
}

@media print, screen and (max-width: 1921px)
{
    .thanks__btnTxt
    {
        width: 15.625vw;
        padding: .625vw 0;

        border: .15625vw solid #113447;
    }
}

@media print, screen and (max-width: 1025px)
{
    .thanks__btnTxt
    {
        width: 29.29688vw;
        padding: .87891vw 0;

        border: .29297vw solid #113447;
    }
}

@media print, screen and (max-width: 430px)
{
    .thanks__btnTxt
    {
        width: 53.33333vw;
        padding: 1.6vw 0;

        border: .4vw solid #113447;
    }
}

.thanks__btnTxt:hover
{
    -webkit-transition: all .3s;
            transition: all .3s;

    color: #1c1c1c;
    background-color: #fff;
}
