@charset 'UTF-8';
.f13
{
    font-size: 13px;
}

@media print, screen and (max-width: 1920px)
{
    .f13
    {
        font-size: calc(13 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f13
    {
        font-size: calc(11 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f13
    {
        font-size: calc(23 / 750 * 100vw);
    }
}

.f14
{
    font-size: 14px;
}

@media print, screen and (max-width: 1920px)
{
    .f14
    {
        font-size: calc(14 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f14
    {
        font-size: calc(12 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f14
    {
        font-size: calc(24 / 750 * 100vw);
    }
}

.f15
{
    font-size: 15px;
}

@media print, screen and (max-width: 1920px)
{
    .f15
    {
        font-size: calc(15 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f15
    {
        font-size: calc(13 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f15
    {
        font-size: calc(25 / 750 * 100vw);
    }
}

.f16
{
    font-size: 16px;
}

@media print, screen and (max-width: 1920px)
{
    .f16
    {
        font-size: calc(16 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f16
    {
        font-size: calc(14 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f16
    {
        font-size: calc(26 / 750 * 100vw);
    }
}

.f17
{
    font-size: 17px;
}

@media print, screen and (max-width: 1920px)
{
    .f17
    {
        font-size: calc(17 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f17
    {
        font-size: calc(15 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f17
    {
        font-size: calc(27 / 750 * 100vw);
    }
}

.f18
{
    font-size: 18px;
}

@media print, screen and (max-width: 1920px)
{
    .f18
    {
        font-size: calc(18 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f18
    {
        font-size: calc(16 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f18
    {
        font-size: calc(28 / 750 * 100vw);
    }
}

.f19
{
    font-size: 19px;
}

@media print, screen and (max-width: 1920px)
{
    .f19
    {
        font-size: calc(19 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f19
    {
        font-size: calc(17 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f19
    {
        font-size: calc(29 / 750 * 100vw);
    }
}

.f20
{
    font-size: 20px;
}

@media print, screen and (max-width: 1920px)
{
    .f20
    {
        font-size: calc(20 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f20
    {
        font-size: calc(18 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f20
    {
        font-size: calc(30 / 750 * 100vw);
    }
}

.f21
{
    font-size: 21px;
}

@media print, screen and (max-width: 1920px)
{
    .f21
    {
        font-size: calc(21 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f21
    {
        font-size: calc(19 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f21
    {
        font-size: calc(31 / 750 * 100vw);
    }
}

.f22
{
    font-size: 22px;
}

@media print, screen and (max-width: 1920px)
{
    .f22
    {
        font-size: calc(22 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f22
    {
        font-size: calc(20 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f22
    {
        font-size: calc(32 / 750 * 100vw);
    }
}

.f23
{
    font-size: 23px;
}

@media print, screen and (max-width: 1920px)
{
    .f23
    {
        font-size: calc(23 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f23
    {
        font-size: calc(21 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f23
    {
        font-size: calc(33 / 750 * 100vw);
    }
}

.f24
{
    font-size: 24px;
}

@media print, screen and (max-width: 1920px)
{
    .f24
    {
        font-size: calc(24 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f24
    {
        font-size: calc(22 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f24
    {
        font-size: calc(34 / 750 * 100vw);
    }
}

.f25
{
    font-size: 25px;
}

@media print, screen and (max-width: 1920px)
{
    .f25
    {
        font-size: calc(25 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f25
    {
        font-size: calc(23 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f25
    {
        font-size: calc(35 / 750 * 100vw);
    }
}

.f26
{
    font-size: 26px;
}

@media print, screen and (max-width: 1920px)
{
    .f26
    {
        font-size: calc(26 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f26
    {
        font-size: calc(24 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f26
    {
        font-size: calc(36 / 750 * 100vw);
    }
}

.f27
{
    font-size: 27px;
}

@media print, screen and (max-width: 1920px)
{
    .f27
    {
        font-size: calc(27 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f27
    {
        font-size: calc(25 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f27
    {
        font-size: calc(37 / 750 * 100vw);
    }
}

.f28
{
    font-size: 28px;
}

@media print, screen and (max-width: 1920px)
{
    .f28
    {
        font-size: calc(28 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f28
    {
        font-size: calc(26 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f28
    {
        font-size: calc(38 / 750 * 100vw);
    }
}

.f29
{
    font-size: 29px;
}

@media print, screen and (max-width: 1920px)
{
    .f29
    {
        font-size: calc(29 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f29
    {
        font-size: calc(27 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f29
    {
        font-size: calc(39 / 750 * 100vw);
    }
}

.f30
{
    font-size: 30px;
}

@media print, screen and (max-width: 1920px)
{
    .f30
    {
        font-size: calc(30 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f30
    {
        font-size: calc(28 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f30
    {
        font-size: calc(40 / 750 * 100vw);
    }
}

.f31
{
    font-size: 31px;
}

@media print, screen and (max-width: 1920px)
{
    .f31
    {
        font-size: calc(31 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f31
    {
        font-size: calc(29 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f31
    {
        font-size: calc(41 / 750 * 100vw);
    }
}

.f32
{
    font-size: 32px;
}

@media print, screen and (max-width: 1920px)
{
    .f32
    {
        font-size: calc(32 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f32
    {
        font-size: calc(30 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f32
    {
        font-size: calc(42 / 750 * 100vw);
    }
}

.f33
{
    font-size: 33px;
}

@media print, screen and (max-width: 1920px)
{
    .f33
    {
        font-size: calc(33 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f33
    {
        font-size: calc(31 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f33
    {
        font-size: calc(43 / 750 * 100vw);
    }
}

.f34
{
    font-size: 34px;
}

@media print, screen and (max-width: 1920px)
{
    .f34
    {
        font-size: calc(34 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f34
    {
        font-size: calc(32 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f34
    {
        font-size: calc(44 / 750 * 100vw);
    }
}

.f35
{
    font-size: 35px;
}

@media print, screen and (max-width: 1920px)
{
    .f35
    {
        font-size: calc(35 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f35
    {
        font-size: calc(33 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f35
    {
        font-size: calc(45 / 750 * 100vw);
    }
}

.f36
{
    font-size: 36px;
}

@media print, screen and (max-width: 1920px)
{
    .f36
    {
        font-size: calc(36 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f36
    {
        font-size: calc(34 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f36
    {
        font-size: calc(46 / 750 * 100vw);
    }
}

.f37
{
    font-size: 37px;
}

@media print, screen and (max-width: 1920px)
{
    .f37
    {
        font-size: calc(37 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f37
    {
        font-size: calc(35 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f37
    {
        font-size: calc(47 / 750 * 100vw);
    }
}

.f38
{
    font-size: 38px;
}

@media print, screen and (max-width: 1920px)
{
    .f38
    {
        font-size: calc(38 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f38
    {
        font-size: calc(36 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f38
    {
        font-size: calc(48 / 750 * 100vw);
    }
}

.f39
{
    font-size: 39px;
}

@media print, screen and (max-width: 1920px)
{
    .f39
    {
        font-size: calc(39 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f39
    {
        font-size: calc(37 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f39
    {
        font-size: calc(49 / 750 * 100vw);
    }
}

.f40
{
    font-size: 40px;
}

@media print, screen and (max-width: 1920px)
{
    .f40
    {
        font-size: calc(40 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f40
    {
        font-size: calc(38 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f40
    {
        font-size: calc(50 / 750 * 100vw);
    }
}

.f41
{
    font-size: 41px;
}

@media print, screen and (max-width: 1920px)
{
    .f41
    {
        font-size: calc(41 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f41
    {
        font-size: calc(39 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f41
    {
        font-size: calc(51 / 750 * 100vw);
    }
}

.f42
{
    font-size: 42px;
}

@media print, screen and (max-width: 1920px)
{
    .f42
    {
        font-size: calc(42 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f42
    {
        font-size: calc(40 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f42
    {
        font-size: calc(52 / 750 * 100vw);
    }
}

.f43
{
    font-size: 43px;
}

@media print, screen and (max-width: 1920px)
{
    .f43
    {
        font-size: calc(43 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f43
    {
        font-size: calc(41 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f43
    {
        font-size: calc(53 / 750 * 100vw);
    }
}

.f44
{
    font-size: 44px;
}

@media print, screen and (max-width: 1920px)
{
    .f44
    {
        font-size: calc(44 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f44
    {
        font-size: calc(42 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f44
    {
        font-size: calc(54 / 750 * 100vw);
    }
}

.f45
{
    font-size: 45px;
}

@media print, screen and (max-width: 1920px)
{
    .f45
    {
        font-size: calc(45 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f45
    {
        font-size: calc(43 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f45
    {
        font-size: calc(55 / 750 * 100vw);
    }
}

.f46
{
    font-size: 46px;
}

@media print, screen and (max-width: 1920px)
{
    .f46
    {
        font-size: calc(46 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f46
    {
        font-size: calc(44 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f46
    {
        font-size: calc(56 / 750 * 100vw);
    }
}

.f47
{
    font-size: 47px;
}

@media print, screen and (max-width: 1920px)
{
    .f47
    {
        font-size: calc(47 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f47
    {
        font-size: calc(45 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f47
    {
        font-size: calc(57 / 750 * 100vw);
    }
}

.f48
{
    font-size: 48px;
}

@media print, screen and (max-width: 1920px)
{
    .f48
    {
        font-size: calc(48 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f48
    {
        font-size: calc(46 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f48
    {
        font-size: calc(58 / 750 * 100vw);
    }
}

.f49
{
    font-size: 49px;
}

@media print, screen and (max-width: 1920px)
{
    .f49
    {
        font-size: calc(49 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f49
    {
        font-size: calc(47 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f49
    {
        font-size: calc(59 / 750 * 100vw);
    }
}

.f50
{
    font-size: 50px;
}

@media print, screen and (max-width: 1920px)
{
    .f50
    {
        font-size: calc(50 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f50
    {
        font-size: calc(48 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f50
    {
        font-size: calc(60 / 750 * 100vw);
    }
}

.f51
{
    font-size: 51px;
}

@media print, screen and (max-width: 1920px)
{
    .f51
    {
        font-size: calc(51 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f51
    {
        font-size: calc(49 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f51
    {
        font-size: calc(61 / 750 * 100vw);
    }
}

.f52
{
    font-size: 52px;
}

@media print, screen and (max-width: 1920px)
{
    .f52
    {
        font-size: calc(52 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f52
    {
        font-size: calc(50 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f52
    {
        font-size: calc(62 / 750 * 100vw);
    }
}

.f53
{
    font-size: 53px;
}

@media print, screen and (max-width: 1920px)
{
    .f53
    {
        font-size: calc(53 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f53
    {
        font-size: calc(51 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f53
    {
        font-size: calc(63 / 750 * 100vw);
    }
}

.f54
{
    font-size: 54px;
}

@media print, screen and (max-width: 1920px)
{
    .f54
    {
        font-size: calc(54 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f54
    {
        font-size: calc(52 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f54
    {
        font-size: calc(64 / 750 * 100vw);
    }
}

.f55
{
    font-size: 55px;
}

@media print, screen and (max-width: 1920px)
{
    .f55
    {
        font-size: calc(55 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f55
    {
        font-size: calc(53 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f55
    {
        font-size: calc(65 / 750 * 100vw);
    }
}

.f56
{
    font-size: 56px;
}

@media print, screen and (max-width: 1920px)
{
    .f56
    {
        font-size: calc(56 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f56
    {
        font-size: calc(54 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f56
    {
        font-size: calc(66 / 750 * 100vw);
    }
}

.f57
{
    font-size: 57px;
}

@media print, screen and (max-width: 1920px)
{
    .f57
    {
        font-size: calc(57 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f57
    {
        font-size: calc(55 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f57
    {
        font-size: calc(67 / 750 * 100vw);
    }
}

.f58
{
    font-size: 58px;
}

@media print, screen and (max-width: 1920px)
{
    .f58
    {
        font-size: calc(58 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f58
    {
        font-size: calc(56 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f58
    {
        font-size: calc(68 / 750 * 100vw);
    }
}

.f59
{
    font-size: 59px;
}

@media print, screen and (max-width: 1920px)
{
    .f59
    {
        font-size: calc(59 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f59
    {
        font-size: calc(57 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f59
    {
        font-size: calc(69 / 750 * 100vw);
    }
}

.f60
{
    font-size: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .f60
    {
        font-size: calc(60 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f60
    {
        font-size: calc(58 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f60
    {
        font-size: calc(70 / 750 * 100vw);
    }
}

.f61
{
    font-size: 61px;
}

@media print, screen and (max-width: 1920px)
{
    .f61
    {
        font-size: calc(61 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f61
    {
        font-size: calc(59 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f61
    {
        font-size: calc(71 / 750 * 100vw);
    }
}

.f62
{
    font-size: 62px;
}

@media print, screen and (max-width: 1920px)
{
    .f62
    {
        font-size: calc(62 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f62
    {
        font-size: calc(60 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f62
    {
        font-size: calc(72 / 750 * 100vw);
    }
}

.f63
{
    font-size: 63px;
}

@media print, screen and (max-width: 1920px)
{
    .f63
    {
        font-size: calc(63 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f63
    {
        font-size: calc(61 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f63
    {
        font-size: calc(73 / 750 * 100vw);
    }
}

.f64
{
    font-size: 64px;
}

@media print, screen and (max-width: 1920px)
{
    .f64
    {
        font-size: calc(64 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f64
    {
        font-size: calc(62 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f64
    {
        font-size: calc(74 / 750 * 100vw);
    }
}

.f65
{
    font-size: 65px;
}

@media print, screen and (max-width: 1920px)
{
    .f65
    {
        font-size: calc(65 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f65
    {
        font-size: calc(63 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f65
    {
        font-size: calc(75 / 750 * 100vw);
    }
}

.f66
{
    font-size: 66px;
}

@media print, screen and (max-width: 1920px)
{
    .f66
    {
        font-size: calc(66 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f66
    {
        font-size: calc(64 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f66
    {
        font-size: calc(76 / 750 * 100vw);
    }
}

.f67
{
    font-size: 67px;
}

@media print, screen and (max-width: 1920px)
{
    .f67
    {
        font-size: calc(67 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f67
    {
        font-size: calc(65 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f67
    {
        font-size: calc(77 / 750 * 100vw);
    }
}

.f68
{
    font-size: 68px;
}

@media print, screen and (max-width: 1920px)
{
    .f68
    {
        font-size: calc(68 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f68
    {
        font-size: calc(66 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f68
    {
        font-size: calc(78 / 750 * 100vw);
    }
}

.f69
{
    font-size: 69px;
}

@media print, screen and (max-width: 1920px)
{
    .f69
    {
        font-size: calc(69 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f69
    {
        font-size: calc(67 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f69
    {
        font-size: calc(79 / 750 * 100vw);
    }
}

.f70
{
    font-size: 70px;
}

@media print, screen and (max-width: 1920px)
{
    .f70
    {
        font-size: calc(70 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f70
    {
        font-size: calc(68 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f70
    {
        font-size: calc(80 / 750 * 100vw);
    }
}

.f71
{
    font-size: 71px;
}

@media print, screen and (max-width: 1920px)
{
    .f71
    {
        font-size: calc(71 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f71
    {
        font-size: calc(69 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f71
    {
        font-size: calc(81 / 750 * 100vw);
    }
}

.f72
{
    font-size: 72px;
}

@media print, screen and (max-width: 1920px)
{
    .f72
    {
        font-size: calc(72 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f72
    {
        font-size: calc(70 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f72
    {
        font-size: calc(82 / 750 * 100vw);
    }
}

.f73
{
    font-size: 73px;
}

@media print, screen and (max-width: 1920px)
{
    .f73
    {
        font-size: calc(73 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f73
    {
        font-size: calc(71 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f73
    {
        font-size: calc(83 / 750 * 100vw);
    }
}

.f74
{
    font-size: 74px;
}

@media print, screen and (max-width: 1920px)
{
    .f74
    {
        font-size: calc(74 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f74
    {
        font-size: calc(72 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f74
    {
        font-size: calc(84 / 750 * 100vw);
    }
}

.f75
{
    font-size: 75px;
}

@media print, screen and (max-width: 1920px)
{
    .f75
    {
        font-size: calc(75 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f75
    {
        font-size: calc(73 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f75
    {
        font-size: calc(85 / 750 * 100vw);
    }
}

.f76
{
    font-size: 76px;
}

@media print, screen and (max-width: 1920px)
{
    .f76
    {
        font-size: calc(76 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f76
    {
        font-size: calc(74 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f76
    {
        font-size: calc(86 / 750 * 100vw);
    }
}

.f77
{
    font-size: 77px;
}

@media print, screen and (max-width: 1920px)
{
    .f77
    {
        font-size: calc(77 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f77
    {
        font-size: calc(75 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f77
    {
        font-size: calc(87 / 750 * 100vw);
    }
}

.f78
{
    font-size: 78px;
}

@media print, screen and (max-width: 1920px)
{
    .f78
    {
        font-size: calc(78 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f78
    {
        font-size: calc(76 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f78
    {
        font-size: calc(88 / 750 * 100vw);
    }
}

.f79
{
    font-size: 79px;
}

@media print, screen and (max-width: 1920px)
{
    .f79
    {
        font-size: calc(79 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f79
    {
        font-size: calc(77 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f79
    {
        font-size: calc(89 / 750 * 100vw);
    }
}

.f80
{
    font-size: 80px;
}

@media print, screen and (max-width: 1920px)
{
    .f80
    {
        font-size: calc(80 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f80
    {
        font-size: calc(78 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f80
    {
        font-size: calc(90 / 750 * 100vw);
    }
}

.f81
{
    font-size: 81px;
}

@media print, screen and (max-width: 1920px)
{
    .f81
    {
        font-size: calc(81 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f81
    {
        font-size: calc(79 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f81
    {
        font-size: calc(91 / 750 * 100vw);
    }
}

.f82
{
    font-size: 82px;
}

@media print, screen and (max-width: 1920px)
{
    .f82
    {
        font-size: calc(82 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f82
    {
        font-size: calc(80 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f82
    {
        font-size: calc(92 / 750 * 100vw);
    }
}

.f83
{
    font-size: 83px;
}

@media print, screen and (max-width: 1920px)
{
    .f83
    {
        font-size: calc(83 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f83
    {
        font-size: calc(81 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f83
    {
        font-size: calc(93 / 750 * 100vw);
    }
}

.f84
{
    font-size: 84px;
}

@media print, screen and (max-width: 1920px)
{
    .f84
    {
        font-size: calc(84 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f84
    {
        font-size: calc(82 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f84
    {
        font-size: calc(94 / 750 * 100vw);
    }
}

.f85
{
    font-size: 85px;
}

@media print, screen and (max-width: 1920px)
{
    .f85
    {
        font-size: calc(85 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f85
    {
        font-size: calc(83 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f85
    {
        font-size: calc(95 / 750 * 100vw);
    }
}

.f86
{
    font-size: 86px;
}

@media print, screen and (max-width: 1920px)
{
    .f86
    {
        font-size: calc(86 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f86
    {
        font-size: calc(84 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f86
    {
        font-size: calc(96 / 750 * 100vw);
    }
}

.f87
{
    font-size: 87px;
}

@media print, screen and (max-width: 1920px)
{
    .f87
    {
        font-size: calc(87 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f87
    {
        font-size: calc(85 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f87
    {
        font-size: calc(97 / 750 * 100vw);
    }
}

.f88
{
    font-size: 88px;
}

@media print, screen and (max-width: 1920px)
{
    .f88
    {
        font-size: calc(88 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f88
    {
        font-size: calc(86 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f88
    {
        font-size: calc(98 / 750 * 100vw);
    }
}

.f89
{
    font-size: 89px;
}

@media print, screen and (max-width: 1920px)
{
    .f89
    {
        font-size: calc(89 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f89
    {
        font-size: calc(87 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f89
    {
        font-size: calc(99 / 750 * 100vw);
    }
}

.f90
{
    font-size: 90px;
}

@media print, screen and (max-width: 1920px)
{
    .f90
    {
        font-size: calc(90 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f90
    {
        font-size: calc(88 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f90
    {
        font-size: calc(100 / 750 * 100vw);
    }
}

.f91
{
    font-size: 91px;
}

@media print, screen and (max-width: 1920px)
{
    .f91
    {
        font-size: calc(91 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f91
    {
        font-size: calc(89 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f91
    {
        font-size: calc(101 / 750 * 100vw);
    }
}

.f92
{
    font-size: 92px;
}

@media print, screen and (max-width: 1920px)
{
    .f92
    {
        font-size: calc(92 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f92
    {
        font-size: calc(90 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f92
    {
        font-size: calc(102 / 750 * 100vw);
    }
}

.f93
{
    font-size: 93px;
}

@media print, screen and (max-width: 1920px)
{
    .f93
    {
        font-size: calc(93 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f93
    {
        font-size: calc(91 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f93
    {
        font-size: calc(103 / 750 * 100vw);
    }
}

.f94
{
    font-size: 94px;
}

@media print, screen and (max-width: 1920px)
{
    .f94
    {
        font-size: calc(94 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f94
    {
        font-size: calc(92 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f94
    {
        font-size: calc(104 / 750 * 100vw);
    }
}

.f95
{
    font-size: 95px;
}

@media print, screen and (max-width: 1920px)
{
    .f95
    {
        font-size: calc(95 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f95
    {
        font-size: calc(93 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f95
    {
        font-size: calc(105 / 750 * 100vw);
    }
}

.f96
{
    font-size: 96px;
}

@media print, screen and (max-width: 1920px)
{
    .f96
    {
        font-size: calc(96 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f96
    {
        font-size: calc(94 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f96
    {
        font-size: calc(106 / 750 * 100vw);
    }
}

.f97
{
    font-size: 97px;
}

@media print, screen and (max-width: 1920px)
{
    .f97
    {
        font-size: calc(97 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f97
    {
        font-size: calc(95 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f97
    {
        font-size: calc(107 / 750 * 100vw);
    }
}

.f98
{
    font-size: 98px;
}

@media print, screen and (max-width: 1920px)
{
    .f98
    {
        font-size: calc(98 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f98
    {
        font-size: calc(96 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f98
    {
        font-size: calc(108 / 750 * 100vw);
    }
}

.f99
{
    font-size: 99px;
}

@media print, screen and (max-width: 1920px)
{
    .f99
    {
        font-size: calc(99 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f99
    {
        font-size: calc(97 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f99
    {
        font-size: calc(109 / 750 * 100vw);
    }
}

.f100
{
    font-size: 100px;
}

@media print, screen and (max-width: 1920px)
{
    .f100
    {
        font-size: calc(100 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f100
    {
        font-size: calc(98 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f100
    {
        font-size: calc(110 / 750 * 100vw);
    }
}

.f101
{
    font-size: 101px;
}

@media print, screen and (max-width: 1920px)
{
    .f101
    {
        font-size: calc(101 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f101
    {
        font-size: calc(99 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f101
    {
        font-size: calc(111 / 750 * 100vw);
    }
}

.f102
{
    font-size: 102px;
}

@media print, screen and (max-width: 1920px)
{
    .f102
    {
        font-size: calc(102 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f102
    {
        font-size: calc(100 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f102
    {
        font-size: calc(112 / 750 * 100vw);
    }
}

.f103
{
    font-size: 103px;
}

@media print, screen and (max-width: 1920px)
{
    .f103
    {
        font-size: calc(103 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f103
    {
        font-size: calc(101 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f103
    {
        font-size: calc(113 / 750 * 100vw);
    }
}

.f104
{
    font-size: 104px;
}

@media print, screen and (max-width: 1920px)
{
    .f104
    {
        font-size: calc(104 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f104
    {
        font-size: calc(102 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f104
    {
        font-size: calc(114 / 750 * 100vw);
    }
}

.f105
{
    font-size: 105px;
}

@media print, screen and (max-width: 1920px)
{
    .f105
    {
        font-size: calc(105 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f105
    {
        font-size: calc(103 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f105
    {
        font-size: calc(115 / 750 * 100vw);
    }
}

.f106
{
    font-size: 106px;
}

@media print, screen and (max-width: 1920px)
{
    .f106
    {
        font-size: calc(106 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f106
    {
        font-size: calc(104 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f106
    {
        font-size: calc(116 / 750 * 100vw);
    }
}

.f107
{
    font-size: 107px;
}

@media print, screen and (max-width: 1920px)
{
    .f107
    {
        font-size: calc(107 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f107
    {
        font-size: calc(105 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f107
    {
        font-size: calc(117 / 750 * 100vw);
    }
}

.f108
{
    font-size: 108px;
}

@media print, screen and (max-width: 1920px)
{
    .f108
    {
        font-size: calc(108 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f108
    {
        font-size: calc(106 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f108
    {
        font-size: calc(118 / 750 * 100vw);
    }
}

.f109
{
    font-size: 109px;
}

@media print, screen and (max-width: 1920px)
{
    .f109
    {
        font-size: calc(109 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f109
    {
        font-size: calc(107 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f109
    {
        font-size: calc(119 / 750 * 100vw);
    }
}

.f110
{
    font-size: 110px;
}

@media print, screen and (max-width: 1920px)
{
    .f110
    {
        font-size: calc(110 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f110
    {
        font-size: calc(108 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f110
    {
        font-size: calc(120 / 750 * 100vw);
    }
}

.f111
{
    font-size: 111px;
}

@media print, screen and (max-width: 1920px)
{
    .f111
    {
        font-size: calc(111 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f111
    {
        font-size: calc(109 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f111
    {
        font-size: calc(121 / 750 * 100vw);
    }
}

.f112
{
    font-size: 112px;
}

@media print, screen and (max-width: 1920px)
{
    .f112
    {
        font-size: calc(112 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f112
    {
        font-size: calc(110 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f112
    {
        font-size: calc(122 / 750 * 100vw);
    }
}

.f113
{
    font-size: 113px;
}

@media print, screen and (max-width: 1920px)
{
    .f113
    {
        font-size: calc(113 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f113
    {
        font-size: calc(111 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f113
    {
        font-size: calc(123 / 750 * 100vw);
    }
}

.f114
{
    font-size: 114px;
}

@media print, screen and (max-width: 1920px)
{
    .f114
    {
        font-size: calc(114 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f114
    {
        font-size: calc(112 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f114
    {
        font-size: calc(124 / 750 * 100vw);
    }
}

.f115
{
    font-size: 115px;
}

@media print, screen and (max-width: 1920px)
{
    .f115
    {
        font-size: calc(115 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f115
    {
        font-size: calc(113 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f115
    {
        font-size: calc(125 / 750 * 100vw);
    }
}

.f116
{
    font-size: 116px;
}

@media print, screen and (max-width: 1920px)
{
    .f116
    {
        font-size: calc(116 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f116
    {
        font-size: calc(114 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f116
    {
        font-size: calc(126 / 750 * 100vw);
    }
}

.f117
{
    font-size: 117px;
}

@media print, screen and (max-width: 1920px)
{
    .f117
    {
        font-size: calc(117 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f117
    {
        font-size: calc(115 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f117
    {
        font-size: calc(127 / 750 * 100vw);
    }
}

.f118
{
    font-size: 118px;
}

@media print, screen and (max-width: 1920px)
{
    .f118
    {
        font-size: calc(118 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f118
    {
        font-size: calc(116 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f118
    {
        font-size: calc(128 / 750 * 100vw);
    }
}

.f119
{
    font-size: 119px;
}

@media print, screen and (max-width: 1920px)
{
    .f119
    {
        font-size: calc(119 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f119
    {
        font-size: calc(117 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f119
    {
        font-size: calc(129 / 750 * 100vw);
    }
}

.f120
{
    font-size: 120px;
}

@media print, screen and (max-width: 1920px)
{
    .f120
    {
        font-size: calc(120 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f120
    {
        font-size: calc(118 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f120
    {
        font-size: calc(130 / 750 * 100vw);
    }
}

.f121
{
    font-size: 121px;
}

@media print, screen and (max-width: 1920px)
{
    .f121
    {
        font-size: calc(121 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f121
    {
        font-size: calc(119 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f121
    {
        font-size: calc(131 / 750 * 100vw);
    }
}

.f122
{
    font-size: 122px;
}

@media print, screen and (max-width: 1920px)
{
    .f122
    {
        font-size: calc(122 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f122
    {
        font-size: calc(120 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f122
    {
        font-size: calc(132 / 750 * 100vw);
    }
}

.f123
{
    font-size: 123px;
}

@media print, screen and (max-width: 1920px)
{
    .f123
    {
        font-size: calc(123 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f123
    {
        font-size: calc(121 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f123
    {
        font-size: calc(133 / 750 * 100vw);
    }
}

.f124
{
    font-size: 124px;
}

@media print, screen and (max-width: 1920px)
{
    .f124
    {
        font-size: calc(124 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f124
    {
        font-size: calc(122 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f124
    {
        font-size: calc(134 / 750 * 100vw);
    }
}

.f125
{
    font-size: 125px;
}

@media print, screen and (max-width: 1920px)
{
    .f125
    {
        font-size: calc(125 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f125
    {
        font-size: calc(123 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f125
    {
        font-size: calc(135 / 750 * 100vw);
    }
}

.f126
{
    font-size: 126px;
}

@media print, screen and (max-width: 1920px)
{
    .f126
    {
        font-size: calc(126 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f126
    {
        font-size: calc(124 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f126
    {
        font-size: calc(136 / 750 * 100vw);
    }
}

.f127
{
    font-size: 127px;
}

@media print, screen and (max-width: 1920px)
{
    .f127
    {
        font-size: calc(127 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f127
    {
        font-size: calc(125 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f127
    {
        font-size: calc(137 / 750 * 100vw);
    }
}

.f128
{
    font-size: 128px;
}

@media print, screen and (max-width: 1920px)
{
    .f128
    {
        font-size: calc(128 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f128
    {
        font-size: calc(126 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f128
    {
        font-size: calc(138 / 750 * 100vw);
    }
}

.f129
{
    font-size: 129px;
}

@media print, screen and (max-width: 1920px)
{
    .f129
    {
        font-size: calc(129 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f129
    {
        font-size: calc(127 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f129
    {
        font-size: calc(139 / 750 * 100vw);
    }
}

.f130
{
    font-size: 130px;
}

@media print, screen and (max-width: 1920px)
{
    .f130
    {
        font-size: calc(130 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f130
    {
        font-size: calc(128 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f130
    {
        font-size: calc(140 / 750 * 100vw);
    }
}

.f131
{
    font-size: 131px;
}

@media print, screen and (max-width: 1920px)
{
    .f131
    {
        font-size: calc(131 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f131
    {
        font-size: calc(129 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f131
    {
        font-size: calc(141 / 750 * 100vw);
    }
}

.f132
{
    font-size: 132px;
}

@media print, screen and (max-width: 1920px)
{
    .f132
    {
        font-size: calc(132 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f132
    {
        font-size: calc(130 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f132
    {
        font-size: calc(142 / 750 * 100vw);
    }
}

.f133
{
    font-size: 133px;
}

@media print, screen and (max-width: 1920px)
{
    .f133
    {
        font-size: calc(133 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f133
    {
        font-size: calc(131 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f133
    {
        font-size: calc(143 / 750 * 100vw);
    }
}

.f134
{
    font-size: 134px;
}

@media print, screen and (max-width: 1920px)
{
    .f134
    {
        font-size: calc(134 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f134
    {
        font-size: calc(132 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f134
    {
        font-size: calc(144 / 750 * 100vw);
    }
}

.f135
{
    font-size: 135px;
}

@media print, screen and (max-width: 1920px)
{
    .f135
    {
        font-size: calc(135 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f135
    {
        font-size: calc(133 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f135
    {
        font-size: calc(145 / 750 * 100vw);
    }
}

.f136
{
    font-size: 136px;
}

@media print, screen and (max-width: 1920px)
{
    .f136
    {
        font-size: calc(136 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f136
    {
        font-size: calc(134 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f136
    {
        font-size: calc(146 / 750 * 100vw);
    }
}

.f137
{
    font-size: 137px;
}

@media print, screen and (max-width: 1920px)
{
    .f137
    {
        font-size: calc(137 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f137
    {
        font-size: calc(135 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f137
    {
        font-size: calc(147 / 750 * 100vw);
    }
}

.f138
{
    font-size: 138px;
}

@media print, screen and (max-width: 1920px)
{
    .f138
    {
        font-size: calc(138 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f138
    {
        font-size: calc(136 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f138
    {
        font-size: calc(148 / 750 * 100vw);
    }
}

.f139
{
    font-size: 139px;
}

@media print, screen and (max-width: 1920px)
{
    .f139
    {
        font-size: calc(139 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f139
    {
        font-size: calc(137 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f139
    {
        font-size: calc(149 / 750 * 100vw);
    }
}

.f140
{
    font-size: 140px;
}

@media print, screen and (max-width: 1920px)
{
    .f140
    {
        font-size: calc(140 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f140
    {
        font-size: calc(138 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f140
    {
        font-size: calc(150 / 750 * 100vw);
    }
}

.f141
{
    font-size: 141px;
}

@media print, screen and (max-width: 1920px)
{
    .f141
    {
        font-size: calc(141 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f141
    {
        font-size: calc(139 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f141
    {
        font-size: calc(151 / 750 * 100vw);
    }
}

.f142
{
    font-size: 142px;
}

@media print, screen and (max-width: 1920px)
{
    .f142
    {
        font-size: calc(142 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f142
    {
        font-size: calc(140 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f142
    {
        font-size: calc(152 / 750 * 100vw);
    }
}

.f143
{
    font-size: 143px;
}

@media print, screen and (max-width: 1920px)
{
    .f143
    {
        font-size: calc(143 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f143
    {
        font-size: calc(141 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f143
    {
        font-size: calc(153 / 750 * 100vw);
    }
}

.f144
{
    font-size: 144px;
}

@media print, screen and (max-width: 1920px)
{
    .f144
    {
        font-size: calc(144 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f144
    {
        font-size: calc(142 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f144
    {
        font-size: calc(154 / 750 * 100vw);
    }
}

.f145
{
    font-size: 145px;
}

@media print, screen and (max-width: 1920px)
{
    .f145
    {
        font-size: calc(145 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f145
    {
        font-size: calc(143 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f145
    {
        font-size: calc(155 / 750 * 100vw);
    }
}

.f146
{
    font-size: 146px;
}

@media print, screen and (max-width: 1920px)
{
    .f146
    {
        font-size: calc(146 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f146
    {
        font-size: calc(144 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f146
    {
        font-size: calc(156 / 750 * 100vw);
    }
}

.f147
{
    font-size: 147px;
}

@media print, screen and (max-width: 1920px)
{
    .f147
    {
        font-size: calc(147 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f147
    {
        font-size: calc(145 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f147
    {
        font-size: calc(157 / 750 * 100vw);
    }
}

.f148
{
    font-size: 148px;
}

@media print, screen and (max-width: 1920px)
{
    .f148
    {
        font-size: calc(148 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f148
    {
        font-size: calc(146 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f148
    {
        font-size: calc(158 / 750 * 100vw);
    }
}

.f149
{
    font-size: 149px;
}

@media print, screen and (max-width: 1920px)
{
    .f149
    {
        font-size: calc(149 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f149
    {
        font-size: calc(147 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f149
    {
        font-size: calc(159 / 750 * 100vw);
    }
}

.f150
{
    font-size: 150px;
}

@media print, screen and (max-width: 1920px)
{
    .f150
    {
        font-size: calc(150 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f150
    {
        font-size: calc(148 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f150
    {
        font-size: calc(160 / 750 * 100vw);
    }
}

.f151
{
    font-size: 151px;
}

@media print, screen and (max-width: 1920px)
{
    .f151
    {
        font-size: calc(151 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f151
    {
        font-size: calc(149 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f151
    {
        font-size: calc(161 / 750 * 100vw);
    }
}

.f152
{
    font-size: 152px;
}

@media print, screen and (max-width: 1920px)
{
    .f152
    {
        font-size: calc(152 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f152
    {
        font-size: calc(150 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f152
    {
        font-size: calc(162 / 750 * 100vw);
    }
}

.f153
{
    font-size: 153px;
}

@media print, screen and (max-width: 1920px)
{
    .f153
    {
        font-size: calc(153 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f153
    {
        font-size: calc(151 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f153
    {
        font-size: calc(163 / 750 * 100vw);
    }
}

.f154
{
    font-size: 154px;
}

@media print, screen and (max-width: 1920px)
{
    .f154
    {
        font-size: calc(154 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f154
    {
        font-size: calc(152 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f154
    {
        font-size: calc(164 / 750 * 100vw);
    }
}

.f155
{
    font-size: 155px;
}

@media print, screen and (max-width: 1920px)
{
    .f155
    {
        font-size: calc(155 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f155
    {
        font-size: calc(153 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f155
    {
        font-size: calc(165 / 750 * 100vw);
    }
}

.f156
{
    font-size: 156px;
}

@media print, screen and (max-width: 1920px)
{
    .f156
    {
        font-size: calc(156 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f156
    {
        font-size: calc(154 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f156
    {
        font-size: calc(166 / 750 * 100vw);
    }
}

.f157
{
    font-size: 157px;
}

@media print, screen and (max-width: 1920px)
{
    .f157
    {
        font-size: calc(157 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f157
    {
        font-size: calc(155 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f157
    {
        font-size: calc(167 / 750 * 100vw);
    }
}

.f158
{
    font-size: 158px;
}

@media print, screen and (max-width: 1920px)
{
    .f158
    {
        font-size: calc(158 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f158
    {
        font-size: calc(156 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f158
    {
        font-size: calc(168 / 750 * 100vw);
    }
}

.f159
{
    font-size: 159px;
}

@media print, screen and (max-width: 1920px)
{
    .f159
    {
        font-size: calc(159 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f159
    {
        font-size: calc(157 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f159
    {
        font-size: calc(169 / 750 * 100vw);
    }
}

.f160
{
    font-size: 160px;
}

@media print, screen and (max-width: 1920px)
{
    .f160
    {
        font-size: calc(160 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f160
    {
        font-size: calc(158 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f160
    {
        font-size: calc(170 / 750 * 100vw);
    }
}

.f161
{
    font-size: 161px;
}

@media print, screen and (max-width: 1920px)
{
    .f161
    {
        font-size: calc(161 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f161
    {
        font-size: calc(159 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f161
    {
        font-size: calc(171 / 750 * 100vw);
    }
}

.f162
{
    font-size: 162px;
}

@media print, screen and (max-width: 1920px)
{
    .f162
    {
        font-size: calc(162 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f162
    {
        font-size: calc(160 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f162
    {
        font-size: calc(172 / 750 * 100vw);
    }
}

.f163
{
    font-size: 163px;
}

@media print, screen and (max-width: 1920px)
{
    .f163
    {
        font-size: calc(163 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f163
    {
        font-size: calc(161 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f163
    {
        font-size: calc(173 / 750 * 100vw);
    }
}

.f164
{
    font-size: 164px;
}

@media print, screen and (max-width: 1920px)
{
    .f164
    {
        font-size: calc(164 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f164
    {
        font-size: calc(162 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f164
    {
        font-size: calc(174 / 750 * 100vw);
    }
}

.f165
{
    font-size: 165px;
}

@media print, screen and (max-width: 1920px)
{
    .f165
    {
        font-size: calc(165 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f165
    {
        font-size: calc(163 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f165
    {
        font-size: calc(175 / 750 * 100vw);
    }
}

.f166
{
    font-size: 166px;
}

@media print, screen and (max-width: 1920px)
{
    .f166
    {
        font-size: calc(166 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f166
    {
        font-size: calc(164 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f166
    {
        font-size: calc(176 / 750 * 100vw);
    }
}

.f167
{
    font-size: 167px;
}

@media print, screen and (max-width: 1920px)
{
    .f167
    {
        font-size: calc(167 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f167
    {
        font-size: calc(165 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f167
    {
        font-size: calc(177 / 750 * 100vw);
    }
}

.f168
{
    font-size: 168px;
}

@media print, screen and (max-width: 1920px)
{
    .f168
    {
        font-size: calc(168 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f168
    {
        font-size: calc(166 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f168
    {
        font-size: calc(178 / 750 * 100vw);
    }
}

.f169
{
    font-size: 169px;
}

@media print, screen and (max-width: 1920px)
{
    .f169
    {
        font-size: calc(169 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f169
    {
        font-size: calc(167 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f169
    {
        font-size: calc(179 / 750 * 100vw);
    }
}

.f170
{
    font-size: 170px;
}

@media print, screen and (max-width: 1920px)
{
    .f170
    {
        font-size: calc(170 / 1920 * 100vw);
    }
}

@media print, screen and (max-width: 1025px)
{
    .f170
    {
        font-size: calc(168 / 1024 * 100vw);
    }
}

@media print, screen and (max-width: 430px)
{
    .f170
    {
        font-size: calc(180 / 750 * 100vw);
    }
}

html,
body
{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 18px;

    overflow-x: hidden;

    text-align: center;

    color: #000;
}

a
{
    text-decoration: none;

    color: #000;
}

.sp
{
    display: none !important;
}

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

.pc
{
    display: block;
}

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

.spi
{
    display: none;
}

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

.pdi
{
    display: none;
}

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

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

.pci
{
    display: inline;
}

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

.fadeUp
{
    -webkit-transition: all 1s;
            transition: all 1s;
    -webkit-transform: translate(0, 50px);
            transform: translate(0, 50px);

    opacity: 0;
}

.is-active.fadeUp
{
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);

    opacity: 1;
}

/* フィルター */
.color
{
    position: absolute;
    z-index: 2;

    pointer-events: none;

    inset: 0;
}

.color-inner
{
    position: absolute;
    /* ★ 常に transition を持たせる */

    -webkit-transition: -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
            transition: -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
            transition:         transform .4s cubic-bezier(.75, 0, .25, 1);
            transition:         transform .4s cubic-bezier(.75, 0, .25, 1), -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
    /* 初期状態：右側に畳まれている */
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right center;
            transform-origin: right center;

    background: #0055b2;

    inset: 0;
}

/* 右 → 左に表示 */
.color-inner.is-enter
{
    -webkit-transition: -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
            transition: -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
            transition:         transform .4s cubic-bezier(.75, 0, .25, 1);
            transition:         transform .4s cubic-bezier(.75, 0, .25, 1), -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right center;
            transform-origin: right center;
}

/* 左を固定して、右から抜ける */
.color-inner.is-exit
{
    -webkit-transition: -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
            transition: -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
            transition:         transform .4s cubic-bezier(.75, 0, .25, 1);
            transition:         transform .4s cubic-bezier(.75, 0, .25, 1), -webkit-transform .4s cubic-bezier(.75, 0, .25, 1);
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left center;
            transform-origin: left center;
}

.js-slideIn
{
    -webkit-transition: opacity .6s cubic-bezier(.4, 0, .2, 1), -webkit-transform .6s cubic-bezier(.4, 0, .2, 1);
            transition: opacity .6s cubic-bezier(.4, 0, .2, 1), -webkit-transform .6s cubic-bezier(.4, 0, .2, 1);
            transition: transform .6s cubic-bezier(.4, 0, .2, 1), opacity .6s cubic-bezier(.4, 0, .2, 1);
            transition: transform .6s cubic-bezier(.4, 0, .2, 1), opacity .6s cubic-bezier(.4, 0, .2, 1), -webkit-transform .6s cubic-bezier(.4, 0, .2, 1);

    opacity: 0;
}

/* 左 → 右 */
.is-from-left
{
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
}

/* 右 → 左 */
.is-from-right
{
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
}

/* 表示 */
.js-slideIn.is-show
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

@-webkit-keyframes slideInLeftPc
{
    from
    {
        -webkit-transform: translateX(-50px);
                transform: translateX(-50px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
}

@keyframes slideInLeftPc
{
    from
    {
        -webkit-transform: translateX(-50px);
                transform: translateX(-50px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
}

@-webkit-keyframes slideInRight
{
    from
    {
        -webkit-transform: translateX(50px);
                transform: translateX(50px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
}

@keyframes slideInRight
{
    from
    {
        -webkit-transform: translateX(50px);
                transform: translateX(50px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
}

/* 共通：初期状態 */
.fade-item
{
    -webkit-transition: opacity .8s ease, -webkit-transform .8s cubic-bezier(.25, .46, .45, .94);
            transition: opacity .8s ease, -webkit-transform .8s cubic-bezier(.25, .46, .45, .94);
            transition: opacity .8s ease, transform .8s cubic-bezier(.25, .46, .45, .94);
            transition: opacity .8s ease, transform .8s cubic-bezier(.25, .46, .45, .94), -webkit-transform .8s cubic-bezier(.25, .46, .45, .94);
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);

    opacity: 0;

    will-change: opacity, transform;
}

/* 表示されたとき */
.fade-item.is-visible
{
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);

    opacity: 1;
}

/* 左から */
.fade-from-left
{
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px);
}

/* 右から */
.fade-from-right
{
    -webkit-transform: translateX(80px);
            transform: translateX(80px);
}

/* 下から */
.fade-from-bottom
{
    -webkit-transform: translateY(80px);
            transform: translateY(80px);
}

.rotate-on-view
{
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform-origin: center center;
            transform-origin: center center;
}

.rotate-on-view.is-rotated
{
    -webkit-animation: rotate-once 2.5s ease-out forwards;
            animation: rotate-once 2.5s ease-out forwards;
}

@-webkit-keyframes rotate-once
{
    to
    {
        -webkit-transform: rotate(720deg);
                transform: rotate(720deg);
        /* 360 × 2 */
    }
}

@keyframes rotate-once
{
    to
    {
        -webkit-transform: rotate(720deg);
                transform: rotate(720deg);
        /* 360 × 2 */
    }
}

@-webkit-keyframes tilt
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    20%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
        /* 少し溜め */
    }
    30%
    {
        -webkit-transform: rotate(-20deg);
                transform: rotate(-20deg);
        /* 左に曲がる */
    }
    35%
    {
        -webkit-transform: rotate(-20deg);
                transform: rotate(-20deg);
        /* しっかり止める */
    }
    55%
    {
        -webkit-transform: rotate(20deg);
                transform: rotate(20deg);
        /* 右に曲がる */
    }
    100%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
        /* 元に戻る */
    }
}

@keyframes tilt
{
    0%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
    }
    20%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
        /* 少し溜め */
    }
    30%
    {
        -webkit-transform: rotate(-20deg);
                transform: rotate(-20deg);
        /* 左に曲がる */
    }
    35%
    {
        -webkit-transform: rotate(-20deg);
                transform: rotate(-20deg);
        /* しっかり止める */
    }
    55%
    {
        -webkit-transform: rotate(20deg);
                transform: rotate(20deg);
        /* 右に曲がる */
    }
    100%
    {
        -webkit-transform: rotate(0deg);
                transform: rotate(0deg);
        /* 元に戻る */
    }
}

.is-tilt
{
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation: tilt 1.6s ease-in-out;
            animation: tilt 1.6s ease-in-out;
}

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

.l-sec__inner
{
    width: 87.5vw;
    max-width: 1680px;
    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__innerShort
{
    width: 78.125vw;
    max-width: 1500px;
    margin: 0 auto;
}

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

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

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

/* ============== .head ============== */
.head
{
    width: 100%;
    height: 100px;
    margin: 0 auto;
}

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

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

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

.head:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

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

.head--local
{
    position: absolute;
    z-index: 1000;
    top: 0;
    right: 0;
    left: 0;

    width: 100%;
    margin: 0 auto;
}

.head--local::before
{
    background-image: none;
}

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

    width: 100%;
    height: 100px;

    -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-color: #fff;
}

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

        height: 5.20833vw;
    }
}

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

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

.head--fixed:before
{
    display: none;
}

.head--open
{
    position: relative;
    z-index: 30;

    background-color: #fff;
}

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

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    padding: 0 223px 0 25px;

    -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: 1920px)
{
    .head__inner
    {
        padding: 0 11.61458vw 0 1.30208vw;
    }
}

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

.head__logoLink:hover
{
    opacity: .7;
}

.head__logo
{
    width: 334px;
}

@media print, screen and (max-width: 1920px)
{
    .head__logo
    {
        width: 17.39583vw;
    }
}

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

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

.head__logoIcon
{
    width: 100%;
}

.head__logoIcon > picture
{
    display: block;

    width: 100%;
}

.head__logoIcon > picture > img
{
    display: block;

    width: 100%;
}

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

.head__nav--local
{
    pointer-events: none;

    opacity: 0;
}

.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: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .head__list
    {
        margin-right: 3.125vw;
    }
}

.head__list:last-child
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 227px;
    margin-right: 0;
    padding: 17px 15px 17px 29px;

    border-radius: 26px;
    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .head__list:last-child
    {
        width: 11.82292vw;
        padding: .88542vw .78125vw .88542vw 1.51042vw;

        border-radius: 1.35417vw;
    }
}

.head__link
{
    font-weight: 500;

    display: block;
}

.head__link > span
{
    position: relative;

    padding-bottom: 5px;
}

@media print, screen and (max-width: 1920px)
{
    .head__link > span
    {
        padding-bottom: .26042vw;
    }
}

.head__link > span:before
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 0;
    height: 1px;

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

    background-color: #009cde;
}

.head__link:hover > span:before
{
    width: 100%;
}

.head__itemLink
{
    position: absolute;
    top: 0;
    right: 0;

    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;

    width: 174px;
    padding: 9px 0 11px 0;

    border-bottom: 2px solid #031e37;
    border-left: 2px solid #031e37;
    border-radius: 0 0 0 40px;
    background-color: #fff;

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

.head__itemLink--local
{
    pointer-events: none;

    opacity: 0;
}

@media print, screen and (max-width: 1920px)
{
    .head__itemLink
    {
        width: 9.0625vw;
        padding: .46875vw 0 .57292vw 0;

        border-bottom: .10417vw solid #031e37;
        border-left: .10417vw solid #031e37;
        border-radius: 0 0 0 2.08333vw;
    }
}

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

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

    width: 100%;
    height: 100%;

    content: '';

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

.head__itemLink:hover .head__hoverImg
{
    -webkit-transform: translateX(0);
            transform: translateX(0);
}

.head__itemImg
{
    width: 106px;
    margin-left: 14px;
}

@media print, screen and (max-width: 1920px)
{
    .head__itemImg
    {
        width: 5.52083vw;
        margin-left: .72917vw;
    }
}

.head__itemImg > picture
{
    display: block;

    width: 100%;
}

.head__itemImg > picture > img
{
    display: block;

    width: 100%;
}

.head__itemTxtBox
{
    margin-right: 20px;
}

@media print, screen and (max-width: 1920px)
{
    .head__itemTxtBox
    {
        margin-right: 1.04167vw;
    }
}

.head__itemTxt
{
    font-weight: 600;

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

    color: #031e37;

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

.head__itemArrow
{
    width: 22px;
    margin-top: 6px;
}

@media print, screen and (max-width: 1920px)
{
    .head__itemArrow
    {
        width: 1.14583vw;
        margin-top: .3125vw;
    }
}

.head__itemArrow > picture
{
    display: block;

    width: 100%;
}

.head__itemArrow > picture > img
{
    display: block;

    width: 100%;
}

.head__hoverImg
{
    position: relative;
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;

    -webkit-transition: ease .3s;
            transition: ease .3s;
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
}

.head__hoverImg > picture
{
    display: block;

    width: 100%;
    height: 174px;

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

@media print, screen and (max-width: 1920px)
{
    .head__hoverImg > picture
    {
        height: 9.0625vw;
    }
}

.head__hoverImg > picture > img
{
    display: block;

    width: 100%;
}

.head__hoverImg:before
{
    position: absolute;
    position: absolute;
    top: 0;
    top: 48px;
    left: 62px;

    width: 49px;
    height: 49px;
    margin: auto;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .head__hoverImg:before
    {
        top: 2.5vw;
        left: 3.22917vw;

        width: 2.55208vw;
        height: 2.55208vw;
    }
}

.head__spNav
{
    display: none;
}

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

        display: block;

        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 7.32422vw;
        height: 7.32422vw;

        cursor: pointer;

        background-color: #0055b2;
    }
}

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

@media print, screen and (max-width: 1025px)
{
    .head__spNav > span
    {
        position: absolute;
        right: 0;
        left: 0;

        width: 2.53906vw;
        height: .14648vw;
        margin: 0 auto;

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

        background-color: #fff;
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    overflow: scroll;

    width: 100%;
    height: 100vh;

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

    opacity: 0;
    background-color: #0055b2;

    -webkit-overflow-scrolling: touch;
}

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

    opacity: 1;
}

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

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

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

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

        padding: 28.53333vw 9.33333vw 0 9.33333vw;

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

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

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

        text-align: left;
    }
}

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

.head__spMenuLink
{
    display: block;
}

@media print, screen and (max-width: 1025px)
{
    .head__spMenuLink
    {
        font-weight: 500;

        letter-spacing: .03em;

        color: #fff;
    }
}

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

@media print, screen and (max-width: 1025px)
{
    .head__spMenuTxt
    {
        font-family: 'Sorts Mill Goudy', serif;
        font-size: 1.36719vw;

        position: absolute;
        right: 0;
        bottom: .97656vw;
        left: 0;

        margin: 0 auto;

        text-align: center;

        color: #fff;
    }
}

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

        bottom: 1.75781vw;

        letter-spacing: .08em;
    }
}

.head__menuOpen
{
    position: fixed;
    z-index: 888;
    top: 0;
    right: 0;
    left: 0;

    visibility: hidden;
    overflow: scroll;

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

    -webkit-transition: visibility .5s linear, opacity .5s linear;
            transition: visibility .5s linear, opacity .5s linear;
    pointer-events: none;

    opacity: 0;
    background-color: #004b91;
    -webkit-box-shadow: 0 6px 20px rgba(0, 0, 0, .16);
            box-shadow: 0 6px 20px rgba(0, 0, 0, .16);

    -webkit-overflow-scrolling: touch;
    backdrop-filter: blur(6px);
}

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

        -webkit-box-shadow: 0/1024 6/1024 20/1024 rgba(0, 0, 0, .16);
                box-shadow: 0/1024 6/1024 20/1024 rgba(0, 0, 0, .16);
    }
}

@media print, screen and (max-width: 430px)
{
    .head__menuOpen
    {
        width: 91.2vw;

        -webkit-box-shadow: 0/375 6/375 20/375 rgba(0, 0, 0, .16);
                box-shadow: 0/375 6/375 20/375 rgba(0, 0, 0, .16);
    }
}

.head__menuOpen--open
{
    visibility: visible;

    -webkit-transition: visibility 0s, opacity .3s cubic-bezier(.32, .94, .6, 1);
            transition: visibility 0s, opacity .3s cubic-bezier(.32, .94, .6, 1);
    pointer-events: auto;

    opacity: 1;
}

.head__menuOpen--open .fadein
{
    -webkit-transition: opacity .3s linear, -webkit-transform .3s linear;
            transition: opacity .3s linear, -webkit-transform .3s linear;
            transition: opacity .3s linear, transform .3s linear;
            transition: opacity .3s linear, transform .3s linear, -webkit-transform .3s linear;
    -webkit-transform: translateY(0);
            transform: translateY(0);

    opacity: 1;
}

.head__menuOpen--open .fadein--1
{
    -webkit-transition-delay: .5s;
            transition-delay: .5s;
}

.head__menuOpen--open .fadein--2
{
    -webkit-transition-delay: .6s;
            transition-delay: .6s;
}

.head__menuOpen--open .fadein--3
{
    -webkit-transition-delay: .7s;
            transition-delay: .7s;
}

.head__menuOpen--open .fadein--4
{
    -webkit-transition-delay: .8s;
            transition-delay: .8s;
}

.head__menuOpen--open .fadein--5
{
    -webkit-transition-delay: .9s;
            transition-delay: .9s;
}

.head__menuOpen--open .fadein--6
{
    -webkit-transition-delay: 1s;
            transition-delay: 1s;
}

.head__menuOpen--open .fadein--7
{
    -webkit-transition-delay: 1.1s;
            transition-delay: 1.1s;
}

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

    opacity: 1;
}

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

    opacity: 1;
}

.head__menuInner
{
    position: relative;
    z-index: 889;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

@media print, screen and (max-width: 1025px)
{
    .head__menuInner
    {
        width: 100%;
        padding: 19.53125vw 9.76562vw 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .head__menuInner
    {
        padding: 26.13333vw 11.2vw 14.66667vw 13.6vw;
    }
}

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

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

.head__menuItem
{
    list-style: none;
}

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

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

@media print, screen and (max-width: 1025px)
{
    .head__menuItem:first-child
    {
        margin-top: 0;
    }
}

.head__menuLink
{
    position: relative;

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

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

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

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

.head__menuBox
{
    position: relative;

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

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

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

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

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

        letter-spacing: .05em;

        color: #fff;
    }
}

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

@media print, screen and (max-width: 1025px)
{
    .head__menuEn
    {
        font-family: 'Noto Sans', serif;
        font-size: 1.36719vw;
        font-weight: 500;

        letter-spacing: 0;

        color: #fff;
    }
}

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

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

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

@media print, screen and (max-width: 1025px)
{
    .head__menuSubLink
    {
        font-size: 1.85547vw;
        font-weight: 700;
        line-height: 1.1;

        position: relative;

        display: block;

        padding: 1.85547vw 0;

        letter-spacing: .05em;

        color: #fff;
        border-bottom: 1px solid rgba(255, 255, 255, .23);
    }
}

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

        padding: 3.73333vw 0;
    }
}

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

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

@media print, screen and (max-width: 1025px)
{
    .head__menuSubLink:last-child
    {
        border-bottom: none;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__menuSubLink:before
    {
        position: absolute;
        top: 0;
        right: 1.36719vw;
        bottom: 0;

        width: 1.95312vw;
        height: 1.95312vw;
        margin: auto 0;

        content: '';

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

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

        width: 3.35467vw;
        height: 3.35467vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__menuSubTxt
    {
        font-size: 1.85547vw;
        font-weight: 700;
        line-height: 1.1;

        position: relative;

        display: block;

        padding: 1.85547vw 0;

        letter-spacing: .05em;

        color: #fff;
        border-bottom: 1px solid rgba(255, 255, 255, .23);
    }
}

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

        padding: 3.73333vw 0;
    }
}

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

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

@media print, screen and (max-width: 1025px)
{
    .head__menuSubTxt:last-child
    {
        border-bottom: none;
    }
}

@media print, screen and (max-width: 1025px)
{
    .head__menuSubTxt:before
    {
        position: absolute;
        top: 0;
        right: 1.36719vw;
        bottom: 0;

        width: 1.95312vw;
        height: 1.95312vw;
        margin: auto 0;

        content: '';

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

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

        width: 3.35467vw;
        height: 3.35467vw;
    }
}

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

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

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

        width: 100%;
        margin-bottom: 2.92969vw;
        padding: 2.92969vw 0;

        text-align: center;

        background: -webkit-gradient(linear, right top, left top, from(#3276e3), to(#65c9fd));
        background: linear-gradient(to left, #3276e3 0%, #65c9fd 100%);
    }
}

@media print, screen and (max-width: 430px)
{
    .head__menuBtn
    {
        margin-bottom: 4.26667vw;
        padding: 5.06667vw 0;
    }
}

.head__menuBtn:last-child
{
    margin-bottom: 0;
}

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

        margin-top: .58594vw;
    }
}

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

        margin-top: 1.6vw;
    }
}

.fadein
{
    -webkit-transform: translateY(50px);
            transform: translateY(50px);

    opacity: 0;
}

@media print, screen and (max-width: 1920px)
{
    .fadein
    {
        -webkit-transform: translateY(2.60417vw);
                transform: translateY(2.60417vw);
    }
}

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

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

/* ============== .foot ============== */
.foot
{
    position: relative;
    z-index: 10;

    width: 100%;
    padding: 308px 0 45px 0;

    background-color: #eaeaea;
}

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

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

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

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

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

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.foot__lBox
{
    text-align: left;
}

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

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}

.foot__txt
{
    font-weight: 500;
    line-height: 1.5;

    margin-top: 20px;

    letter-spacing: .05em;
}

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

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

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

        margin-top: 2.13333vw;

        text-align: center;
    }
}

.foot__tel
{
    font-weight: 500;
    line-height: 1.5;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 430px)
{
    .foot__tel
    {
        text-align: center;
    }
}

.foot__copy
{
    font-weight: 400;

    margin-top: 15px;

    letter-spacing: .05em;

    color: #6c6c6c;
}

@media print, screen and (max-width: 1920px)
{
    .foot__copy
    {
        margin-top: .78125vw;
    }
}

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

        white-space: nowrap;
    }
}

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

        margin-top: 12.93333vw;

        text-align: center;
    }
}

.foot__logoLink:hover
{
    opacity: .7;
}

.foot__logo
{
    width: 334px;
}

@media print, screen and (max-width: 1920px)
{
    .foot__logo
    {
        width: 17.39583vw;
    }
}

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

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

.foot__logo > picture
{
    display: block;

    width: 100%;
}

.foot__logo > picture > img
{
    display: block;

    width: 100%;
}

.foot__rBox
{
    width: 1023px;
    padding-top: 36px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .foot__rBox
    {
        width: 53.28125vw;
        padding-top: 1.875vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .foot__rBox
    {
        width: 100%;
        margin-top: 5.33333vw;
        padding-top: 0;
    }
}

.foot__nav
{
    padding-bottom: 30px;

    border-bottom: 1px solid #000;
}

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

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

@media print, screen and (max-width: 430px)
{
    .foot__nav
    {
        width: 100%;
        padding-top: 8vw;
        padding-bottom: 2.66667vw;

        border-top: 1px solid #000;
    }
}

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

    width: 986px;
    margin: 0 auto;

    -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: 1920px)
{
    .foot__listBox
    {
        width: 51.35417vw;
    }
}

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

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .foot__list
    {
        width: 50%;
        padding-bottom: 6.66667vw;
    }
}

.foot__link
{
    font-weight: 500;

    display: block;
}

.foot__link > span
{
    position: relative;

    padding-bottom: 5px;
}

@media print, screen and (max-width: 1920px)
{
    .foot__link > span
    {
        padding-bottom: .26042vw;
    }
}

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

        padding-bottom: .48828vw;
    }
}

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

.foot__link > span:before
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 0;
    height: 1px;

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

    background-color: #009cde;
}

.foot__link:hover > span:before
{
    width: 100%;
}

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

    margin-top: 30px;
    padding-left: 20px;
}

@media print, screen and (max-width: 1920px)
{
    .foot__xBox
    {
        margin-top: 1.5625vw;
        padding-left: 1.04167vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .foot__xBox
    {
        margin-top: 5.33333vw;
        padding-left: 0;

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

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

    margin-left: 12px;
}

@media print, screen and (max-width: 1920px)
{
    .foot__xTxtBox
    {
        margin-left: .625vw;
    }
}

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

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

.foot__xTxtBox::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 255px;
    height: 26px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .foot__xTxtBox::before
    {
        width: 13.28125vw;
        height: 1.35417vw;
    }
}

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

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

.foot__xTxt
{
    font-weight: 400;
    line-height: 26px;

    padding-left: 17px;

    letter-spacing: .05em;

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .foot__xTxt
    {
        line-height: 1.35417vw;

        padding-left: .88542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .foot__xTxt
    {
        line-height: 2.14844vw;

        padding-left: 1.75781vw;
    }
}

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

        padding-left: 4.53333vw;
    }
}

.foot__xLink
{
    width: 19.5px;
    padding-top: 3px;
}

@media print, screen and (max-width: 1920px)
{
    .foot__xLink
    {
        width: 1.01562vw;
        padding-top: .15625vw;
    }
}

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

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

.foot__xLink > img
{
    display: block;

    width: 100%;
}

.foot__xLink:hover
{
    opacity: .7;
}

.foot__topBtnBox
{
    position: fixed;
    z-index: 900;
    right: 24px;
    bottom: 150px;

    width: 82px;
    height: 82px;

    -webkit-transition: .5s ease;
            transition: .5s ease;

    border: 1px solid transparent;
    border-radius: 10px;
    background-color: #fff;
    -webkit-box-shadow: 0 0 20px rgba(0, 28, 95, .2);
            box-shadow: 0 0 20px rgba(0, 28, 95, .2);
}

@media print, screen and (max-width: 1920px)
{
    .foot__topBtnBox
    {
        right: 1.25vw;
        bottom: 7.8125vw;

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

@media print, screen and (max-width: 1025px)
{
    .foot__topBtnBox
    {
        right: 2.34375vw;
        bottom: 14.64844vw;

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

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

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

.foot__topBtnBox:hover
{
    border: 1px solid #009cde;
}

.foot__topBtnArrow
{
    width: 23px;
    margin: 15px auto 10px;
}

@media print, screen and (max-width: 1920px)
{
    .foot__topBtnArrow
    {
        width: 1.19792vw;
        margin: .78125vw auto .52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .foot__topBtnArrow
    {
        width: 2.24609vw;
        margin: 1.46484vw auto .97656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .foot__topBtnArrow
    {
        width: 3.2vw;
        margin: 1.6vw auto 1.33333vw;
    }
}

.foot__topBtnArrow > img
{
    display: block;

    width: 100%;
}

.foot__topBtnTxt
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;

    color: #007baf;
}

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

.foot .hidden
{
    pointer-events: none;

    opacity: 0;
}

.foot .visible
{
    pointer-events: auto;

    opacity: 1;
}

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

    overflow: hidden;

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

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

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

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

.fv:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

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

.fv__inner
{
    position: relative;

    width: 100%;
    max-width: 1920px;
}

.fv__cont
{
    position: relative;

    width: 100%;
    height: 100%;
}

.fv__cont::before
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 844px;
    height: 986px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .fv__cont::before
    {
        width: 43.95833vw;
        height: 51.35417vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__cont::before
    {
        width: 100%;
        height: 158.53333vw;

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

.fv__cont::after
{
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;

    width: 828px;
    height: 1132px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .fv__cont::after
    {
        width: 43.125vw;
        height: 58.95833vw;
    }
}

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

.fv__catchWrp
{
    line-height: 1.3;

    position: absolute;
    top: 274px;
    left: 150px;

    width: 855px;
    margin: 0 auto;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchWrp
    {
        top: 14.27083vw;
        left: 7.8125vw;

        width: 44.53125vw;
    }
}

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

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

        top: 34.66667vw;
        left: 3.2vw;

        width: 100%;
    }
}

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

    display: block;
    overflow: hidden;

    width: 779px;
    margin-bottom: 33px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchCont
    {
        width: 40.57292vw;
        margin-bottom: 1.71875vw;
    }
}

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

.fv__catchCont::before
{
    position: absolute;
    z-index: -1;

    content: '';
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;

    background: #0055b2;

    inset: 0;
}

.fv__catchCont--01
{
    width: 438px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchCont--01
    {
        width: 22.8125vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .fv__catchCont--01
    {
        width: 44.93333vw;
    }
}

.fv__catchCont--01::before
{
    position: absolute;
    z-index: -1;

    content: '';
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;

    background: #0055b2;

    inset: 0;
}

.fv__catchCont--02
{
    width: 658px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchCont--02
    {
        width: 34.27083vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .fv__catchCont--02
    {
        width: 67.46667vw;
    }
}

.fv__catchCont--02::before
{
    position: absolute;
    z-index: -1;

    content: '';
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;

    background: #0055b2;

    inset: 0;
}

.fv__catchCont--03
{
    width: 770px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchCont--03
    {
        width: 40.10417vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .fv__catchCont--03
    {
        width: 79.06667vw;
    }
}

.fv__catchCont--03::before
{
    position: absolute;
    z-index: -1;

    content: '';
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;

    background: #0055b2;

    inset: 0;
}

.fv__catchCont--04
{
    width: 430px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchCont--04
    {
        width: 22.39583vw;
    }
}

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

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

.fv__catchCont--04::before
{
    position: absolute;
    z-index: -1;

    content: '';
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;

    background: #0055b2;

    inset: 0;
}

.fv__catchCont > img
{
    display: block;

    width: 100%;

    -webkit-animation-duration: .6s;
            animation-duration: .6s;
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;

    opacity: 0;
}

.fv__catchBlue
{
    font-family: 'Manrope', sans-serif;
    font-weight: 500;

    margin-top: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__catchBlue
    {
        margin-top: 3.125vw;
    }
}

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

        margin-top: 2.92969vw;
    }
}

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

        margin-top: 3.6vw;
    }
}

.fv__catchBlue > span
{
    display: inline-block;

    -webkit-transform: translateY(16px);
            transform: translateY(16px);
    letter-spacing: -.05em;

    opacity: 0;
    /* Safari以外のブラウザ用 */
    color: transparent;
    background: -webkit-gradient(linear, left top, left bottom, from(#00bcde), to(#008ecb));
    background: linear-gradient(to bottom, #00bcde, #008ecb);
    -webkit-background-clip: text;
            background-clip: text;

    -webkit-text-fill-color: transparent;
    will-change: opacity, transform;
}

.fv__photo--01
{
    position: absolute;
    top: 102px;
    right: 0;

    width: 667px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__photo--01
    {
        top: 5.3125vw;

        width: 34.73958vw;
    }
}

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

        width: 41.99219vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__photo--01
    {
        top: 92vw;

        width: 69.73333vw;
    }
}

.fv__photo--02
{
    position: absolute;
    top: 630px;
    right: 460px;

    width: 414px;
}

@media print, screen and (max-width: 1920px)
{
    .fv__photo--02
    {
        top: 32.8125vw;
        right: 23.95833vw;

        width: 21.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .fv__photo--02
    {
        top: 41.99219vw;
        right: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__photo--02
    {
        top: 140vw;
        right: 48vw;

        width: 43.33333vw;
    }
}

.fv__photo--03
{
    position: absolute;
    top: 0;
    left: 0;

    width: 516px;

    -webkit-animation: slideInLeftPc .6s ease-out forwards;
            animation: slideInLeftPc .6s ease-out forwards;
    -webkit-animation-delay: 3.4s;
            animation-delay: 3.4s;

    opacity: 0;
}

@media print, screen and (max-width: 1920px)
{
    .fv__photo--03
    {
        width: 26.875vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .fv__photo--03
    {
        width: 48vw;
    }
}

.fv__photo--04
{
    position: absolute;
    top: 640px;
    right: 148px;

    width: 386px;

    -webkit-animation: slideInRight 1s ease-out forwards;
            animation: slideInRight 1s ease-out forwards;
    -webkit-animation-delay: 3.6s;
            animation-delay: 3.6s;

    opacity: 0;
}

@media print, screen and (max-width: 1920px)
{
    .fv__photo--04
    {
        top: 33.33333vw;
        right: 7.70833vw;

        width: 20.10417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .fv__photo--04
    {
        top: 39.0625vw;
        right: 7.8125vw;

        width: 22.46094vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .fv__photo--04
    {
        top: 132vw;
        right: 0;
        left: auto;

        width: 48vw;
    }
}

.fv__photo > picture
{
    display: block;

    width: 100%;
}

.fv__photo > picture > img
{
    display: block;

    width: 100%;
}

@keyframes slideInLeftPc
{
    from
    {
        -webkit-transform: translateX(-50px);
                transform: translateX(-50px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
}

@-webkit-keyframes slideInLeftSp
{
    from
    {
        -webkit-transform: translateX(50px) scaleX(-1);
                transform: translateX(50px) scaleX(-1);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0) scaleX(-1);
                transform: translateX(0) scaleX(-1);

        opacity: 1;
    }
}

@keyframes slideInLeftSp
{
    from
    {
        -webkit-transform: translateX(50px) scaleX(-1);
                transform: translateX(50px) scaleX(-1);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0) scaleX(-1);
                transform: translateX(0) scaleX(-1);

        opacity: 1;
    }
}

@keyframes slideInRight
{
    from
    {
        -webkit-transform: translateX(50px);
                transform: translateX(50px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
}

@-webkit-keyframes catchBgSlide
{
    to
    {
        -webkit-transform: scaleX(1);
                transform: scaleX(1);
    }
}

@keyframes catchBgSlide
{
    to
    {
        -webkit-transform: scaleX(1);
                transform: scaleX(1);
    }
}

/* ===== FV開始後 ===== */
.is-fvStart
{
    -webkit-animation-delay: .8s;
            animation-delay: .8s;
    /* 共通（modifierなし） */
    /* 01 */
    /* 02 */
    /* 03 */
    /* 04 */
}

.is-fvStart .fv__catchCont::before
{
    -webkit-animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
}

.is-fvStart .fv__catchCont > img
{
    -webkit-animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;
}

.is-fvStart .fv__catchCont--01::before
{
    -webkit-animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
}

.is-fvStart .fv__catchCont--01 > img
{
    -webkit-animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: .6s;
            animation-delay: .6s;
}

.is-fvStart .fv__catchCont--02::before
{
    -webkit-animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: .3s;
            animation-delay: .3s;
}

.is-fvStart .fv__catchCont--02 > img
{
    -webkit-animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: .9s;
            animation-delay: .9s;
}

.is-fvStart .fv__catchCont--03::before
{
    -webkit-animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: .6s;
            animation-delay: .6s;
}

.is-fvStart .fv__catchCont--03 > img
{
    -webkit-animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;
}

.is-fvStart .fv__catchCont--04::before
{
    -webkit-animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchBgReveal 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: .6s;
            animation-delay: .6s;
}

.is-fvStart .fv__catchCont--04 > img
{
    -webkit-animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchTextIn .6s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: 1.2s;
            animation-delay: 1.2s;
}

.is-fvStart .fv__catchBlue > span
{
    -webkit-animation: catchBlueIn .7s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: catchBlueIn .7s cubic-bezier(.4, 0, .2, 1) forwards;
    -webkit-animation-delay: 1.4s;
            animation-delay: 1.4s;
}

/* 青背景：出て → 消える */
@-webkit-keyframes catchBgReveal
{
    0%
    {
        -webkit-transform: scaleX(0);
                transform: scaleX(0);
        -webkit-transform-origin: left;
                transform-origin: left;
    }
    /* 出現 */
    45%
    {
        -webkit-transform: scaleX(1);
                transform: scaleX(1);
        -webkit-transform-origin: left;
                transform-origin: left;
    }
    /* そのまま右へ抜けるように消失 */
    100%
    {
        -webkit-transform: scaleX(0);
        -webkit-transform: translateX(100%) scaleX(0);
                transform: scaleX(0);
                transform: translateX(100%) scaleX(0);
        -webkit-transform-origin: left;
                transform-origin: left;
    }
}
@keyframes catchBgReveal
{
    0%
    {
        -webkit-transform: scaleX(0);
                transform: scaleX(0);
        -webkit-transform-origin: left;
                transform-origin: left;
    }
    /* 出現 */
    45%
    {
        -webkit-transform: scaleX(1);
                transform: scaleX(1);
        -webkit-transform-origin: left;
                transform-origin: left;
    }
    /* そのまま右へ抜けるように消失 */
    100%
    {
        -webkit-transform: scaleX(0);
        -webkit-transform: translateX(100%) scaleX(0);
                transform: scaleX(0);
                transform: translateX(100%) scaleX(0);
        -webkit-transform-origin: left;
                transform-origin: left;
    }
}

/* テキスト表示 */
@-webkit-keyframes catchTextIn
{
    from
    {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);

        opacity: 1;
    }
}
@keyframes catchTextIn
{
    from
    {
        -webkit-transform: translateY(3px);
                transform: translateY(3px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);

        opacity: 1;
    }
}

@-webkit-keyframes catchBlueIn
{
    from
    {
        -webkit-transform: translateY(16px);
                transform: translateY(16px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);

        opacity: 1;
    }
}

@keyframes catchBlueIn
{
    from
    {
        -webkit-transform: translateY(16px);
                transform: translateY(16px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);

        opacity: 1;
    }
}

/* ============== .c-modal ============== */
.c-modal
{
    position: fixed;
    z-index: 999999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: none;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    padding-top: 141px;
    padding-bottom: 149px;

    background-color: rgba(0, 0, 0, .73);
}

@media print, screen and (max-width: 1920px)
{
    .c-modal
    {
        padding-top: 7.34375vw;
        padding-bottom: 7.76042vw;
    }
}

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

.c-modal__close
{
    position: absolute;
    top: 50px;
    right: 50px;
}

@media print, screen and (max-width: 1920px)
{
    .c-modal__close
    {
        top: 2.60417vw;
        right: 2.60417vw;
    }
}

.c-modal__closeBtn
{
    display: block;

    width: 40.81px;
    height: 40.81px;
}

@media print, screen and (max-width: 1920px)
{
    .c-modal__closeBtn
    {
        width: 2.12552vw;
        height: 2.12552vw;
    }
}

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

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

.c-modal__closeBtn > img
{
    display: block;

    width: 100%;
}

.c-modal__wrp
{
    overflow: auto;

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

    -webkit-overflow-scrolling: touch;
}

@media print, screen and (max-width: 1920px)
{
    .c-modal__wrp
    {
        width: 88.54167vw;
    }
}

.c-modal__cont
{
    display: table;

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

    table-layout: fixed;

    background-color: #fff;
}

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

.c-modal__inner
{
    margin: 0 auto;
}

/* ============== .tab ============== */
.tab__list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.tab__item
{
    cursor: pointer;

    -webkit-box-flex: 1;
    -ms-flex: 1;
        flex: 1;
}

.tab__item.-active
{
    background-color: #fff;
}

.tab__panel
{
    display: none;
}

.tab__panel.-active
{
    display: block;
}

/* ============== .swiperSec ============== */
.swiperSec
{
    width: 100%;
    padding: 100px 0;
}

@media print, screen and (max-width: 1920px)
{
    .swiperSec
    {
        padding: 5.20833vw 0;
    }
}

.swiperSec__swiper
{
    position: relative;

    overflow: hidden;

    width: 100%;
}

.swiperSec__slide
{
    height: 400px;
}

@media print, screen and (max-width: 1920px)
{
    .swiperSec__slide
    {
        height: 20.83333vw;
    }
}

.swiperSec__slide:nth-child(odd)
{
    background-color: #f3f3f1;
}

.swiperSec__slide:nth-child(even)
{
    background-color: #000;
}

/* ============== .totalSolution ============== */
.totalSolution
{
    position: relative;
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution
    {
        overflow: hidden;
    }
}

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

    width: 100%;
    height: 100%;

    content: '';

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

.totalSolution__wrp
{
    position: relative;

    padding: 88px 0 100px 0;

    background-color: #0080de;
}

@media print, screen and (max-width: 1920px)
{
    .totalSolution__wrp
    {
        padding: 4.58333vw 0 5.20833vw 0;
    }
}

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

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

.totalSolution__wrp:before
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

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

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

.totalSolution__wrp:after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 1065px;
    height: 672px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__wrp:after
    {
        width: 55.46875vw;
        height: 35vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .totalSolution__wrp:after
    {
        width: 86.93333vw;
        height: 96.93333vw;

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

.totalSolution__catch
{
    font-weight: 700;
    line-height: 1.4;

    text-align: center;
    letter-spacing: .04em;

    color: #fff;
}

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

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

.totalSolution__inner
{
    position: relative;
    z-index: 1;

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

    width: 1634px;
    margin: 0 auto;
    margin-top: 38px;

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__inner
    {
        width: 85.10417vw;
        margin-top: 1.97917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution__inner
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
        margin-top: 3.71094vw;
        padding: 0 1.46484vw;
    }
}

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

        width: 92vw;
        margin-top: 8vw;
        padding: 0;
    }
}

.totalSolution__cont
{
    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 386px;
    padding: 27px 20px 24px 27px;

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__cont
    {
        width: 20.10417vw;
        padding: 1.40625vw 1.04167vw 1.25vw 1.40625vw;

        border-radius: 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution__cont
    {
        width: 22.46094vw;
        padding: 1.95312vw;

        border-radius: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .totalSolution__cont
    {
        width: 100%;
        margin-bottom: 11.86667vw;
        padding: 3.46667vw 4.66667vw 2.13333vw 4.66667vw;

        border-radius: 2.66667vw;
    }
}

.totalSolution__cont:after
{
    position: absolute;
    top: 0;
    right: -26px;
    bottom: 0;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__cont:after
    {
        right: -1.35417vw;

        width: 1.14583vw;
        height: 2.70833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution__cont:after
    {
        right: -2.14844vw;

        width: 1.95312vw;
        height: 4.6875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .totalSolution__cont:after
    {
        top: 52vw;
        right: 0;
        left: 0;

        width: 20.93333vw;
        height: 6.53333vw;
        margin: 0 auto;

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

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

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

.totalSolution__img
{
    width: 346px;
}

@media print, screen and (max-width: 1920px)
{
    .totalSolution__img
    {
        width: 18.02083vw;
    }
}

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

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

.totalSolution__img > picture
{
    display: block;

    width: 100%;
}

.totalSolution__img > picture > img
{
    display: block;

    width: 100%;
}

.totalSolution__txt
{
    margin-top: 20px;
}

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

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

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

.totalSolution__txt > span
{
    font-weight: 600;

    position: relative;

    margin-top: 10px;

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__txt > span
    {
        margin-top: .52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution__txt > span
    {
        margin-top: .97656vw;
    }
}

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

        margin-top: 1.06667vw;
    }
}

.totalSolution__txt > span:before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -23px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__txt > span:before
    {
        left: -1.19792vw;

        width: .75vw;
        height: .75vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution__txt > span:before
    {
        left: -2.24609vw;

        width: 1.5625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .totalSolution__txt > span:before
    {
        top: .66667vw;
        left: -3.06667vw;

        width: 2.13333vw;
        height: 2.13333vw;
    }
}

.totalSolution__txt > span:after
{
    position: absolute;
    top: 0;
    right: -23px;
    bottom: 0;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .totalSolution__txt > span:after
    {
        right: -1.19792vw;

        width: .75vw;
        height: .75vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .totalSolution__txt > span:after
    {
        right: -2.24609vw;

        width: 1.5625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .totalSolution__txt > span:after
    {
        top: .66667vw;
        right: -3.06667vw;

        width: 2.13333vw;
        height: 2.13333vw;
    }
}

.totalSolution__photo
{
    opacity: 0;

    will-change: opacity, transform;
}

.totalSolution__photo--01
{
    position: absolute;
    z-index: 1;
    top: -120px;
    left: 0;

    width: 766px;
}

@media print, screen and (max-width: 1920px)
{
    .totalSolution__photo--01
    {
        top: -6.25vw;

        width: 39.89583vw;
    }
}

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

        width: 32.22656vw;
    }
}

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

        width: 89.06667vw;
    }
}

.totalSolution__photo--02
{
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 0;

    width: 604px;
}

@media print, screen and (max-width: 1920px)
{
    .totalSolution__photo--02
    {
        width: 31.45833vw;
    }
}

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

        width: 70.4vw;
    }
}

.totalSolution__photo > picture
{
    display: block;

    width: 100%;
}

.totalSolution__photo > picture > img
{
    display: block;

    width: 100%;
}

.totalSolution__photo.is-from-left
{
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
}

.totalSolution__photo.is-from-left.is-show
{
    -webkit-animation: slideInLeftPc .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: slideInLeftPc .6s cubic-bezier(.4, 0, .2, 1) forwards;
}

.totalSolution__photo.is-from-right
{
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
}

.totalSolution__photo.is-from-right.is-show
{
    -webkit-animation: slideInRight .6s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: slideInRight .6s cubic-bezier(.4, 0, .2, 1) forwards;
}

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

    overflow: hidden;

    min-height: 620px;

    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .parallax
    {
        min-height: 32.29167vw;
    }
}

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

        height: 55.66406vw;

        background-image: none;
        background-attachment: scroll;
    }
}

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

        height: 52.8vw;

        background-image: none;
        background-attachment: scroll;
    }
}

.parallax--01
{
    background-image: url(../images/img_top_parallax_01_v2.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--01
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--01
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--01 .parallax__fixedBg
    {
        background-image: url(../images/img_top_parallax_01_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--01 .parallax__fixedBg
    {
        background-image: url(../images/img_top_parallax_01_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--02
{
    background-image: url(../images/img_top_parallax_02_v2.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--02
    {
        background-image: none;
        background-position: center bottom 30%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--02
    {
        background-image: none;
        background-position: center bottom 25%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--02 .parallax__fixedBg
    {
        background-image: url(../images/img_top_parallax_02_pd.webp);
        background-position: center bottom 30%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--02 .parallax__fixedBg
    {
        background-image: url(../images/img_top_parallax_02_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--03
{
    background-image: url(../images/img_local_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--03
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--03
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--03 .parallax__fixedBg
    {
        background-image: url(../images/img_local_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--03 .parallax__fixedBg
    {
        background-image: url(../images/img_local_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--04
{
    background-image: url(../images/img_company_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--04
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--04
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--04 .parallax__fixedBg
    {
        background-image: url(../images/img_company_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--04 .parallax__fixedBg
    {
        background-image: url(../images/img_company_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--05
{
    background-image: url(../images/img_equ_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--05
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--05
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--05 .parallax__fixedBg
    {
        background-image: url(../images/img_equ_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--05 .parallax__fixedBg
    {
        background-image: url(../images/img_equ_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--06
{
    background-image: url(../images/img_double_molding_about_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--06
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--06
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--06 .parallax__fixedBg
    {
        background-image: url(../images/img_double_molding_about_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--06 .parallax__fixedBg
    {
        background-image: url(../images/img_double_molding_about_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--07
{
    background-image: url(../images/img_double_molding_faq_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--07
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--07
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--07 .parallax__fixedBg
    {
        background-image: url(../images/img_double_molding_faq_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--07 .parallax__fixedBg
    {
        background-image: url(../images/img_double_molding_faq_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--08
{
    background-image: url(../images/img_super_enpla_features_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--08
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--08
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--08 .parallax__fixedBg
    {
        background-image: url(../images/img_super_enpla_features_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--08 .parallax__fixedBg
    {
        background-image: url(../images/img_super_enpla_features_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

.parallax--09
{
    background-image: url(../images/img_super_enpla_faq_parallax.webp);
}

@media print, screen and (max-width: 1025px)
{
    .parallax--09
    {
        background-image: none;
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--09
    {
        background-image: none;
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax--09 .parallax__fixedBg
    {
        background-image: url(../images/img_super_enpla_faq_parallax_pd.webp);
        background-position: center bottom 20%;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax--09 .parallax__fixedBg
    {
        background-image: url(../images/img_super_enpla_faq_parallax_sp.webp);
        background-position: center bottom 10%;
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax.is-active .parallax__fixedBg
    {
        visibility: visible;

        opacity: 1;
    }
}

@media print, screen and (max-width: 430px)
{
    .parallax.is-active .parallax__fixedBg
    {
        visibility: visible;

        opacity: 1;
    }
}

.parallax__fixedBg
{
    display: none;
}

@media print, screen and (max-width: 1025px)
{
    .parallax__fixedBg
    {
        position: fixed;
        z-index: -10;

        display: block;
        visibility: hidden;

        width: 100%;
        height: 100vh;

        -webkit-transition: opacity .2s ease, visibility .2s ease;
                transition: opacity .2s ease, visibility .2s ease;
        -webkit-transform: translateZ(0);
                transform: translateZ(0);
        pointer-events: none;

        opacity: 0;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;

        inset: 0;
    }
}

.parallax__slideWrp
{
    position: absolute;
    bottom: -19px;
    left: 0;

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

    width: 100%;
}

@media print, screen and (max-width: 1920px)
{
    .parallax__slideWrp
    {
        bottom: -.98958vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .parallax__slideWrp
    {
        z-index: 1;
        bottom: -1.6vw;
    }
}

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

    width: -webkit-max-content;
    width:    -moz-max-content;
    width:         max-content;

    -webkit-animation: scrollLoop 30s linear infinite;
            animation: scrollLoop 30s linear infinite;

    gap: 0;
}

.parallax__track:last-child
{
    -webkit-animation-delay: 0s;
            animation-delay: 0s;
}

.parallax__scrollCont
{
    margin-right: 50px;
}

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

.parallax__txt
{
    font-family: 'Manrope', sans-serif;
    font-family: 'Manrope', sans-serif;
    font-weight: 600;
    line-height: 1;

    white-space: nowrap;

    color: transparent;
    text-shadow: 0 0 1px rgba(255, 255, 255, .08), 0 0 3px rgba(255, 255, 255, .05);

    -webkit-text-stroke: 1px #fff;
}

@media print, screen and (max-width: 1920px)
{
    .parallax__txt
    {
        text-shadow: 0 0 .05208vw rgba(255, 255, 255, .08), 0 0 .15625vw rgba(255, 255, 255, .05);
    }
}

@media print, screen and (max-width: 1025px)
{
    .parallax__txt
    {
        text-shadow: 0 0 .09766vw rgba(255, 255, 255, .08), 0 0 .29297vw rgba(255, 255, 255, .05);
    }
}

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

        text-shadow: 0 0 .13333vw rgba(255, 255, 255, .08), 0 0 .4vw rgba(255, 255, 255, .05);
    }
}

@-webkit-keyframes scrollLoop
{
    0%
    {
        -webkit-transform: translateX(0%);
                transform: translateX(0%);
    }
    100%
    {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }
}

@keyframes scrollLoop
{
    0%
    {
        -webkit-transform: translateX(0%);
                transform: translateX(0%);
    }
    100%
    {
        -webkit-transform: translateX(-100%);
                transform: translateX(-100%);
    }
}

.parallax__blurText
{
    display: block;

    width: auto;
    height: 1em;
}

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

    overflow: hidden;

    padding: 120px 0 304px 0;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec
    {
        padding: 6.25vw 0 15.83333vw 0;
    }
}

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

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

.topFeatureSec:before
{
    position: absolute;
    z-index: -3;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

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

.topFeatureSec:after
{
    position: absolute;
    z-index: -2;
    right: 0;
    bottom: 0;

    width: 596px;
    height: 1499px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec:after
    {
        width: 31.04167vw;
        height: 78.07292vw;
    }
}

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

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

.topFeatureSec__bg
{
    position: relative;
    z-index: -2;
}

.topFeatureSec__bg:before
{
    position: absolute;
    top: -120px;
    right: 0;

    width: 455px;
    height: 792px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__bg:before
    {
        top: -6.25vw;

        width: 23.69792vw;
        height: 41.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__bg:before
    {
        top: -11.71875vw;

        width: 31.25vw;
        height: 56.05469vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__bg:before
    {
        top: -18.66667vw;

        width: 38.26667vw;
        height: 66.66667vw;

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

.topFeatureSec__bg:after
{
    position: absolute;
    z-index: -1;
    top: 1300px;
    left: 0;

    width: 721px;
    height: 1276px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__bg:after
    {
        top: 67.70833vw;

        width: 37.55208vw;
        height: 66.45833vw;
    }
}

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

        width: 43.94531vw;
        height: 77.73438vw;
    }
}

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

        width: 53.33333vw;
        height: 94.26667vw;
    }
}

.topFeatureSec__lineBg
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 50%;

    width: 460px;
    height: 100%;

    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__lineBg
    {
        width: 23.95833vw;
    }
}

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

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

.topFeatureSec__readTxt
{
    font-weight: 600;
    line-height: 1.9;

    position: relative;

    display: inline-block;
    overflow: hidden;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-top: 50px;
    padding: 0 10px 0 37px;

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

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__readTxt
    {
        margin-top: 2.60417vw;
        padding: 0 .52083vw 0 1.92708vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__readTxt
    {
        margin-top: 2.92969vw;
        padding: 0 .97656vw 0 3.61328vw;
    }
}

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

        position: relative;

        margin-top: 1.33333vw;
        padding: 1.33333vw 4.93333vw;
    }
}

.topFeatureSec__wrp
{
    max-width: 1920px;
    margin: 0 auto;
    margin-top: 282px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__wrp
    {
        margin-top: 14.6875vw;
    }
}

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

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

.topFeatureSec__cont
{
    position: relative;

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

    width: 1710px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont
    {
        width: 89.0625vw;
    }
}

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

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

        width: 100%;

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

.topFeatureSec__cont:nth-of-type(2)
{
        flex-direction: row-reverse;

    margin-top: 707px;
    margin-left: auto;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont:nth-of-type(2)
    {
        margin-top: 36.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__cont:nth-of-type(2)
    {
        margin-top: 35.15625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__cont:nth-of-type(2)
    {
        margin-top: 106.66667vw;
    }
}

.topFeatureSec__cont:nth-of-type(2) .topFeatureSec__txtCont
{
    right: 878px;
    left: auto;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__txtCont
    {
        right: 45.72917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__txtCont
    {
        right: 48.82812vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__txtCont
    {
        right: auto;
        left: 4vw;
    }
}

.topFeatureSec__cont:nth-of-type(2) .topFeatureSec__num
{
    right: 740px;
    left: auto;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__num
    {
        right: 38.54167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__num
    {
        right: 39.0625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__num
    {
        right: auto;
        left: 50%;

        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
    }
}

.topFeatureSec__cont:nth-of-type(2) .topFeatureSec__enTtl
{
    top: 300px;
    right: auto;
    left: 90px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__enTtl
    {
        top: 15.625vw;
        left: 4.6875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__cont:nth-of-type(2) .topFeatureSec__enTtl
    {
        top: 23.4375vw;
        left: -7.8125vw;
    }
}

.topFeatureSec__cont:last-child
{
    margin-top: 566px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont:last-child
    {
        margin-top: 29.47917vw;
    }
}

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

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

.topFeatureSec__cont:last-child .topFeatureSec__enTtl
{
    top: 60px;
    left: 500px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__cont:last-child .topFeatureSec__enTtl
    {
        top: 3.125vw;
        left: 26.04167vw;
    }
}

.topFeatureSec__img
{
    position: relative;

    overflow: hidden;

    width: 960px;

    -webkit-box-shadow: 0 6px 30px rgba(0, 0, 0, .1);
            box-shadow: 0 6px 30px rgba(0, 0, 0, .1);
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__img
    {
        width: 50vw;
    }
}

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

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

.topFeatureSec__img > picture
{
    display: block;

    width: 100%;
}

.topFeatureSec__img > picture > img
{
    display: block;

    width: 100%;

    -webkit-transition: opacity .3s ease;
            transition: opacity .3s ease;

    opacity: 0;
}

.topFeatureSec__enTtl
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;

    position: absolute;
    z-index: -1;
    top: 430px;
    right: -30px;

    display: inline-block;

    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    letter-spacing: -.05em;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__enTtl
    {
        top: 22.39583vw;
        right: -1.5625vw;
    }
}

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

        top: 29.29688vw;
        right: -17.57812vw;
    }
}

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

.topFeatureSec__txtCont
{
    position: absolute;
    top: 419px;
    left: 878px;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 922px;
    padding: 60px 106px;

    background-color: #fff;
    -webkit-box-shadow: 0 6px 30px rgba(0, 0, 0, .1);
            box-shadow: 0 6px 30px rgba(0, 0, 0, .1);
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__txtCont
    {
        top: 21.82292vw;
        left: 45.72917vw;

        width: 48.02083vw;
        padding: 3.125vw 5.52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__txtCont
    {
        top: 24.41406vw;
        left: 48.82812vw;

        width: 48.82812vw;
        padding: 3.90625vw 2.92969vw;
    }
}

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

        width: 92vw;
        padding: 6.66667vw 5.33333vw;
    }
}

.topFeatureSec__num
{
    font-family: 'Manrope', sans-serif;
    font-size: 260px;
    font-weight: 700;

    position: absolute;
    z-index: 1;
    top: -180px;
    left: 750px;

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

    color: transparent;

    -webkit-text-stroke: 2px #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__num
    {
        font-size: 13.54167vw;

        top: -9.375vw;
        left: 39.0625vw;
    }
}

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

        top: -11.71875vw;
        left: 41.99219vw;
    }
}

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

        top: -25.33333vw;
        left: 33.33333vw;
    }
}

.topFeatureSec__ttl
{
    font-weight: 700;
    line-height: 1.4;

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

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

        margin-top: 0;
    }
}

.topFeatureSec__txt
{
    font-weight: 500;
    line-height: 1.7;

    margin-top: 40px;
    margin-bottom: 70px;

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

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__txt
    {
        margin-top: 2.08333vw;
        margin-bottom: 3.64583vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__txt
    {
        margin-top: 3.46667vw;
        margin-bottom: 5.33333vw;
    }
}

.topFeatureSec__photo
{
    position: absolute;

    opacity: 0;

    will-change: opacity, transform;
}

.topFeatureSec__photo--01
{
    z-index: -2;
    top: 860px;
    right: 0;

    width: 800px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__photo--01
    {
        top: 44.79167vw;

        width: 41.66667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topFeatureSec__photo--01
    {
        top: 58.59375vw;

        width: 35.15625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__photo--01
    {
        z-index: 1;
        top: 132vw;

        width: 53.33333vw;
    }
}

.topFeatureSec__photo--02
{
    z-index: 1;
    top: 2160px;
    left: 0;

    width: 542px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__photo--02
    {
        top: 112.5vw;

        width: 28.22917vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__photo--02
    {
        z-index: 1;
        top: 280vw;

        width: 48vw;
    }
}

.topFeatureSec__photo--03
{
    z-index: 1;
    right: 0;
    bottom: 400px;

    width: 612px;
}

@media print, screen and (max-width: 1920px)
{
    .topFeatureSec__photo--03
    {
        bottom: 20.83333vw;

        width: 31.875vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .topFeatureSec__photo--03
    {
        bottom: 85.33333vw;

        width: 45.33333vw;
    }
}

.topFeatureSec__photo > picture
{
    display: block;

    width: 100%;
}

.topFeatureSec__photo > picture > img
{
    display: block;

    width: 100%;
}

/* 最終的に残る背景 */
.bg-fixed
{
    position: absolute;
    z-index: 1;

    -webkit-transition: opacity .2s ease;
            transition: opacity .2s ease;

    opacity: 0;
    background: -webkit-gradient(linear, left top, right top, from(#ffb100), to(#ff6c00));
    background: linear-gradient(to right, #ffb100, #ff6c00);

    inset: 0;
}

/* 最初に流れるオレンジ */
.bg-swipe
{
    position: absolute;
    z-index: 2;

    -webkit-transition: opacity .15s ease, -webkit-transform .35s cubic-bezier(.6, 0, .2, 1);
            transition: opacity .15s ease, -webkit-transform .35s cubic-bezier(.6, 0, .2, 1);
            transition: transform .35s cubic-bezier(.6, 0, .2, 1), opacity .15s ease;
            transition: transform .35s cubic-bezier(.6, 0, .2, 1), opacity .15s ease, -webkit-transform .35s cubic-bezier(.6, 0, .2, 1);
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);

    opacity: 1;
    background: #ff6c00;

    inset: 0;
}

/* テキスト */
.swipe-text
{
    position: relative;
    z-index: 3;

    -webkit-transition: opacity .2s ease;
            transition: opacity .2s ease;

    opacity: 0;
    color: #fff;
}

/* 状態 */
.is-enter .bg-swipe
{
    -webkit-transform: translateX(0);
            transform: translateX(0);
}

.is-show .bg-swipe
{
    opacity: 0;
    /* ← その場で消える */
}

.is-show .bg-fixed,
.is-show .swipe-text
{
    opacity: 1;
}

/* ============== .c-ttl ============== */
.c-ttl__jp
{
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: .05em;
}

.c-ttl__jp--white
{
    text-align: left;

    color: #fff;
}

.c-ttl__jp--topContact
{
    color: #fff;
}

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

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

@media print, screen and (max-width: 430px)
{
    .c-ttl__jp--topAbout
    {
        text-align: center;
    }
}

.c-ttl__en
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
    line-height: 1.5;

    color: #009cde;
}

.c-ttl__en--white
{
    text-align: left;

    color: #fff;
}

.c-ttl__en--topContact
{
    color: #fff;
}

@media print, screen and (max-width: 430px)
{
    .c-ttl__en--topAbout
    {
        text-align: center;
    }
}

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

    overflow: hidden;

    padding: 120px 0 330px;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec
    {
        padding: 6.25vw 0 17.1875vw;
    }
}

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

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

.topTechnologySec:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

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

.topTechnologySec__wrp
{
    position: relative;
    z-index: 1;

    margin-top: 230px;
    padding: 140px 0;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__wrp
    {
        margin-top: 11.97917vw;
        padding: 7.29167vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topTechnologySec__wrp
    {
        overflow: hidden;

        margin-top: 11.71875vw;
        padding: 7.8125vw 0;
    }
}

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

        margin-top: 10.66667vw;
        padding: 10.66667vw 4vw;

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

.topTechnologySec__bgTtl
{
    font-family: 'Manrope', sans-serif;
    font-size: 266px;
    font-weight: 700;

    position: absolute;
    z-index: 0;
    bottom: 700px;
    left: 50%;

    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__bgTtl
    {
        font-size: 13.85417vw;

        bottom: 36.45833vw;
    }
}

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

        bottom: 44.72656vw;
    }
}

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

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

    width: 1500px;
    margin: 0 auto;

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

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__cont
    {
        width: 78.125vw;
    }
}

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

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

        width: 100%;

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

.topTechnologySec__cont--top
{
    margin-bottom: 190px;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__cont--top
    {
        margin-bottom: 9.89583vw;
    }
}

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

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

.topTechnologySec__txtBox
{
    width: 497px;
    padding-top: 40px;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__txtBox
    {
        width: 25.88542vw;
        padding-top: 2.08333vw;
    }
}

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

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

.topTechnologySec__img
{
    width: 914px;

    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .1);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .1);
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__img
    {
        width: 47.60417vw;
    }
}

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

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

.topTechnologySec__img > picture
{
    display: block;

    width: 100%;
}

.topTechnologySec__img > picture > img
{
    display: block;

    width: 100%;
}

.topTechnologySec__ttl
{
    font-weight: 700;
    line-height: 1.5;

    margin-top: 12px;

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

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__ttl
    {
        margin-top: .625vw;
    }
}

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

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

        margin-top: 3.2vw;
    }
}

.topTechnologySec__colorTxt
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;

    margin-top: 6px;

    text-align: left;
    letter-spacing: 0;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__colorTxt
    {
        margin-top: .3125vw;
    }
}

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

        margin-top: .58594vw;
    }
}

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

        margin-top: 1.33333vw;
    }
}

.topTechnologySec__txt
{
    font-weight: 500;
    line-height: 1.7;

    margin-top: 50px;

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

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

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

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

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

    margin-top: 112px;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__btnBox
    {
        margin-top: 5.83333vw;
    }
}

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

.topTechnologySec__photo
{
    position: absolute;

    opacity: 0;

    will-change: opacity, transform;
}

.topTechnologySec__photo--01
{
    z-index: 2;
    top: 330px;
    left: 0;

    width: 748px;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__photo--01
    {
        top: 17.1875vw;

        width: 38.95833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topTechnologySec__photo--01
    {
        top: 25.39062vw;

        width: 46.875vw;
    }
}

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

        width: 58.66667vw;
    }
}

.topTechnologySec__photo--02
{
    z-index: 2;
    right: 0;
    bottom: 150px;

    width: 440px;
}

@media print, screen and (max-width: 1920px)
{
    .topTechnologySec__photo--02
    {
        bottom: 7.8125vw;

        width: 22.91667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topTechnologySec__photo--02
    {
        bottom: 5.85938vw;

        width: 25.87891vw;
    }
}

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

        width: 40vw;
    }
}

.topTechnologySec__photo > picture
{
    display: block;

    width: 100%;
}

.topTechnologySec__photo > picture > img
{
    display: block;

    width: 100%;
}

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

    overflow: hidden;

    padding: 128px 0 154px 0;

    background-color: rgba(0, 128, 222, .8);
}

@media print, screen and (max-width: 1920px)
{
    .topCompanySec
    {
        padding: 6.66667vw 0 8.02083vw 0;
    }
}

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

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

.topCompanySec:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 850px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topCompanySec:before
    {
        height: 44.27083vw;
    }
}

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

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

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

    width: 1060px;
    height: 739px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topCompanySec:after
    {
        width: 55.20833vw;
        height: 38.48958vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .topCompanySec:after
    {
        bottom: 0;

        width: 100%;
        height: 64vw;
    }
}

.topCompanySec__bgImg
{
    position: relative;
}

.topCompanySec__bgImg:before
{
    position: absolute;
    top: -105px;
    right: 0;

    width: 390px;
    height: 471px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topCompanySec__bgImg:before
    {
        top: -5.46875vw;

        width: 20.3125vw;
        height: 24.53125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topCompanySec__bgImg:before
    {
        z-index: 2;
        top: -9.76562vw;

        width: 17.57812vw;
        height: 22.65625vw;
    }
}

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

.topCompanySec__wrp
{
    position: relative;
    position: relative;
    z-index: 1;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 983px;
    margin-right: 129px;
    margin-left: auto;
    padding: 70px 53px 70px 113px;

    border-radius: 10px;
}

@media print, screen and (max-width: 1920px)
{
    .topCompanySec__wrp
    {
        width: 51.19792vw;
        margin-right: 6.71875vw;
        padding: 3.64583vw 2.76042vw 3.64583vw 5.88542vw;

        border-radius: .52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topCompanySec__wrp
    {
        width: 100%;
        margin-right: 0;
        padding: 4.88281vw;

        border-radius: .97656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topCompanySec__wrp
    {
        padding: 9.33333vw 5.33333vw;

        border-radius: 1.33333vw;
    }
}

.topCompanySec__wrp::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 983px;
    height: 568px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topCompanySec__wrp::before
    {
        width: 51.19792vw;
        height: 29.58333vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .topCompanySec__wrp::before
    {
        width: 92vw;
        height: 108.26667vw;

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

.topCompanySec__subTtl
{
    font-weight: 700;
    line-height: 1.6;

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

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

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topCompanySec__subTtl
    {
        margin-top: 1.92708vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .topCompanySec__subTtl
    {
        font-size: 4.53333vw;
        line-height: 1.55;

        margin-top: 2.66667vw;
    }
}

.topCompanySec__txt
{
    font-weight: 500;
    line-height: 1.7;

    margin-top: 32px;

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

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topCompanySec__txt
    {
        margin-top: 1.66667vw;
    }
}

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

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

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

    margin-bottom: -248px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact
    {
        margin-bottom: -12.91667vw;
    }
}

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

        background-color: #fff;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact
    {
        margin-bottom: -64.66667vw;
        padding-top: 18.66667vw;
    }
}

.topContact__cont
{
    position: relative;
    z-index: 11;

    width: 1500px;
    margin: 0 auto;
    padding: 80px 0;

    border-radius: 30px;
    background: -webkit-gradient(linear, left top, left bottom, from(#00bcde), to(#008ecb));
    background: linear-gradient(to bottom, #00bcde 0%, #008ecb 100%);
}

@media print, screen and (max-width: 1920px)
{
    .topContact__cont
    {
        width: 78.125vw;
        padding: 4.16667vw 0;

        border-radius: 1.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__cont
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        width: 100%;
        padding: 4.88281vw 2.92969vw;

        border-radius: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__cont
    {
        padding: 13.33333vw 5.33333vw;

        border-radius: 4vw;
    }
}

.topContact__txt
{
    font-weight: 500;
    line-height: 1.777;

    margin-top: 40px;

    letter-spacing: .05em;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__txt
    {
        margin-top: 2.08333vw;
    }
}

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

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

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

    width: 724px;
    margin: 0 auto;
    margin-top: 50px;

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

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

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

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

        width: 100%;
        margin-top: 9.33333vw;

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

.topContact__btn
{
    position: relative;

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

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 347px;
    height: 64px;
    padding-left: 30px;

    border: none;
    border-radius: 60px;
    background-color: #fff;

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

@media print, screen and (max-width: 1920px)
{
    .topContact__btn
    {
        width: 18.07292vw;
        height: 3.33333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn
    {
        width: 28.32031vw;
        height: 5.46875vw;
        padding-left: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn
    {
        width: 100%;
        height: 12.93333vw;
        padding-left: 6.66667vw;
    }
}

.topContact__btn--tel .topContact__btnTxt
{
    font-family: 'Manrope', sans-serif;

    margin-left: 8px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--tel .topContact__btnTxt
    {
        margin-left: .41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--tel .topContact__btnTxt
    {
        margin-left: .78125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--tel .topContact__btnTxt
    {
        margin-left: 1.6vw;
    }
}

.topContact__btn--tel .topContact__icon
{
    width: 19px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--tel .topContact__icon
    {
        width: .98958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--tel .topContact__icon
    {
        width: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--tel .topContact__icon
    {
        width: 3.73333vw;
    }
}

.topContact__btn--mail .topContact__btnTxt
{
    margin-left: 10px;
    padding-bottom: 2px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--mail .topContact__btnTxt
    {
        margin-left: .52083vw;
        padding-bottom: .10417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--mail .topContact__btnTxt
    {
        margin-left: .97656vw;
        padding-bottom: .19531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--mail .topContact__btnTxt
    {
        margin-left: 2.13333vw;
        padding-bottom: .53333vw;
    }
}

.topContact__btn--mail .topContact__icon
{
    width: 25px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--mail .topContact__icon
    {
        width: 1.30208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--mail .topContact__icon
    {
        width: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--mail .topContact__icon
    {
        width: 5.6vw;
    }
}

.topContact__btn--contact
{
    width: 388px;
    height: 74px;
    margin: 0 auto;

    border: 1px solid #009cde;
    background-color: #f7f7f7;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--contact
    {
        width: 20.20833vw;
        height: 3.85417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--contact
    {
        width: 32.22656vw;
        height: 6.25vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--contact
    {
        width: 90%;
        height: 13.33333vw;
    }
}

.topContact__btn--contact .topContact__icon
{
    width: 25.77px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--contact .topContact__icon
    {
        width: 1.34219vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--contact .topContact__icon
    {
        width: 2.14844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--contact .topContact__icon
    {
        width: 4.53333vw;
    }
}

.topContact__btn--contact .topContact__btnTxt
{
    margin-left: 20px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--contact .topContact__btnTxt
    {
        margin-left: 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--contact .topContact__btnTxt
    {
        margin-left: 1.46484vw;
    }
}

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

.topContact__btn--form
{
    width: 388px;
    height: 84px;
    margin: 0 auto;

    border: 1px solid #009cde;
    background-color: #f7f7f7;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--form
    {
        width: 20.20833vw;
        height: 4.375vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--form
    {
        width: 32.22656vw;
        height: 7.22656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--form
    {
        width: 90%;
        height: 13.33333vw;
    }
}

.topContact__btn--form .topContact__icon
{
    width: 25.77px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--form .topContact__icon
    {
        width: 1.34219vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--form .topContact__icon
    {
        width: 2.14844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--form .topContact__icon
    {
        width: 4.53333vw;
    }
}

.topContact__btn--form .topContact__btnTxt
{
    margin-left: 20px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--form .topContact__btnTxt
    {
        margin-left: 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--form .topContact__btnTxt
    {
        margin-left: 1.46484vw;
    }
}

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

.topContact__btn--equipment
{
    width: 444px;
    margin: 0 auto;
    margin-top: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--equipment
    {
        width: 23.125vw;
        margin-top: 3.125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--equipment
    {
        width: 37.10938vw;
        margin-top: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--equipment
    {
        width: 90%;
        margin-top: 5.33333vw;
    }
}

.topContact__btn--equipment .topContact__btnTxt
{
    margin-left: 10px;
    padding-bottom: 2px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--equipment .topContact__btnTxt
    {
        margin-left: .52083vw;
        padding-bottom: .10417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--equipment .topContact__btnTxt
    {
        margin-left: .97656vw;
        padding-bottom: .19531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--equipment .topContact__btnTxt
    {
        margin-left: 2.13333vw;
        padding-bottom: .53333vw;
    }
}

.topContact__btn--equipment .topContact__icon
{
    width: 25px;
}

@media print, screen and (max-width: 1920px)
{
    .topContact__btn--equipment .topContact__icon
    {
        width: 1.30208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topContact__btn--equipment .topContact__icon
    {
        width: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topContact__btn--equipment .topContact__icon
    {
        width: 5.6vw;
    }
}

.topContact__btn:hover
{
    -webkit-transition: color .4s ease-in-out;
            transition: color .4s ease-in-out;

    color: #009cde;
}

.topContact__btn:hover .c-btn__circle::before,
.topContact__btn:hover .c-btn__circle::after
{
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
            transform: translate(-50%, -50%) rotate(180deg);
}

.topContact__btn:hover .c-btn__circle::before
{
    opacity: 0;
}

.topContact__btn:hover .c-btn__circle::after
{
    opacity: 1;
}

.topContact__btn:hover .c-btn__arrow::before
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.topContact__btn:hover .c-btn__arrow::after
{
    -webkit-transform: translateX(120%);
            transform: translateX(120%);

    opacity: 0;
}

.topContact__icon > img
{
    display: block;

    width: 100%;
}

.topContact__btnTxt
{
    font-weight: 700;
}

/* ============== .c-btn ============== */
.c-btn
{
    line-height: 64px;

    position: relative;

    display: block;

    width: 290px;
    height: 64px;
    margin: 0 auto;
    padding-left: 32px;

    cursor: pointer;
    text-align: left;

    border: 1px solid #009cde;
    border-radius: 60px;
    background-color: #f7f7f7;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn
    {
        line-height: 3.33333vw;

        width: 15.10417vw;
        height: 3.33333vw;
        padding-left: 1.66667vw;
    }
}

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

        width: 23.4375vw;
        height: 5.46875vw;
        padding-left: 2.34375vw;
    }
}

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

        width: 65.06667vw;
        height: 12.93333vw;
        padding-left: 6.4vw;
    }
}

.c-btn--localActivities
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 379px;
    padding-left: 52px;

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

@media print, screen and (max-width: 1920px)
{
    .c-btn--localActivities
    {
        width: 19.73958vw;
        padding-left: 2.70833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn--localActivities
    {
        width: 37.01172vw;
        padding-left: 5.07812vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn--localActivities
    {
        width: 92.26667vw;
        padding-left: 12.66667vw;
    }
}

.c-btn--equ
{
    width: 67px;
    height: 67px;

    border: none;
    background-color: transparent;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn--equ
    {
        width: 3.48958vw;
        height: 3.48958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn--equ
    {
        width: 5.46875vw;
        height: 5.46875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn--equ
    {
        width: 8.93333vw;
        height: 8.93333vw;
    }
}

.c-btn--super
{
    line-height: 0;

    position: absolute;
    z-index: 1;
    right: 58px;
    bottom: 43px;

    display: block;

    width: 62px;
    height: 62px;
    margin: 0;
    padding-left: 0;

    cursor: pointer;
    text-align: left;

    border: 0;
    border-radius: 62px;
    background-color: transparent;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn--super
    {
        right: 3.02083vw;
        bottom: 2.23958vw;

        width: 3.22917vw;
        height: 3.22917vw;

        border-radius: 3.22917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn--super
    {
        right: 4.6875vw;
        bottom: 3.51562vw;

        width: 5.07812vw;
        height: 5.07812vw;

        border-radius: 5.07812vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn--super
    {
        right: 2.13333vw;
        bottom: 8.93333vw;

        width: 10.93333vw;
        height: 10.93333vw;

        border-radius: 10.93333vw;
    }
}

.c-btn__txt
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
}

.c-btn__txt--localActivities
{
    position: relative;

    display: inline;

    padding-left: 15px;

    color: #fff;
    border-left: 1px solid #fff;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__txt--localActivities
    {
        padding-left: .78125vw;

        border-left: .05208vw solid #fff;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn__txt--localActivities
    {
        padding-left: 1.46484vw;

        border-left: .09766vw solid #fff;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__txt--localActivities
    {
        padding-left: 3.33333vw;

        border-left: .13333vw solid #fff;
    }
}

.c-btn__txt--localActivities::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -29px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .c-btn__txt--localActivities::before
    {
        left: -1.51042vw;

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

@media print, screen and (max-width: 1025px)
{
    .c-btn__txt--localActivities::before
    {
        left: -2.83203vw;

        width: 1.46484vw;
        height: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__txt--localActivities::before
    {
        left: -7.6vw;

        width: 4.8vw;
        height: 6.26667vw;
    }
}

.c-btn__circle
{
    position: absolute;
    top: 50%;
    right: 20px;

    width: 40px;
    height: 40px;

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

    border-radius: 50%;
    background: -webkit-gradient(linear, left top, left bottom, from(#00bcde), to(#008ecb));
    background: linear-gradient(180deg, #00bcde, #008ecb);
    /* 背景円（回転用） */
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__circle
    {
        right: 1.04167vw;

        width: 2.08333vw;
        height: 2.08333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn__circle
    {
        right: 1.5625vw;

        width: 3.125vw;
        height: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__circle
    {
        right: 4.66667vw;

        width: 7.2vw;
        height: 7.2vw;
    }
}

.c-btn__circle::before,
.c-btn__circle::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 46px;
    height: 46px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
            transform: translate(-50%, -50%) rotate(0deg);

    background: url(../images/img_btn_circle.svg) no-repeat center/cover;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__circle::before,
    .c-btn__circle::after
    {
        width: 2.39583vw;
        height: 2.39583vw;
    }
}

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

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

.c-btn__circle::before
{
    opacity: 1;
}

.c-btn__circle::after
{
    opacity: 0;
}

.c-btn__circle--equ
{
    right: 0;

    width: 59px;
    height: 59px;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__circle--equ
    {
        width: 3.07292vw;
        height: 3.07292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn__circle--equ
    {
        width: 4.88281vw;
        height: 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__circle--equ
    {
        width: 7.86667vw;
        height: 7.86667vw;
    }
}

.c-btn__circle--equ::before,
.c-btn__circle--equ::after
{
    width: 67px;
    height: 67px;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__circle--equ::before,
    .c-btn__circle--equ::after
    {
        width: 3.48958vw;
        height: 3.48958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn__circle--equ::before,
    .c-btn__circle--equ::after
    {
        width: 5.46875vw;
        height: 5.46875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__circle--equ::before,
    .c-btn__circle--equ::after
    {
        width: 8.93333vw;
        height: 8.93333vw;
    }
}

.c-btn__circle--prev
{
    right: auto;
    left: 0;
}

.c-btn__circle--super
{
    background: -webkit-gradient(linear, left top, left bottom, from(#bee7f8), to(#46b2e0));
    background: linear-gradient(180deg, #bee7f8, #46b2e0);
}

.c-btn__arrow
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 14px;
    height: 11px;

    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__arrow
    {
        width: .72917vw;
        height: .57292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn__arrow
    {
        width: 1.17188vw;
        height: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__arrow
    {
        width: 1.82667vw;
        height: 1.42667vw;
    }
}

.c-btn__arrow::before,
.c-btn__arrow::after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 14px;
    height: 11px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;

    background: url(../images/icon_arrow_white.svg) no-repeat center/contain;
}

@media print, screen and (max-width: 1920px)
{
    .c-btn__arrow::before,
    .c-btn__arrow::after
    {
        width: .72917vw;
        height: .57292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-btn__arrow::before,
    .c-btn__arrow::after
    {
        width: 1.17188vw;
        height: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-btn__arrow::before,
    .c-btn__arrow::after
    {
        width: 1.82667vw;
        height: 1.42667vw;
    }
}

.c-btn__arrow::before
{
    -webkit-transform: translateX(-120%);
            transform: translateX(-120%);

    opacity: 0;
}

.c-btn__arrow::after
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.c-btn__arrow--prev::before,
.c-btn__arrow--prev::after
{
    background: url(../images/icon_arrow_white_next.svg) no-repeat center/contain;
}

.c-btn:hover
{
    -webkit-transition: color .4s ease-in-out;
            transition: color .4s ease-in-out;

    color: #009cde;
}

.c-btn:hover .c-btn__circle::before,
.c-btn:hover .c-btn__circle::after
{
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
            transform: translate(-50%, -50%) rotate(180deg);
}

.c-btn:hover .c-btn__circle::before
{
    opacity: 0;
}

.c-btn:hover .c-btn__circle::after
{
    opacity: 1;
}

.c-btn:hover .c-btn__arrow::before
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.c-btn:hover .c-btn__arrow::after
{
    -webkit-transform: translateX(120%);
            transform: translateX(120%);

    opacity: 0;
}

.c-btn__topTechnology,
.c-btn__topFeature
{
    margin: 0;
}

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

    overflow-x: hidden;

    padding: 140px 0;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment
    {
        padding: 7.29167vw 0;
    }
}

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

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

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

    width: 100%;
    height: 100%;

    content: '';

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

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

    width: 563px;
    height: 611px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topEquipment::before
    {
        width: 29.32292vw;
        height: 31.82292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment::before
    {
        width: 54.8vw;
        height: 59.6vw;

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

.topEquipment__inner
{
    position: relative;
}

.topEquipment__inner::before
{
    position: absolute;
    right: 0;
    bottom: -120px;

    width: 563px;
    height: 1377px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topEquipment__inner::before
    {
        bottom: -6.25vw;

        width: 29.32292vw;
        height: 71.71875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__inner::before
    {
        bottom: -10.66667vw;

        width: 66.66667vw;
        height: 162.66667vw;
    }
}

.topEquipment__lead
{
    font-weight: 500;
    line-height: 1.777;

    width: 1046px;
    margin: 0 auto;
    margin-top: 50px;
    margin-bottom: 212px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__lead
    {
        width: 54.47917vw;
        margin-top: 2.60417vw;
        margin-bottom: 11.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__lead
    {
        width: 90%;
        margin: 4.88281vw auto 9.76562vw auto;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__lead
    {
        width: 100%;
        margin: 5.33333vw auto 10.66667vw auto;
    }
}

.topEquipment__cont
{
    position: relative;
    z-index: 1;

    width: 100%;
    margin: 0 auto;
}

.topEquipment__wrp
{
    position: relative;
}

.topEquipment__slideIn
{
    -webkit-transition: 1s cubic-bezier(.75, 0, .25, 1);
            transition: 1s cubic-bezier(.75, 0, .25, 1);

    background-color: #fff;
}

.topEquipment__slideIn.show
{
    -webkit-transform: translateX(0);
            transform: translateX(0);
}

.topEquipment__slideIn.show .topEquipment__photo
{
    opacity: 1;
}

.topEquipment__slideIn.show .topEquipment__txtBox
{
    opacity: 1;
}

.topEquipment__slideLeft
{
    -webkit-transform: translateX(calc(-50vw - 50%));
            transform: translateX(calc(-50vw - 50%));
}

.topEquipment__slideRight
{
    -webkit-transform: translateX(calc(50vw + 50%));
            transform: translateX(calc(50vw + 50%));
}

.topEquipment__item
{
    position: relative;

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

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 93.75vw;
    padding: 100px 10.41667vw;

    background-color: #009cde;

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

@media print, screen and (max-width: 1920px)
{
    .topEquipment__item
    {
        padding: 5.20833vw 10.41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__item
    {
        width: 87.89062vw;
        padding: 7.8125vw 3.90625vw;
    }
}

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

        width: 93.33333vw;
        padding: 10.66667vw 4vw 29.33333vw 8vw;

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

.topEquipment__item--top
{
    margin-right: 0;
    margin-bottom: 345px;
    margin-left: auto;

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

@media print, screen and (max-width: 1920px)
{
    .topEquipment__item--top
    {
        margin-bottom: 17.96875vw;
    }
}

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

.topEquipment__photo
{
    position: absolute;

    opacity: 0;

    will-change: opacity, transform;
}

.topEquipment__photo--01
{
    top: -205px;
    left: 13px;

    width: 686px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__photo--01
    {
        top: -10.67708vw;
        left: .67708vw;

        width: 35.72917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__photo--01
    {
        top: -8.78906vw;
        left: .97656vw;

        width: 39.0625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__photo--01
    {
        top: auto;
        bottom: -5.33333vw;
        left: 0vw;

        width: 58.66667vw;
    }
}

.topEquipment__photo--02
{
    bottom: -148px;
    left: 530px;

    width: 449px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__photo--02
    {
        bottom: -7.70833vw;
        left: 27.60417vw;

        width: 23.38542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__photo--02
    {
        bottom: -7.8125vw;
        left: 9.76562vw;

        width: 25.39062vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__photo--02
    {
        right: 0vw;
        bottom: -17.33333vw;
        left: auto;

        width: 42.66667vw;
    }
}

.topEquipment__photo--03
{
    top: 40px;
    left: 950px;

    width: 351px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__photo--03
    {
        top: 2.08333vw;
        left: 49.47917vw;

        width: 18.28125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__photo--03
    {
        top: 1.95312vw;
        left: 48.82812vw;

        width: 19.53125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__photo--03
    {
        top: auto;
        bottom: -17.33333vw;
        left: 0;

        width: 32vw;
    }
}

.topEquipment__photo--04
{
    top: -220px;
    left: 1270px;

    width: 407px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__photo--04
    {
        top: -11.45833vw;
        left: 66.14583vw;

        width: 21.19792vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__photo--04
    {
        top: -13.67188vw;
        left: 68.35938vw;

        width: 24.41406vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__photo--04
    {
        top: auto;
        bottom: -13.33333vw;
        left: 32vw;

        width: 38.66667vw;
    }
}

.topEquipment__photo--05
{
    bottom: -185px;
    left: 1460px;

    width: 486px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__photo--05
    {
        bottom: -9.63542vw;
        left: 76.04167vw;

        width: 25.3125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topEquipment__photo--05
    {
        bottom: -11.71875vw;
        left: 68.35938vw;

        width: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topEquipment__photo--05
    {
        bottom: -13.33333vw;
        left: 66.66667vw;

        width: 38.66667vw;
    }
}

.topEquipment__photo > picture
{
    display: block;

    width: 100%;
}

.topEquipment__photo > picture > img
{
    display: block;

    width: 100%;
}

.topEquipment__txtBox
{
    width: 704px;

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

    opacity: 0;
    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__txtBox
    {
        width: 36.66667vw;
    }
}

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

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

.topEquipment__ttl
{
    font-weight: 700;
    line-height: 1;

    letter-spacing: .05em;

    color: #fff;
}

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

.topEquipment__ttlEn
{
    font-weight: 700;

    padding-top: 16px;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__ttlEn
    {
        padding-top: .83333vw;
    }
}

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

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

        padding-top: 2.13333vw;
    }
}

.topEquipment__listBox
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-top: 40px;
    padding-left: 16px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__listBox
    {
        padding-top: 2.08333vw;
        padding-left: .83333vw;
    }
}

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

.topEquipment__dotList
{
    list-style: none;
}

.topEquipment__list
{
    line-height: 1.6;

    position: relative;

    padding-bottom: 16px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__list
    {
        padding-bottom: .83333vw;
    }
}

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

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

.topEquipment__list::before
{
    position: absolute;
    top: -2px;
    left: -14px;

    content: '•';

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__list::before
    {
        left: -.72917vw;
    }
}

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

.topEquipment__list:last-child
{
    padding-bottom: 0;
}

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

    margin-top: 168px;
}

@media print, screen and (max-width: 1920px)
{
    .topEquipment__btnBox
    {
        margin-top: 8.75vw;
    }
}

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

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

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

    padding: 120px 0;

    background-color: white;
}

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

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

.topLocal__cont
{
    position: relative;

    height: var(--height, 150vh);
}

.topLocal__txtBox
{
    position: relative;
    z-index: 2;

    overflow: visible;

    height: 62.5vw;
}

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

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

.topLocal__lBox
{
    width: 489px;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__lBox
    {
        width: 25.46875vw;
    }
}

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

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

.topLocal__rBox
{
    padding-top: 209px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__rBox
    {
        padding-top: 10.88542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__rBox
    {
        width: 100%;
        margin-top: 3.90625vw;
        padding-top: 3.90625vw;
        padding-bottom: 3.90625vw;

        text-align: center;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__rBox
    {
        width: 92vw;
        margin-top: 5.33333vw;
        padding-top: 5.33333vw;
        padding-bottom: 5.33333vw;
    }
}

.topLocal__ttl
{
    font-weight: 700;
    line-height: 1.7;

    letter-spacing: .05em;

    background-color: #fff;
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__ttl
    {
        margin-bottom: 1.95312vw;
        padding: .68359vw .97656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__ttl
    {
        margin-bottom: 0;
        padding: 0;

        text-align: left;

        background-color: transparent;
    }
}

.topLocal__txt
{
    font-weight: 500;
    line-height: 1.77;

    margin-top: 30px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__txt
    {
        margin-top: 1.5625vw;
    }
}

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

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

.topLocal__sticky
{
    position: sticky;
    z-index: 3;
    top: var(--top, 30vh);

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

    max-width: 1325px;
    margin: 0 auto;
    margin-top: 50px;

    -ms-flex-pack: distribute;
    justify-content: space-around;
}

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

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

        margin-top: 4.88281vw;

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

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

.topLocal__xPhoto
{
    position: relative;

    width: 100%;
    margin-right: 108px;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xPhoto
    {
        margin-right: 5.625vw;
    }
}

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

.topLocal__xPhoto > picture
{
    display: block;

    width: 100%;
}

.topLocal__xPhoto > picture > img
{
    display: block;

    width: 100%;
}

.topLocal__xPhoto::before
{
    position: absolute;
    top: -100px;
    left: -180px;

    width: 168px;
    height: 193px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .topLocal__xPhoto::before
    {
        top: -5.20833vw;
        left: -9.375vw;

        width: 8.75vw;
        height: 10.05208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xPhoto::before
    {
        top: -7.8125vw;
        left: -14.64844vw;

        width: 13.67188vw;
        height: 15.625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__xPhoto::before
    {
        top: -12vw;
        left: -9.33333vw;

        width: 18.66667vw;
        height: 21.33333vw;
    }
}

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

    overflow: hidden;

    width: 100%;
    height: 140vh;

    pointer-events: none;

    inset: 0;
}

@media print, screen and (max-width: 430px)
{
    .topLocal__photoBox
    {
        height: 160vh;
    }
}

.topLocal__photo
{
    position: absolute;

    -webkit-transition: opacity .6s ease, -webkit-transform .6s ease;
            transition: opacity .6s ease, -webkit-transform .6s ease;
            transition: transform .6s ease, opacity .6s ease;
            transition: transform .6s ease, opacity .6s ease, -webkit-transform .6s ease;

    opacity: 0;

    will-change: transform, opacity;
}

.topLocal__photo--01
{
    top: 0;
    right: -40%;

    width: 24.58333vw;
}

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

@media print, screen and (max-width: 1025px)
{
    .topLocal__photo--01
    {
        right: -44%;

        width: 40.03906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__photo--01
    {
        width: 50.66667vw;
    }
}

.topLocal__photo--02
{
    top: 40%;
    left: -5%;

    width: 26.04167vw;
}

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

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

@media print, screen and (max-width: 430px)
{
    .topLocal__photo--02
    {
        width: 53.33333vw;
    }
}

.topLocal__photo--03
{
    right: 6%;
    bottom: 40%;

    width: 13.22917vw;
}

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

@media print, screen and (max-width: 1025px)
{
    .topLocal__photo--03
    {
        right: -16%;
        bottom: 36%;

        width: 21.48438vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__photo--03
    {
        right: -24%;
        bottom: 46%;

        width: 26.66667vw;
    }
}

.topLocal__photo--04
{
    z-index: -1;
    right: 20%;
    bottom: 20%;

    width: 24.47917vw;
}

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

@media print, screen and (max-width: 1025px)
{
    .topLocal__photo--04
    {
        right: 10%;
        bottom: 20%;

        width: 39.0625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__photo--04
    {
        bottom: 34%;

        width: 48vw;
    }
}

.topLocal__photo--05
{
    z-index: -1;
    bottom: -14%;
    left: 14%;

    width: 26.45833vw;
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__photo--05
    {
        bottom: -10%;

        width: 49.60938vw;
        width: 42.96875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__photo--05
    {
        bottom: -8%;

        width: 53.33333vw;
    }
}

.topLocal__photo--06
{
    right: -3%;
    bottom: -10%;

    width: 17.34375vw;
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__photo--06
    {
        right: -8%;
        bottom: -14%;

        width: 29.10156vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__photo--06
    {
        bottom: -10%;

        width: 37.33333vw;
    }
}

.topLocal__photo > picture
{
    display: block;

    width: 100%;
}

.topLocal__photo > picture > img
{
    display: block;

    width: 100%;
}

body.is-loaded .topLocal__photo
{
    opacity: 1;
}

.topLocal__xBtnBox
{
    margin-top: 40px;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtnBox
    {
        margin-top: 2.08333vw;
    }
}

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

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

    width: 380px;
    height: 64px;
    margin: 0 auto;

    border: 1px solid #000;
    border: 0;
    background-color: #000;

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

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtn
    {
        width: 19.79167vw;
        height: 3.33333vw;
    }
}

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

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

.topLocal__xBtn .c-btn__circle
{
    position: absolute;
    top: 50%;
    right: 20px;

    width: 29px;
    height: 29px;

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

    border-radius: 50%;
    background: -webkit-gradient(linear, left top, left bottom, from(#00bcde), to(#008ecb));
    background: linear-gradient(180deg, #00bcde, #008ecb);
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtn .c-btn__circle
    {
        right: 1.04167vw;

        width: 1.51042vw;
        height: 1.51042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xBtn .c-btn__circle
    {
        right: 1.95312vw;

        width: 2.83203vw;
        height: 2.83203vw;
    }
}

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

        width: 5.33333vw;
        height: 5.33333vw;
    }
}

.topLocal__xBtn .c-btn__circle::before,
.topLocal__xBtn .c-btn__circle::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 32.8px;
    height: 32.8px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
            transform: translate(-50%, -50%) rotate(0deg);

    background: url(../images/img_btn_circle.svg) no-repeat center/cover;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtn .c-btn__circle::before,
    .topLocal__xBtn .c-btn__circle::after
    {
        width: 1.70833vw;
        height: 1.70833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xBtn .c-btn__circle::before,
    .topLocal__xBtn .c-btn__circle::after
    {
        width: 3.20312vw;
        height: 3.20312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__xBtn .c-btn__circle::before,
    .topLocal__xBtn .c-btn__circle::after
    {
        width: 6.13333vw;
        height: 6.13333vw;
    }
}

.topLocal__xBtn .c-btn__circle::before
{
    opacity: 1;
}

.topLocal__xBtn .c-btn__circle::after
{
    opacity: 0;
}

.topLocal__xBtn .c-btn__circle .c-btn__arrow
{
    width: 8px;
    height: 6px;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtn .c-btn__circle .c-btn__arrow
    {
        width: .41667vw;
        height: .3125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xBtn .c-btn__circle .c-btn__arrow
    {
        width: .78125vw;
        height: .58594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__xBtn .c-btn__circle .c-btn__arrow
    {
        width: 1.86667vw;
        height: 1.33333vw;
    }
}

.topLocal__xBtn .c-btn__circle .c-btn__arrow::before,
.topLocal__xBtn .c-btn__circle .c-btn__arrow::after
{
    width: 8px;
    height: 6px;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtn .c-btn__circle .c-btn__arrow::before,
    .topLocal__xBtn .c-btn__circle .c-btn__arrow::after
    {
        width: .41667vw;
        height: .3125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xBtn .c-btn__circle .c-btn__arrow::before,
    .topLocal__xBtn .c-btn__circle .c-btn__arrow::after
    {
        width: .78125vw;
        height: .58594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__xBtn .c-btn__circle .c-btn__arrow::before,
    .topLocal__xBtn .c-btn__circle .c-btn__arrow::after
    {
        width: 1.86667vw;
        height: 1.33333vw;
    }
}

.topLocal__xBtn .c-btn__circle .c-btn__arrow::before
{
    -webkit-transform: translateX(-120%);
            transform: translateX(-120%);

    opacity: 0;
}

.topLocal__xBtn .c-btn__circle .c-btn__arrow::after
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.topLocal__xBtn:hover .topLocal__xBtnTxt
{
    -webkit-transition: color .4s ease-in-out;
            transition: color .4s ease-in-out;

    color: #009cde;
}

.topLocal__xBtn:hover .c-btn__arrow::before
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.topLocal__xBtn:hover .c-btn__arrow::after
{
    -webkit-transform: translateX(120%);
            transform: translateX(120%);

    opacity: 0;
}

.topLocal__xIcon
{
    width: 15px;
    height: 15.4px;
    padding-right: 15px;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xIcon
    {
        width: .78125vw;
        height: .80208vw;
        padding-right: .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xIcon
    {
        width: 1.46484vw;
        height: 1.50391vw;
        padding-right: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__xIcon
    {
        width: 3.2vw;
        height: 3.30667vw;
        padding-right: 2.66667vw;
    }
}

.topLocal__xBtnTxt
{
    font-weight: 700;

    position: relative;
    z-index: 0;

    padding-bottom: 2px;
    padding-left: 14.5px;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtnTxt
    {
        padding-bottom: .10417vw;
        padding-left: .75521vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__xBtnTxt
    {
        padding-bottom: .19531vw;
        padding-left: 1.41602vw;
    }
}

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

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

    width: 1px;
    height: 19px;

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

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__xBtnTxt::before
    {
        height: .98958vw;
    }
}

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

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

.topLocal__btnBox
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
    line-height: 96px;

    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 500px;
    height: 96px;
    margin-top: 140px;
    padding-left: 40px;

    -webkit-transition: background .5s ease, color .5s ease;
            transition: background .5s ease, color .5s ease;

    color: #fff;
    border: 3px solid #009cde;
    border-radius: 60px;
    background: -webkit-gradient(linear, left top, left bottom, from(#00bcde), to(#008ecb));
    background: linear-gradient(to bottom, #00bcde, #008ecb);
}

@media print, screen and (max-width: 1920px)
{
    .topLocal__btnBox
    {
        line-height: 5vw;

        width: 26.04167vw;
        height: 5vw;
        margin-top: 7.29167vw;
        padding-left: 2.08333vw;

        border: .15625vw solid #009cde;
    }
}

@media print, screen and (max-width: 1025px)
{
    .topLocal__btnBox
    {
        line-height: 6.83594vw;

        width: 37.10938vw;
        height: 6.83594vw;
        margin: 0 auto;
        margin-top: 9.76562vw;
        padding-left: 4.88281vw;

        text-align: left;

        border: .19531vw solid #009cde;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__btnBox
    {
        line-height: 13.33333vw;

        width: 80vw;
        height: 13.33333vw;
        margin-top: 189.33333vw;
        padding-left: 6.66667vw;

        border: .26667vw solid #0055b2;
    }
}

.topLocal__btnBox::before,
.topLocal__btnBox::after
{
    position: absolute;
    right: 14px;
    bottom: 0;

    width: 140px;
    height: 156px;

    content: '';
    -webkit-transition: opacity .2s ease;
            transition: opacity .2s ease;

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

@media print, screen and (max-width: 1920px)
{
    .topLocal__btnBox::before,
    .topLocal__btnBox::after
    {
        right: .72917vw;

        width: 7.29167vw;
        height: 8.125vw;
    }
}

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

        width: 11.71875vw;
        height: 13.08594vw;
    }
}

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

        width: 18.66667vw;
        height: 20.8vw;
    }
}

.topLocal__btnBox::before
{
    /* 初期表示 */
    z-index: 1;

    opacity: 1;
    background-image: url(../images/img_top_local_sutamuchan01.webp);
}

.topLocal__btnBox::after
{
    /* 初期非表示 */
    z-index: 2;

    opacity: 0;
    background-image: url(../images/img_top_local_sutamuchan02.webp);
}

.topLocal__btnBox:hover
{
    color: #009cde;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
    background: linear-gradient(to bottom, #fff, #fff);
}

.topLocal__btnBox:hover::before
{
    opacity: 0;
    /* フェードアウト */
}

.topLocal__btnBox:hover::after
{
    opacity: 1;
    /* フェードイン */
}

.topLocal__spPhoto
{
    position: relative;
}

.topLocal__spPhoto__spPhotoCont
{
    position: absolute;
}

@media print, screen and (max-width: 430px)
{
    .topLocal__spPhoto--01
    {
        top: -86.66667vw;
        left: 0;

        width: 56.4vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__spPhoto--02
    {
        z-index: 1;
        top: -80vw;
        left: 18.66667vw;

        width: 30.53333vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__spPhoto--03
    {
        top: -92vw;
        left: 39.33333vw;

        width: 56.53333vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .topLocal__spPhoto--04
    {
        top: -84vw;
        left: 0;

        width: 68.93333vw;
    }
}

.topLocal__spPhoto > picture
{
    display: block;

    width: 100%;
}

.topLocal__spPhoto > picture > img
{
    display: block;

    width: 100%;
}

/* ============== .headBtn ============== */
.headBtn
{
    font-weight: 500;

    position: relative;

    display: block;

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

    color: #fff;
}

.headBtn__circle
{
    position: absolute;
    top: 50%;
    right: 20px;

    width: 22px;
    height: 22px;

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

    border-radius: 50%;
    background: -webkit-gradient(linear, left top, left bottom, from(#bee7f8), to(#46b2e0));
    background: linear-gradient(180deg, #bee7f8, #46b2e0);
    /* 背景円（回転用） */
}

@media print, screen and (max-width: 1920px)
{
    .headBtn__circle
    {
        right: 1.04167vw;

        width: 1.14583vw;
        height: 1.14583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .headBtn__circle
    {
        right: 1.5625vw;

        width: 3.125vw;
        height: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .headBtn__circle
    {
        right: 4.66667vw;

        width: 7.2vw;
        height: 7.2vw;
    }
}

.headBtn__circle::before,
.headBtn__circle::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 26px;
    height: 26px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
            transform: translate(-50%, -50%) rotate(0deg);

    background: url(../images/img_head_btn_circle.svg) no-repeat center/cover;
}

@media print, screen and (max-width: 1920px)
{
    .headBtn__circle::before,
    .headBtn__circle::after
    {
        width: 1.35417vw;
        height: 1.35417vw;
    }
}

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

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

.headBtn__circle::before
{
    opacity: 1;
}

.headBtn__circle::after
{
    opacity: 0;
}

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

    width: 6px;
    height: 5px;

    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

@media print, screen and (max-width: 1920px)
{
    .headBtn__arrow
    {
        width: .3125vw;
        height: .26042vw;
    }
}

.headBtn__arrow::before,
.headBtn__arrow::after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 6px;
    height: 5px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;

    background: url(../images/icon_head_arrow_white.svg) no-repeat center/contain;
}

@media print, screen and (max-width: 1920px)
{
    .headBtn__arrow::before,
    .headBtn__arrow::after
    {
        width: .3125vw;
        height: .26042vw;
    }
}

.headBtn__arrow::before
{
    -webkit-transform: translateX(-120%);
            transform: translateX(-120%);

    opacity: 0;
}

.headBtn__arrow::after
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.headBtn:hover
{
    -webkit-transition: color .4s ease-in-out;
            transition: color .4s ease-in-out;
}

.headBtn:hover .headBtn__circle::before,
.headBtn:hover .headBtn__circle::after
{
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
            transform: translate(-50%, -50%) rotate(180deg);
}

.headBtn:hover .headBtn__circle::before
{
    opacity: 0;
}

.headBtn:hover .headBtn__circle::after
{
    opacity: 1;
}

.headBtn:hover .headBtn__arrow::before
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.headBtn:hover .headBtn__arrow::after
{
    -webkit-transform: translateX(120%);
            transform: translateX(120%);

    opacity: 0;
}

.headBtn__link
{
    font-weight: 500;

    display: block;
}

.headBtn__link > span
{
    position: relative;

    padding-bottom: 5px;
}

@media print, screen and (max-width: 1920px)
{
    .headBtn__link > span
    {
        padding-bottom: .26042vw;
    }
}

.headBtn__link > span:before
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 0;
    height: 1px;

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

    background-color: #0055b2;
}

.headBtn__link:hover > span:before
{
    width: 100%;
}

/* ============== .loading ============== */
.loading
{
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;

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

    width: 100%;
    height: 100dvh;
    height: 100vh;

    -webkit-transition: all .5s linear;
            transition: all .5s linear;

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

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    /* テキスト用アニメーション */
}

.loading:before
{
    position: absolute;

    content: '';

    background: #00216e;

    inset: 0;
    mix-blend-mode: soft-light;
}

.loading:after
{
    position: absolute;

    content: '';

    background: radial-gradient(circle, rgba(0, 33, 110, .3) 0%, rgba(0, 33, 110, 0) 100%);

    inset: 0;
}

.loading.loaded
{
    visibility: hidden;

    opacity: 0;
}

.loading__txt
{
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 600;
    line-height: 2.5;

    position: relative;
    z-index: 1;

    -webkit-animation: loadingTextFade .8s ease forwards;
            animation: loadingTextFade .8s ease forwards;
    -webkit-animation-delay: .6s;
            animation-delay: .6s;
    letter-spacing: .05em;

    opacity: 0;
    color: #fff;
}

@-webkit-keyframes loadingTextFade
{
    from
    {
        opacity: 0;
    }
    to
    {
        opacity: 1;
    }
}

@keyframes loadingTextFade
{
    from
    {
        opacity: 0;
    }
    to
    {
        opacity: 1;
    }
}

/* ============== .ctaSec ============== */
.ctaSec
{
    position: relative;
    position: fixed;
    z-index: 20;
    right: 0;
    bottom: 10px;

    display: block;
    visibility: hidden;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 390px;
    height: 120px;
    padding: 25px 60px 29px 25px;

    cursor: pointer;
    -webkit-transition: opacity .3s ease, visibility .3s ease;
            transition: opacity .3s ease, visibility .3s ease;

    opacity: 0;
    color: #fff;
    border-radius: 10px 10px 0 0;
    -webkit-box-shadow: 0 3px 16px rgba(0, 35, 116, .8);
            box-shadow: 0 3px 16px rgba(0, 35, 116, .8);
}

@media print, screen and (max-width: 1920px)
{
    .ctaSec
    {
        bottom: .52083vw;

        width: 20.3125vw;
        height: 6.25vw;
        padding: 1.30208vw 3.125vw 1.51042vw 1.30208vw;

        border-radius: .52083vw .52083vw 0 0;
    }
}

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

        width: 38.08594vw;
        height: 11.71875vw;
        padding: 2.44141vw 5.85938vw 3.41797vw 2.44141vw;

        border-radius: .97656vw .97656vw 0 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .ctaSec
    {
        top: auto;
        right: 0;
        bottom: -1.46667vw;
        bottom: 0;
        left: 0;

        width: 96vw;
        height: 16vw;
        margin: 0 auto;
        padding: 2.4vw 0;

        border-radius: 2.66667vw 2.66667vw 0 0;
    }
}

.ctaSec.active
{
    visibility: visible;

    opacity: 1;
}

.ctaSec:before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 390px;
    height: 120px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .ctaSec:before
    {
        width: 20.3125vw;
        height: 6.25vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .ctaSec:before
    {
        width: 96vw;
        height: 16vw;

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

.ctaSec__txt
{
    font-weight: 600;
    line-height: 1.7;

    text-align: left;
}

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

        text-align: center;
    }
}

.ctaSec__circle
{
    position: absolute;
    top: 50%;
    right: 20px;

    width: 34px;
    height: 34px;

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

    border-radius: 50%;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#45a7ef));
    background: linear-gradient(180deg, #fff, #45a7ef);
    /* 背景円（回転用） */
}

@media print, screen and (max-width: 1920px)
{
    .ctaSec__circle
    {
        right: 1.04167vw;

        width: 1.77083vw;
        height: 1.77083vw;
    }
}

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

        width: 3.32031vw;
        height: 3.32031vw;
    }
}

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

        width: 7.33333vw;
        height: 7.33333vw;
    }
}

.ctaSec__circle::before,
.ctaSec__circle::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 38.7px;
    height: 38.7px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
            transform: translate(-50%, -50%) rotate(0deg);

    background: url(../images/img_cta_btn_circle.svg) no-repeat center/cover;
}

@media print, screen and (max-width: 1920px)
{
    .ctaSec__circle::before,
    .ctaSec__circle::after
    {
        width: 2.01562vw;
        height: 2.01562vw;
    }
}

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

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

.ctaSec__circle::before
{
    opacity: 1;
}

.ctaSec__circle::after
{
    opacity: 0;
}

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

    width: 9px;
    height: 7px;

    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

@media print, screen and (max-width: 1920px)
{
    .ctaSec__arrow
    {
        width: .46875vw;
        height: .36458vw;
    }
}

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

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

.ctaSec__arrow::before,
.ctaSec__arrow::after
{
    position: absolute;
    top: 0;
    left: 0;

    width: 9px;
    height: 7px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out;
            transition: transform .4s ease-in-out, opacity .4s ease-in-out, -webkit-transform .4s ease-in-out;

    background: url(../images/icon_cta_arrow_white.svg) no-repeat center/contain;
}

@media print, screen and (max-width: 1920px)
{
    .ctaSec__arrow::before,
    .ctaSec__arrow::after
    {
        width: .46875vw;
        height: .36458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .ctaSec__arrow::before,
    .ctaSec__arrow::after
    {
        width: .87891vw;
        height: .68359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .ctaSec__arrow::before,
    .ctaSec__arrow::after
    {
        width: 1.86667vw;
        height: 1.46667vw;
    }
}

.ctaSec__arrow::before
{
    -webkit-transform: translateX(-120%);
            transform: translateX(-120%);

    opacity: 0;
}

.ctaSec__arrow::after
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.ctaSec:hover
{
    -webkit-transition: color .4s ease-in-out;
            transition: color .4s ease-in-out;
}

.ctaSec:hover .ctaSec__circle::before,
.ctaSec:hover .ctaSec__circle::after
{
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
            transform: translate(-50%, -50%) rotate(180deg);
}

.ctaSec:hover .ctaSec__circle::before
{
    opacity: 0;
}

.ctaSec:hover .ctaSec__circle::after
{
    opacity: 1;
}

.ctaSec:hover .ctaSec__arrow::before
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.ctaSec:hover .ctaSec__arrow::after
{
    -webkit-transform: translateX(120%);
            transform: translateX(120%);

    opacity: 0;
}

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

    overflow: hidden;

    width: 100vw;
    height: 1080px;
}

@media print, screen and (max-width: 1920px)
{
    .localFv
    {
        height: 56.25vw;
    }
}

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

.localFv::before
{
    position: absolute;
    z-index: -9;

    width: 100%;
    height: auto;

    content: '';

    background-color: #fff;
    background-image: url(../images/img_local_fv_bg.webp);
    background-position: center;
    background-size: cover;

    inset: 0;
}

.localFv__swiper
{
    position: absolute;
    top: 650px;
    right: 0;
    left: 0;

    overflow: hidden;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 1860px;
    margin: 0 auto;
    padding: 14px 0;

    -webkit-transition: opacity 1.2s ease, -webkit-transform 1s ease;
            transition: opacity 1.2s ease, -webkit-transform 1s ease;
            transition: transform 1s ease, opacity 1.2s ease;
            transition: transform 1s ease, opacity 1.2s ease, -webkit-transform 1s ease;
    -webkit-transform: translateY(60px);
            transform: translateY(60px);

    opacity: 0;
    border-top: 3px solid #0b0b0b;
    border-bottom: 3px solid #0b0b0b;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__swiper
    {
        top: 33.85417vw;
        top: 33.85417vw;

        width: 96.875vw;
        padding: .72917vw 0;

        border-top: .15625vw solid #0b0b0b;
        border-bottom: .15625vw solid #0b0b0b;
    }
}

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

        width: 92vw;
        padding: 1.86667vw 0;

        border-top: .4vw solid #0b0b0b;
        border-bottom: .4vw solid #0b0b0b;
    }
}

.localFv__bg
{
    position: absolute;
    top: 0;
    right: 147px;

    width: 1076px;

    -o-object-fit: cover;
       object-fit: cover;
    mix-blend-mode: soft-light;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__bg
    {
        right: 7.65625vw;

        width: 56.04167vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__bg
    {
        right: 0;

        width: 100%;
    }
}

.localFv__bg > img
{
    display: block;

    width: 100%;
}

.localFv__bg:nth-child(2)
{
    top: 147px;
    left: 25px;

    width: 489px;

    mix-blend-mode: normal;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__bg:nth-child(2)
    {
        top: 7.65625vw;
        left: 1.30208vw;

        width: 25.46875vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__bg:nth-child(2)
    {
        top: 24.8vw;
        left: -9.33333vw;

        width: 51.06667vw;
    }
}

.localFv__bg:nth-child(3)
{
    top: 262px;
    left: 74px;

    width: 167px;

    mix-blend-mode: normal;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__bg:nth-child(3)
    {
        top: 13.64583vw;
        left: 3.85417vw;

        width: 8.69792vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__bg:nth-child(3)
    {
        top: 45.2vw;
        left: 2.26667vw;

        width: 22.26667vw;
    }
}

.localFv__bg:nth-child(4)
{
    top: 435px;
    left: 0;

    width: 120px;

    mix-blend-mode: normal;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__bg:nth-child(4)
    {
        top: 22.65625vw;

        width: 6.25vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__bg:nth-child(4)
    {
        top: 68.8vw;

        width: 12.8vw;
    }
}

.localFv__bg:nth-child(5)
{
    top: 203px;
    right: 0;

    width: 322px;

    mix-blend-mode: normal;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__bg:nth-child(5)
    {
        top: 10.57292vw;

        width: 16.77083vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__bg:nth-child(5)
    {
        top: 76.66667vw;
        right: -1.6vw;

        width: 42.93333vw;
    }
}

.localFv__bg:nth-child(6)
{
    top: auto;
    right: 0;
    bottom: 0;

    width: 396px;

    mix-blend-mode: normal;
}

@media print, screen and (max-width: 1920px)
{
    .localFv__bg:nth-child(6)
    {
        width: 20.625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__bg:nth-child(6)
    {
        right: -1.6vw;
        bottom: 0;

        width: 54.93333vw;
    }
}

.localFv__bg--load
{
    -webkit-transition: -webkit-clip-path 1.5s ease-in-out;
            transition: -webkit-clip-path 1.5s ease-in-out;
            transition:         clip-path 1.5s ease-in-out;
            transition:         clip-path 1.5s ease-in-out, -webkit-clip-path 1.5s ease-in-out;

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

.localFv__bg--load.toggle
{
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

.localFv__bg--load picture img
{
    display: block;

    width: 100%;
}

.localFv__copy
{
    position: absolute;
    top: 85px;
    right: 0;
    left: 0;

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

    width: 145px;
    margin: 0 auto;

    -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: 1920px)
{
    .localFv__copy
    {
        top: 4.42708vw;

        width: 7.55208vw;
    }
}

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

        width: 19.33333vw;
    }
}

.localFv__copyTxt
{
    width: 38px;
    padding: 38px 11px;

    -webkit-transition: -webkit-clip-path 1.5s ease;
            transition: -webkit-clip-path 1.5s ease;
            transition:         clip-path 1.5s ease;
            transition:         clip-path 1.5s ease, -webkit-clip-path 1.5s ease;

    background-color: #fff;

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

@media print, screen and (max-width: 1920px)
{
    .localFv__copyTxt
    {
        width: 1.97917vw;
        padding: 1.97917vw .57292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localFv__copyTxt
    {
        width: 5.06667vw;
        padding: 5.06667vw 1.46667vw;
    }
}

.localFv__copyTxt img
{
    display: block;

    width: 100%;
}

.localFv__copyTxt.toggle
{
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.js-bg
{
    -webkit-transition: opacity 1.2s ease, -webkit-transform 1.2s ease;
            transition: opacity 1.2s ease, -webkit-transform 1.2s ease;
            transition: transform 1.2s ease, opacity 1.2s ease;
            transition: transform 1.2s ease, opacity 1.2s ease, -webkit-transform 1.2s ease;

    opacity: 0;
}

.bg-left
{
    -webkit-transform: translateX(-200px);
            transform: translateX(-200px);
}

.bg-right
{
    -webkit-transform: translateX(200px);
            transform: translateX(200px);
}

.js-bg.toggle
{
    -webkit-transform: translateX(0);
            transform: translateX(0);

    opacity: 1;
}

.localFv__swiper.toggle
{
    -webkit-transform: translateY(0);
            transform: translateY(0);

    opacity: 1;
}

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

    overflow: hidden;

    padding-top: 180px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts
    {
        padding-top: 9.375vw;
    }
}

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

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

.localThoughts__sutamu
{
    position: absolute;
    top: 358px;
    right: 75px;

    width: 171px;
    height: 194px;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__sutamu
    {
        top: 18.64583vw;
        right: 3.90625vw;

        width: 8.90625vw;
        height: 10.10417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__sutamu
    {
        top: 88.67188vw;
        right: 5.37109vw;

        width: 13.28125vw;
        height: 15.03906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__sutamu
    {
        z-index: 9;
        top: 93.33333vw;
        right: 2.66667vw;

        width: 22.8vw;
        height: 25.86667vw;
    }
}

.localThoughts__sutamu02
{
    position: absolute;
    bottom: -131px;
    left: 7px;

    width: 171px;
    height: 203px;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__sutamu02
    {
        bottom: -6.82292vw;
        left: .36458vw;

        width: 8.90625vw;
        height: 10.57292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__sutamu02
    {
        bottom: -5.95703vw;
        left: -1.46484vw;

        width: 13.28125vw;
        height: 15.82031vw;
    }
}

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

        width: 22.8vw;
        height: 27.06667vw;
    }
}

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

    max-width: 1920px;
    margin: 0 auto;
    padding-top: 100px;
    padding-bottom: 197px;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__cont
    {
        padding-top: 5.20833vw;
        padding-bottom: 10.26042vw;

        gap: 4.27083vw;
    }
}

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

        padding-top: 4.88281vw;
        padding-bottom: 9.76562vw;

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

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

        gap: 8vw;
    }
}

.localThoughts__img
{
    position: relative;

    width: 920px;
    padding: 0 30px 30px 0;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__img
    {
        width: 47.91667vw;
        padding: 0 1.5625vw 1.5625vw 0;
    }
}

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

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

.localThoughts__img picture img
{
    display: block;

    width: 100%;
}

.localThoughts__img::after
{
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;

    width: 920px;
    height: 590px;

    content: '';

    opacity: .5;
    background-color: #f2e2d3;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__img::after
    {
        width: 47.91667vw;
        height: 30.72917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__img::after
    {
        width: 90%;
        height: 57.61719vw;
    }
}

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

.localThoughts__rBox
{
    width: 760px;
    margin-top: 100px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__rBox
    {
        width: 39.58333vw;
        margin-top: 5.20833vw;
    }
}

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

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

.localThoughts__ttl
{
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    line-height: 2.967;

    letter-spacing: .1em;
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__ttl
    {
        letter-spacing: .01em;
    }
}

.localThoughts__ttl > span
{
    padding: 6px 20px 8px 20px;

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__ttl > span
    {
        padding: .3125vw 1.04167vw .41667vw 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__ttl > span
    {
        padding: .58594vw 1.95312vw .78125vw 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__ttl > span
    {
        padding: .8vw 2.66667vw 1.06667vw 2.66667vw;
    }
}

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

    margin-top: 44px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__txt
    {
        margin-top: 2.29167vw;
    }
}

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

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

.localThoughts__bottom
{
    position: relative;

    padding-bottom: 159px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottom
    {
        padding-bottom: 8.28125vw;
    }
}

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

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

.localThoughts__bottom::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;
    left: 0;

    width: 100%;
    height: 100%;
    margin: 0 auto;

    content: '';

    background-image: url(../images/img_local_thoughts_bg_bottom.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
}

.localThoughts__bottomTtl
{
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 600;
    line-height: 1.5;

    padding-top: 230px;

    letter-spacing: .05em;

    color: #000;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomTtl
    {
        padding-top: 11.97917vw;
    }
}

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

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

.localThoughts__bottomTtl--red
{
    color: #d8563e;
}

.localThoughts__bottomCont
{
    max-width: 1920px;
    margin: 0 auto;
    margin-top: 105px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomCont
    {
        margin-top: 5.46875vw;
    }
}

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

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

.localThoughts__bottomBox
{
    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 1710px;
    margin-top: 140px;
    padding: 160px 720px 0 0;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomBox
    {
        width: 89.0625vw;
        margin-top: 7.29167vw;
        padding: 8.33333vw 37.5vw 0 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bottomBox
    {
        width: 90.23438vw;
        margin: 26.36719vw auto 0;
        padding: 64.45312vw 0 0 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bottomBox
    {
        width: 92vw;
        margin: 37.06667vw auto 0;
        padding: 63.6vw 0 0 0;
    }
}

.localThoughts__bottomBox:first-child
{
    margin-top: 0;
}

.localThoughts__bottomBox:last-child
{
    margin-top: 282px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomBox:last-child
    {
        margin-top: 14.6875vw;
    }
}

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

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

.localThoughts__bottomBox--right
{
    margin: 140px 0 0 auto;
    padding: 160px 0 0 720px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomBox--right
    {
        margin: 7.29167vw 0 0 auto;
        padding: 8.33333vw 0 0 37.5vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bottomBox--right
    {
        margin: 26.36719vw auto 0;
        padding: 64.45312vw 0 0 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bottomBox--right
    {
        margin: 37.06667vw auto 0;
        padding: 63.6vw 0 0 0;
    }
}

.localThoughts__bottomImg
{
    position: absolute;
    top: 0;
    right: 0;

    width: 810px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomImg
    {
        width: 42.1875vw;
    }
}

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

.localThoughts__bottomImg picture img
{
    display: block;

    width: 100%;
}

.localThoughts__bottomImg--right
{
    right: auto;
    left: 0;
}

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

@media print, screen and (max-width: 430px)
{
    .localThoughts__bottomImg--double
    {
        width: 78.26667vw;
    }
}

.localThoughts__bottomImgSmall
{
    position: absolute;
    top: 453px;
    right: -129px;

    width: 329px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomImgSmall
    {
        top: 23.59375vw;
        right: -6.71875vw;

        width: 17.13542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bottomImgSmall
    {
        top: 40.23438vw;
        right: auto;
        left: 0;

        width: 32.12891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bottomImgSmall
    {
        top: 33.33333vw;
        right: auto;
        left: 0;

        width: 43.86667vw;
    }
}

.localThoughts__bottomImgSmall picture img
{
    display: block;

    width: 100%;
}

.localThoughts__bottomImgSmall--right
{
    right: auto;
    left: -129px;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomImgSmall--right
    {
        left: -6.71875vw;
    }
}

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

.localThoughts__bottomTxtBox
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 990px;
    padding: 30px 28px 110px 15px;

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomTxtBox
    {
        width: 51.5625vw;
        padding: 1.5625vw 1.45833vw 5.72917vw .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bottomTxtBox
    {
        width: 100%;
        padding: 2.92969vw 2.73438vw 10.74219vw 1.46484vw;
    }
}

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

.localThoughts__bottomLine
{
    border-top: 3px solid #0b0b0b;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomLine
    {
        border-top: .15625vw solid #0b0b0b;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bottomLine
    {
        border-top: .4vw solid #0b0b0b;
    }
}

.localThoughts__bottomTxtInner
{
    margin-top: 14px;

    text-align: left;

    border-top: 1px solid #0b0b0b;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomTxtInner
    {
        margin-top: .72917vw;

        border-top: .05208vw solid #0b0b0b;
    }
}

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

        border-top: .13333vw solid #0b0b0b;
    }
}

.localThoughts__bottomSubTtl
{
    font-family: 'Shippori Mincho B1', serif;
    font-weight: 500;
    line-height: 2.333;

    width: 720px;
    margin: 0 auto;
    margin-top: 56px;
}

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

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bottomSubTtl
    {
        width: 80%;
        margin-top: 5.46875vw;
    }
}

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

        width: 86.13333vw;
        margin-top: 6.66667vw;
    }
}

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

    width: 720px;
    margin: 0 auto;
    margin-top: 55px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bottomTxt
    {
        width: 37.5vw;
        margin-top: 2.86458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bottomTxt
    {
        width: 80%;
        margin-top: 5.37109vw;
    }
}

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

.localThoughts__bg
{
    position: absolute;
    z-index: 0;
    top: 1080px;
    right: -.67708vw;

    width: 14.73958vw;
    height: 14.79167vw;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bg
    {
        top: 56.25vw;
        right: -.67708vw;

        width: 14.73958vw;
        height: 14.79167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bg
    {
        z-index: 1;
        top: 173.82812vw;
        right: -1.26953vw;

        width: 20.80078vw;
        height: 20.89844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bg
    {
        z-index: 1;
        top: 284.93333vw;
        right: -9.6vw;

        width: 37.73333vw;
        height: 37.86667vw;
    }
}

.localThoughts__bg:nth-child(2)
{
    z-index: -1;
    top: 966px;
    right: 6.66667vw;

    width: 9.47917vw;
    height: 9.53125vw;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bg:nth-child(2)
    {
        top: 50.3125vw;
        right: 6.66667vw;

        width: 9.47917vw;
        height: 9.53125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bg:nth-child(2)
    {
        top: 173.82812vw;
        right: 14.45312vw;

        width: 12.89062vw;
        height: 12.98828vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bg:nth-child(2)
    {
        top: 281.06667vw;
        right: 19.33333vw;

        width: 24.26667vw;
        height: 24.4vw;
    }
}

.localThoughts__bg:nth-child(3)
{
    z-index: -1;
    top: 1041px;
    right: 26.45833vw;

    width: 14.32292vw;
    height: 28.80208vw;

    background-image: url(../images/img_local_thoughts_bottom_bg_03.webp);
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bg:nth-child(3)
    {
        top: 54.21875vw;
        right: 26.45833vw;

        width: 14.32292vw;
        height: 28.80208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bg:nth-child(3)
    {
        top: 163.18359vw;
        right: 39.84375vw;

        width: 26.85547vw;
        height: 54.00391vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bg:nth-child(3)
    {
        top: 243.73333vw;
        right: 72.8vw;

        width: 40.13333vw;
        height: 80.13333vw;

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

.localThoughts__bg:nth-child(4)
{
    top: 2273px;
    right: auto;
    left: 2.55208vw;

    width: 14.73958vw;
    height: 14.79167vw;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bg:nth-child(4)
    {
        top: 118.38542vw;
        left: 2.55208vw;

        width: 14.73958vw;
        height: 14.79167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bg:nth-child(4)
    {
        top: 314.74609vw;
        left: -2.92969vw;

        width: 19.53125vw;
        height: 19.62891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bg:nth-child(4)
    {
        top: 512.93333vw;
        left: -10.13333vw;

        width: 37.73333vw;
        height: 37.86667vw;
    }
}

.localThoughts__bg:nth-child(5)
{
    z-index: -1;
    top: 2384px;
    right: auto;
    left: 0;

    width: 10.9375vw;
    height: 14.21875vw;

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

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bg:nth-child(5)
    {
        top: 124.16667vw;
        left: 0;

        width: 10.9375vw;
        height: 14.21875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bg:nth-child(5)
    {
        top: 312.89062vw;
        left: 13.67188vw;

        width: 12.69531vw;
        height: 18.84766vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bg:nth-child(5)
    {
        top: 510.13333vw;
        left: 21.06667vw;

        width: 31.06667vw;
        height: 31.06667vw;

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

.localThoughts__bg:nth-child(6)
{
    z-index: -1;
    top: 2133px;
    right: auto;
    left: 26.30208vw;

    width: 14.47917vw;
    height: 28.64583vw;

    background-image: url(../images/img_local_thoughts_bottom_bg_06.webp);
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .localThoughts__bg:nth-child(6)
    {
        top: 111.09375vw;
        left: 26.30208vw;

        width: 14.47917vw;
        height: 28.64583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localThoughts__bg:nth-child(6)
    {
        top: 305.95703vw;
        left: 38.57422vw;

        width: 27.14844vw;
        height: 53.71094vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localThoughts__bg:nth-child(6)
    {
        top: 486.66667vw;
        left: 64.66667vw;

        width: 41.2vw;
        height: 80.4vw;

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

.js-reveal-bg
{
    -webkit-transition: -webkit-clip-path 2.6s cubic-bezier(.33, 1, .68, 1);
            transition: -webkit-clip-path 2.6s cubic-bezier(.33, 1, .68, 1);
            transition:         clip-path 2.6s cubic-bezier(.33, 1, .68, 1);
            transition:         clip-path 2.6s cubic-bezier(.33, 1, .68, 1), -webkit-clip-path 2.6s cubic-bezier(.33, 1, .68, 1);
    -webkit-transition-delay: .3s;
            transition-delay: .3s;

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

.js-reveal-bg.is-show
{
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
}

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

    overflow: hidden;

    padding: 19px 0;

    border-top: 1px solid #0b0b0b;
    border-bottom: 1px solid #0b0b0b;
}

@media print, screen and (max-width: 1920px)
{
    .localSwiper
    {
        padding: .98958vw 0;

        border-top: .05208vw solid #0b0b0b;
        border-bottom: .05208vw solid #0b0b0b;
    }
}

.localSwiper::before
{
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

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

    content: '';

    mix-blend-mode: soft-light;
}

@media print, screen and (max-width: 1920px)
{
    .localSwiper::before
    {
        height: 15.36458vw;
    }
}

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

.localSwiper--02
{
    padding: 0;

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

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

.localSwiper__swiper
{
    width: 100%;
    max-width: 1860px;
    margin: auto auto;
}

@media print, screen and (max-width: 1920px)
{
    .localSwiper__swiper
    {
        max-width: 96.875vw;
    }
}

.localSwiper .swiper-wrapper
{
    -webkit-transition-timing-function: linear;
            transition-timing-function: linear;
}

.localSwiper__wrp
{
    -webkit-transition-timing-function: linear;
            transition-timing-function: linear;
}

.localSwiper__img > picture img
{
    display: block;

    width: 100%;
}

.localSwiper__img--02
{
    width: 55.34884%;
}

@media print, screen and (max-width: 1920px)
{
    .localSwiper__img--02
    {
        width: 24.79167vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .localSwiper__img--02
    {
        width: 88.4vw;
    }
}

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

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

/* ============== .localLink ============== */
.localLink
{
    width: 100%;
    padding-top: 150px;
}

@media print, screen and (max-width: 1920px)
{
    .localLink
    {
        padding-top: 7.8125vw;
    }
}

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

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

.localLink__inner
{
    width: 1788px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1920px)
{
    .localLink__inner
    {
        width: 93.125vw;
    }
}

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

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

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

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

@media print, screen and (max-width: 1025px)
{
    .localLink__cont
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 1.95312vw 1.5625vw;
    }
}

@media sp
{
    .localLink__cont
    {
            flex-direction: column;

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

.localLink__btn
{
    font-weight: 600;
    line-height: 1;

    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 435px;
    padding: 24px 0 24px 34px;

    text-align: left;

    border: 1px solid #0b0b0b;
    border-radius: 100vw;
    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .localLink__btn
    {
        width: 22.65625vw;
        padding: 1.25vw 0 1.25vw 1.77083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localLink__btn
    {
        width: 42.48047vw;
        padding: 2.34375vw 0 2.34375vw 3.32031vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localLink__btn
    {
        width: 100%;
        padding: 3.2vw 0;

        text-align: center;
    }
}

.localLink__btn::before
{
    position: absolute;
    top: 0;
    right: 28px;
    bottom: 0;

    width: 30px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .localLink__btn::before
    {
        right: 1.45833vw;

        width: 1.5625vw;
    }
}

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

        width: 2.92969vw;
    }
}

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

        width: 5.06667vw;
    }
}

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

        color: #fff;
        background-color: #0b0b0b;
    }
    .localLink__btn:hover::before
    {
        background-image: url(../images/ico_local_btn_white.svg);
    }
}

/* ============== .localBg ============== */
.localBg__bg
{
    position: relative;
}

.localBg__bg::before
{
    position: absolute;
    z-index: -5;
    top: 0;
    right: 0;
    left: 0;

    width: 100%;
    height: 100%;
    margin: 0 auto;

    content: '';

    background-color: #fff;
    background-image: url(../images/img_local_bg_01.webp);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;
}

.localBg__bg::after
{
    position: absolute;
    z-index: -1;
    top: 662px;
    right: 0;

    width: 960px;
    height: 961px;

    content: '';

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

    mix-blend-mode: color-burn;
}

@media print, screen and (max-width: 1920px)
{
    .localBg__bg::after
    {
        top: 34.47917vw;

        width: 50vw;
        height: 50.05208vw;
    }
}

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

        width: 54.6875vw;
        height: 54.78516vw;
    }
}

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

        width: 100vw;
        height: 100.8vw;

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

.localBg__bg--activities::before
{
    background-image: url(../images/img_local_achivities_bg.webp);
}

.localBg__bg--activities::after
{
    display: none;
}

.localBg__bg--map::after
{
    display: none;
}

.localBg__bg--initiatives::after
{
    display: none;
}

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

    padding-top: 37px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .c-bread
    {
        padding-top: 1.92708vw;
    }
}

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

.c-bread__under
{
    line-height: 1.4;

    padding: 32px 0;
}

@media print, screen and (max-width: 1920px)
{
    .c-bread__under
    {
        padding: 1.66667vw 0;
    }
}

.c-bread__cont
{
    display: inline-block;
}

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

    text-align: left;

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 36px;
}

@media print, screen and (max-width: 1920px)
{
    .c-bread__item
    {
        gap: 1.875vw;
    }
}

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

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

    position: relative;

    margin: auto 0;

    list-style: none;

    text-align: left;

    color: #000;
}

.c-bread__list::after
{
    position: absolute;
    top: 0;
    right: -19px;
    bottom: 0;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .c-bread__list::after
    {
        right: -.98958vw;

        width: .26042vw;
        height: .41667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-bread__list::after
    {
        right: -2.53333vw;

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

.c-bread__list:first-child
{
    padding-left: 0;
}

.c-bread__list:last-child::after
{
    display: none;
}

.c-bread__link
{
    position: relative;

    display: block;

    color: #009cde;
}

.c-bread__link::before
{
    position: absolute;
    bottom: -3px;
    left: 0;

    width: 100%;
    height: 1px;

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

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .c-bread__link::before
    {
        bottom: -.15625vw;

        height: .05208vw;
    }
}

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

        height: .13333vw;
    }
}

@media (any-hover: hover)
{
    .c-bread__link:hover
    {
        opacity: .7;
    }
}

/* ============== .c-ttl02 ============== */
.c-ttl02--initiatives
{
    text-align: left;
}

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

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

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

.c-ttl02__en
{
    font-family: 'Noto Serif JP', serif;
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: .05em;

    color: #d8563e;
}

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

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

.c-ttl02__jp
{
    font-weight: 600;
    line-height: 1.5;

    letter-spacing: .05em;

    color: #000;
}

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

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

/* ============== .localActivities ============== */
.localActivities
{
    overflow: hidden;

    padding: 140px 0;
}

@media print, screen and (max-width: 1920px)
{
    .localActivities
    {
        padding: 7.29167vw 0;
    }
}

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

.localActivities__sutamu
{
    position: absolute;
    top: 696px;
    right: 382px;

    width: 218px;
    height: 248px;

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

@media print, screen and (max-width: 1920px)
{
    .localActivities__sutamu
    {
        top: 36.25vw;
        right: 19.89583vw;

        width: 11.35417vw;
        height: 12.91667vw;
    }
}

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

        width: 20vw;
        height: 22.8vw;
    }
}

.localActivities__cont
{
    margin-top: 70px;
}

@media print, screen and (max-width: 1920px)
{
    .localActivities__cont
    {
        margin-top: 3.64583vw;
    }
}

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

.localActivities__x
{
    width: 489px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1920px)
{
    .localActivities__x
    {
        width: 25.46875vw;
    }
}

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

.localActivities__x picture img
{
    display: block;

    width: 100%;
}

.localActivities__btn
{
    margin-top: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .localActivities__btn
    {
        margin-top: 3.125vw;
    }
}

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

.localActivities__bg
{
    position: absolute;
    top: 209px;
    left: 0;

    width: 401px;
    height: 218px;

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

@media print, screen and (max-width: 1920px)
{
    .localActivities__bg
    {
        top: 10.88542vw;

        width: 20.88542vw;
        height: 11.35417vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localActivities__bg
    {
        z-index: -1;
        top: 37.73333vw;

        width: 38.13333vw;
        height: 29.06667vw;

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

.localActivities__bg:nth-child(2)
{
    z-index: -1;
    top: 938px;
    right: 0;
    left: auto;

    width: 429px;
    height: 95px;

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

@media print, screen and (max-width: 1920px)
{
    .localActivities__bg:nth-child(2)
    {
        top: 48.85417vw;

        width: 22.34375vw;
        height: 4.94792vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localActivities__bg:nth-child(2)
    {
        top: 158.13333vw;

        width: 59.6vw;
        height: 12.66667vw;

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

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

    padding: 120px 0;

    background-color: rgba(255, 255, 255, .7);
}

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

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

.localMap__sutamu
{
    position: absolute;
    top: 104px;
    left: 11.19792vw;

    width: 242px;
    height: 277px;

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

@media print, screen and (max-width: 1920px)
{
    .localMap__sutamu
    {
        top: 5.41667vw;
        left: 11.19792vw;

        width: 12.60417vw;
        height: 14.42708vw;
    }
}

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

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

        width: 20vw;
        height: 22.26667vw;
    }
}

.localMap__cont
{
    margin-top: 70px;
}

@media print, screen and (max-width: 1920px)
{
    .localMap__cont
    {
        margin-top: 3.64583vw;
    }
}

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

.localMap__map
{
    width: 1500px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1920px)
{
    .localMap__map
    {
        width: 78.125vw;
    }
}

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

.localMap__map iframe
{
    display: block;

    width: 100%;
    height: 700px;
}

@media print, screen and (max-width: 1920px)
{
    .localMap__map iframe
    {
        height: 36.45833vw;
    }
}

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

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

    padding: 140px 0 155px;
}

@media print, screen and (max-width: 1920px)
{
    .localInitiatives
    {
        padding: 7.29167vw 0 8.07292vw;
    }
}

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

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

.localInitiatives::after
{
    position: absolute;
    z-index: 5;
    right: 0;
    bottom: -282px;
    left: 0;

    width: 100%;
    height: 282px;
    margin: 0 auto;

    content: '';

    background-color: #fff;
    background-image: url(../images/img_local_bg_01.webp);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .localInitiatives::after
    {
        bottom: -14.6875vw;

        height: 14.6875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .localInitiatives::after
    {
        bottom: -38.08594vw;

        height: 38.08594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .localInitiatives::after
    {
        bottom: -117.6vw;

        height: 117.6vw;
    }
}

.localInitiatives__sutamu
{
    position: absolute;
    z-index: 10;
    top: 281px;
    right: 41px;

    width: 218px;
    height: 248px;

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

@media print, screen and (max-width: 1920px)
{
    .localInitiatives__sutamu
    {
        top: 14.63542vw;
        right: 2.13542vw;

        width: 11.35417vw;
        height: 12.91667vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .localInitiatives__sutamu
    {
        z-index: 9;
        top: 116vw;
        right: 3.46667vw;

        width: 20vw;
        height: 22.8vw;
    }
}

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

    max-width: 1920px;
    margin: 0 auto;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 145px;
}

@media print, screen and (max-width: 1920px)
{
    .localInitiatives__cont
    {
        gap: 7.55208vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .localInitiatives__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;
        gap: 8vw;
    }
}

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

    width: 878px;
    margin-top: 23px;

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

@media print, screen and (max-width: 1920px)
{
    .localInitiatives__txt
    {
        width: 45.72917vw;
        margin-top: 1.19792vw;
    }
}

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

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

/* ============== .companySec ============== */
.companySec__message
{
    position: relative;

    padding: 140px 0 170px 0;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__message
    {
        padding: 7.29167vw 0 8.85417vw 0;
    }
}

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

.companySec__message::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

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

.companySec__message::after
{
    position: absolute;
    z-index: -1;
    top: 437px;
    left: 0;

    width: 817px;
    height: 1671px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__message::after
    {
        top: 22.76042vw;

        width: 42.55208vw;
        height: 87.03125vw;
    }
}

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

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

        width: 80vw;
        height: 163.6vw;
    }
}

.companySec__messagePhoto
{
    position: absolute;

    opacity: 0;

    will-change: opacity, transform;
}

.companySec__messagePhoto > picture img
{
    display: block;

    width: 100%;
}

.companySec__messagePhoto--01
{
    z-index: 1;
    top: 0;
    left: 0;

    width: 429px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__messagePhoto--01
    {
        width: 22.34375vw;
    }
}

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

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

.companySec__messagePhoto--02
{
    z-index: 1;
    top: 1351px;
    right: 0;

    width: 627px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__messagePhoto--02
    {
        top: 70.36458vw;

        width: 32.65625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__messagePhoto--02
    {
        top: 143.55469vw;

        width: 43.94531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__messagePhoto--02
    {
        top: 433.33333vw;

        width: 66.66667vw;
    }
}

.companySec__messagePhoto--03
{
    z-index: 1;
    bottom: 95px;
    left: 0;

    width: 727px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__messagePhoto--03
    {
        bottom: 4.94792vw;

        width: 37.86458vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__messagePhoto--03
    {
        bottom: 14vw;

        width: 80vw;
    }
}

.companySec__messagePhoto--04
{
    z-index: 2;
    top: 735px;
    right: 0;

    width: 495px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__messagePhoto--04
    {
        top: 38.28125vw;

        width: 25.78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__messagePhoto--04
    {
        top: 61.03516vw;

        width: 34.17969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__messagePhoto--04
    {
        top: 180vw;

        width: 53.33333vw;
    }
}

.companySec__messagePhoto--05
{
    z-index: 2;
    bottom: -160px;
    left: 0;

    width: 414px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__messagePhoto--05
    {
        bottom: -8.33333vw;

        width: 21.5625vw;
    }
}

.companySec__messagePhoto > picture
{
    display: block;

    width: 100%;
}

.companySec__messagePhoto > picture > img
{
    display: block;

    width: 100%;
}

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

    width: 1490px;
    margin: 80px 0 140px auto;

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

@media print, screen and (max-width: 1920px)
{
    .companySec__messageCont
    {
        width: 77.60417vw;
        margin: 4.16667vw 0 7.29167vw auto;
    }
}

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

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

        margin: 10.66667vw auto 18.66667vw;

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

.companySec__greetTtl
{
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: .05em;

    color: #009cde;
}

@media print, screen and (max-width: 430px)
{
    .companySec__greetTtl
    {
        padding-left: 20px;

        text-align: left;
    }
}

.companySec__greetTtl > span
{
    position: relative;
}

.companySec__greetTtl > span::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -32px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__greetTtl > span::before
    {
        left: -1.66667vw;

        width: .93594vw;
        height: .93594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__greetTtl > span::before
    {
        left: -4vw;

        width: 2.396vw;
        height: 2.396vw;
    }
}

.companySec__greetBox
{
    width: 974px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__greetBox
    {
        width: 50.72917vw;
    }
}

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

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

.companySec__greetColor
{
    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 35px;
    padding: 6px 17px;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__greetColor
    {
        margin-bottom: 1.82292vw;
        padding: .3125vw .88542vw;
    }
}

.companySec__greetColor > span
{
    font-weight: 700;
    line-height: 1.6;

    letter-spacing: .05em;

    color: #fff;
}

.companySec__greetTxt
{
    font-weight: 500;
    line-height: 2.2;

    letter-spacing: .07em;

    color: #0b0b0b;
}

.companySec__policy
{
    position: relative;

    padding: 120px 0;

    background-color: #0080de;
}

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

@media print, screen and (max-width: 1025px)
{
    .companySec__policy
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding: 7.8125vw 0;
    }
}

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

.companySec__policy::before
{
    position: absolute;
    top: 107px;
    left: 34px;

    width: 1617px;
    height: 204px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__policy::before
    {
        top: 5.57292vw;
        left: 1.77083vw;

        width: 84.21875vw;
        height: 10.625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__policy::before
    {
        top: 16vw;
        right: 0;
        left: 0;

        width: 84vw;
        height: 40vw;
        margin: 0 auto;

        background-image: url(../images/img_company_policy_txt_sp.svg);
        background-size: contain;
    }
}

.companySec__policy::after
{
    position: absolute;
    position: absolute;
    right: 0;
    bottom: 0;

    width: 839px;
    height: 922px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__policy::after
    {
        width: 43.69792vw;
        height: 48.02083vw;
    }
}

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

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

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

.companySec__policyTtl
{
    font-weight: 700;
    line-height: 1.4;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 60px;
    padding-left: 27px;

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

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__policyTtl
    {
        margin-bottom: 3.125vw;
        padding-left: 1.40625vw;
    }
}

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

.companySec__policyTtl > span
{
    position: relative;
}

.companySec__policyTtl > span::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -32px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__policyTtl > span::before
    {
        left: -1.66667vw;

        width: .93594vw;
        height: .93594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__policyTtl > span::before
    {
        left: -4vw;

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

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

    margin-bottom: 80px;

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

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

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

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 5.33333vw;
    }
}

.companySec__policyitem
{
    position: relative;

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

    width: 450px;
    padding: 22px 0;

    border-radius: 10px;
    background-color: #f90;

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

@media print, screen and (max-width: 1920px)
{
    .companySec__policyitem
    {
        width: 23.4375vw;
        padding: 1.14583vw 0;

        border-radius: .52083vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .companySec__policyitem
    {
        width: 38.66667vw;
        min-height: 12.4vw;
        padding: 3.06667vw 0;

        border-radius: 1.33333vw;
    }
}

.companySec__policyitem::before
{
    position: absolute;
    top: 4px;
    left: 5px;

    width: 440px;
    height: 131px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__policyitem::before
    {
        top: .20833vw;
        left: .26042vw;

        width: 22.91667vw;
        height: 6.82292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__policyitem::before
    {
        top: .53333vw;
        left: .66667vw;

        width: 58.66667vw;
        height: 17.46667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__policyitem::before
    {
        top: .66667vw;
        left: .4vw;

        width: 37.86667vw;
        height: 17.33333vw;

        background-image: url(../images/img_company_policy_item_bg_sp.svg);
        background-size: contain;
    }
}

.companySec__policySubTtl
{
    font-weight: 600;
    line-height: 1.7;

    letter-spacing: 0;

    color: #fff;
}

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

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

.companySec__policybox
{
    margin-bottom: 40px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__policybox
    {
        margin-bottom: 2.08333vw;
    }
}

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

.companySec__policybox:last-child
{
    margin-bottom: 0;
}

.companySec__policyColor
{
    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 30px;
    padding: 8px 18px;

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__policyColor
    {
        margin-bottom: 1.5625vw;
        padding: .41667vw .9375vw;
    }
}

.companySec__policyColor > span
{
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: .05em;

    color: #0080de;
}

.companySec__policyTxt
{
    font-weight: 500;
    line-height: 2.3;

    letter-spacing: .05em;

    color: #fff;
}

.companySec__summary
{
    position: relative;
    z-index: 1;

    padding-top: 140px;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__summary
    {
        padding-top: 7.29167vw;
    }
}

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

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

.companySec__summary::before
{
    position: absolute;
    top: 0;
    right: 0;

    width: 600px;
    height: 710px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__summary::before
    {
        width: 31.25vw;
        height: 36.97917vw;
    }
}

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

.companySec__summaryCont
{
    position: relative;
    z-index: 1;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 1610px;
    margin-top: 60px;
    margin-left: auto;
    padding: 85px 210px 85px 100px;

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__summaryCont
    {
        width: 83.85417vw;
        margin-top: 3.125vw;
        padding: 4.42708vw 10.9375vw 4.42708vw 5.20833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__summaryCont
    {
        width: 95.11719vw;
        margin-top: 5.85938vw;
        padding: 8.30078vw 8.78906vw 8.30078vw 4.88281vw;
    }
}

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

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

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

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

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

.companySec__summaryLeft
{
    width: 600px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__summaryLeft
    {
        width: 31.25vw;
    }
}

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

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

.companySec__summaryLeft > .companySec__summaryItem:nth-child(4)
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    border-bottom: 1.5px solid #dcdcdc;
}

@media print, screen and (max-width: 430px)
{
    .companySec__summaryLeft > .companySec__summaryItem:nth-child(4)
    {
        border-bottom: none;
    }
}

.companySec__summaryRight
{
    width: 600px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__summaryRight
    {
        width: 31.25vw;
    }
}

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

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

.companySec__summaryRight > .companySec__summaryItem:nth-child(4)
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    border-bottom: 1.5px solid #dcdcdc;
}

.companySec__summaryItem
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 30px 27px;

    text-align: left;

    border-top: 1.5px solid #dcdcdc;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__summaryItem
    {
        padding: 1.5625vw 1.40625vw;
    }
}

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

.companySec__summaryTtl
{
    font-weight: 500;

    margin-bottom: 20px;

    letter-spacing: .05em;

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__summaryTtl
    {
        margin-bottom: 1.04167vw;
    }
}

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

.companySec__summaryTxt
{
    font-weight: 500;

    letter-spacing: .05em;

    color: #0b0b0b;
}

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

.companySec__access
{
    position: relative;

    padding: 140px 0;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__access
    {
        padding: 7.29167vw 0;
    }
}

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

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

.companySec__access::before
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 414px;
    height: 739px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__access::before
    {
        width: 21.5625vw;
        height: 38.48958vw;
    }
}

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

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

.companySec__accessCont
{
    margin-top: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__accessCont
    {
        margin-top: 3.125vw;
    }
}

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

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

.companySec__accessMap
{
    width: 1300px;
    margin-left: auto;
}

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

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

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

.companySec__accessMap > iframe
{
    display: block;

    width: 100%;
    height: 640px;

    border: none;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__accessMap > iframe
    {
        height: 33.33333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__accessMap > iframe
    {
        height: 43.94531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__accessMap > iframe
    {
        height: 60vw;
    }
}

.companySec__txtCont
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 1300px;
    margin: 30px 0 0 auto;
    margin-left: auto;
    padding-left: 35px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__txtCont
    {
        width: 67.70833vw;
        margin: 1.5625vw 0 0 auto;
        padding-left: 1.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__txtCont
    {
        width: 83.00781vw;
        margin: 2.92969vw 0 0 auto;
        padding-left: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__txtCont
    {
        width: 100%;
        margin: 4vw 0 0 0;
        padding-left: 4.66667vw;

        text-align: left;
    }
}

.companySec__topTxt,
.companySec__underTxt
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

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

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

.companySec__topTxt > .companySec__accessTxt:nth-child(1),
.companySec__underTxt > .companySec__accessTxt:nth-child(1)
{
    margin-right: 109px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__topTxt > .companySec__accessTxt:nth-child(1),
    .companySec__underTxt > .companySec__accessTxt:nth-child(1)
    {
        margin-right: 5.67708vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__topTxt > .companySec__accessTxt:nth-child(1),
    .companySec__underTxt > .companySec__accessTxt:nth-child(1)
    {
        margin-right: 6.83594vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__topTxt > .companySec__accessTxt:nth-child(1),
    .companySec__underTxt > .companySec__accessTxt:nth-child(1)
    {
        margin-right: 6.66667vw;
    }
}

.companySec__topTxt
{
    margin-bottom: 20px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__topTxt
    {
        margin-bottom: 1.04167vw;
    }
}

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

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

        margin-bottom: 2.66667vw;

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

.companySec__accessTxt
{
    font-weight: 600;

    position: relative;

    letter-spacing: .05em;

    color: #fff;
}

.companySec__accessTxt--decoration::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -31px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__accessTxt--decoration::before
    {
        left: -1.61458vw;

        width: .83333vw;
        height: .83333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__accessTxt--decoration::before
    {
        left: -1.95312vw;

        width: 1.26953vw;
        height: 1.26953vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__accessTxt--decoration::before
    {
        left: -4.13333vw;

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

.companySec__accessTxt--decoration::after
{
    position: absolute;
    top: 0;
    right: -87px;
    bottom: 0;

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

    content: '';

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__accessTxt--decoration::after
    {
        right: -4.53125vw;

        width: 3.48958vw;
        height: .05208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__accessTxt--decoration::after
    {
        right: -5.07812vw;

        width: 3.90625vw;
        height: .09766vw;
    }
}

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

.companySec__history
{
    position: relative;

    padding: 140px 0;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__history
    {
        padding: 7.29167vw 0;
    }
}

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

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

.companySec__history::before
{
    position: absolute;
    z-index: -1;

    width: 100%;
    height: 100%;

    content: '';

    background-image: url(../images/img_company_message_bg.webp);
    background-repeat: repeat-x repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

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

    width: 414px;
    height: 654px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .companySec__history::after
    {
        width: 21.5625vw;
        height: 34.0625vw;
    }
}

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

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

.companySec__historyCont
{
    width: 698px;
    margin: 0 auto;
    margin-top: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__historyCont
    {
        width: 36.35417vw;
        margin-top: 3.125vw;
    }
}

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

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

.companySec__historyItem
{
    position: relative;

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

    margin-bottom: 52px;

    -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: 1920px)
{
    .companySec__historyItem
    {
        margin-bottom: 2.70833vw;
    }
}

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

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

.companySec__historyItem::before
{
    position: absolute;
    bottom: -47px;
    left: 174px;

    width: 1px;
    height: 42px;

    content: '';

    background-color: #f90;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__historyItem::before
    {
        bottom: -2.44792vw;
        left: 8.90625vw;

        width: .05208vw;
        height: 2.1875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .companySec__historyItem::before
    {
        bottom: -2.92969vw;
        left: 13.47656vw;

        width: .09766vw;
        height: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__historyItem::before
    {
        bottom: -5.33333vw;
        left: 20.26667vw;

        width: .13333vw;
        height: 5.6vw;
    }
}

.companySec__historyItem:last-child
{
    margin-bottom: 0;
}

.companySec__historyItem:last-child::before
{
    display: none;
}

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

    width: 539px;

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

@media print, screen and (max-width: 1920px)
{
    .companySec__historyRBox
    {
        width: 28.07292vw;

        gap: 2.60417vw;
    }
}

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

        gap: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .companySec__historyRBox
    {
        width: 67.86667vw;

        gap: 5.33333vw;
    }
}

.companySec__historyYear
{
    font-family: 'Manrope', sans-serif;
    font-weight: 600;
    line-height: 1;

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

    color: #009cde;
}

.companySec__historyYear > span
{
    font-family: 'Noto Sans JP', serif;
}

.companySec__historyIcon
{
    width: 24px;
}

@media print, screen and (max-width: 1920px)
{
    .companySec__historyIcon
    {
        width: 1.25vw;
    }
}

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

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

.companySec__historyIcon > img
{
    display: block;

    width: 100%;
}

.companySec__historyTxt
{
    font-weight: 700;
    line-height: 1;

    letter-spacing: .05em;

    color: #0b0b0b;
}

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

        text-align: left;
    }
}

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

.companySec__historyTxt .pdi
{
    display: none;
}

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

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

/* ============== .c-underFv ============== */
.c-underFv
{
    position: relative;
    z-index: -1;

    width: 100%;
    height: 33.64583vw;

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

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

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

    width: 437px;
    height: 344px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .c-underFv::before
    {
        width: 22.76042vw;
        height: 17.91667vw;
    }
}

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

.c-underFv--company
{
    background-image: url(../images/img_under_fv_company.webp);
}

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

.c-underFv--contact
{
    background-image: url(../images/img_under_fv_contact.webp);
}

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

.c-underFv--service
{
    background-image: url(../images/img_under_fv_service.webp);
}

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

.c-underFv--equipment
{
    background-image: url(../images/img_under_fv_equipment.webp);
}

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

.c-underFv--double
{
    background-image: url(../images/img_under_fv_double.webp);
}

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

.c-underFv--super
{
    background-image: url(../images/img_under_fv_super.webp);
}

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

.c-underFv__ttlBox
{
    padding-top: 124px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .c-underFv__ttlBox
    {
        padding-top: 6.45833vw;
    }
}

.c-underFv__ttlJa
{
    font-weight: 700;
    line-height: 1.5;

    letter-spacing: .05em;

    color: #fff;
}

.c-underFv__ttlEn
{
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
    line-height: 1.5;

    color: #fff;
}

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

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

/* ============== .c-anchor ============== */
.c-anchor
{
    padding: 40px 0;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor
    {
        padding: 2.08333vw 0;
    }
}

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

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

    gap: 100px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__ul
    {
        gap: 5.20833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-anchor__ul--company
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 3.125vw;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.c-anchor__ul--doubleMolding
{
    gap: 50px;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__ul--doubleMolding
    {
        gap: 2.60417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-anchor__ul--doubleMolding
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-anchor__ul--doubleMolding
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 6.93333vw;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.c-anchor__ul--super
{
    gap: 80px;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__ul--super
    {
        gap: 4.16667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-anchor__ul--super
    {
        gap: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-anchor__ul--super
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 6.93333vw;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.c-anchor__li
{
    position: relative;

    text-align: left;
}

.c-anchor__li::before
{
    position: absolute;
    top: 0;
    right: 0;

    width: 24px;
    height: 24px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .c-anchor__li::before
    {
        width: 1.25vw;
        height: 1.25vw;
    }
}

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

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

.c-anchor__li--company
{
    width: 208px;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__li--company
    {
        width: 10.83333vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .c-anchor__li--company
    {
        width: 34.66667vw;
    }
}

.c-anchor__li--doubleMolding
{
    width: 300px;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__li--doubleMolding
    {
        width: 15.625vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .c-anchor__li--doubleMolding
    {
        width: 64.53333vw;
    }
}

.c-anchor__li--super
{
    width: 354px;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__li--super
    {
        width: 18.4375vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .c-anchor__li--super
    {
        width: 64.53333vw;
    }
}

.c-anchor__a
{
    font-weight: 600;
    line-height: 1.4;

    position: relative;

    display: block;

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

    letter-spacing: .05em;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .c-anchor__a
    {
        padding-bottom: .85938vw;
    }
}

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

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

    width: 100%;
    height: 1px;

    content: '';

    background-color: #fff;
}

.c-anchor__a:hover
{
    opacity: .8;
}

/* ============== .contactSec ============== */
.contactSec
{
    position: relative;
    z-index: 1;

    padding: 120px 0;

    background-color: #009cde;
}

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

.contactSec::before
{
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;

    width: 455px;
    height: 443px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .contactSec::before
    {
        width: 23.69792vw;
        height: 23.07292vw;
    }
}

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

.contactSec:after
{
    position: absolute;
    z-index: 0;
    top: 805px;
    left: 0;

    width: 721px;
    height: 1540px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .contactSec:after
    {
        top: 41.92708vw;

        width: 37.55208vw;
        height: 80.20833vw;
    }
}

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

        width: 66.66667vw;
        height: 142.53333vw;
    }
}

.contactSec__inner
{
    position: relative;

    width: 100%;
}

.contactSec__inner::before
{
    position: absolute;
    right: 0;
    bottom: -120px;

    width: 537px;
    height: 852px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__inner::before
    {
        bottom: -6.25vw;

        width: 27.96875vw;
        height: 44.375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__inner::before
    {
        bottom: -10.66667vw;

        width: 49.33333vw;
        height: 78.26667vw;
    }
}

.contactSec__cont
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 1300px;
    margin: 0 auto;
    padding: 100px 90px;

    background-color: #fff;
    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .2);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .2);
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__cont
    {
        width: 67.70833vw;
        padding: 5.20833vw 4.6875vw;

        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .2);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .2);
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__cont
    {
        width: 83.98438vw;
        padding: 6.83594vw 4.88281vw;

        -webkit-box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .2);
                box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .2);
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__cont
    {
        width: 92vw;
        padding: 10.66667vw 2.66667vw;

        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .2);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .2);
    }
}

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

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

.contactSec__statusBox
{
    position: relative;

    margin-right: 144px;
    margin-bottom: 107px;

    text-align: left;

    color: #b9b9b9;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__statusBox
    {
        margin-right: 7.5vw;
        margin-bottom: 5.57292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__statusBox
    {
        margin-right: 9.76562vw;
        margin-bottom: 4.88281vw;
    }
}

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

.contactSec__statusBox--active
{
    color: #009cde;
}

.contactSec__statusBox::before
{
    position: absolute;
    top: 33px;
    right: -106px;

    width: 90px;
    height: 1.5px;

    content: '';

    background-color: #b9b9b9;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__statusBox::before
    {
        top: 1.71875vw;
        right: -5.52083vw;

        width: 4.6875vw;
        height: .07812vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__statusBox::before
    {
        top: 2.53906vw;
        right: -6.83594vw;

        width: 5.85938vw;
        height: .09766vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__statusBox::before
    {
        top: 6.13333vw;
        right: -9.33333vw;

        width: 8vw;
        height: .2vw;
    }
}

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

.contactSec__statusBox:last-child::before
{
    display: none;
}

.contactSec__statusNum
{
    font-family: 'Manrope', sans-serif;
    font-weight: 600;

    padding-bottom: 6px;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__statusNum
    {
        padding-bottom: .3125vw;
    }
}

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

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

.contactSec__statusTxt
{
    font-weight: 600;

    position: relative;

    letter-spacing: .05em;
}

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

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

.contactSec__statusTxt::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -24px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__statusTxt::before
    {
        left: -1.25vw;

        width: .75vw;
        height: .75vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__statusTxt::before
    {
        top: .19531vw;
        left: -2.14844vw;

        width: 1.17188vw;
        height: 1.17188vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__statusTxt::before
    {
        top: .26667vw;
        left: -3.73333vw;

        width: 2.93333vw;
        height: 2.93333vw;
    }
}

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

    letter-spacing: .05em;
}

.contactSec__leadTxt--red
{
    margin-top: 10px;

    color: #ed0000;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__leadTxt--red
    {
        margin-top: .52083vw;
    }
}

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

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

.contactSec__telBox
{
    margin-top: 50px;
}

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

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

.contactSec__telTxt
{
    font-weight: 500;
    line-height: 1.625;

    margin-bottom: 14px;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__telTxt
    {
        margin-bottom: .72917vw;
    }
}

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

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

.contactSec__telTxt > span
{
    position: relative;
}

.contactSec__telTxt > span::before
{
    position: absolute;
    bottom: 0;
    left: -100px;

    width: 12px;
    height: 26px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__telTxt > span::before
    {
        left: -5.20833vw;

        width: .625vw;
        height: 1.35417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__telTxt > span::before
    {
        left: -6.83594vw;

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

@media print, screen and (max-width: 430px)
{
    .contactSec__telTxt > span::before
    {
        left: -18.66667vw;

        width: 3.2vw;
        height: 4.8vw;
    }
}

.contactSec__telTxt > span::after
{
    position: absolute;
    right: -40px;
    bottom: 0;

    width: 12px;
    height: 26px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__telTxt > span::after
    {
        right: -2.08333vw;

        width: .625vw;
        height: 1.35417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__telTxt > span::after
    {
        right: -1.36719vw;

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

@media print, screen and (max-width: 430px)
{
    .contactSec__telTxt > span::after
    {
        right: -6.66667vw;

        width: 3.2vw;
        height: 4.8vw;
    }
}

.contactSec__formCont
{
    margin-top: 80px;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__formCont
    {
        margin-top: 4.16667vw;
    }
}

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

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

.contactSec__main
{
    width: 100%;
}

.contactSec__row
{
    width: 100%;

    border-bottom: 1.5px solid #dcdcdc;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__row
    {
        border-bottom: .07812vw solid #dcdcdc;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__row
    {
        border-bottom: .09766vw solid #dcdcdc;
    }
}

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

        border-bottom: .13333vw solid #dcdcdc;

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

.contactSec__row:first-child
{
    border-top: 1.5px solid #dcdcdc;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__row:first-child
    {
        border-top: .07812vw solid #dcdcdc;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__row:first-child
    {
        border-top: .09766vw solid #dcdcdc;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__row:first-child
    {
        border-top: .13333vw solid #dcdcdc;
    }
}

.contactSec__th
{
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 310px;
    padding-left: 35px;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__th
    {
        width: 16.14583vw;
        padding-left: 1.82292vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .contactSec__th
    {
        width: 100%;
        padding: 5.33333vw 2.66667vw 0 2.66667vw;
    }
}

.contactSec__th--required
{
    position: relative;
}

.contactSec__th--required::before
{
    font-size: 16px;
    line-height: 22px;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

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

    content: '必須';
    text-align: center;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__th--required::before
    {
        font-size: .83333vw;
        line-height: 1.14583vw;

        width: 2.60417vw;
        height: 1.25vw;
    }
}

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

        width: 3.90625vw;
        height: 1.5625vw;
    }
}

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

        top: 5.33333vw;
        right: 2.66667vw;

        width: 10.66667vw;
        height: 4.8vw;
    }
}

.contactSec__th--required02
{
    position: relative;
}

.contactSec__th--required02::before
{
    font-size: 16px;
    line-height: 22px;

    position: absolute;
    top: 55px;
    right: 0;

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

    content: '必須';
    text-align: center;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__th--required02::before
    {
        font-size: .83333vw;
        line-height: 1.14583vw;

        top: 2.86458vw;

        width: 2.60417vw;
        height: 1.25vw;
    }
}

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

        top: 4.39453vw;

        width: 3.90625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__th--required02::before
    {
        font-size: 3.2vw;
        line-height: 4.66667vw;

        top: 5.33333vw;
        right: 2.66667vw;

        width: 10.66667vw;
        height: 4.8vw;
    }
}

.contactSec__th--required03
{
    position: relative;

    padding-top: 56px;

    vertical-align: top;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__th--required03
    {
        padding-top: 2.91667vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .contactSec__th--required03
    {
        margin-bottom: 1.33333vw;
        padding-top: 5.33333vw;
    }
}

.contactSec__th--required03::before
{
    font-size: 16px;
    line-height: 22px;

    position: absolute;
    top: 55px;
    right: 0;

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

    content: '必須';
    text-align: center;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__th--required03::before
    {
        font-size: .83333vw;
        line-height: 1.14583vw;

        top: 2.86458vw;

        width: 2.60417vw;
        height: 1.25vw;
    }
}

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

        top: 3.71094vw;

        width: 3.90625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__th--required03::before
    {
        font-size: 3.2vw;
        line-height: 4.66667vw;

        top: 5.06667vw;
        right: 2.66667vw;

        width: 10.66667vw;
        height: 4.8vw;
    }
}

.contactSec__td
{
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 810px;
    padding: 30px 0 30px 24px;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__td
    {
        width: 42.1875vw;
        padding: 1.5625vw 0 1.5625vw 1.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__td
    {
        width: 52.73438vw;
        padding: 1.95312vw 0 1.95312vw 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__td
    {
        width: 100%;
        padding: 2.66667vw 0 5.33333vw 2.13333vw;
    }
}

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

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

.contactSec__txt
{
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 750px;
    height: 72px;
    padding: 22.5px 30px;

    letter-spacing: .05em;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__txt
    {
        width: 39.0625vw;
        height: 3.75vw;
        padding: 1.17188vw 1.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__txt
    {
        width: 49.80469vw;
        height: 5.46875vw;
        padding: 1.36719vw 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__txt
    {
        width: 82.66667vw;
        height: 10.66667vw;
        padding: 1.86667vw 5%;
    }
}

.contactSec__code
{
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 130px;
    height: 56px;
    padding: 14.5px 0;

    text-align: center;
    letter-spacing: .05em;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__code
    {
        width: 6.77083vw;
        height: 2.91667vw;
        padding: .75521vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__code
    {
        width: 8.78906vw;
        height: 4.10156vw;
        padding: .97656vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__code
    {
        width: 21.33333vw;
        height: 9.33333vw;
        padding: 1.33333vw 0;
    }
}

.contactSec__codeLine
{
    font-weight: 300;

    color: #ababab;
}

.contactSec__checkLabel
{
    font-weight: 500;

    letter-spacing: .05em;
}

.contactSec__radio
{
    position: absolute;

    opacity: 0;
}

.contactSec__radio:checked + span::after
{
    opacity: 1;
}

.contactSec__checkLabel > span
{
    line-height: 4;

    position: relative;

    padding-left: 58px;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__checkLabel > span
    {
        padding-left: 3.02083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__checkLabel > span
    {
        padding-left: 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__checkLabel > span
    {
        line-height: 3;

        padding-left: 6.66667vw;
    }
}

.contactSec__checkLabel > span::before
{
    position: absolute;
    top: 50%;
    left: 0;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 38px;
    height: 38px;

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

    border-radius: 50%;
    background-color: #f5f5f5;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__checkLabel > span::before
    {
        width: 1.97917vw;
        height: 1.97917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__checkLabel > span::before
    {
        width: 2.53906vw;
        height: 2.53906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__checkLabel > span::before
    {
        width: 5.06667vw;
        height: 5.06667vw;
    }
}

.contactSec__checkLabel > span::after
{
    position: absolute;
    top: 50%;
    left: 5px;

    width: 28px;
    height: 28px;

    content: '';
    -webkit-transition: opacity .2s ease;
            transition: opacity .2s ease;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    opacity: 0;
    border-radius: 50%;
    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__checkLabel > span::after
    {
        left: .26042vw;

        width: 1.45833vw;
        height: 1.45833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__checkLabel > span::after
    {
        left: .39062vw;

        width: 1.75781vw;
        height: 1.75781vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__checkLabel > span::after
    {
        left: .53333vw;

        width: 4vw;
        height: 4vw;
    }
}

.contactSec__fileTxt
{
    font-weight: 500;

    margin-top: 20px;

    letter-spacing: .05em;
}

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

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

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

.contactSec__textArea
{
    font-weight: 500;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 750px;
    height: 242px;
    padding: 23px 30px 0 30px;

    letter-spacing: .05em;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__textArea
    {
        width: 39.0625vw;
        height: 12.60417vw;
        padding: 1.19792vw 1.5625vw 0 1.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__textArea
    {
        width: 49.80469vw;
        height: 17.57812vw;
        padding: 1.5625vw 1.95312vw 0 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__textArea
    {
        width: 82.66667vw;
        height: 40vw;
        padding: 2.13333vw 5% 0 5%;
    }
}

.contactSec__privacyBox
{
    /* 縦スクロール */
    overflow-x: hidden;
    overflow-y: auto;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
            box-sizing: border-box;
    width: 1000px;
    height: 250px;
    margin: 0 auto;
    margin-top: 80px;
    padding: 20px 24px 0 24px;
    /* 横は出さない */

    border: 1px solid #606060;
    border-radius: 4px;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__privacyBox
    {
        width: 52.08333vw;
        height: 13.02083vw;
        margin-top: 4.16667vw;
        padding: 1.04167vw 1.25vw 0 1.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__privacyBox
    {
        width: 66.40625vw;
        height: 17.57812vw;
        margin-top: 4.88281vw;
        padding: 1.36719vw 1.5625vw 0 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__privacyBox
    {
        width: 100%;
        height: 40vw;
        margin-top: 9.33333vw;
        padding: 2.13333vw 3% 0 3%;
    }
}

.contactSec__privacyTxt
{
    font-weight: 500;
    line-height: 1.625;

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

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

    margin-top: 24px;
    margin-bottom: 50px;

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

@media print, screen and (max-width: 1920px)
{
    .contactSec__agreeWrp
    {
        margin-top: 1.25vw;
        margin-bottom: 2.60417vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .contactSec__agreeWrp
    {
        margin-top: 2.66667vw;
        margin-bottom: 5.33333vw;
    }
}

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

    cursor: pointer;

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

.contactSec__agreeCheck
{
    position: absolute;

    opacity: 0;
}

.contactSec__agree > span
{
    font-weight: 500;
    line-height: 1;

    position: relative;

    padding-left: 46px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__agree > span
    {
        padding-left: 2.39583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__agree > span
    {
        padding-left: 2.92969vw;
    }
}

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

        padding-left: 5.33333vw;
    }
}

.contactSec__agreeCheck + span::before
{
    position: absolute;
    top: -3px;
    left: 0;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 28px;
    height: 28px;

    content: '';

    border: 1px solid #009cde;
    border-radius: 2px;
    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__agreeCheck + span::before
    {
        top: -.15625vw;

        width: 1.45833vw;
        height: 1.45833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .contactSec__agreeCheck + span::before
    {
        top: -.19531vw;

        width: 1.75781vw;
        height: 1.75781vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__agreeCheck + span::before
    {
        top: .93333vw;

        width: 4vw;
        height: 4vw;
    }
}

.contactSec__agreeCheck + span::after
{
    position: absolute;
    top: 1px;
    left: 9px;

    width: 8px;
    height: 13px;

    content: '';
    -webkit-transition: opacity .2s ease;
            transition: opacity .2s ease;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);

    opacity: 0;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
}

@media print, screen and (max-width: 1920px)
{
    .contactSec__agreeCheck + span::after
    {
        top: .05208vw;
        left: .46875vw;

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

@media print, screen and (max-width: 1025px)
{
    .contactSec__agreeCheck + span::after
    {
        top: .09766vw;
        left: .58594vw;

        width: .48828vw;
        height: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .contactSec__agreeCheck + span::after
    {
        top: 1.33333vw;
        left: 1.2vw;

        width: 1.2vw;
        height: 2vw;
    }
}

.contactSec__agreeCheck:checked + span::before
{
    background-color: #009cde;
}

.contactSec__agreeCheck:checked + span::after
{
    opacity: 1;
}

.contactSec__code::-webkit-input-placeholder
{
    color: #b0b0b0;
}

.contactSec__code::-moz-placeholder
{
    color: #b0b0b0;
}

.contactSec__code::-ms-input-placeholder
{
    color: #b0b0b0;
}

.contactSec__code::placeholder
{
    color: #b0b0b0;
}

.contactSec__code::-webkit-input-placeholder
{
    color: #b0b0b0;
}

.contactSec__txt::-webkit-input-placeholder
{
    color: #b0b0b0;
}

.contactSec__txt::-moz-placeholder
{
    color: #b0b0b0;
}

.contactSec__txt::-ms-input-placeholder
{
    color: #b0b0b0;
}

.contactSec__txt::placeholder
{
    color: #b0b0b0;
}

.contactSec__txt::-webkit-input-placeholder
{
    color: #b0b0b0;
}

.contactFoot + .footer,
.contactFoot ~ footer
{
    padding-top: 67px;
}

@media print, screen and (max-width: 1920px)
{
    .contactFoot + .footer,
    .contactFoot ~ footer
    {
        padding-top: 3.48958vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .contactFoot + .footer,
    .contactFoot ~ footer
    {
        padding-top: 6.66667vw;
    }
}

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

    padding: 100px 0;

    background-color: #0080de;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__flowCont
    {
        padding: 5.20833vw 0;
    }
}

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

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

.serviceSec__flowCont::before
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 1065px;
    height: 609px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__flowCont::before
    {
        width: 55.46875vw;
        height: 31.71875vw;
    }
}

.serviceSec__flowTtl > span
{
    font-weight: 600;
    line-height: 2.5;

    padding: 3px 8px 3px 20px;

    letter-spacing: .05em;

    color: #0080de;
    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__flowTtl > span
    {
        padding: .15625vw .41667vw .15625vw 1.04167vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__flowTtl--spTop > span
    {
        padding: .4vw 2.66667vw;
    }
}

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

    width: 1300px;
    margin: 0 auto;
    margin-top: 80px;

    -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: 1920px)
{
    .serviceSec__flowBox
    {
        width: 67.70833vw;
        margin-top: 4.16667vw;
    }
}

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

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

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

.serviceSec__flowItem
{
    position: relative;
    z-index: -1;

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

    width: 287px;
    height: 287px;

    border-radius: 50%;
    background-color: #eff3f8;
    -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .4);
            box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .4);

    -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: 1920px)
{
    .serviceSec__flowItem
    {
        width: 14.94792vw;
        height: 14.94792vw;

        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .4);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .4);
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__flowItem
    {
        width: 19.53125vw;
        height: 19.53125vw;

        -webkit-box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .4);
                box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .4);
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__flowItem
    {
        width: 53.33333vw;
        height: 53.33333vw;

        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .4);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .4);
    }
}

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

    width: 251px;
    height: 251px;

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

    border-radius: 50%;
    background-color: #e4e9f0;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__flowItem::before
    {
        width: 13.07292vw;
        height: 13.07292vw;
    }
}

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

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

.serviceSec__flowItem::after
{
    position: absolute;
    top: 50%;
    left: 50%;

    width: 320px;
    height: 320px;

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

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__flowItem::after
    {
        width: 16.66667vw;
        height: 16.66667vw;
    }
}

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

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

.serviceSec__flowTtl
{
    font-weight: 700;

    letter-spacing: .05em;

    color: #0080de;
}

.serviceSec__flowArrow
{
    width: 110px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__flowArrow
    {
        width: 5.72917vw;
    }
}

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

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

.serviceSec__flowArrow > img
{
    display: block;

    width: 100%;
}

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

    overflow: hidden;

    padding: 130px 0 156px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresCont
    {
        padding: 6.77083vw 0 8.125vw;
    }
}

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

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

.serviceSec__featuresCont::before
{
    position: absolute;
    z-index: -1;

    content: '';

    background: url(../images/img_top_bg.png) repeat;
    background-position: center;
    background-size: auto;

    inset: 0;
}

.serviceSec__featuresCont::after
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    width: 455px;
    height: 792px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresCont::after
    {
        width: 23.69792vw;
        height: 41.25vw;
    }
}

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

.serviceSec__featuresInner
{
    position: relative;

    width: 100%;
}

.serviceSec__featuresInner::before
{
    position: absolute;
    z-index: -1;
    top: 1170px;
    left: 0;

    width: 596px;
    height: 1499px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresInner::before
    {
        top: 60.9375vw;

        width: 31.04167vw;
        height: 78.07292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__featuresInner::before
    {
        top: 106.66667vw;

        width: 53.33333vw;
        height: 133.33333vw;
    }
}

.serviceSec__featuresInner::after
{
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: -156px;

    width: 596px;
    height: 1014px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresInner::after
    {
        bottom: -8.125vw;

        width: 31.04167vw;
        height: 52.8125vw;
    }
}

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

        width: 53.33333vw;
        height: 90.66667vw;
    }
}

.serviceSec__featuresLead
{
    font-weight: 500;

    margin-top: 20px;
    margin-bottom: 80px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresLead
    {
        margin-top: 1.04167vw;
        margin-bottom: 4.16667vw;
    }
}

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

        margin-top: 2vw;
        margin-bottom: 8vw;
    }
}

.serviceSec__featuresWrp
{
    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 140px 300px 140px;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresWrp
    {
        padding: 0vw 7.29167vw 15.625vw 7.29167vw;
    }
}

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

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

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

    padding-top: 250px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresItem
    {
        padding-top: 13.02083vw;
    }
}

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

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

.serviceSec__featuresItem--first
{
    padding-top: 150px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresItem--first
    {
        padding-top: 7.8125vw;
    }
}

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

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

.serviceSec__featuresNum > span
{
    font-family: 'Manrope', sans-serif;
    font-size: 400px;
    font-weight: 700;

    position: absolute;
    z-index: -1;
    top: -100px;
    left: -120px;

    letter-spacing: -.05em;

    color: transparent;

    -webkit-text-stroke: 2px #93dcfa;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresNum > span
    {
        font-size: 20.83333vw;

        top: 3.125vw;
        left: -6.25vw;

        -webkit-text-stroke: .10417vw #93dcfa;
    }
}

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

        top: 10.74219vw;
        left: -2.92969vw;

        -webkit-text-stroke: .14648vw #93dcfa;
    }
}

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

        top: 0vw;
        right: 0;
        left: 0;

        margin: 0 auto;

        -webkit-text-stroke: .2vw #93dcfa;
    }
}

.serviceSec__featuresNum--02 > span
{
    top: 120px;
    right: -120px;
    left: auto;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresNum--02 > span
    {
        top: 6.25vw;
        right: -6.25vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .serviceSec__featuresNum--02 > span
    {
        top: 14.66667vw;
        right: 0;
        left: 0;

        margin: 0 auto;
    }
}

.serviceSec__featuresNum--03 > span
{
    top: 150px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresNum--03 > span
    {
        top: 7.8125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__featuresNum--03 > span
    {
        top: 13.67188vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__featuresNum--03 > span
    {
        top: 14.66667vw;
    }
}

.serviceSec__featuresTtl > span
{
    font-weight: 700;

    position: relative;

    letter-spacing: .05em;

    color: #fff;
}

.serviceSec__featuresTtl > span::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -40px;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresTtl > span::before
    {
        left: -2.08333vw;

        width: .83333vw;
        height: .83333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__featuresTtl > span::before
    {
        left: -2.92969vw;

        width: 1.5625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__featuresTtl > span::before
    {
        left: -5.86667vw;

        width: 4vw;
        height: 4vw;
    }
}

.serviceSec__featuresTtl > span::after
{
    position: absolute;
    top: 0;
    right: -40px;
    bottom: 0;

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

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresTtl > span::after
    {
        right: -2.08333vw;

        width: .83333vw;
        height: .83333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__featuresTtl > span::after
    {
        right: -2.92969vw;

        width: 1.5625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__featuresTtl > span::after
    {
        right: -5.86667vw;

        width: 4vw;
        height: 4vw;
    }
}

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

    margin: 40px 0 60px;

    letter-spacing: .05em;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresTxt
    {
        margin: 2.08333vw 0 3.125vw;
    }
}

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

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

.serviceSec__featuresPhotoBox
{
    position: relative;
    z-index: -2;

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

    width: 1400px;
    margin: 0 auto;

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresPhotoBox
    {
        width: 72.91667vw;
    }
}

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

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

        width: 100%;

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

.serviceSec__featuresPhoto
{
    width: 448px;

    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .2);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .2);
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__featuresPhoto
    {
        width: 23.33333vw;

        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .2);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .2);
    }
}

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

        -webkit-box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .2);
                box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .2);
    }
}

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

        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .2);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .2);
    }
}

.serviceSec__featuresPhoto > picture > img
{
    display: block;

    width: 100%;
}

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

    width: 1378px;
    margin: 0 auto;

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthInner
    {
        width: 71.77083vw;
    }
}

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

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

        width: 92vw;

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

.serviceSec__strengthBox
{
    position: relative;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 426px;
    padding: 27px 20px 24px 20px;

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthBox
    {
        width: 22.1875vw;
        padding: 1.40625vw 1.04167vw 1.25vw 1.04167vw;

        border-radius: 1.04167vw;
    }
}

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

        border-radius: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__strengthBox
    {
        width: 100%;
        margin-bottom: 4vw;
        padding: 4vw;

        border-radius: 2.66667vw;
    }
}

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

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

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

.serviceSec__strengthCont
{
    position: relative;

    padding: 100px 0;

    background-color: #0080de;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthCont
    {
        padding: 5.20833vw 0;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .serviceSec__strengthCont
    {
        overflow: hidden;

        padding: 13.33333vw 0;
    }
}

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

    width: 965px;
    height: 640px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthCont::before
    {
        width: 50.26042vw;
        height: 33.33333vw;
    }
}

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

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

.serviceSec__strengthTtl
{
    font-weight: 700;

    letter-spacing: .04em;

    color: #fff;
}

.serviceSec__strengthTtl > span
{
    position: relative;
}

.serviceSec__strengthTtl > span::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -40px;

    width: 24px;
    height: 43px;
    margin: auto 0;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthTtl > span::before
    {
        left: -2.08333vw;

        width: 1.25vw;
        height: 2.23958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__strengthTtl > span::before
    {
        left: -2.92969vw;

        width: 1.95312vw;
        height: 3.41797vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__strengthTtl > span::before
    {
        left: -5.86667vw;

        width: 4vw;
        height: 6.66667vw;
    }
}

.serviceSec__strengthTtl > span::after
{
    position: absolute;
    top: 0;
    right: -40px;
    bottom: 0;

    width: 24px;
    height: 43px;
    margin: auto 0;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthTtl > span::after
    {
        right: -2.08333vw;

        width: 1.25vw;
        height: 2.23958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__strengthTtl > span::after
    {
        right: -2.92969vw;

        width: 1.95312vw;
        height: 3.41797vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__strengthTtl > span::after
    {
        right: -5.86667vw;

        width: 4vw;
        height: 6.66667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__strengthTtl:nth-child(3n)
    {
        margin-top: 3.2vw;
    }
}

.serviceSec__strengthTtl:last-child
{
    margin: 36px 0 50px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__strengthTtl:last-child
    {
        margin: 1.875vw 0 2.60417vw;
    }
}

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

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

.serviceSec__strengthImg > picture > img
{
    display: block;

    width: 100%;
}

.serviceSec__photo
{
    position: absolute;

    opacity: 0;

    will-change: opacity, transform;
}

.serviceSec__photo--01
{
    z-index: 2;
    top: 850px;
    left: 0;

    width: 656px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__photo--01
    {
        top: 44.27083vw;

        width: 34.16667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__photo--01
    {
        top: 56.64062vw;

        width: 39.0625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__photo--01
    {
        top: 240vw;

        width: 68vw;
    }
}

.serviceSec__photo--02
{
    z-index: 2;
    top: 1840px;
    right: 0;

    width: 488px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__photo--02
    {
        top: 95.83333vw;

        width: 25.41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .serviceSec__photo--02
    {
        top: 121.09375vw;

        width: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .serviceSec__photo--02
    {
        top: 490.66667vw;

        width: 50.66667vw;
    }
}

.serviceSec__photo--03
{
    z-index: 2;
    bottom: 54px;
    left: -120px;

    width: 524px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__photo--03
    {
        bottom: 4.6875vw;
        left: -6.25vw;

        width: 27.29167vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .serviceSec__photo--03
    {
        bottom: -5.33333vw;

        width: 53.33333vw;
    }
}

.serviceSec__photo--04
{
    z-index: 2;
    right: 0;
    bottom: 0;

    width: 588px;
}

@media print, screen and (max-width: 1920px)
{
    .serviceSec__photo--04
    {
        bottom: -1.04167vw;

        width: 30.625vw;
    }
}

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

@media print, screen and (max-width: 430px)
{
    .serviceSec__photo--04
    {
        bottom: 0vw;

        width: 61.33333vw;
    }
}

.serviceSec__photo > picture
{
    display: block;

    width: 100%;
}

.serviceSec__photo > picture > img
{
    display: block;

    width: 100%;
}

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

    padding: 120px 0 150px;
}

@media print, screen and (max-width: 1920px)
{
    .equTopSec
    {
        padding: 6.25vw 0 7.8125vw;
    }
}

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

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

.equTopSec::before
{
    position: absolute;
    z-index: -1;

    width: 100%;
    height: 100%;

    content: '';

    background-image: url(../images/img_company_message_bg.webp);
    background-repeat: repeat-x repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

.equTopSec::after
{
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;

    width: 563px;
    height: 611px;

    content: '';

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

@media print, screen and (max-width: 1920px)
{
    .equTopSec::after
    {
        width: 29.32292vw;
        height: 31.82292vw;
    }
}

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

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

.equTopSec__bg
{
    position: absolute;
    z-index: -1;
    top: -89px;
    right: 0;

    width: 436px;

    opacity: 0;

    will-change: opacity, transform;
}

@media print, screen and (max-width: 1920px)
{
    .equTopSec__bg
    {
        top: -4.63542vw;

        width: 22.70833vw;
    }
}

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

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

        width: 37.33333vw;
    }
}

.equTopSec__bg > picture img
{
    display: block;

    width: 100%;
}

.equTopSec__cont
{
    padding-top: 40px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .equTopSec__cont
    {
        padding-top: 2.08333vw;
    }
}

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

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

.equTopSec__ttl
{
    font-weight: 700;
    line-height: 1;

    position: relative;

    padding-left: 37px;

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

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .equTopSec__ttl
    {
        padding-left: 1.92708vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equTopSec__ttl
    {
        padding-left: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equTopSec__ttl
    {
        padding-left: 4.93333vw;
    }
}

.equTopSec__ttl::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;

    width: 22px;
    height: 22px;
    margin: auto 0;

    content: '';

    background-image: url(../images/img_equ_ttl_icon.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .equTopSec__ttl::before
    {
        width: 1.14583vw;
        height: 1.14583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equTopSec__ttl::before
    {
        width: 1.66016vw;
        height: 1.66016vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equTopSec__ttl::before
    {
        width: 2.93333vw;
        height: 2.93333vw;
    }
}

.equTopSec__ttl--white
{
    color: #fff;
}

.equTopSec__subTtl
{
    font-weight: 600;
    line-height: 1;

    display: inline-block;

    margin-top: 30px;
    padding: 11px 25px;

    letter-spacing: .05em;

    color: #fff;
    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .equTopSec__subTtl
    {
        margin-top: 1.5625vw;
        padding: .57292vw 1.30208vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equTopSec__subTtl
    {
        margin-top: 1.95312vw;
        padding: .78125vw 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equTopSec__subTtl
    {
        line-height: 1.5;

        margin-top: 4vw;
        padding: 1.06667vw 2vw;
    }
}

.equTopSec__subTtl--white
{
    color: #009cde;
    background-color: #fff;
}

.equTopSec__txt
{
    font-weight: 400;
    line-height: 1;

    letter-spacing: .05em;

    color: #fff;
}

/* ============== .equBtmSec ============== */
.equBtmSec
{
    position: relative;

    padding: 120px 0;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec
    {
        padding: 6.25vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec
    {
        padding: 19.53125vw 0 0 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec
    {
        padding: 26.66667vw 0 0 0;
    }
}

.equBtmSec::before
{
    position: absolute;
    z-index: 10;
    right: 0;
    bottom: -281px;
    left: 0;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 282px;

    content: '';

    background-color: #009cde;
    background-repeat: repeat-x repeat-y;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec::before
    {
        bottom: -14.63542vw;

        height: 14.6875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec::before
    {
        bottom: -38.08594vw;

        height: 38.18359vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec::before
    {
        bottom: -77.46667vw;

        height: 77.6vw;
    }
}

.equBtmSec::after
{
    position: absolute;
    z-index: 10;
    bottom: -281px;
    left: 0;

    width: 642px;
    height: 778px;

    content: '';

    background-image: url(../images/img_equ_btm_bg.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec::after
    {
        bottom: -14.63542vw;

        width: 33.4375vw;
        height: 40.52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec::after
    {
        bottom: -38.08594vw;

        width: 43.16406vw;
        height: 52.53906vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec::after
    {
        bottom: -71.2vw;

        width: 72.26667vw;
        height: 85.06667vw;
    }
}

.equBtmSec__bg
{
    position: absolute;
    top: -110px;
    right: 0;

    width: 608px;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__bg
    {
        top: -5.72917vw;

        width: 31.66667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__bg
    {
        top: -10.74219vw;

        width: 39.84375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__bg
    {
        top: -14.66667vw;

        width: 54.4vw;
    }
}

.equBtmSec__bg > picture img
{
    display: block;

    width: 100%;
}

.equBtmSec__inner
{
    width: 1590px;
    margin: 0 auto;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__inner
    {
        width: 82.8125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__inner
    {
        width: 100%;
    }
}

.equBtmSec__txt
{
    line-height: 1.75;

    margin-top: 20px;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__txt
    {
        margin-top: 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__txt
    {
        margin-top: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__txt
    {
        margin-top: 2.66667vw;
    }
}

.equBtmSec__figBox
{
    position: relative;

    width: 979px;
    margin: 60px auto 0;
    padding-top: 792px;

    text-align: center;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__figBox
    {
        width: 50.98958vw;
        margin: 3.125vw auto 0;
        padding-top: 41.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__figBox
    {
        width: 100%;
        margin: 7.8125vw auto 0;
        padding-top: 63.47656vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__figBox
    {
        margin: 10.66667vw auto 0;
        padding-top: 74.66667vw;
    }
}

.equBtmSec__figBox::before
{
    position: absolute;

    width: 979px;
    height: 792px;

    content: '';

    background-image: url(../images/img_equ_btm_figure.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

    inset: 0;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__figBox::before
    {
        width: 50.98958vw;
        height: 41.25vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__figBox::before
    {
        top: 0;

        width: 78.125vw;
        height: auto;
        margin: 0 auto;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__figBox::before
    {
        width: 100%;
    }
}

.equBtmSec__figTxt
{
    font-weight: 700;
    line-height: 1.563;

    position: absolute;
    top: 144px;
    right: 0;
    left: 0;

    margin: 0 auto;

    letter-spacing: .05em;

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__figTxt
    {
        top: 7.5vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__figTxt
    {
        top: 11.52344vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__figTxt
    {
        font-size: 3.73333vw;

        top: 13.33333vw;
    }
}

.equBtmSec__figTxt:nth-child(2)
{
    position: absolute;
    top: 592px;
    right: auto;
    left: 142px;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__figTxt:nth-child(2)
    {
        top: 30.83333vw;
        left: 7.39583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__figTxt:nth-child(2)
    {
        top: 46.875vw;
        left: 16.99219vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__figTxt:nth-child(2)
    {
        top: 54.66667vw;
        left: 12.53333vw;
    }
}

.equBtmSec__figTxt:nth-child(3)
{
    position: absolute;
    top: 592px;
    right: 142px;
    left: auto;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__figTxt:nth-child(3)
    {
        top: 30.83333vw;
        right: 7.39583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__figTxt:nth-child(3)
    {
        top: 46.875vw;
        right: 16.99219vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__figTxt:nth-child(3)
    {
        top: 54.66667vw;
        right: 12.53333vw;
    }
}

.equBtmSec__figTxt:nth-child(4)
{
    position: absolute;
    top: 392px;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .equBtmSec__figTxt:nth-child(4)
    {
        top: 20.41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equBtmSec__figTxt:nth-child(4)
    {
        top: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equBtmSec__figTxt:nth-child(4)
    {
        font-size: 3.73333vw;

        top: 33.33333vw;
    }
}

/* ============== .equSwiper ============== */
.equSwiper
{
    margin-top: 50px;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper
    {
        margin-top: 2.60417vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper
    {
        margin-top: 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper
    {
        margin-top: 6.66667vw;
    }
}

.equSwiper__img
{
    width: 1200px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__img
    {
        width: 62.5vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__img
    {
        width: 100%;
    }
}

.equSwiper__img > picture img
{
    display: block;

    width: 100%;
}

.equSwiper__ttlBox
{
    width: 352px;
    margin: 0 auto;
    margin-top: 42px;

    text-align: center;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__ttlBox
    {
        width: 18.33333vw;
        margin-top: 2.1875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__ttlBox
    {
        width: 29.49219vw;
        margin-top: 4.10156vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__ttlBox
    {
        width: 53.33333vw;
        margin-top: 5.6vw;
    }
}

.equSwiper__ttl
{
    font-weight: 600;
    line-height: 1;

    letter-spacing: .05em;

    color: #009cde;
}

.equSwiper__num
{
    font-family: 'Manrope', sans-serif;

    margin: 25px auto 0;

    text-align: center;

    color: #bebebe;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__num
    {
        margin: 1.30208vw auto 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__num
    {
        margin: 2.44141vw auto 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__num
    {
        margin: 3.33333vw auto 0;
    }
}

.equSwiper__current
{
    font-weight: 700;
    line-height: 1;

    margin-right: 12px;

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__current
    {
        margin-right: .625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__current
    {
        margin-right: 1.17188vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__current
    {
        margin-right: 1.6vw;
    }
}

.equSwiper__total
{
    font-weight: 700;
    line-height: 1;

    margin-left: 9px;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__total
    {
        margin-left: .46875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__total
    {
        margin-left: .87891vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__total
    {
        margin-left: 1.2vw;
    }
}

.equSwiper__table
{
    margin: 50px auto 0;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__table
    {
        margin: 2.60417vw auto 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__table
    {
        margin: 4.88281vw auto 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__table
    {
        margin: 6.66667vw auto 0;
    }
}

.equSwiper__table table
{
    margin: 0 auto;

    border-spacing: 5px;
    border-collapse: separate;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__table table
    {
        border-spacing: .26042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__table table
    {
        border-spacing: .48828vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__table table
    {
        border-spacing: .66667vw;
    }
}

.equSwiper__th
{
    font-weight: 500;
    line-height: 1;

    width: 250px;
    height: 109px;

    text-align: center;
    vertical-align: middle;
    letter-spacing: .04em;

    color: #fff;
    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__th
    {
        width: 13.02083vw;
        height: 5.67708vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__th
    {
        width: 15.13672vw;
        height: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__th
    {
        width: 46.66667vw;
        height: 18.53333vw;
    }
}

.equSwiper__td
{
    font-weight: 500;
    line-height: 1.778;

    width: 230px;
    height: 109px;

    text-align: center;
    vertical-align: middle;
    letter-spacing: .04em;

    color: #1e55b2;
    background-color: #eff3f8;
}

@media print, screen and (max-width: 1920px)
{
    .equSwiper__td
    {
        width: 11.97917vw;
        height: 5.67708vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__td
    {
        width: 15.13672vw;
        height: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__td
    {
        width: 46.66667vw;
        height: 18.53333vw;
    }
}

.equSwiper__td .pdi
{
    display: none;
}

@media print, screen and (max-width: 1025px)
{
    .equSwiper__td .pdi
    {
        display: block;
    }
}

@media print, screen and (max-width: 430px)
{
    .equSwiper__td .pdi
    {
        display: none;
    }
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev,
.swiper-button-next
{
    border: none;
    background-color: transparent;
}

.swiper-button-prev
{
    border: none;
    background-color: transparent;
}

.swiper-button-next
{
    border: none;
    background-color: transparent;
}

/* 前へ次への矢印カスタマイズ */
.swiper-button-prev::after,
.swiper-button-next::after
{
    border: none;
    background-color: transparent;
}

/* 前への矢印カスタマイズ */
.swiper-button-prev::after
{
    display: none;
}

/* 次への矢印カスタマイズ */
.swiper-button-next::after
{
    display: none;
}

.swiper-slide
{
    -webkit-transition: opacity .6s ease;
            transition: opacity .6s ease;
}

.equSwiper__img,
.equSwiper__ttlBox,
.equSwiper__num,
.equSwiper__table
{
    -webkit-animation: fadeUp .6s ease both;
            animation: fadeUp .6s ease both;
}

@-webkit-keyframes fadeUp
{
    from
    {
        -webkit-transform: translateY(10px);
                transform: translateY(10px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);

        opacity: 1;
    }
}

@keyframes fadeUp
{
    from
    {
        -webkit-transform: translateY(10px);
                transform: translateY(10px);

        opacity: 0;
    }
    to
    {
        -webkit-transform: translateY(0);
                transform: translateY(0);

        opacity: 1;
    }
}

/* ============== .c-photoBg ============== */
.c-photoBg
{
    position: relative;
    z-index: 1;

    width: 100%;
    margin-bottom: -280px;
}

@media print, screen and (max-width: 1920px)
{
    .c-photoBg
    {
        margin-bottom: -14.58333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-photoBg
    {
        margin-bottom: -37.10938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-photoBg
    {
        margin-bottom: -70.66667vw;
    }
}

.c-photoBg > picture > img
{
    display: block;

    width: 100%;
}

/* ============== .doubleMoldingSec ============== */
.doubleMoldingSec__about
{
    position: relative;

    padding: 140px 0 150px 0;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__about
    {
        padding: 7.29167vw 0 7.8125vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__about
    {
        padding: 18.66667vw 0 20vw 0;
    }
}

.doubleMoldingSec__about::before
{
    position: absolute;
    z-index: -1;

    content: '';

    background: url(../images/img_top_bg.png) repeat;
    background-position: center;
    background-size: auto;

    inset: 0;
}

.doubleMoldingSec__about::after
{
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;

    width: 563px;
    height: 611px;

    content: '';

    background-image: url(../images/img_double_molding_about_bg.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__about::after
    {
        width: 29.32292vw;
        height: 31.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__about::after
    {
        width: 39.0625vw;
        height: 42.38281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__about::after
    {
        width: 53.33333vw;
        height: 57.86667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__aboutInner
    {
        width: 84.375vw;
        margin: 0 auto;
    }
}

.doubleMoldingSec__aboutCont
{
    margin-top: 50px;
    padding: 120px 0;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__aboutCont
    {
        margin-top: 2.60417vw;
        padding: 6.25vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__aboutCont
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        margin-top: 4.88281vw;
        padding: 7.8125vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__aboutCont
    {
        margin-top: 6.66667vw;
        padding: 13.33333vw 0;
    }
}

.doubleMoldingSec__aboutCont::after
{
    position: absolute;
    z-index: -1;

    width: 100%;
    height: 100%;

    content: '';

    background-color: #0080de;
    background-image: url(../images/img_super_enpla_about_bg_03.svg);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

.doubleMoldingSec__aboutFlex
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__aboutFlex
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

.doubleMoldingSec__aboutTtl
{
    font-weight: 700;
    line-height: 1.4;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 60px;
    padding-left: 27px;

    text-align: left;
    letter-spacing: .05em;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__aboutTtl
    {
        margin-bottom: 3.125vw;
        padding-left: 1.40625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__aboutTtl
    {
        margin-bottom: 3.90625vw;
        padding-left: 2.44141vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__aboutTtl
    {
        margin-bottom: 8vw;
        padding-left: 3.6vw;
    }
}

.doubleMoldingSec__aboutTtl > span
{
    position: relative;
}

.doubleMoldingSec__aboutTtl > span::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -32px;

    width: 17.97px;
    height: 17.97px;
    margin: auto 0;

    content: '';

    background-image: url(../images/img_company_message_decoration.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__aboutTtl > span::before
    {
        left: -1.66667vw;

        width: .93594vw;
        height: .93594vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__aboutTtl > span::before
    {
        left: -3.125vw;

        width: 1.75488vw;
        height: 1.75488vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__aboutTtl > span::before
    {
        left: -4.8vw;

        width: 3.06667vw;
        height: 3.06667vw;
    }
}

.doubleMoldingSec__aboutTxt
{
    font-weight: 500;
    line-height: 2.333;

    text-align: left;
    letter-spacing: .05em;

    color: #fff;
}

.doubleMoldingSec__aboutTxt .pci
{
    display: block;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__aboutTxt .pci
    {
        display: none;
    }
}

.doubleMoldingSec__processWrp
{
    margin-top: 130px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processWrp
    {
        margin-top: 6.77083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processWrp
    {
        margin-top: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processWrp
    {
        margin-top: 13.33333vw;
    }
}

.doubleMoldingSec__processFlow
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processFlow
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 7.8125vw 4.88281vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processFlow
    {
        gap: 14.66667vw 0;
    }
}

.doubleMoldingSec__processItem
{
    position: relative;
    z-index: 0;

    width: 450px;
    height: 419px;

    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .1);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .1);
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processItem
    {
        width: 23.4375vw;
        height: 21.82292vw;

        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .1);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .1);
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processItem
    {
        width: 39.0625vw;
        height: 36.23047vw;

        -webkit-box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .1);
                box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .1);
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processItem
    {
        width: 84vw;
        height: 78.26667vw;
        padding-top: 16vw;

        -webkit-box-shadow: none;
                box-shadow: none;
    }
}

.doubleMoldingSec__processItem::before
{
    position: absolute;
    top: 50%;
    right: -56px;

    width: 36px;
    height: 85px;

    content: '';
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    background-image: url(../images/img_double_molding_process_arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processItem::before
    {
        right: -2.91667vw;

        width: 1.875vw;
        height: 4.42708vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processItem::before
    {
        top: auto;
        right: 46%;
        bottom: -17.73333vw;

        width: 5.33333vw;
        height: 15.73333vw;

        -webkit-transform: translate(47%, -53%);
        -webkit-transform: rotate(90deg);
                transform: translate(47%, -53%);
                transform: rotate(90deg);
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processItem:nth-child(2)::before
    {
        display: none;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processItem:nth-child(2)::before
    {
        display: block;
    }
}

.doubleMoldingSec__processItem::after
{
    position: absolute;
    z-index: -1;
    right: -15px;
    bottom: -15px;

    width: 450px;
    height: 419px;

    content: '';

    background-image: url(../images/img_double_molding_process_item_bg.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processItem::after
    {
        right: -.78125vw;
        bottom: -.78125vw;

        width: 23.4375vw;
        height: 21.82292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processItem::after
    {
        right: -1.46484vw;
        bottom: -1.46484vw;

        width: 39.0625vw;
        height: 36.23047vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processItem::after
    {
        right: -2vw;
        bottom: -2vw;

        width: 84vw;
        height: 78.26667vw;
    }
}

.doubleMoldingSec__processItem:last-child::before
{
    display: none;
}

.doubleMoldingSec__processItemInner
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 10px 10px 0 10px;

    border-radius: 20px;
    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processItemInner
    {
        padding: .52083vw .52083vw 0 .52083vw;

        border-radius: 1.04167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processItemInner
    {
        padding: .97656vw .97656vw 0 .97656vw;

        border-radius: 1.95312vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processItemInner
    {
        padding: 2vw 2vw 0 2vw;

        border-radius: 2.66667vw;
        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .1);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .1);
    }
}

.doubleMoldingSec__processNum
{
    font-family: 'Manrope', sans-serif;
    font-size: 150px;
    font-weight: 700;

    position: absolute;
    bottom: -110px;
    left: -44px;

    letter-spacing: -.05em;

    color: #f90;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processNum
    {
        font-size: 7.8125vw;

        bottom: -5.72917vw;
        left: -2.29167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processNum
    {
        font-size: 8.78906vw;

        bottom: -4.88281vw;
        left: -2.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processNum
    {
        font-size: 20vw;

        z-index: 1;
        top: 0;
        bottom: auto;
        left: 50%;

        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
    }
}

.doubleMoldingSec__processTtl
{
    position: relative;

    padding: 24px 0;

    border-radius: 15px;
    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processTtl
    {
        padding: 1.25vw 0;

        border-radius: .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processTtl
    {
        padding: 1.5625vw 0;

        border-radius: 1.46484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processTtl
    {
        padding: 3.2vw 0;

        border-radius: 2vw;
    }
}

.doubleMoldingSec__processTtl::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 12px;

    width: 16px;
    height: 16px;
    margin: auto 0;

    content: '';

    background-image: url(../images/img_service_features_ttl_decoration.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processTtl::before
    {
        left: .625vw;

        width: .83333vw;
        height: .83333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processTtl::before
    {
        left: 1.17188vw;

        width: 1.5625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processTtl::before
    {
        left: 2.66667vw;

        width: 4vw;
        height: 4vw;
    }
}

.doubleMoldingSec__processTtl::after
{
    position: absolute;
    top: 0;
    right: 12px;
    bottom: 0;

    width: 16px;
    height: 16px;
    margin: auto 0;

    content: '';

    background-image: url(../images/img_service_features_ttl_decoration.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processTtl::after
    {
        right: .625vw;

        width: .83333vw;
        height: .83333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processTtl::after
    {
        right: 1.17188vw;

        width: 1.5625vw;
        height: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processTtl::after
    {
        right: 2.66667vw;

        width: 4vw;
        height: 4vw;
    }
}

.doubleMoldingSec__processTtl > span
{
    font-weight: 600;

    color: #fff;
}

.doubleMoldingSec__processImg
{
    width: 317px;
    margin: 0 auto;
    margin-top: 15px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processImg
    {
        width: 16.51042vw;
        margin-top: .78125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processImg
    {
        width: 24.41406vw;
        margin-top: 3.41797vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processImg
    {
        width: 58.8vw;
        margin-top: 4.66667vw;
    }
}

.doubleMoldingSec__processImg > img
{
    display: block;

    width: 100%;
}

.doubleMoldingSec__processComplete
{
    position: absolute;
    right: 17px;
    bottom: -67px;

    width: 100px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processComplete
    {
        right: .88542vw;
        bottom: -3.48958vw;

        width: 5.20833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__processComplete
    {
        right: 1.66016vw;
        bottom: -3.90625vw;

        width: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processComplete
    {
        right: 2.26667vw;
        bottom: -10vw;

        width: 16vw;
    }
}

.doubleMoldingSec__processComplete > img
{
    display: block;

    width: 100%;
}

.doubleMoldingSec__processTxtBox
{
    width: 100%;
    margin-top: 154px;
    padding: 60px 0;

    background-color: #eff3f8;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processTxtBox
    {
        margin-top: 8.02083vw;
        padding: 3.125vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processTxtBox
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        margin-top: 17.33333vw;
        padding: 8vw 2.66667vw;
    }
}

.doubleMoldingSec__processTxt
{
    font-weight: 500;
    line-height: 1.778;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processTxt
    {
        text-align: left;
    }
}

.doubleMoldingSec__processTxt--top
{
    font-weight: 600;

    margin-bottom: 30px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__processTxt--top
    {
        margin-bottom: 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__processTxt--top
    {
        margin-bottom: 4vw;

        text-align: center;
    }
}

.doubleMoldingSec__processTxt--top > span
{
    color: #f90;
}

.doubleMoldingSec__wrp
{
    position: relative;

    padding: 200px 0 168px;

    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__wrp
    {
        padding: 10.41667vw 0 8.75vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__wrp
    {
        padding: 20vw 0 54.4vw;
    }
}

.doubleMoldingSec__wrp::before
{
    position: absolute;
    top: 529px;
    right: 0;

    width: 817px;
    height: 1541px;

    content: '';

    background-image: url(../images/img_double_molding_bg01.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__wrp::before
    {
        top: 27.55208vw;

        width: 39.63542vw;
        height: 88.95833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__wrp::before
    {
        top: 39.0625vw;

        width: 58.59375vw;
        height: 122.07031vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__wrp::before
    {
        top: 266.66667vw;

        width: 60vw;
        height: 124.93333vw;
    }
}

.doubleMoldingSec__wrp::after
{
    position: absolute;
    bottom: 0;
    left: 0;

    width: 817px;
    height: 1541px;

    content: '';

    background-image: url(../images/img_double_molding_bg02.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__wrp::after
    {
        width: 42.55208vw;
        height: 80.26042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__wrp::after
    {
        width: 43.94531vw;
        height: 83.00781vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__wrp::after
    {
        width: 60vw;
        height: 113.33333vw;
    }
}

.doubleMoldingSec__inner
{
    position: relative;
}

.doubleMoldingSec__materialCont
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-top: 40px;
    padding: 80px 30px 46px 54px;

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialCont
    {
        margin-top: 2.08333vw;
        padding: 4.16667vw 1.5625vw 2.39583vw 2.8125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialCont
    {
        padding: 5.85938vw 1.95312vw 3.90625vw 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialCont
    {
        margin-top: 5.33333vw;
        padding: 10.66667vw 2.66667vw 13.33333vw 2.66667vw;
    }
}

.doubleMoldingSec__materialTtl
{
    padding-left: 30px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialTtl
    {
        padding-left: 1.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialTtl
    {
        padding-left: 2.92969vw;
    }
}

.doubleMoldingSec__materialTxt
{
    font-weight: 500;
    line-height: 1.77;

    margin-bottom: 40px;

    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialTxt
    {
        margin-bottom: 2.08333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialTxt
    {
        margin-bottom: 2.92969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialTxt
    {
        margin-bottom: 5.33333vw;

        text-align: left;
    }
}

.doubleMoldingSec__materialTxt--02
{
    margin: 30px 0 50px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialTxt--02
    {
        margin: 1.5625vw 0 2.60417vw;
    }
}

.doubleMoldingSec__materialTxt .pdi
{
    display: none;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialTxt .pdi
    {
        display: inline;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialTxt .pdi
    {
        display: none;
    }
}

.doubleMoldingSec__materialFlex
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialFlex
    {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialFlex
    {
        display: block;
    }
}

.doubleMoldingSec__materialLeft
{
    text-align: left;
}

.doubleMoldingSec__materialContactBox
{
    position: relative;
    z-index: 0;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 720px;
    padding: 44px 57px 50px 57px;

    background-color: #eff3f8;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialContactBox
    {
        width: 37.5vw;
        padding: 2.29167vw 2.96875vw 2.60417vw 2.96875vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialContactBox
    {
        width: 45.41016vw;
        padding: 2.92969vw 3.90625vw 3.41797vw 3.90625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialContactBox
    {
        width: 100%;
        margin-top: 5.33333vw;
        padding: 6.66667vw 5.33333vw 8vw 5.33333vw;
    }
}

.doubleMoldingSec__materialContactBox::before
{
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;

    width: 362px;
    height: 237px;

    content: '';

    background-image: url(../images/img_double_molding_material_contact.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialContactBox::before
    {
        width: 18.85417vw;
        height: 12.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialContactBox::before
    {
        width: 48.26667vw;
        height: 31.6vw;
    }
}

.doubleMoldingSec__materialContactTtl
{
    font-weight: 600;

    margin-bottom: 20px;

    letter-spacing: .1em;

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialContactTtl
    {
        margin-bottom: 1.04167vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialContactTtl
    {
        margin-bottom: 2.66667vw;
    }
}

.doubleMoldingSec__materialContactTxt
{
    font-weight: 500;
    line-height: 2;

    margin-bottom: 60px;

    letter-spacing: .1em;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialContactTxt
    {
        margin-bottom: 3.125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialContactTxt
    {
        margin-bottom: 8vw;

        text-align: left;
    }
}

.doubleMoldingSec__materialRight
{
    width: 574px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__materialRight
    {
        width: 29.89583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__materialRight
    {
        width: 34.17969vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__materialRight
    {
        width: 100%;
    }
}

.doubleMoldingSec__materialRight > img
{
    display: block;

    width: 100%;
}

.doubleMoldingSec__benefits
{
    margin-top: 206px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__benefits
    {
        margin-top: 10.72917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__benefits
    {
        margin-top: 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__benefits
    {
        margin-top: 27.46667vw;
    }
}

.doubleMoldingSec__benefitsCont
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__benefitsCont
    {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__benefitsCont
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        gap: 5.33333vw;
    }
}

.doubleMoldingSec__benefitsWrp
{
    width: 654px;
    margin-right: 50px;
    padding-top: 107px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__benefitsWrp
    {
        width: 34.0625vw;
        margin-right: 2.60417vw;
        padding-top: 5.57292vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__benefitsWrp
    {
        width: 39.0625vw;
        margin-right: 2.92969vw;
        padding-top: 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__benefitsWrp
    {
        width: 100%;
        padding-top: 0;
    }
}

.doubleMoldingSec__benefitsTxt
{
    font-weight: 500;
    line-height: 2.33;

    letter-spacing: .05em;

    color: #fff;
}

.doubleMoldingSec__benefitsTxt .pci
{
    display: block;
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__benefitsTxt .pci
    {
        display: none;
    }
}

.doubleMoldingSec__benefitsPhoto
{
    width: 886px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__benefitsPhoto
    {
        width: 46.14583vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__benefitsPhoto
    {
        width: 47.85156vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__benefitsPhoto
    {
        width: 100%;
    }
}

.doubleMoldingSec__benefitsPhoto > picture > img
{
    display: block;

    width: 100%;
}

.doubleMoldingSec__equipmentSpecifications
{
    position: relative;
    z-index: 1;

    margin-top: 140px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__equipmentSpecifications
    {
        margin-top: 7.29167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__equipmentSpecifications
    {
        margin-top: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__equipmentSpecifications
    {
        margin-top: 18.66667vw;
    }
}

.doubleMoldingSec__equipmentCont
{
    position: relative;

    width: 1096px;
    margin: 0 auto;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__equipmentCont
    {
        width: 57.08333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__equipmentCont
    {
        width: 83.00781vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__equipmentCont
    {
        width: 100%;
    }
}

.doubleMoldingSec__equipmentCont::before
{
    position: absolute;
    top: 5px;
    left: 5px;

    width: 100%;
    height: auto;

    content: '';

    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .16);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .16);
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__equipmentCont::before
    {
        top: .26042vw;
        left: .26042vw;

        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .16);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .16);
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__equipmentCont::before
    {
        top: .48828vw;
        left: .48828vw;

        -webkit-box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .16);
                box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .16);
    }
}

.doubleMoldingSec__equipmentWrp
{
    width: 1101px;
    margin: 0 auto;
    margin-top: 60px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__equipmentWrp
    {
        width: 57.34375vw;
        margin-top: 3.125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__equipmentWrp
    {
        width: 100%;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__equipmentWrp
    {
        overflow-x: scroll;
    }
}

.doubleMoldingSec__equipmentTable
{
    width: 100%;

    table-layout: fixed;
    border-spacing: 5px;
    border-collapse: separate;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__equipmentTable
    {
        border-spacing: .26042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__equipmentTable
    {
        border-spacing: .48828vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__equipmentTable
    {
        width: 100%;

        border-spacing: .66667vw;

        white-space: nowrap;
    }
}

.doubleMoldingSec__equipmentHead,
.doubleMoldingSec__equipmentData
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 218px;
    height: 88px;

    text-align: center;
    vertical-align: middle;
    letter-spacing: .04em;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__equipmentHead,
    .doubleMoldingSec__equipmentData
    {
        width: 11.35417vw;
        height: 4.58333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__equipmentHead,
    .doubleMoldingSec__equipmentData
    {
        width: 14.64844vw;
        height: 5.85938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__equipmentHead,
    .doubleMoldingSec__equipmentData
    {
        width: 34.4vw;
        height: 13.33333vw;
    }
}

.doubleMoldingSec__equipmentHead
{
    font-weight: 700;

    color: #fff;
    background-color: #0080de;
}

.doubleMoldingSec__equipmentData
{
    font-weight: 500;

    background-color: #f3f8fc;
}

.doubleMoldingSec__photo
{
    position: absolute;
    z-index: 2;

    opacity: 0;

    will-change: opacity, transform;
}

.doubleMoldingSec__photo > picture img
{
    display: block;

    width: 100%;
}

.doubleMoldingSec__photo--01
{
    top: 162px;
    right: 0;

    width: 551px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__photo--01
    {
        top: 8.4375vw;

        width: 28.69792vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__photo--01
    {
        top: 18.35938vw;

        width: 28.32031vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__photo--01
    {
        top: 45.06667vw;

        width: 42.66667vw;
    }
}

.doubleMoldingSec__photo--02
{
    top: 0;
    right: 0;

    width: 366px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__photo--02
    {
        width: 19.0625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__photo--02
    {
        width: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__photo--02
    {
        width: 40.8vw;
    }
}

.doubleMoldingSec__photo--03
{
    top: 990px;
    left: 16px;

    width: 363px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__photo--03
    {
        top: 51.5625vw;
        left: .83333vw;

        width: 18.90625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__photo--03
    {
        top: 86.91406vw;
        left: 1.5625vw;

        width: 21.48438vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__photo--03
    {
        top: 293.33333vw;
        left: 0vw;

        width: 43.06667vw;
    }
}

.doubleMoldingSec__photo--04
{
    right: 28px;
    bottom: -64px;

    width: 440px;
}

@media print, screen and (max-width: 1920px)
{
    .doubleMoldingSec__photo--04
    {
        right: 1.45833vw;
        bottom: -3.33333vw;

        width: 22.91667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .doubleMoldingSec__photo--04
    {
        right: 2.73438vw;
        bottom: -4.88281vw;

        width: 26.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .doubleMoldingSec__photo--04
    {
        right: 3.73333vw;
        bottom: -10.66667vw;

        width: 44vw;
    }
}

.doubleMoldingSec__photo > picture
{
    display: block;

    width: 100%;
}

.doubleMoldingSec__photo > picture > img
{
    display: block;

    width: 100%;
}

/* ============== .c-faq ============== */
.c-faq
{
    position: relative;

    padding: 200px 0 180px;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq
    {
        padding: 10.41667vw 0 9.375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq
    {
        padding: 20vw 0 17.33333vw;
    }
}

.c-faq::before
{
    position: absolute;
    z-index: -1;

    content: '';

    background: url(../images/img_top_bg.png) repeat;
    background-position: center;
    background-size: auto;

    inset: 0;
}

.c-faq::after
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;

    width: 413px;
    height: 652px;

    content: '';

    background-image: url(../images/img_faq_bg.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq::after
    {
        width: 21.51042vw;
        height: 33.95833vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq::after
    {
        width: 33.33333vw;
        height: 52.53333vw;
    }
}

.c-faq__accordionWrp
{
    margin-top: 80px;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__accordionWrp
    {
        margin-top: 4.16667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .c-faq__accordionWrp
    {
        margin-top: 7.8125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__accordionWrp
    {
        margin-top: 10.66667vw;
    }
}

.c-faq__accordion
{
    position: relative;

    cursor: pointer;

    border-top: 1px solid #0b0b0b;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__accordion
    {
        border-top: .05208vw solid #0b0b0b;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__accordion
    {
        border-top: .13333vw solid #0b0b0b;
    }
}

.c-faq__accordion:last-child
{
    border-bottom: 1px solid #0b0b0b;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__accordion:last-child
    {
        border-bottom: .05208vw solid #0b0b0b;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__accordion:last-child
    {
        border-bottom: .13333vw solid #0b0b0b;
    }
}

.c-faq__accordion::after
{
    position: absolute;
    z-index: 3;
    top: 50%;
    right: 40px;

    width: 35px;
    height: 35px;

    content: '';
    -webkit-transition: opacity .4s ease-in-out;
            transition: opacity .4s ease-in-out;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    /* ← 初期状態 */
    pointer-events: none;

    opacity: 0;
    background-image: url(../images/icon_faq_minus.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__accordion::after
    {
        right: 2.08333vw;

        width: 1.82292vw;
        height: 1.82292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__accordion::after
    {
        right: 2.66667vw;

        width: 4.66667vw;
        height: 4.66667vw;
    }
}

.c-faq__qTxt
{
    font-weight: 500;
    line-height: 1.6;

    position: relative;

    display: block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 50px 95px;

    text-align: left;
    letter-spacing: .05em;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__qTxt
    {
        padding: 2.60417vw 4.94792vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__qTxt
    {
        padding: 6.66667vw 10vw 6.66667vw 10.66667vw;
    }
}

.c-faq__qTxt::before
{
    position: absolute;
    top: 0;
    right: 40px;
    bottom: 0;

    width: 35px;
    height: 35px;
    margin: auto 0;

    content: '';
    -webkit-transition: all .2s ease-in-out;
    -webkit-transition: opacity .25s ease, -webkit-transform .35s cubic-bezier(.25, .1, .25, 1);
            transition: all .2s ease-in-out;
            transition: opacity .25s ease, -webkit-transform .35s cubic-bezier(.25, .1, .25, 1);
            transition: transform .35s cubic-bezier(.25, .1, .25, 1), opacity .25s ease;
            transition: transform .35s cubic-bezier(.25, .1, .25, 1), opacity .25s ease, -webkit-transform .35s cubic-bezier(.25, .1, .25, 1);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform-origin: center;
            transform-origin: center;

    background-image: url(../images/icon_faq_plus.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__qTxt::before
    {
        right: 2.08333vw;

        width: 1.82292vw;
        height: 1.82292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__qTxt::before
    {
        right: 2.66667vw;

        width: 4.66667vw;
        height: 4.66667vw;
    }
}

.c-faq__en
{
    font-family: 'Manrope', sans-serif;
    font-size: 50px;
    font-weight: 700;

    position: absolute;
    top: 50%;
    left: 32px;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__en
    {
        font-size: 2.60417vw;

        left: 1.66667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__en
    {
        font-size: 6.66667vw;

        left: 2vw;
    }
}

.c-faq__en--answer
{
    position: static;

    display: inline-block;

    padding-right: 32px;

    -webkit-transform: none;
            transform: none;

    color: #f90;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__en--answer
    {
        padding-right: 1.66667vw;
    }
}

.c-faq__aTxt
{
    font-weight: 500;
    line-height: 1.7;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 35px;
    padding: 0 95px 0 30PX;

    text-align: left;
    letter-spacing: .04em;

    color: #009cde;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media print, screen and (max-width: 1920px)
{
    .c-faq__aTxt
    {
        margin-bottom: 1.82292vw;
        padding: 0 4.94792vw 0 1.5625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .c-faq__aTxt
    {
        padding: 0 10vw 0 2vw;

        gap: 2.66667vw;
    }
}

/* アコーディオンが開いた時のスタイル */
details[open] .c-faq__qTxt::before
{
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);

    opacity: 0;
}

.c-faq__accordion[open]::after
{
    opacity: 1;
}

details::details-content
{
    -webkit-transition: max-height .8s cubic-bezier(.4, 0, .2, 1), opacity .25s ease;
            transition: max-height .8s cubic-bezier(.4, 0, .2, 1), opacity .25s ease;
}

details[open]::details-content
{
    -webkit-transition: max-height .75s cubic-bezier(.25, .1, .25, 1), opacity .35s ease .2s;
            transition: max-height .75s cubic-bezier(.25, .1, .25, 1), opacity .35s ease .2s;
}

@supports (interpolate-size: allow-keywords)
{
    :root
    {
        interpolate-size: allow-keywords;
        /* height:0（数値型） → auto（文字型） のアニメーションを可能にするための指定 */
    }
    details[open]::details-content
    {
        height: auto;
    }
}

@supports not (interpolate-size: allow-keywords)
{
    details[open]::details-content
    {
        overflow-y: scroll;

        height: 150px;
        /* 溢れる場合はスクロール可能にする */
    }
    @media print, screen and (max-width: 1920px)
    {
        details[open]::details-content
        {
            height: 7.8125vw;
        }
    }
    @media print, screen and (max-width: 1025px)
    {
        details[open]::details-content
        {
            height: 14.64844vw;
        }
    }
    @media print, screen and (max-width: 430px)
    {
        details[open]::details-content
        {
            height: 20vw;
        }
    }
}

/* ============== .superEnplaSec ============== */
.superEnplaSec
{
    position: relative;
}

.superEnplaSec__about
{
    position: relative;

    padding: 140px 0 210px 0;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__about
    {
        padding: 7.29167vw 0 10.9375vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__about
    {
        padding: 13.67188vw 0 20.50781vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__about
    {
        padding: 13.33333vw 0 25.33333vw 0;
    }
}

.superEnplaSec__about::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    width: 545px;
    height: 611px;

    content: '';

    background-image: url(../images/img_super_enpla_about_bg_01.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__about::before
    {
        width: 28.38542vw;
        height: 31.82292vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__about::before
    {
        width: 43.33333vw;
        height: 48.53333vw;
    }
}

.superEnplaSec__about::after
{
    position: absolute;
    z-index: -2;

    width: 100%;
    height: 100%;

    content: '';

    background-image: url(../images/img_company_message_bg.webp);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

.superEnplaSec__aboutParts
{
    position: absolute;
    z-index: 1;
    bottom: 20px;
    left: 46px;

    width: 440px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutParts
    {
        bottom: 1.04167vw;
        left: 2.39583vw;

        width: 22.91667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutParts
    {
        bottom: 1.46484vw;
        left: 2.92969vw;

        width: 29.29688vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutParts
    {
        bottom: 8.66667vw;
        left: 4vw;

        width: 33.33333vw;
    }
}

.superEnplaSec__aboutParts > picture img
{
    display: block;

    width: 100%;
}

.superEnplaSec__aboutCont
{
    position: relative;

    margin-top: 50px;
    padding: 130px 0 126px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutCont
    {
        margin-top: 2.60417vw;
        padding: 6.77083vw 0 6.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutCont
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        margin-top: 2.92969vw;
        padding: 8.78906vw 0 8.39844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutCont
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        margin-top: 6.66667vw;
        padding: 9.33333vw 0 13.33333vw;
    }
}

.superEnplaSec__aboutCont::after
{
    position: absolute;
    z-index: -1;

    width: 100%;
    height: 100%;

    content: '';

    background-color: #0080de;
    background-image: url(../images/img_super_enpla_about_bg_03.svg);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__inner
    {
        width: 84.375vw;
        margin: 0 auto;
    }
}

.superEnplaSec__aboutFlex
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutFlex
    {
            flex-direction: column;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
    }
}

.superEnplaSec__aboutFlex--center
{
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.superEnplaSec__aboutImg
{
    width: 587px;
    margin-left: 95px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutImg
    {
        width: 30.57292vw;
        margin-left: 4.94792vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutImg
    {
        width: 39.0625vw;
        margin-left: 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutImg
    {
        width: 100%;
        margin-left: 0;
    }
}

.superEnplaSec__aboutImg > picture img
{
    display: block;

    width: 100%;

    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .16);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .16);
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutImg > picture img
    {
        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .16);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .16);
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutImg > picture img
    {
        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .16);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .16);
    }
}

.superEnplaSec__aboutImg--banner
{
    overflow: hidden;

    width: 367px;
    margin-left: 0;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutImg--banner
    {
        width: 19.11458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutImg--banner
    {
        width: 35.83984vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutImg--banner
    {
        width: 76.66667vw;
    }
}

.superEnplaSec__aboutImg--banner > picture img
{
    -webkit-transition: -webkit-transform .6s ease;
            transition: -webkit-transform .6s ease;
            transition:         transform .6s ease;
            transition:         transform .6s ease, -webkit-transform .6s ease;
    /* ゆっくり変化させる */
}

.superEnplaSec__aboutTtl
{
    font-weight: 700;
    line-height: 1.4;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-bottom: 40px;
    padding-left: 27px;

    text-align: left;
    letter-spacing: .05em;

    color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTtl
    {
        margin-bottom: 2.08333vw;
        padding-left: 1.40625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTtl
    {
        margin-bottom: 2.92969vw;
        padding-left: 2.63672vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTtl
    {
        margin-bottom: 5.33333vw;
        padding-left: 4.26667vw;
    }
}

.superEnplaSec__aboutTtl > span
{
    position: relative;
}

.superEnplaSec__aboutTtl > span::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: -32px;

    width: 17.97px;
    height: 17.97px;
    margin: auto 0;

    content: '';

    background-image: url(../images/img_company_message_decoration.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTtl > span::before
    {
        left: -1.66667vw;

        width: .93594vw;
        height: .93594vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTtl > span::before
    {
        left: -3.125vw;

        width: 1.75488vw;
        height: 1.75488vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTtl > span::before
    {
        left: -4.93333vw;

        width: 3.06667vw;
        height: 3.06667vw;
    }
}

.superEnplaSec__aboutTtl--basics
{
    margin-top: 120px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTtl--basics
    {
        margin-top: 6.25vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTtl--basics
    {
        margin-top: 13.33333vw;
    }
}

.superEnplaSec__aboutTtl--blue
{
    color: #00a0e9;
}

.superEnplaSec__aboutTxt
{
    font-weight: 500;
    line-height: 2.333;

    text-align: left;
    letter-spacing: .05em;

    color: #fff;
}

.superEnplaSec__aboutTxt--banner
{
    line-height: 1.625;

    position: relative;
    z-index: 3;

    margin-left: 40px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTxt--banner
    {
        margin-left: 2.08333vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTxt--banner
    {
        margin-left: 5.85938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTxt--banner
    {
        margin-left: 8vw;
    }
}

.superEnplaSec__aboutTxt .pci
{
    display: inline;
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTxt .pci
    {
        display: none;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutWrp
    {
        overflow-x: scroll;
    }
}

.superEnplaSec__aboutTable
{
    width: 1305px;
    margin: 0 auto;

    border-spacing: 5px;
    border-collapse: separate;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTable
    {
        width: 67.96875vw;

        border-spacing: .26042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTable
    {
        width: 100%;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTable
    {
        width: 174vw;

        border-spacing: .66667vw;

        white-space: nowrap;
    }
}

.superEnplaSec__aboutThead
{
    color: #fff;
    background-color: #00a0e9;
}

.superEnplaSec__aboutTh
{
    font-weight: bold;

    width: 650px;
    padding: 25px 0;

    text-align: center;
    letter-spacing: .05em;

    color: #fff;
    background-color: #00a0e9;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTh
    {
        width: 33.85417vw;
        padding: 1.30208vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTh
    {
        width: 86.66667vw;
        padding: 3.33333vw 0;
    }
}

.superEnplaSec__aboutRowTh
{
    font-weight: 500;
    line-height: 2.1;

    width: 222px;
    padding: 35px 27px;

    text-align: left;
    vertical-align: top;
    letter-spacing: .05em;

    background-color: #f5f9fc;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutRowTh
    {
        width: 11.5625vw;
        padding: 1.82292vw 1.40625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutRowTh
    {
        width: 29.6vw;
        padding: 4.66667vw 3.6vw;
    }
}

.superEnplaSec__aboutTd
{
    font-weight: 500;
    line-height: 2.1;

    width: 423px;
    padding: 35px 27px;

    text-align: left;
    vertical-align: top;
    vertical-align: top;
    letter-spacing: .05em;

    background-color: #f5f9fc;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTd
    {
        width: 22.03125vw;
        padding: 1.82292vw 1.40625vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTd
    {
        width: 56.4vw;
        padding: 4.66667vw 3.6vw;
    }
}

.superEnplaSec__aboutTd--long
{
    width: 650px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTd--long
    {
        width: 33.85417vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTd--long
    {
        width: 86.66667vw;
    }
}

.superEnplaSec__aboutBanner
{
    position: relative;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 60px;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutBanner
    {
        margin-top: 3.125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutBanner
    {
        margin-top: 5.85938vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutBanner
    {
            flex-direction: column;

        margin-top: 8vw;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
}

.superEnplaSec__aboutBanner::before
{
    position: absolute;
    z-index: 3;
    top: 8px;
    right: 0;
    left: 0;

    width: 736px;
    height: 221px;
    margin: 0 auto;

    content: '';

    background-image: url(../images/img_super_enpla_line.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutBanner::before
    {
        top: .41667vw;

        width: 38.33333vw;
        height: 11.51042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutBanner::before
    {
        top: .78125vw;

        width: 71.875vw;
        height: 21.58203vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutBanner::before
    {
        top: 1.46667vw;

        width: 74.26667vw;
        height: 54.13333vw;

        background-image: url(../images/img_super_enpla_line_sp.svg);
    }
}

.superEnplaSec__aboutBanner::after
{
    position: absolute;
    z-index: 0;
    right: 379px;
    bottom: 5px;

    width: 374px;
    height: 130px;

    content: '';

    background-image: url(../images/img_super_enpla_illust.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutBanner::after
    {
        right: 19.73958vw;
        bottom: .26042vw;

        width: 19.47917vw;
        height: 6.77083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutBanner::after
    {
        right: 5.76172vw;
        bottom: .48828vw;

        width: 36.52344vw;
        height: 12.69531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutBanner::after
    {
        right: 10vw;
        bottom: 3.2vw;

        width: 56.53333vw;
        height: 19.86667vw;
    }
}

@media (any-hover: hover)
{
    .superEnplaSec__aboutBanner:hover
    {
        -webkit-transition: color .4s ease-in-out;
                transition: color .4s ease-in-out;
    }
    .superEnplaSec__aboutBanner:hover .c-btn__circle--super::before,
    .superEnplaSec__aboutBanner:hover .c-btn__circle--super::after
    {
        -webkit-transform: translate(-50%, -50%) rotate(180deg);
                transform: translate(-50%, -50%) rotate(180deg);
    }
    .superEnplaSec__aboutBanner:hover .c-btn__circle--super::before
    {
        opacity: 0;
    }
    .superEnplaSec__aboutBanner:hover .c-btn__circle--super::after
    {
        opacity: 1;
    }
    .superEnplaSec__aboutBanner:hover .c-btn__arrow::before
    {
        -webkit-transform: translateX(0);
                transform: translateX(0);

        opacity: 1;
    }
    .superEnplaSec__aboutBanner:hover .c-btn__arrow::after
    {
        -webkit-transform: translateX(120%);
                transform: translateX(120%);

        opacity: 0;
    }
    .superEnplaSec__aboutBanner:hover .superEnplaSec__aboutImg--banner img
    {
        -webkit-transform: scale(1.1);
                transform: scale(1.1);
        /* 拡大 */
    }
}

.superEnplaSec__aboutTxtBox
{
    position: relative;

    width: 385px;
    padding: 69px 0 43px;

    border-radius: 0 10px 10px 0;
    background-color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTxtBox
    {
        width: 20.05208vw;
        padding: 3.59375vw 0 2.23958vw;

        border-radius: 0 .52083vw .52083vw 0;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTxtBox
    {
        width: 37.59766vw;
        padding: 6.73828vw 0 4.19922vw;

        border-radius: 0 .97656vw .97656vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTxtBox
    {
        width: 76.66667vw;
        padding: 3.33333vw 0 5.2vw;

        border-radius: 0 0 1.33333vw 1.33333vw;
    }
}

.superEnplaSec__aboutTxtBox::before
{
    position: absolute;
    z-index: 1;
    bottom: 117px;
    left: 40px;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 126px;
    height: 14px;

    content: '';

    background-color: #f90;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__aboutTxtBox::before
    {
        bottom: 6.09375vw;
        left: 2.08333vw;

        width: 6.5625vw;
        height: .72917vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__aboutTxtBox::before
    {
        bottom: 11.42578vw;
        left: 5.85938vw;

        width: 12.30469vw;
        height: 1.36719vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__aboutTxtBox::before
    {
        bottom: 15.33333vw;
        left: 8vw;

        width: 20.8vw;
        height: 1.86667vw;
    }
}

.superEnplaSec__features
{
    position: relative;

    padding: 150px 0 200px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__features
    {
        padding: 7.8125vw 0 10.41667vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__features
    {
        padding: 14.64844vw 0 14.64844vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__features
    {
        padding: 20vw 0 26.66667vw;
    }
}

.superEnplaSec__features::before
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    width: 455px;
    height: 549px;

    content: '';

    background-image: url(../images/img_super_enpla_features_bg_01.webp);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__features::before
    {
        width: 23.69792vw;
        height: 28.59375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__features::before
    {
        width: 36.66667vw;
        height: 44.13333vw;
    }
}

.superEnplaSec__features::after
{
    position: absolute;
    z-index: -2;

    width: 100%;
    height: 100%;

    content: '';

    background-image: url(../images/img_company_message_bg.webp);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

.superEnplaSec__featuresCont
{
    position: relative;

    margin-top: 100px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresCont
    {
        margin-top: 5.20833vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresCont
    {
        margin-top: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresCont
    {
        margin-top: 10.66667vw;
    }
}

.superEnplaSec__featuresItem
{
    position: relative;

    width: 100%;
    margin-top: 230px;
    padding-top: 390px;

    text-align: left;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresItem
    {
        margin-top: 11.97917vw;
        padding-top: 20.3125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresItem
    {
        margin-top: 11.71875vw;
        padding-top: 27.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresItem
    {
        margin-top: 24vw;
        padding-top: 64vw;
    }
}

.superEnplaSec__featuresItem:first-of-type
{
    margin-top: 0;
}

.superEnplaSec__featuresItem:nth-of-type(2)
{
    margin-top: 194px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresItem:nth-of-type(2)
    {
        margin-top: 10.10417vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresItem:nth-of-type(2)
    {
        margin-top: 24vw;
    }
}

.superEnplaSec__featuresItem--short
{
    padding-top: 488px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresItem--short
    {
        padding-top: 25.41667vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresItem--short
    {
        margin-top: 24vw;
        padding-top: 64vw;
    }
}

.superEnplaSec__featuresBg
{
    position: absolute;
    z-index: 1;
    top: 923px;
    left: 0;

    width: 353px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg
    {
        top: 48.07292vw;
        left: 0;

        width: 18.38542vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg
    {
        top: 65.72266vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg
    {
        top: 177.06667vw;

        width: 27.06667vw;
    }
}

.superEnplaSec__featuresBg > picture img
{
    display: block;

    width: 100%;
}

.superEnplaSec__featuresBg--02
{
    top: 2010px;
    right: 0;
    left: auto;

    width: 588px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg--02
    {
        top: 104.6875vw;
        right: 0;

        width: 30.625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg--02
    {
        top: 143.55469vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg--02
    {
        top: 315.33333vw;

        width: 46.4vw;
    }
}

.superEnplaSec__featuresBg--03
{
    top: 2650px;
    left: 0;

    width: 475px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg--03
    {
        top: 138.02083vw;
        left: 0;

        width: 24.73958vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg--03
    {
        top: 188.96484vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg--03
    {
        top: 427.33333vw;

        width: 36.66667vw;
    }
}

.superEnplaSec__featuresBg--04
{
    top: 3694px;
    right: 0;
    left: auto;

    width: 490px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg--04
    {
        top: 192.39583vw;
        right: 0;

        width: 25.52083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg--04
    {
        top: 263.28125vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg--04
    {
        top: 555.06667vw;

        width: 38.66667vw;
    }
}

.superEnplaSec__featuresBg--05
{
    z-index: 2;
    top: 4572px;
    left: 0;

    width: 716px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg--05
    {
        top: 238.125vw;
        left: 0;

        width: 37.29167vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg--05
    {
        top: 322.26562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg--05
    {
        top: 700.8vw;

        width: 55.46667vw;
    }
}

.superEnplaSec__featuresBg--06
{
    z-index: -1;
    top: 1432px;
    left: 0;

    width: 634px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg--06
    {
        top: 74.58333vw;
        left: 0;

        width: 33.02083vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg--06
    {
        top: 102.34375vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg--06
    {
        top: 274.13333vw;

        width: 48.53333vw;
    }
}

.superEnplaSec__featuresBg--07
{
    z-index: -1;
    top: 2974px;
    right: 0;
    left: auto;

    width: 533px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresBg--07
    {
        top: 154.89583vw;
        right: 0;

        width: 27.76042vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresBg--07
    {
        top: 211.42578vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresBg--07
    {
        top: 518.8vw;

        width: 40.8vw;
    }
}

.superEnplaSec__featuresNum
{
    font-family: 'Manrope', sans-serif;
    font-size: 350px;
    font-weight: 700;
    line-height: 1;

    position: absolute;
    z-index: 3;
    top: 110px;
    right: 31px;

    letter-spacing: -.05em;

    color: #009cde;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresNum
    {
        font-size: 18.22917vw;

        top: 5.72917vw;
        right: 1.61458vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresNum
    {
        top: 12.69531vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresNum
    {
        font-size: 26.66667vw;

        top: 10.66667vw;
        right: auto;
        left: 50%;

        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
}

.superEnplaSec__featuresNum--02
{
    top: 208px;
    right: auto;
    left: 0;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresNum--02
    {
        top: 10.83333vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresNum--02
    {
        font-size: 26.66667vw;

        top: 10.66667vw;
        right: auto;
        left: 50%;

        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
    }
}

.superEnplaSec__featuresImg
{
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;

    width: 900px;

    -webkit-box-shadow: 0 6px 30px rgba(0, 0, 0, .1);
            box-shadow: 0 6px 30px rgba(0, 0, 0, .1);
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresImg
    {
        width: 46.875vw;

        -webkit-box-shadow: 0 .3125vw 1.5625vw rgba(0, 0, 0, .1);
                box-shadow: 0 .3125vw 1.5625vw rgba(0, 0, 0, .1);
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresImg
    {
        top: 18.4vw;
        left: -4vw;

        width: 100vw;

        -webkit-box-shadow: 0 .8vw 4vw rgba(0, 0, 0, .1);
                box-shadow: 0 .8vw 4vw rgba(0, 0, 0, .1);
    }
}

.superEnplaSec__featuresImg > picture img
{
    display: block;

    width: 100%;
}

.superEnplaSec__featuresImg--right
{
    right: 0;
    left: auto;
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresImg--right
    {
        top: 18.4vw;
        left: -4vw;

        width: 100vw;

        -webkit-box-shadow: 0 .8vw 4vw rgba(0, 0, 0, .1);
                box-shadow: 0 .8vw 4vw rgba(0, 0, 0, .1);
    }
}

.superEnplaSec__featuresTxtBox
{
    position: relative;
    z-index: 1;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 836px;
    margin-left: auto;
    padding: 60px 60px 60px 80px;

    background-color: #fff;
    -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, .1);
            box-shadow: 0 3px 20px rgba(0, 0, 0, .1);
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresTxtBox
    {
        width: 43.54167vw;
        padding: 3.125vw 3.125vw 3.125vw 4.16667vw;

        -webkit-box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .1);
                box-shadow: 0 .15625vw 1.04167vw rgba(0, 0, 0, .1);
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresTxtBox
    {
        width: 63.47656vw;
        padding: 4.88281vw 3.90625vw 4.88281vw 4.88281vw;

        -webkit-box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .1);
                box-shadow: 0 .29297vw 1.95312vw rgba(0, 0, 0, .1);
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresTxtBox
    {
        width: 100%;
        margin: 0 auto;
        padding: 6.66667vw 8.4vw;

        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .1);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .1);
    }
}

.superEnplaSec__featuresTxtBox--right
{
    margin-right: auto;
    margin-left: 0;
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__featuresTxtBox--right
    {
        width: 100%;
        margin: 0 auto;
        padding: 6.66667vw 8.4vw;

        -webkit-box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .1);
                box-shadow: 0 .4vw 2.66667vw rgba(0, 0, 0, .1);
    }
}

.superEnplaSec__featuresTtl
{
    font-weight: 700;
    line-height: 1;

    letter-spacing: .05em;
}

.superEnplaSec__featuresTxt
{
    font-weight: 500;
    line-height: 2.333;

    margin-top: 30px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__featuresTxt
    {
        margin-top: 1.5625vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__featuresTxt
    {
        margin-top: 1.95312vw;
    }
}

.superEnplaSec__reason
{
    position: relative;

    padding-bottom: 150px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__reason
    {
        padding-bottom: 7.8125vw;
    }
}

@media print, screen and (max-width: 1025px)
{
    .superEnplaSec__reason
    {
        padding-bottom: 9.76562vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reason
    {
        padding-bottom: 20vw;
    }
}

.superEnplaSec__reason::after
{
    position: absolute;
    z-index: -3;

    width: 100%;
    height: 100%;

    content: '';

    background-image: url(../images/img_company_message_bg.webp);
    background-repeat: repeat-y;
    background-position: center;
    background-size: cover;

    inset: 0;
}

.superEnplaSec__reasonCont
{
    margin-top: 40px;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__reasonCont
    {
        margin-top: 2.08333vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reasonCont
    {
        margin-top: 4vw;
    }
}

.superEnplaSec__reasonTxt
{
    font-weight: 500;
    line-height: 2.333;

    text-align: left;
    letter-spacing: .05em;
}

.superEnplaSec__reasonTxt--white
{
    font-weight: 700;
    line-height: 2.107;

    text-align: center;

    color: #fff;
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reasonTxt--white
    {
        font-size: 4.26667vw;
    }
}

.superEnplaSec__reasonBox
{
    position: relative;

    width: 100%;
    margin-top: 70px;
    padding: 100px 0;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__reasonBox
    {
        margin-top: 3.64583vw;
        padding: 5.20833vw 0;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reasonBox
    {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        margin-top: 6.66667vw;
        padding: 10.66667vw 4vw;
    }
}

.superEnplaSec__reasonBox::before
{
    position: absolute;
    z-index: -2;

    width: 100%;
    height: 100%;

    content: '';

    background-color: #0080de;
    background-image: url(../images/img_super_enpla_reason_bg.svg);
    background-repeat: repeat;
    background-position: center;
    background-size: cover;

    inset: 0;
}

.superEnplaSec__reasonBox::after
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: 0;

    width: 945px;
    height: 100%;

    content: '';

    background-image: url(../images/img_super_enpla_reason_bg_02.png);
    background-repeat: repeat;
    background-position: center;
    background-size: cover;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__reasonBox::after
    {
        width: 49.21875vw;
    }
}

.superEnplaSec__reasonTtl
{
    font-weight: 700;
    line-height: 2.333;

    position: relative;

    display: inline-block;

    letter-spacing: .04em;

    color: #fff;
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reasonTtl
    {
        font-size: 6.13333vw;
        line-height: 1.7;

        margin-bottom: 4vw;
    }
}

.superEnplaSec__reasonTtl::before
{
    position: absolute;
    top: 25px;
    left: -25px;

    width: 2px;
    height: 46px;

    content: '';
    -webkit-transform: rotate(-20deg);
            transform: rotate(-20deg);

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__reasonTtl::before
    {
        top: 1.30208vw;
        left: -1.30208vw;

        width: .10417vw;
        height: 2.39583vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reasonTtl::before
    {
        top: 6vw;
        left: -6vw;

        width: .26667vw;
        height: 11.46667vw;
    }
}

.superEnplaSec__reasonTtl::after
{
    position: absolute;
    top: 25px;
    right: -25px;

    width: 2px;
    height: 46px;

    content: '';
    -webkit-transform: rotate(20deg);
            transform: rotate(20deg);

    background-color: #fff;
}

@media print, screen and (max-width: 1920px)
{
    .superEnplaSec__reasonTtl::after
    {
        top: 1.30208vw;
        right: -1.30208vw;

        width: .10417vw;
        height: 2.39583vw;
    }
}

@media print, screen and (max-width: 430px)
{
    .superEnplaSec__reasonTtl::after
    {
        top: 6vw;
        right: -6vw;

        width: .26667vw;
        height: 11.46667vw;
    }
}
