@charset "UTF-8";
/*====================================
  common（base / utilities / components）
  ページ固有スタイルは top / company / service / works へ分割
  contact は common.css に同梱（全ページで common.css を読むため確実に反映）
=====================================*/
/*====================================
  common - index
=====================================*/
/*====================================
  color
=====================================*/
/*====================================
  font-family
=====================================*/
/*====================================
  font-size (fluid)
=====================================*/
/*====================================
  font-size variables
=====================================*/
/*====================================
  font-weight
=====================================*/
/*====================================
  font-size utility classes
=====================================*/
/*====================================
  letter-spacing
=====================================*/
/*====================================
  mt
=====================================*/
/*====================================
  mb
=====================================*/
/*====================================
  ml
=====================================*/
/*====================================
  mr
=====================================*/
/*====================================
  pt
=====================================*/
/*====================================
  pb
=====================================*/
/*====================================
  pl
=====================================*/
/*====================================
  pr
=====================================*/
/*====================================
  spacing utility classes
=====================================*/
/*====================================
  breakpoints
=====================================*/
.fw100 {
  font-weight: 100;
}

.fw200 {
  font-weight: 200;
}

.fw300 {
  font-weight: 300;
}

.fw400 {
  font-weight: 400;
}

.fw500 {
  font-weight: 500;
}

.fw600 {
  font-weight: 600;
}

.fw700 {
  font-weight: 700;
}

.fw800 {
  font-weight: 800;
}

.fw900 {
  font-weight: 900;
}

.fs1 {
  font-size: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.fs2 {
  font-size: clamp(2px, 2px + 0 * (100vw - 375px) / 905, 2px);
}

.fs3 {
  font-size: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.fs4 {
  font-size: clamp(3px, 3px + 1 * (100vw - 375px) / 905, 4px);
}

.fs5 {
  font-size: clamp(4px, 4px + 1 * (100vw - 375px) / 905, 5px);
}

.fs6 {
  font-size: clamp(5px, 5px + 1 * (100vw - 375px) / 905, 6px);
}

.fs7 {
  font-size: clamp(6px, 6px + 1 * (100vw - 375px) / 905, 7px);
}

.fs8 {
  font-size: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.fs9 {
  font-size: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.fs10 {
  font-size: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.fs11 {
  font-size: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.fs12 {
  font-size: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.fs13 {
  font-size: clamp(10px, 10px + 3 * (100vw - 375px) / 905, 13px);
}

.fs14 {
  font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
}

.fs15 {
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
}

.fs16 {
  font-size: clamp(13px, 13px + 3 * (100vw - 375px) / 905, 16px);
}

.fs17 {
  font-size: clamp(14px, 14px + 3 * (100vw - 375px) / 905, 17px);
}

.fs18 {
  font-size: clamp(14px, 14px + 4 * (100vw - 375px) / 905, 18px);
}

.fs19 {
  font-size: clamp(15px, 15px + 4 * (100vw - 375px) / 905, 19px);
}

.fs20 {
  font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
}

.fs21 {
  font-size: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.fs22 {
  font-size: clamp(18px, 18px + 4 * (100vw - 375px) / 905, 22px);
}

.fs23 {
  font-size: clamp(18px, 18px + 5 * (100vw - 375px) / 905, 23px);
}

.fs24 {
  font-size: clamp(18px, 18px + 6 * (100vw - 375px) / 905, 24px);
}

.fs25 {
  font-size: clamp(18px, 18px + 7 * (100vw - 375px) / 905, 25px);
}

.fs26 {
  font-size: clamp(18px, 18px + 8 * (100vw - 375px) / 905, 26px);
}

.fs27 {
  font-size: clamp(18px, 18px + 9 * (100vw - 375px) / 905, 27px);
}

.fs28 {
  font-size: clamp(18px, 18px + 10 * (100vw - 375px) / 905, 28px);
}

.fs29 {
  font-size: clamp(18px, 18px + 11 * (100vw - 375px) / 905, 29px);
}

.fs30 {
  font-size: clamp(18px, 18px + 12 * (100vw - 375px) / 905, 30px);
}

.fs31 {
  font-size: clamp(20px, 20px + 11 * (100vw - 375px) / 905, 31px);
}

.fs32 {
  font-size: clamp(20px, 20px + 12 * (100vw - 375px) / 905, 32px);
}

.fs33 {
  font-size: clamp(20px, 20px + 13 * (100vw - 375px) / 905, 33px);
}

.fs34 {
  font-size: clamp(20px, 20px + 14 * (100vw - 375px) / 905, 34px);
}

.fs35 {
  font-size: clamp(20px, 20px + 15 * (100vw - 375px) / 905, 35px);
}

.fs36 {
  font-size: clamp(20px, 20px + 16 * (100vw - 375px) / 905, 36px);
}

.fs37 {
  font-size: clamp(20px, 20px + 17 * (100vw - 375px) / 905, 37px);
}

.fs38 {
  font-size: clamp(20px, 20px + 18 * (100vw - 375px) / 905, 38px);
}

.fs39 {
  font-size: clamp(20px, 20px + 19 * (100vw - 375px) / 905, 39px);
}

.fs40 {
  font-size: clamp(20px, 20px + 20 * (100vw - 375px) / 905, 40px);
}

.fs41 {
  font-size: clamp(24px, 24px + 17 * (100vw - 375px) / 905, 41px);
}

.fs42 {
  font-size: clamp(24px, 24px + 18 * (100vw - 375px) / 905, 42px);
}

.fs43 {
  font-size: clamp(24px, 24px + 19 * (100vw - 375px) / 905, 43px);
}

.fs44 {
  font-size: clamp(24px, 24px + 20 * (100vw - 375px) / 905, 44px);
}

.fs45 {
  font-size: clamp(24px, 24px + 21 * (100vw - 375px) / 905, 45px);
}

.fs46 {
  font-size: clamp(24px, 24px + 22 * (100vw - 375px) / 905, 46px);
}

.fs47 {
  font-size: clamp(24px, 24px + 23 * (100vw - 375px) / 905, 47px);
}

.fs48 {
  font-size: clamp(24px, 24px + 24 * (100vw - 375px) / 905, 48px);
}

.fs49 {
  font-size: clamp(24px, 24px + 25 * (100vw - 375px) / 905, 49px);
}

.fs50 {
  font-size: clamp(24px, 24px + 26 * (100vw - 375px) / 905, 50px);
}

.fs51 {
  font-size: clamp(32px, 32px + 19 * (100vw - 375px) / 905, 51px);
}

.fs52 {
  font-size: clamp(32px, 32px + 20 * (100vw - 375px) / 905, 52px);
}

.fs53 {
  font-size: clamp(32px, 32px + 21 * (100vw - 375px) / 905, 53px);
}

.fs54 {
  font-size: clamp(32px, 32px + 22 * (100vw - 375px) / 905, 54px);
}

.fs55 {
  font-size: clamp(32px, 32px + 23 * (100vw - 375px) / 905, 55px);
}

.fs56 {
  font-size: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.fs57 {
  font-size: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.fs58 {
  font-size: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.fs59 {
  font-size: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.fs60 {
  font-size: clamp(32px, 32px + 28 * (100vw - 375px) / 905, 60px);
}

.fs61 {
  font-size: clamp(34px, 34px + 27 * (100vw - 375px) / 905, 61px);
}

.fs62 {
  font-size: clamp(34px, 34px + 28 * (100vw - 375px) / 905, 62px);
}

.fs63 {
  font-size: clamp(35px, 35px + 28 * (100vw - 375px) / 905, 63px);
}

.fs64 {
  font-size: clamp(35px, 35px + 29 * (100vw - 375px) / 905, 64px);
}

.fs65 {
  font-size: clamp(36px, 36px + 29 * (100vw - 375px) / 905, 65px);
}

.fs66 {
  font-size: clamp(36px, 36px + 30 * (100vw - 375px) / 905, 66px);
}

.fs67 {
  font-size: clamp(37px, 37px + 30 * (100vw - 375px) / 905, 67px);
}

.fs68 {
  font-size: clamp(37px, 37px + 31 * (100vw - 375px) / 905, 68px);
}

.fs69 {
  font-size: clamp(38px, 38px + 31 * (100vw - 375px) / 905, 69px);
}

.fs70 {
  font-size: clamp(39px, 39px + 31 * (100vw - 375px) / 905, 70px);
}

.fs71 {
  font-size: clamp(39px, 39px + 32 * (100vw - 375px) / 905, 71px);
}

.fs72 {
  font-size: clamp(40px, 40px + 32 * (100vw - 375px) / 905, 72px);
}

.fs73 {
  font-size: clamp(40px, 40px + 33 * (100vw - 375px) / 905, 73px);
}

.fs74 {
  font-size: clamp(41px, 41px + 33 * (100vw - 375px) / 905, 74px);
}

.fs75 {
  font-size: clamp(41px, 41px + 34 * (100vw - 375px) / 905, 75px);
}

.fs76 {
  font-size: clamp(42px, 42px + 34 * (100vw - 375px) / 905, 76px);
}

.fs77 {
  font-size: clamp(42px, 42px + 35 * (100vw - 375px) / 905, 77px);
}

.fs78 {
  font-size: clamp(43px, 43px + 35 * (100vw - 375px) / 905, 78px);
}

.fs79 {
  font-size: clamp(43px, 43px + 36 * (100vw - 375px) / 905, 79px);
}

.fs80 {
  font-size: clamp(44px, 44px + 36 * (100vw - 375px) / 905, 80px);
}

.fs81 {
  font-size: clamp(39px, 39px + 42 * (100vw - 375px) / 905, 81px);
}

.fs82 {
  font-size: clamp(39px, 39px + 43 * (100vw - 375px) / 905, 82px);
}

.fs83 {
  font-size: clamp(40px, 40px + 43 * (100vw - 375px) / 905, 83px);
}

.fs84 {
  font-size: clamp(40px, 40px + 44 * (100vw - 375px) / 905, 84px);
}

.fs85 {
  font-size: clamp(41px, 41px + 44 * (100vw - 375px) / 905, 85px);
}

.fs86 {
  font-size: clamp(41px, 41px + 45 * (100vw - 375px) / 905, 86px);
}

.fs87 {
  font-size: clamp(42px, 42px + 45 * (100vw - 375px) / 905, 87px);
}

.fs88 {
  font-size: clamp(42px, 42px + 46 * (100vw - 375px) / 905, 88px);
}

.fs89 {
  font-size: clamp(43px, 43px + 46 * (100vw - 375px) / 905, 89px);
}

.fs90 {
  font-size: clamp(43px, 43px + 47 * (100vw - 375px) / 905, 90px);
}

.fs91 {
  font-size: clamp(44px, 44px + 47 * (100vw - 375px) / 905, 91px);
}

.fs92 {
  font-size: clamp(44px, 44px + 48 * (100vw - 375px) / 905, 92px);
}

.fs93 {
  font-size: clamp(45px, 45px + 48 * (100vw - 375px) / 905, 93px);
}

.fs94 {
  font-size: clamp(45px, 45px + 49 * (100vw - 375px) / 905, 94px);
}

.fs95 {
  font-size: clamp(46px, 46px + 49 * (100vw - 375px) / 905, 95px);
}

.fs96 {
  font-size: clamp(46px, 46px + 50 * (100vw - 375px) / 905, 96px);
}

.fs97 {
  font-size: clamp(47px, 47px + 50 * (100vw - 375px) / 905, 97px);
}

.fs98 {
  font-size: clamp(47px, 47px + 51 * (100vw - 375px) / 905, 98px);
}

.fs99 {
  font-size: clamp(48px, 48px + 51 * (100vw - 375px) / 905, 99px);
}

.fs100 {
  font-size: clamp(48px, 48px + 52 * (100vw - 375px) / 905, 100px);
}

.fs101 {
  font-size: clamp(48px, 48px + 53 * (100vw - 375px) / 905, 101px);
}

.fs102 {
  font-size: clamp(49px, 49px + 53 * (100vw - 375px) / 905, 102px);
}

.fs103 {
  font-size: clamp(49px, 49px + 54 * (100vw - 375px) / 905, 103px);
}

.fs104 {
  font-size: clamp(50px, 50px + 54 * (100vw - 375px) / 905, 104px);
}

.fs105 {
  font-size: clamp(50px, 50px + 55 * (100vw - 375px) / 905, 105px);
}

.fs106 {
  font-size: clamp(51px, 51px + 55 * (100vw - 375px) / 905, 106px);
}

.fs107 {
  font-size: clamp(51px, 51px + 56 * (100vw - 375px) / 905, 107px);
}

.fs108 {
  font-size: clamp(52px, 52px + 56 * (100vw - 375px) / 905, 108px);
}

.fs109 {
  font-size: clamp(52px, 52px + 57 * (100vw - 375px) / 905, 109px);
}

.fs110 {
  font-size: clamp(53px, 53px + 57 * (100vw - 375px) / 905, 110px);
}

.fs111 {
  font-size: clamp(53px, 53px + 58 * (100vw - 375px) / 905, 111px);
}

.fs112 {
  font-size: clamp(54px, 54px + 58 * (100vw - 375px) / 905, 112px);
}

.fs113 {
  font-size: clamp(54px, 54px + 59 * (100vw - 375px) / 905, 113px);
}

.fs114 {
  font-size: clamp(55px, 55px + 59 * (100vw - 375px) / 905, 114px);
}

.fs115 {
  font-size: clamp(55px, 55px + 60 * (100vw - 375px) / 905, 115px);
}

.fs116 {
  font-size: clamp(56px, 56px + 60 * (100vw - 375px) / 905, 116px);
}

.fs117 {
  font-size: clamp(56px, 56px + 61 * (100vw - 375px) / 905, 117px);
}

.fs118 {
  font-size: clamp(57px, 57px + 61 * (100vw - 375px) / 905, 118px);
}

.fs119 {
  font-size: clamp(57px, 57px + 62 * (100vw - 375px) / 905, 119px);
}

.fs120 {
  font-size: clamp(58px, 58px + 62 * (100vw - 375px) / 905, 120px);
}

.fs121 {
  font-size: clamp(57px, 57px + 64 * (100vw - 375px) / 905, 121px);
}

.fs122 {
  font-size: clamp(57px, 57px + 65 * (100vw - 375px) / 905, 122px);
}

.fs123 {
  font-size: clamp(58px, 58px + 65 * (100vw - 375px) / 905, 123px);
}

.fs124 {
  font-size: clamp(58px, 58px + 66 * (100vw - 375px) / 905, 124px);
}

.fs125 {
  font-size: clamp(59px, 59px + 66 * (100vw - 375px) / 905, 125px);
}

.fs126 {
  font-size: clamp(59px, 59px + 67 * (100vw - 375px) / 905, 126px);
}

.fs127 {
  font-size: clamp(60px, 60px + 67 * (100vw - 375px) / 905, 127px);
}

.fs128 {
  font-size: clamp(60px, 60px + 68 * (100vw - 375px) / 905, 128px);
}

.fs129 {
  font-size: clamp(61px, 61px + 68 * (100vw - 375px) / 905, 129px);
}

.fs130 {
  font-size: clamp(61px, 61px + 69 * (100vw - 375px) / 905, 130px);
}

.fs131 {
  font-size: clamp(62px, 62px + 69 * (100vw - 375px) / 905, 131px);
}

.fs132 {
  font-size: clamp(62px, 62px + 70 * (100vw - 375px) / 905, 132px);
}

.fs133 {
  font-size: clamp(63px, 63px + 70 * (100vw - 375px) / 905, 133px);
}

.fs134 {
  font-size: clamp(63px, 63px + 71 * (100vw - 375px) / 905, 134px);
}

.fs135 {
  font-size: clamp(63px, 63px + 72 * (100vw - 375px) / 905, 135px);
}

.fs136 {
  font-size: clamp(64px, 64px + 72 * (100vw - 375px) / 905, 136px);
}

.fs137 {
  font-size: clamp(64px, 64px + 73 * (100vw - 375px) / 905, 137px);
}

.fs138 {
  font-size: clamp(65px, 65px + 73 * (100vw - 375px) / 905, 138px);
}

.fs139 {
  font-size: clamp(65px, 65px + 74 * (100vw - 375px) / 905, 139px);
}

.fs140 {
  font-size: clamp(66px, 66px + 74 * (100vw - 375px) / 905, 140px);
}

.fs141 {
  font-size: clamp(66px, 66px + 75 * (100vw - 375px) / 905, 141px);
}

.fs142 {
  font-size: clamp(67px, 67px + 75 * (100vw - 375px) / 905, 142px);
}

.fs143 {
  font-size: clamp(67px, 67px + 76 * (100vw - 375px) / 905, 143px);
}

.fs144 {
  font-size: clamp(68px, 68px + 76 * (100vw - 375px) / 905, 144px);
}

.fs145 {
  font-size: clamp(68px, 68px + 77 * (100vw - 375px) / 905, 145px);
}

.fs146 {
  font-size: clamp(69px, 69px + 77 * (100vw - 375px) / 905, 146px);
}

.fs147 {
  font-size: clamp(69px, 69px + 78 * (100vw - 375px) / 905, 147px);
}

.fs148 {
  font-size: clamp(70px, 70px + 78 * (100vw - 375px) / 905, 148px);
}

.fs149 {
  font-size: clamp(70px, 70px + 79 * (100vw - 375px) / 905, 149px);
}

.fs150 {
  font-size: clamp(71px, 71px + 79 * (100vw - 375px) / 905, 150px);
}

.fs151 {
  font-size: clamp(71px, 71px + 80 * (100vw - 375px) / 905, 151px);
}

.fs152 {
  font-size: clamp(71px, 71px + 81 * (100vw - 375px) / 905, 152px);
}

.fs153 {
  font-size: clamp(72px, 72px + 81 * (100vw - 375px) / 905, 153px);
}

.fs154 {
  font-size: clamp(72px, 72px + 82 * (100vw - 375px) / 905, 154px);
}

.fs155 {
  font-size: clamp(73px, 73px + 82 * (100vw - 375px) / 905, 155px);
}

.fs156 {
  font-size: clamp(73px, 73px + 83 * (100vw - 375px) / 905, 156px);
}

.fs157 {
  font-size: clamp(74px, 74px + 83 * (100vw - 375px) / 905, 157px);
}

.fs158 {
  font-size: clamp(74px, 74px + 84 * (100vw - 375px) / 905, 158px);
}

.fs159 {
  font-size: clamp(75px, 75px + 84 * (100vw - 375px) / 905, 159px);
}

.fs160 {
  font-size: clamp(75px, 75px + 85 * (100vw - 375px) / 905, 160px);
}

.fs161 {
  font-size: clamp(76px, 76px + 85 * (100vw - 375px) / 905, 161px);
}

.fs162 {
  font-size: clamp(76px, 76px + 86 * (100vw - 375px) / 905, 162px);
}

.fs163 {
  font-size: clamp(77px, 77px + 86 * (100vw - 375px) / 905, 163px);
}

.fs164 {
  font-size: clamp(77px, 77px + 87 * (100vw - 375px) / 905, 164px);
}

.fs165 {
  font-size: clamp(78px, 78px + 87 * (100vw - 375px) / 905, 165px);
}

.fs166 {
  font-size: clamp(78px, 78px + 88 * (100vw - 375px) / 905, 166px);
}

.fs167 {
  font-size: clamp(78px, 78px + 89 * (100vw - 375px) / 905, 167px);
}

.fs168 {
  font-size: clamp(79px, 79px + 89 * (100vw - 375px) / 905, 168px);
}

.fs169 {
  font-size: clamp(79px, 79px + 90 * (100vw - 375px) / 905, 169px);
}

.fs170 {
  font-size: clamp(80px, 80px + 90 * (100vw - 375px) / 905, 170px);
}

.fs171 {
  font-size: clamp(80px, 80px + 91 * (100vw - 375px) / 905, 171px);
}

.fs172 {
  font-size: clamp(81px, 81px + 91 * (100vw - 375px) / 905, 172px);
}

.fs173 {
  font-size: clamp(81px, 81px + 92 * (100vw - 375px) / 905, 173px);
}

.fs174 {
  font-size: clamp(82px, 82px + 92 * (100vw - 375px) / 905, 174px);
}

.fs175 {
  font-size: clamp(82px, 82px + 93 * (100vw - 375px) / 905, 175px);
}

.fs176 {
  font-size: clamp(83px, 83px + 93 * (100vw - 375px) / 905, 176px);
}

.fs177 {
  font-size: clamp(83px, 83px + 94 * (100vw - 375px) / 905, 177px);
}

.fs178 {
  font-size: clamp(84px, 84px + 94 * (100vw - 375px) / 905, 178px);
}

.fs179 {
  font-size: clamp(84px, 84px + 95 * (100vw - 375px) / 905, 179px);
}

.fs180 {
  font-size: clamp(85px, 85px + 95 * (100vw - 375px) / 905, 180px);
}

.fs181 {
  font-size: clamp(85px, 85px + 96 * (100vw - 375px) / 905, 181px);
}

.fs182 {
  font-size: clamp(86px, 86px + 96 * (100vw - 375px) / 905, 182px);
}

.fs183 {
  font-size: clamp(86px, 86px + 97 * (100vw - 375px) / 905, 183px);
}

.fs184 {
  font-size: clamp(86px, 86px + 98 * (100vw - 375px) / 905, 184px);
}

.fs185 {
  font-size: clamp(87px, 87px + 98 * (100vw - 375px) / 905, 185px);
}

.fs186 {
  font-size: clamp(87px, 87px + 99 * (100vw - 375px) / 905, 186px);
}

.fs187 {
  font-size: clamp(88px, 88px + 99 * (100vw - 375px) / 905, 187px);
}

.fs188 {
  font-size: clamp(88px, 88px + 100 * (100vw - 375px) / 905, 188px);
}

.fs189 {
  font-size: clamp(89px, 89px + 100 * (100vw - 375px) / 905, 189px);
}

.fs190 {
  font-size: clamp(89px, 89px + 101 * (100vw - 375px) / 905, 190px);
}

.fs191 {
  font-size: clamp(90px, 90px + 101 * (100vw - 375px) / 905, 191px);
}

.fs192 {
  font-size: clamp(90px, 90px + 102 * (100vw - 375px) / 905, 192px);
}

.fs193 {
  font-size: clamp(91px, 91px + 102 * (100vw - 375px) / 905, 193px);
}

.fs194 {
  font-size: clamp(91px, 91px + 103 * (100vw - 375px) / 905, 194px);
}

.fs195 {
  font-size: clamp(92px, 92px + 103 * (100vw - 375px) / 905, 195px);
}

.fs196 {
  font-size: clamp(92px, 92px + 104 * (100vw - 375px) / 905, 196px);
}

.fs197 {
  font-size: clamp(93px, 93px + 104 * (100vw - 375px) / 905, 197px);
}

.fs198 {
  font-size: clamp(93px, 93px + 105 * (100vw - 375px) / 905, 198px);
}

.fs199 {
  font-size: clamp(94px, 94px + 105 * (100vw - 375px) / 905, 199px);
}

.fs200 {
  font-size: clamp(94px, 94px + 106 * (100vw - 375px) / 905, 200px);
}

.fs201 {
  font-size: clamp(94px, 94px + 107 * (100vw - 375px) / 905, 201px);
}

.fs202 {
  font-size: clamp(95px, 95px + 107 * (100vw - 375px) / 905, 202px);
}

.fs203 {
  font-size: clamp(95px, 95px + 108 * (100vw - 375px) / 905, 203px);
}

.fs204 {
  font-size: clamp(96px, 96px + 108 * (100vw - 375px) / 905, 204px);
}

.fs205 {
  font-size: clamp(96px, 96px + 109 * (100vw - 375px) / 905, 205px);
}

.fs206 {
  font-size: clamp(97px, 97px + 109 * (100vw - 375px) / 905, 206px);
}

.fs207 {
  font-size: clamp(97px, 97px + 110 * (100vw - 375px) / 905, 207px);
}

.fs208 {
  font-size: clamp(98px, 98px + 110 * (100vw - 375px) / 905, 208px);
}

.fs209 {
  font-size: clamp(98px, 98px + 111 * (100vw - 375px) / 905, 209px);
}

.fs210 {
  font-size: clamp(99px, 99px + 111 * (100vw - 375px) / 905, 210px);
}

.fs211 {
  font-size: clamp(99px, 99px + 112 * (100vw - 375px) / 905, 211px);
}

.fs212 {
  font-size: clamp(100px, 100px + 112 * (100vw - 375px) / 905, 212px);
}

.fs213 {
  font-size: clamp(100px, 100px + 113 * (100vw - 375px) / 905, 213px);
}

.fs214 {
  font-size: clamp(101px, 101px + 113 * (100vw - 375px) / 905, 214px);
}

.fs215 {
  font-size: clamp(101px, 101px + 114 * (100vw - 375px) / 905, 215px);
}

.fs216 {
  font-size: clamp(102px, 102px + 114 * (100vw - 375px) / 905, 216px);
}

.fs217 {
  font-size: clamp(102px, 102px + 115 * (100vw - 375px) / 905, 217px);
}

.fs218 {
  font-size: clamp(102px, 102px + 116 * (100vw - 375px) / 905, 218px);
}

.fs219 {
  font-size: clamp(103px, 103px + 116 * (100vw - 375px) / 905, 219px);
}

.fs220 {
  font-size: clamp(103px, 103px + 117 * (100vw - 375px) / 905, 220px);
}

.fs221 {
  font-size: clamp(104px, 104px + 117 * (100vw - 375px) / 905, 221px);
}

.fs222 {
  font-size: clamp(104px, 104px + 118 * (100vw - 375px) / 905, 222px);
}

.fs223 {
  font-size: clamp(105px, 105px + 118 * (100vw - 375px) / 905, 223px);
}

.fs224 {
  font-size: clamp(105px, 105px + 119 * (100vw - 375px) / 905, 224px);
}

.fs225 {
  font-size: clamp(106px, 106px + 119 * (100vw - 375px) / 905, 225px);
}

.fs226 {
  font-size: clamp(106px, 106px + 120 * (100vw - 375px) / 905, 226px);
}

.fs227 {
  font-size: clamp(107px, 107px + 120 * (100vw - 375px) / 905, 227px);
}

.fs228 {
  font-size: clamp(107px, 107px + 121 * (100vw - 375px) / 905, 228px);
}

.fs229 {
  font-size: clamp(108px, 108px + 121 * (100vw - 375px) / 905, 229px);
}

.fs230 {
  font-size: clamp(108px, 108px + 122 * (100vw - 375px) / 905, 230px);
}

.fs231 {
  font-size: clamp(109px, 109px + 122 * (100vw - 375px) / 905, 231px);
}

.fs232 {
  font-size: clamp(109px, 109px + 123 * (100vw - 375px) / 905, 232px);
}

.fs233 {
  font-size: clamp(110px, 110px + 123 * (100vw - 375px) / 905, 233px);
}

.fs234 {
  font-size: clamp(110px, 110px + 124 * (100vw - 375px) / 905, 234px);
}

.fs235 {
  font-size: clamp(110px, 110px + 125 * (100vw - 375px) / 905, 235px);
}

.fs236 {
  font-size: clamp(111px, 111px + 125 * (100vw - 375px) / 905, 236px);
}

.fs237 {
  font-size: clamp(111px, 111px + 126 * (100vw - 375px) / 905, 237px);
}

.fs238 {
  font-size: clamp(112px, 112px + 126 * (100vw - 375px) / 905, 238px);
}

.fs239 {
  font-size: clamp(112px, 112px + 127 * (100vw - 375px) / 905, 239px);
}

.fs240 {
  font-size: clamp(113px, 113px + 127 * (100vw - 375px) / 905, 240px);
}

.fs241 {
  font-size: clamp(113px, 113px + 128 * (100vw - 375px) / 905, 241px);
}

.fs242 {
  font-size: clamp(114px, 114px + 128 * (100vw - 375px) / 905, 242px);
}

.fs243 {
  font-size: clamp(114px, 114px + 129 * (100vw - 375px) / 905, 243px);
}

.fs244 {
  font-size: clamp(115px, 115px + 129 * (100vw - 375px) / 905, 244px);
}

.fs245 {
  font-size: clamp(115px, 115px + 130 * (100vw - 375px) / 905, 245px);
}

.fs246 {
  font-size: clamp(116px, 116px + 130 * (100vw - 375px) / 905, 246px);
}

.fs247 {
  font-size: clamp(116px, 116px + 131 * (100vw - 375px) / 905, 247px);
}

.fs248 {
  font-size: clamp(117px, 117px + 131 * (100vw - 375px) / 905, 248px);
}

.fs249 {
  font-size: clamp(117px, 117px + 132 * (100vw - 375px) / 905, 249px);
}

.fs250 {
  font-size: clamp(118px, 118px + 132 * (100vw - 375px) / 905, 250px);
}

.fs251 {
  font-size: clamp(118px, 118px + 133 * (100vw - 375px) / 905, 251px);
}

.fs252 {
  font-size: clamp(118px, 118px + 134 * (100vw - 375px) / 905, 252px);
}

.fs253 {
  font-size: clamp(119px, 119px + 134 * (100vw - 375px) / 905, 253px);
}

.fs254 {
  font-size: clamp(119px, 119px + 135 * (100vw - 375px) / 905, 254px);
}

.fs255 {
  font-size: clamp(120px, 120px + 135 * (100vw - 375px) / 905, 255px);
}

.fs256 {
  font-size: clamp(120px, 120px + 136 * (100vw - 375px) / 905, 256px);
}

.fs257 {
  font-size: clamp(121px, 121px + 136 * (100vw - 375px) / 905, 257px);
}

.fs258 {
  font-size: clamp(121px, 121px + 137 * (100vw - 375px) / 905, 258px);
}

.fs259 {
  font-size: clamp(122px, 122px + 137 * (100vw - 375px) / 905, 259px);
}

.fs260 {
  font-size: clamp(122px, 122px + 138 * (100vw - 375px) / 905, 260px);
}

.fs261 {
  font-size: clamp(123px, 123px + 138 * (100vw - 375px) / 905, 261px);
}

.fs262 {
  font-size: clamp(123px, 123px + 139 * (100vw - 375px) / 905, 262px);
}

.fs263 {
  font-size: clamp(124px, 124px + 139 * (100vw - 375px) / 905, 263px);
}

.fs264 {
  font-size: clamp(124px, 124px + 140 * (100vw - 375px) / 905, 264px);
}

.fs265 {
  font-size: clamp(125px, 125px + 140 * (100vw - 375px) / 905, 265px);
}

.fs266 {
  font-size: clamp(125px, 125px + 141 * (100vw - 375px) / 905, 266px);
}

.fs267 {
  font-size: clamp(125px, 125px + 142 * (100vw - 375px) / 905, 267px);
}

.fs268 {
  font-size: clamp(126px, 126px + 142 * (100vw - 375px) / 905, 268px);
}

.fs269 {
  font-size: clamp(126px, 126px + 143 * (100vw - 375px) / 905, 269px);
}

.fs270 {
  font-size: clamp(127px, 127px + 143 * (100vw - 375px) / 905, 270px);
}

.fs271 {
  font-size: clamp(127px, 127px + 144 * (100vw - 375px) / 905, 271px);
}

.fs272 {
  font-size: clamp(128px, 128px + 144 * (100vw - 375px) / 905, 272px);
}

.fs273 {
  font-size: clamp(128px, 128px + 145 * (100vw - 375px) / 905, 273px);
}

.fs274 {
  font-size: clamp(129px, 129px + 145 * (100vw - 375px) / 905, 274px);
}

.fs275 {
  font-size: clamp(129px, 129px + 146 * (100vw - 375px) / 905, 275px);
}

.fs276 {
  font-size: clamp(130px, 130px + 146 * (100vw - 375px) / 905, 276px);
}

.fs277 {
  font-size: clamp(130px, 130px + 147 * (100vw - 375px) / 905, 277px);
}

.fs278 {
  font-size: clamp(131px, 131px + 147 * (100vw - 375px) / 905, 278px);
}

.fs279 {
  font-size: clamp(131px, 131px + 148 * (100vw - 375px) / 905, 279px);
}

.fs280 {
  font-size: clamp(132px, 132px + 148 * (100vw - 375px) / 905, 280px);
}

.fs281 {
  font-size: clamp(132px, 132px + 149 * (100vw - 375px) / 905, 281px);
}

.fs282 {
  font-size: clamp(133px, 133px + 149 * (100vw - 375px) / 905, 282px);
}

.fs283 {
  font-size: clamp(133px, 133px + 150 * (100vw - 375px) / 905, 283px);
}

.fs284 {
  font-size: clamp(133px, 133px + 151 * (100vw - 375px) / 905, 284px);
}

.fs285 {
  font-size: clamp(134px, 134px + 151 * (100vw - 375px) / 905, 285px);
}

.fs286 {
  font-size: clamp(134px, 134px + 152 * (100vw - 375px) / 905, 286px);
}

.fs287 {
  font-size: clamp(135px, 135px + 152 * (100vw - 375px) / 905, 287px);
}

.fs288 {
  font-size: clamp(135px, 135px + 153 * (100vw - 375px) / 905, 288px);
}

.fs289 {
  font-size: clamp(136px, 136px + 153 * (100vw - 375px) / 905, 289px);
}

.fs290 {
  font-size: clamp(136px, 136px + 154 * (100vw - 375px) / 905, 290px);
}

.fs291 {
  font-size: clamp(137px, 137px + 154 * (100vw - 375px) / 905, 291px);
}

.fs292 {
  font-size: clamp(137px, 137px + 155 * (100vw - 375px) / 905, 292px);
}

.fs293 {
  font-size: clamp(138px, 138px + 155 * (100vw - 375px) / 905, 293px);
}

.fs294 {
  font-size: clamp(138px, 138px + 156 * (100vw - 375px) / 905, 294px);
}

.fs295 {
  font-size: clamp(139px, 139px + 156 * (100vw - 375px) / 905, 295px);
}

.fs296 {
  font-size: clamp(139px, 139px + 157 * (100vw - 375px) / 905, 296px);
}

.fs297 {
  font-size: clamp(140px, 140px + 157 * (100vw - 375px) / 905, 297px);
}

.fs298 {
  font-size: clamp(140px, 140px + 158 * (100vw - 375px) / 905, 298px);
}

.fs299 {
  font-size: clamp(141px, 141px + 158 * (100vw - 375px) / 905, 299px);
}

.fs300 {
  font-size: clamp(141px, 141px + 159 * (100vw - 375px) / 905, 300px);
}

.ls0 {
  letter-spacing: 0em;
}

.ls100 {
  letter-spacing: 0.1em;
}

.ls200 {
  letter-spacing: 0.2em;
}

.ls300 {
  letter-spacing: 0.3em;
}

.ls400 {
  letter-spacing: 0.4em;
}

.ls500 {
  letter-spacing: 0.5em;
}

.ls600 {
  letter-spacing: 0.6em;
}

.ls700 {
  letter-spacing: 0.7em;
}

.ls800 {
  letter-spacing: 0.8em;
}

.ls900 {
  letter-spacing: 0.9em;
}

.ls1000 {
  letter-spacing: 1em;
}

.ls1100 {
  letter-spacing: 1.1em;
}

.ls1200 {
  letter-spacing: 1.2em;
}

.ls1300 {
  letter-spacing: 1.3em;
}

.ls1400 {
  letter-spacing: 1.4em;
}

.ls1500 {
  letter-spacing: 1.5em;
}

.ls1600 {
  letter-spacing: 1.6em;
}

.ls160 {
  letter-spacing: 0.16em;
}

.ls1700 {
  letter-spacing: 1.7em;
}

.ls1800 {
  letter-spacing: 1.8em;
}

.ls1900 {
  letter-spacing: 1.9em;
}

.ls2000 {
  letter-spacing: 2em;
}

.ls2100 {
  letter-spacing: 2.1em;
}

.ls2200 {
  letter-spacing: 2.2em;
}

.ls2300 {
  letter-spacing: 2.3em;
}

.ls2400 {
  letter-spacing: 2.4em;
}

.ls2500 {
  letter-spacing: 2.5em;
}

.ls2600 {
  letter-spacing: 2.6em;
}

.ls2700 {
  letter-spacing: 2.7em;
}

.ls2800 {
  letter-spacing: 2.8em;
}

.ls2900 {
  letter-spacing: 2.9em;
}

.ls3000 {
  letter-spacing: 3em;
}

.mt1 {
  margin-top: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.mt2 {
  margin-top: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.mt3 {
  margin-top: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.mt4 {
  margin-top: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.mt5 {
  margin-top: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.mt6 {
  margin-top: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.mt7 {
  margin-top: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.mt8 {
  margin-top: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.mt9 {
  margin-top: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.mt10 {
  margin-top: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.mt11 {
  margin-top: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.mt12 {
  margin-top: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.mt13 {
  margin-top: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.mt14 {
  margin-top: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.mt15 {
  margin-top: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.mt16 {
  margin-top: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.mt17 {
  margin-top: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.mt18 {
  margin-top: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.mt19 {
  margin-top: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.mt20 {
  margin-top: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.mt21 {
  margin-top: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.mt22 {
  margin-top: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.mt23 {
  margin-top: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.mt24 {
  margin-top: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.mt25 {
  margin-top: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.mt26 {
  margin-top: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.mt27 {
  margin-top: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.mt28 {
  margin-top: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.mt29 {
  margin-top: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.mt30 {
  margin-top: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.mt31 {
  margin-top: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.mt32 {
  margin-top: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.mt33 {
  margin-top: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.mt34 {
  margin-top: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.mt35 {
  margin-top: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.mt36 {
  margin-top: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.mt37 {
  margin-top: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.mt38 {
  margin-top: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.mt39 {
  margin-top: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.mt40 {
  margin-top: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.mt41 {
  margin-top: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.mt42 {
  margin-top: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.mt43 {
  margin-top: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.mt44 {
  margin-top: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.mt45 {
  margin-top: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.mt46 {
  margin-top: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.mt47 {
  margin-top: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.mt48 {
  margin-top: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.mt49 {
  margin-top: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.mt50 {
  margin-top: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.mt51 {
  margin-top: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.mt52 {
  margin-top: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.mt53 {
  margin-top: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.mt54 {
  margin-top: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.mt55 {
  margin-top: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.mt56 {
  margin-top: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.mt57 {
  margin-top: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.mt58 {
  margin-top: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.mt59 {
  margin-top: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.mt60 {
  margin-top: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.mt61 {
  margin-top: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.mt62 {
  margin-top: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.mt63 {
  margin-top: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.mt64 {
  margin-top: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.mt65 {
  margin-top: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.mt66 {
  margin-top: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.mt67 {
  margin-top: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.mt68 {
  margin-top: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.mt69 {
  margin-top: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.mt70 {
  margin-top: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.mt71 {
  margin-top: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.mt72 {
  margin-top: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.mt73 {
  margin-top: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.mt74 {
  margin-top: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.mt75 {
  margin-top: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.mt76 {
  margin-top: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.mt77 {
  margin-top: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.mt78 {
  margin-top: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.mt79 {
  margin-top: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.mt80 {
  margin-top: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.mt81 {
  margin-top: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.mt82 {
  margin-top: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.mt83 {
  margin-top: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.mt84 {
  margin-top: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.mt85 {
  margin-top: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.mt86 {
  margin-top: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.mt87 {
  margin-top: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.mt88 {
  margin-top: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.mt89 {
  margin-top: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.mt90 {
  margin-top: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.mt91 {
  margin-top: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.mt92 {
  margin-top: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.mt93 {
  margin-top: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.mt94 {
  margin-top: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.mt95 {
  margin-top: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.mt96 {
  margin-top: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.mt97 {
  margin-top: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.mt98 {
  margin-top: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.mt99 {
  margin-top: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.mt100 {
  margin-top: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.mt110 {
  margin-top: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.mt120 {
  margin-top: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.mt130 {
  margin-top: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.mt140 {
  margin-top: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.mt150 {
  margin-top: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.mt160 {
  margin-top: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.mt170 {
  margin-top: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.mt180 {
  margin-top: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.mt190 {
  margin-top: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.mt200 {
  margin-top: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.mt210 {
  margin-top: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.mt220 {
  margin-top: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.mt230 {
  margin-top: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.mt240 {
  margin-top: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.mt250 {
  margin-top: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.mt260 {
  margin-top: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.mt270 {
  margin-top: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.mt280 {
  margin-top: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.mt290 {
  margin-top: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.mt300 {
  margin-top: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.mb1 {
  margin-bottom: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.mb2 {
  margin-bottom: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.mb3 {
  margin-bottom: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.mb4 {
  margin-bottom: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.mb5 {
  margin-bottom: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.mb6 {
  margin-bottom: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.mb7 {
  margin-bottom: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.mb8 {
  margin-bottom: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.mb9 {
  margin-bottom: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.mb10 {
  margin-bottom: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.mb11 {
  margin-bottom: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.mb12 {
  margin-bottom: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.mb13 {
  margin-bottom: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.mb14 {
  margin-bottom: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.mb15 {
  margin-bottom: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.mb16 {
  margin-bottom: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.mb17 {
  margin-bottom: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.mb18 {
  margin-bottom: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.mb19 {
  margin-bottom: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.mb20 {
  margin-bottom: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.mb21 {
  margin-bottom: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.mb22 {
  margin-bottom: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.mb23 {
  margin-bottom: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.mb24 {
  margin-bottom: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.mb25 {
  margin-bottom: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.mb26 {
  margin-bottom: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.mb27 {
  margin-bottom: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.mb28 {
  margin-bottom: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.mb29 {
  margin-bottom: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.mb30 {
  margin-bottom: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.mb31 {
  margin-bottom: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.mb32 {
  margin-bottom: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.mb33 {
  margin-bottom: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.mb34 {
  margin-bottom: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.mb35 {
  margin-bottom: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.mb36 {
  margin-bottom: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.mb37 {
  margin-bottom: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.mb38 {
  margin-bottom: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.mb39 {
  margin-bottom: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.mb40 {
  margin-bottom: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.mb41 {
  margin-bottom: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.mb42 {
  margin-bottom: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.mb43 {
  margin-bottom: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.mb44 {
  margin-bottom: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.mb45 {
  margin-bottom: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.mb46 {
  margin-bottom: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.mb47 {
  margin-bottom: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.mb48 {
  margin-bottom: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.mb49 {
  margin-bottom: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.mb50 {
  margin-bottom: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.mb51 {
  margin-bottom: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.mb52 {
  margin-bottom: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.mb53 {
  margin-bottom: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.mb54 {
  margin-bottom: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.mb55 {
  margin-bottom: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.mb56 {
  margin-bottom: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.mb57 {
  margin-bottom: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.mb58 {
  margin-bottom: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.mb59 {
  margin-bottom: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.mb60 {
  margin-bottom: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.mb61 {
  margin-bottom: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.mb62 {
  margin-bottom: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.mb63 {
  margin-bottom: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.mb64 {
  margin-bottom: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.mb65 {
  margin-bottom: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.mb66 {
  margin-bottom: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.mb67 {
  margin-bottom: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.mb68 {
  margin-bottom: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.mb69 {
  margin-bottom: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.mb70 {
  margin-bottom: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.mb71 {
  margin-bottom: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.mb72 {
  margin-bottom: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.mb73 {
  margin-bottom: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.mb74 {
  margin-bottom: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.mb75 {
  margin-bottom: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.mb76 {
  margin-bottom: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.mb77 {
  margin-bottom: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.mb78 {
  margin-bottom: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.mb79 {
  margin-bottom: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.mb80 {
  margin-bottom: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.mb81 {
  margin-bottom: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.mb82 {
  margin-bottom: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.mb83 {
  margin-bottom: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.mb84 {
  margin-bottom: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.mb85 {
  margin-bottom: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.mb86 {
  margin-bottom: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.mb87 {
  margin-bottom: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.mb88 {
  margin-bottom: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.mb89 {
  margin-bottom: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.mb90 {
  margin-bottom: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.mb91 {
  margin-bottom: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.mb92 {
  margin-bottom: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.mb93 {
  margin-bottom: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.mb94 {
  margin-bottom: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.mb95 {
  margin-bottom: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.mb96 {
  margin-bottom: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.mb97 {
  margin-bottom: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.mb98 {
  margin-bottom: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.mb99 {
  margin-bottom: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.mb100 {
  margin-bottom: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.mb110 {
  margin-bottom: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.mb120 {
  margin-bottom: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.mb130 {
  margin-bottom: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.mb140 {
  margin-bottom: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.mb150 {
  margin-bottom: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.mb160 {
  margin-bottom: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.mb170 {
  margin-bottom: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.mb180 {
  margin-bottom: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.mb190 {
  margin-bottom: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.mb200 {
  margin-bottom: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.mb210 {
  margin-bottom: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.mb220 {
  margin-bottom: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.mb230 {
  margin-bottom: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.mb240 {
  margin-bottom: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.mb250 {
  margin-bottom: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.mb260 {
  margin-bottom: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.mb270 {
  margin-bottom: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.mb280 {
  margin-bottom: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.mb290 {
  margin-bottom: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.mb300 {
  margin-bottom: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.ml1 {
  margin-left: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.ml2 {
  margin-left: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.ml3 {
  margin-left: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.ml4 {
  margin-left: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.ml5 {
  margin-left: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.ml6 {
  margin-left: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.ml7 {
  margin-left: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.ml8 {
  margin-left: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.ml9 {
  margin-left: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.ml10 {
  margin-left: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.ml11 {
  margin-left: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.ml12 {
  margin-left: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.ml13 {
  margin-left: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.ml14 {
  margin-left: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.ml15 {
  margin-left: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.ml16 {
  margin-left: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.ml17 {
  margin-left: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.ml18 {
  margin-left: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.ml19 {
  margin-left: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.ml20 {
  margin-left: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.ml21 {
  margin-left: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.ml22 {
  margin-left: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.ml23 {
  margin-left: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.ml24 {
  margin-left: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.ml25 {
  margin-left: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.ml26 {
  margin-left: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.ml27 {
  margin-left: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.ml28 {
  margin-left: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.ml29 {
  margin-left: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.ml30 {
  margin-left: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.ml31 {
  margin-left: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.ml32 {
  margin-left: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.ml33 {
  margin-left: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.ml34 {
  margin-left: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.ml35 {
  margin-left: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.ml36 {
  margin-left: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.ml37 {
  margin-left: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.ml38 {
  margin-left: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.ml39 {
  margin-left: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.ml40 {
  margin-left: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.ml41 {
  margin-left: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.ml42 {
  margin-left: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.ml43 {
  margin-left: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.ml44 {
  margin-left: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.ml45 {
  margin-left: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.ml46 {
  margin-left: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.ml47 {
  margin-left: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.ml48 {
  margin-left: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.ml49 {
  margin-left: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.ml50 {
  margin-left: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.ml51 {
  margin-left: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.ml52 {
  margin-left: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.ml53 {
  margin-left: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.ml54 {
  margin-left: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.ml55 {
  margin-left: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.ml56 {
  margin-left: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.ml57 {
  margin-left: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.ml58 {
  margin-left: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.ml59 {
  margin-left: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.ml60 {
  margin-left: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.ml61 {
  margin-left: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.ml62 {
  margin-left: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.ml63 {
  margin-left: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.ml64 {
  margin-left: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.ml65 {
  margin-left: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.ml66 {
  margin-left: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.ml67 {
  margin-left: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.ml68 {
  margin-left: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.ml69 {
  margin-left: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.ml70 {
  margin-left: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.ml71 {
  margin-left: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.ml72 {
  margin-left: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.ml73 {
  margin-left: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.ml74 {
  margin-left: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.ml75 {
  margin-left: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.ml76 {
  margin-left: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.ml77 {
  margin-left: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.ml78 {
  margin-left: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.ml79 {
  margin-left: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.ml80 {
  margin-left: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.ml81 {
  margin-left: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.ml82 {
  margin-left: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.ml83 {
  margin-left: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.ml84 {
  margin-left: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.ml85 {
  margin-left: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.ml86 {
  margin-left: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.ml87 {
  margin-left: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.ml88 {
  margin-left: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.ml89 {
  margin-left: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.ml90 {
  margin-left: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.ml91 {
  margin-left: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.ml92 {
  margin-left: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.ml93 {
  margin-left: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.ml94 {
  margin-left: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.ml95 {
  margin-left: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.ml96 {
  margin-left: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.ml97 {
  margin-left: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.ml98 {
  margin-left: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.ml99 {
  margin-left: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.ml100 {
  margin-left: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.ml110 {
  margin-left: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.ml120 {
  margin-left: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.ml130 {
  margin-left: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.ml140 {
  margin-left: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.ml150 {
  margin-left: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.ml160 {
  margin-left: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.ml170 {
  margin-left: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.ml180 {
  margin-left: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.ml190 {
  margin-left: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.ml200 {
  margin-left: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.ml210 {
  margin-left: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.ml220 {
  margin-left: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.ml230 {
  margin-left: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.ml240 {
  margin-left: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.ml250 {
  margin-left: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.ml260 {
  margin-left: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.ml270 {
  margin-left: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.ml280 {
  margin-left: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.ml290 {
  margin-left: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.ml300 {
  margin-left: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.mr1 {
  margin-right: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.mr2 {
  margin-right: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.mr3 {
  margin-right: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.mr4 {
  margin-right: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.mr5 {
  margin-right: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.mr6 {
  margin-right: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.mr7 {
  margin-right: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.mr8 {
  margin-right: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.mr9 {
  margin-right: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.mr10 {
  margin-right: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.mr11 {
  margin-right: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.mr12 {
  margin-right: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.mr13 {
  margin-right: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.mr14 {
  margin-right: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.mr15 {
  margin-right: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.mr16 {
  margin-right: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.mr17 {
  margin-right: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.mr18 {
  margin-right: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.mr19 {
  margin-right: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.mr20 {
  margin-right: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.mr21 {
  margin-right: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.mr22 {
  margin-right: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.mr23 {
  margin-right: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.mr24 {
  margin-right: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.mr25 {
  margin-right: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.mr26 {
  margin-right: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.mr27 {
  margin-right: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.mr28 {
  margin-right: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.mr29 {
  margin-right: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.mr30 {
  margin-right: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.mr31 {
  margin-right: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.mr32 {
  margin-right: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.mr33 {
  margin-right: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.mr34 {
  margin-right: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.mr35 {
  margin-right: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.mr36 {
  margin-right: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.mr37 {
  margin-right: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.mr38 {
  margin-right: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.mr39 {
  margin-right: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.mr40 {
  margin-right: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.mr41 {
  margin-right: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.mr42 {
  margin-right: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.mr43 {
  margin-right: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.mr44 {
  margin-right: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.mr45 {
  margin-right: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.mr46 {
  margin-right: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.mr47 {
  margin-right: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.mr48 {
  margin-right: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.mr49 {
  margin-right: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.mr50 {
  margin-right: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.mr51 {
  margin-right: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.mr52 {
  margin-right: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.mr53 {
  margin-right: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.mr54 {
  margin-right: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.mr55 {
  margin-right: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.mr56 {
  margin-right: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.mr57 {
  margin-right: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.mr58 {
  margin-right: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.mr59 {
  margin-right: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.mr60 {
  margin-right: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.mr61 {
  margin-right: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.mr62 {
  margin-right: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.mr63 {
  margin-right: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.mr64 {
  margin-right: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.mr65 {
  margin-right: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.mr66 {
  margin-right: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.mr67 {
  margin-right: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.mr68 {
  margin-right: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.mr69 {
  margin-right: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.mr70 {
  margin-right: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.mr71 {
  margin-right: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.mr72 {
  margin-right: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.mr73 {
  margin-right: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.mr74 {
  margin-right: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.mr75 {
  margin-right: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.mr76 {
  margin-right: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.mr77 {
  margin-right: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.mr78 {
  margin-right: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.mr79 {
  margin-right: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.mr80 {
  margin-right: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.mr81 {
  margin-right: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.mr82 {
  margin-right: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.mr83 {
  margin-right: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.mr84 {
  margin-right: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.mr85 {
  margin-right: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.mr86 {
  margin-right: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.mr87 {
  margin-right: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.mr88 {
  margin-right: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.mr89 {
  margin-right: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.mr90 {
  margin-right: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.mr91 {
  margin-right: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.mr92 {
  margin-right: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.mr93 {
  margin-right: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.mr94 {
  margin-right: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.mr95 {
  margin-right: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.mr96 {
  margin-right: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.mr97 {
  margin-right: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.mr98 {
  margin-right: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.mr99 {
  margin-right: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.mr100 {
  margin-right: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.mr110 {
  margin-right: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.mr120 {
  margin-right: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.mr130 {
  margin-right: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.mr140 {
  margin-right: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.mr150 {
  margin-right: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.mr160 {
  margin-right: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.mr170 {
  margin-right: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.mr180 {
  margin-right: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.mr190 {
  margin-right: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.mr200 {
  margin-right: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.mr210 {
  margin-right: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.mr220 {
  margin-right: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.mr230 {
  margin-right: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.mr240 {
  margin-right: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.mr250 {
  margin-right: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.mr260 {
  margin-right: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.mr270 {
  margin-right: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.mr280 {
  margin-right: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.mr290 {
  margin-right: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.mr300 {
  margin-right: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.pt1 {
  padding-top: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.pt2 {
  padding-top: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.pt3 {
  padding-top: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.pt4 {
  padding-top: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.pt5 {
  padding-top: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.pt6 {
  padding-top: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.pt7 {
  padding-top: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.pt8 {
  padding-top: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.pt9 {
  padding-top: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.pt10 {
  padding-top: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.pt11 {
  padding-top: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.pt12 {
  padding-top: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.pt13 {
  padding-top: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.pt14 {
  padding-top: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.pt15 {
  padding-top: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.pt16 {
  padding-top: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.pt17 {
  padding-top: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.pt18 {
  padding-top: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.pt19 {
  padding-top: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.pt20 {
  padding-top: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.pt21 {
  padding-top: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.pt22 {
  padding-top: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.pt23 {
  padding-top: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.pt24 {
  padding-top: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.pt25 {
  padding-top: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.pt26 {
  padding-top: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.pt27 {
  padding-top: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.pt28 {
  padding-top: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.pt29 {
  padding-top: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.pt30 {
  padding-top: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.pt31 {
  padding-top: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.pt32 {
  padding-top: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.pt33 {
  padding-top: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.pt34 {
  padding-top: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.pt35 {
  padding-top: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.pt36 {
  padding-top: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.pt37 {
  padding-top: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.pt38 {
  padding-top: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.pt39 {
  padding-top: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.pt40 {
  padding-top: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.pt41 {
  padding-top: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.pt42 {
  padding-top: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.pt43 {
  padding-top: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.pt44 {
  padding-top: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.pt45 {
  padding-top: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.pt46 {
  padding-top: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.pt47 {
  padding-top: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.pt48 {
  padding-top: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.pt49 {
  padding-top: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.pt50 {
  padding-top: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.pt51 {
  padding-top: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.pt52 {
  padding-top: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.pt53 {
  padding-top: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.pt54 {
  padding-top: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.pt55 {
  padding-top: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.pt56 {
  padding-top: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.pt57 {
  padding-top: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.pt58 {
  padding-top: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.pt59 {
  padding-top: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.pt60 {
  padding-top: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.pt61 {
  padding-top: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.pt62 {
  padding-top: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.pt63 {
  padding-top: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.pt64 {
  padding-top: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.pt65 {
  padding-top: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.pt66 {
  padding-top: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.pt67 {
  padding-top: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.pt68 {
  padding-top: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.pt69 {
  padding-top: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.pt70 {
  padding-top: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.pt71 {
  padding-top: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.pt72 {
  padding-top: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.pt73 {
  padding-top: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.pt74 {
  padding-top: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.pt75 {
  padding-top: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.pt76 {
  padding-top: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.pt77 {
  padding-top: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.pt78 {
  padding-top: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.pt79 {
  padding-top: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.pt80 {
  padding-top: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.pt81 {
  padding-top: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.pt82 {
  padding-top: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.pt83 {
  padding-top: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.pt84 {
  padding-top: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.pt85 {
  padding-top: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.pt86 {
  padding-top: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.pt87 {
  padding-top: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.pt88 {
  padding-top: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.pt89 {
  padding-top: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.pt90 {
  padding-top: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.pt91 {
  padding-top: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.pt92 {
  padding-top: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.pt93 {
  padding-top: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.pt94 {
  padding-top: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.pt95 {
  padding-top: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.pt96 {
  padding-top: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.pt97 {
  padding-top: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.pt98 {
  padding-top: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.pt99 {
  padding-top: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.pt100 {
  padding-top: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.pt110 {
  padding-top: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.pt120 {
  padding-top: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.pt130 {
  padding-top: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.pt140 {
  padding-top: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.pt150 {
  padding-top: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.pt160 {
  padding-top: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.pt170 {
  padding-top: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.pt180 {
  padding-top: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.pt190 {
  padding-top: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.pt200 {
  padding-top: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.pt210 {
  padding-top: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.pt220 {
  padding-top: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.pt230 {
  padding-top: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.pt240 {
  padding-top: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.pt250 {
  padding-top: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.pt260 {
  padding-top: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.pt270 {
  padding-top: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.pt280 {
  padding-top: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.pt290 {
  padding-top: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.pt300 {
  padding-top: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.pb1 {
  padding-bottom: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.pb2 {
  padding-bottom: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.pb3 {
  padding-bottom: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.pb4 {
  padding-bottom: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.pb5 {
  padding-bottom: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.pb6 {
  padding-bottom: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.pb7 {
  padding-bottom: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.pb8 {
  padding-bottom: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.pb9 {
  padding-bottom: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.pb10 {
  padding-bottom: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.pb11 {
  padding-bottom: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.pb12 {
  padding-bottom: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.pb13 {
  padding-bottom: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.pb14 {
  padding-bottom: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.pb15 {
  padding-bottom: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.pb16 {
  padding-bottom: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.pb17 {
  padding-bottom: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.pb18 {
  padding-bottom: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.pb19 {
  padding-bottom: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.pb20 {
  padding-bottom: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.pb21 {
  padding-bottom: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.pb22 {
  padding-bottom: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.pb23 {
  padding-bottom: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.pb24 {
  padding-bottom: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.pb25 {
  padding-bottom: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.pb26 {
  padding-bottom: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.pb27 {
  padding-bottom: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.pb28 {
  padding-bottom: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.pb29 {
  padding-bottom: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.pb30 {
  padding-bottom: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.pb31 {
  padding-bottom: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.pb32 {
  padding-bottom: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.pb33 {
  padding-bottom: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.pb34 {
  padding-bottom: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.pb35 {
  padding-bottom: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.pb36 {
  padding-bottom: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.pb37 {
  padding-bottom: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.pb38 {
  padding-bottom: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.pb39 {
  padding-bottom: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.pb40 {
  padding-bottom: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.pb41 {
  padding-bottom: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.pb42 {
  padding-bottom: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.pb43 {
  padding-bottom: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.pb44 {
  padding-bottom: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.pb45 {
  padding-bottom: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.pb46 {
  padding-bottom: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.pb47 {
  padding-bottom: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.pb48 {
  padding-bottom: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.pb49 {
  padding-bottom: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.pb50 {
  padding-bottom: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.pb51 {
  padding-bottom: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.pb52 {
  padding-bottom: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.pb53 {
  padding-bottom: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.pb54 {
  padding-bottom: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.pb55 {
  padding-bottom: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.pb56 {
  padding-bottom: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.pb57 {
  padding-bottom: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.pb58 {
  padding-bottom: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.pb59 {
  padding-bottom: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.pb60 {
  padding-bottom: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.pb61 {
  padding-bottom: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.pb62 {
  padding-bottom: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.pb63 {
  padding-bottom: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.pb64 {
  padding-bottom: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.pb65 {
  padding-bottom: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.pb66 {
  padding-bottom: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.pb67 {
  padding-bottom: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.pb68 {
  padding-bottom: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.pb69 {
  padding-bottom: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.pb70 {
  padding-bottom: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.pb71 {
  padding-bottom: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.pb72 {
  padding-bottom: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.pb73 {
  padding-bottom: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.pb74 {
  padding-bottom: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.pb75 {
  padding-bottom: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.pb76 {
  padding-bottom: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.pb77 {
  padding-bottom: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.pb78 {
  padding-bottom: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.pb79 {
  padding-bottom: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.pb80 {
  padding-bottom: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.pb81 {
  padding-bottom: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.pb82 {
  padding-bottom: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.pb83 {
  padding-bottom: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.pb84 {
  padding-bottom: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.pb85 {
  padding-bottom: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.pb86 {
  padding-bottom: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.pb87 {
  padding-bottom: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.pb88 {
  padding-bottom: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.pb89 {
  padding-bottom: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.pb90 {
  padding-bottom: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.pb91 {
  padding-bottom: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.pb92 {
  padding-bottom: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.pb93 {
  padding-bottom: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.pb94 {
  padding-bottom: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.pb95 {
  padding-bottom: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.pb96 {
  padding-bottom: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.pb97 {
  padding-bottom: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.pb98 {
  padding-bottom: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.pb99 {
  padding-bottom: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.pb100 {
  padding-bottom: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.pb110 {
  padding-bottom: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.pb120 {
  padding-bottom: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.pb130 {
  padding-bottom: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.pb140 {
  padding-bottom: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.pb150 {
  padding-bottom: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.pb160 {
  padding-bottom: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.pb170 {
  padding-bottom: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.pb180 {
  padding-bottom: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.pb190 {
  padding-bottom: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.pb200 {
  padding-bottom: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.pb210 {
  padding-bottom: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.pb220 {
  padding-bottom: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.pb230 {
  padding-bottom: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.pb240 {
  padding-bottom: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.pb250 {
  padding-bottom: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.pb260 {
  padding-bottom: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.pb270 {
  padding-bottom: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.pb280 {
  padding-bottom: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.pb290 {
  padding-bottom: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.pb300 {
  padding-bottom: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.pl1 {
  padding-left: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.pl2 {
  padding-left: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.pl3 {
  padding-left: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.pl4 {
  padding-left: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.pl5 {
  padding-left: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.pl6 {
  padding-left: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.pl7 {
  padding-left: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.pl8 {
  padding-left: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.pl9 {
  padding-left: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.pl10 {
  padding-left: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.pl11 {
  padding-left: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.pl12 {
  padding-left: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.pl13 {
  padding-left: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.pl14 {
  padding-left: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.pl15 {
  padding-left: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.pl16 {
  padding-left: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.pl17 {
  padding-left: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.pl18 {
  padding-left: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.pl19 {
  padding-left: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.pl20 {
  padding-left: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.pl21 {
  padding-left: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.pl22 {
  padding-left: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.pl23 {
  padding-left: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.pl24 {
  padding-left: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.pl25 {
  padding-left: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.pl26 {
  padding-left: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.pl27 {
  padding-left: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.pl28 {
  padding-left: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.pl29 {
  padding-left: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.pl30 {
  padding-left: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.pl31 {
  padding-left: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.pl32 {
  padding-left: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.pl33 {
  padding-left: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.pl34 {
  padding-left: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.pl35 {
  padding-left: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.pl36 {
  padding-left: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.pl37 {
  padding-left: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.pl38 {
  padding-left: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.pl39 {
  padding-left: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.pl40 {
  padding-left: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.pl41 {
  padding-left: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.pl42 {
  padding-left: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.pl43 {
  padding-left: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.pl44 {
  padding-left: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.pl45 {
  padding-left: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.pl46 {
  padding-left: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.pl47 {
  padding-left: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.pl48 {
  padding-left: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.pl49 {
  padding-left: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.pl50 {
  padding-left: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.pl51 {
  padding-left: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.pl52 {
  padding-left: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.pl53 {
  padding-left: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.pl54 {
  padding-left: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.pl55 {
  padding-left: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.pl56 {
  padding-left: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.pl57 {
  padding-left: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.pl58 {
  padding-left: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.pl59 {
  padding-left: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.pl60 {
  padding-left: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.pl61 {
  padding-left: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.pl62 {
  padding-left: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.pl63 {
  padding-left: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.pl64 {
  padding-left: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.pl65 {
  padding-left: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.pl66 {
  padding-left: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.pl67 {
  padding-left: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.pl68 {
  padding-left: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.pl69 {
  padding-left: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.pl70 {
  padding-left: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.pl71 {
  padding-left: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.pl72 {
  padding-left: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.pl73 {
  padding-left: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.pl74 {
  padding-left: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.pl75 {
  padding-left: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.pl76 {
  padding-left: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.pl77 {
  padding-left: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.pl78 {
  padding-left: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.pl79 {
  padding-left: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.pl80 {
  padding-left: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.pl81 {
  padding-left: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.pl82 {
  padding-left: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.pl83 {
  padding-left: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.pl84 {
  padding-left: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.pl85 {
  padding-left: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.pl86 {
  padding-left: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.pl87 {
  padding-left: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.pl88 {
  padding-left: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.pl89 {
  padding-left: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.pl90 {
  padding-left: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.pl91 {
  padding-left: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.pl92 {
  padding-left: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.pl93 {
  padding-left: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.pl94 {
  padding-left: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.pl95 {
  padding-left: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.pl96 {
  padding-left: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.pl97 {
  padding-left: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.pl98 {
  padding-left: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.pl99 {
  padding-left: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.pl100 {
  padding-left: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.pl110 {
  padding-left: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.pl120 {
  padding-left: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.pl130 {
  padding-left: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.pl140 {
  padding-left: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.pl150 {
  padding-left: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.pl160 {
  padding-left: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.pl170 {
  padding-left: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.pl180 {
  padding-left: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.pl190 {
  padding-left: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.pl200 {
  padding-left: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.pl210 {
  padding-left: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.pl220 {
  padding-left: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.pl230 {
  padding-left: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.pl240 {
  padding-left: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.pl250 {
  padding-left: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.pl260 {
  padding-left: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.pl270 {
  padding-left: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.pl280 {
  padding-left: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.pl290 {
  padding-left: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.pl300 {
  padding-left: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

.pr1 {
  padding-right: clamp(1px, 1px + 0 * (100vw - 375px) / 905, 1px);
}

.pr2 {
  padding-right: clamp(1px, 1px + 1 * (100vw - 375px) / 905, 2px);
}

.pr3 {
  padding-right: clamp(2px, 2px + 1 * (100vw - 375px) / 905, 3px);
}

.pr4 {
  padding-right: clamp(2px, 2px + 2 * (100vw - 375px) / 905, 4px);
}

.pr5 {
  padding-right: clamp(3px, 3px + 2 * (100vw - 375px) / 905, 5px);
}

.pr6 {
  padding-right: clamp(4px, 4px + 2 * (100vw - 375px) / 905, 6px);
}

.pr7 {
  padding-right: clamp(5px, 5px + 2 * (100vw - 375px) / 905, 7px);
}

.pr8 {
  padding-right: clamp(6px, 6px + 2 * (100vw - 375px) / 905, 8px);
}

.pr9 {
  padding-right: clamp(7px, 7px + 2 * (100vw - 375px) / 905, 9px);
}

.pr10 {
  padding-right: clamp(8px, 8px + 2 * (100vw - 375px) / 905, 10px);
}

.pr11 {
  padding-right: clamp(9px, 9px + 2 * (100vw - 375px) / 905, 11px);
}

.pr12 {
  padding-right: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
}

.pr13 {
  padding-right: clamp(11px, 11px + 2 * (100vw - 375px) / 905, 13px);
}

.pr14 {
  padding-right: clamp(12px, 12px + 2 * (100vw - 375px) / 905, 14px);
}

.pr15 {
  padding-right: clamp(13px, 13px + 2 * (100vw - 375px) / 905, 15px);
}

.pr16 {
  padding-right: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}

.pr17 {
  padding-right: clamp(15px, 15px + 2 * (100vw - 375px) / 905, 17px);
}

.pr18 {
  padding-right: clamp(16px, 16px + 2 * (100vw - 375px) / 905, 18px);
}

.pr19 {
  padding-right: clamp(17px, 17px + 2 * (100vw - 375px) / 905, 19px);
}

.pr20 {
  padding-right: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}

.pr21 {
  padding-right: clamp(18px, 18px + 3 * (100vw - 375px) / 905, 21px);
}

.pr22 {
  padding-right: clamp(20px, 20px + 2 * (100vw - 375px) / 905, 22px);
}

.pr23 {
  padding-right: clamp(20px, 20px + 3 * (100vw - 375px) / 905, 23px);
}

.pr24 {
  padding-right: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}

.pr25 {
  padding-right: clamp(22px, 22px + 3 * (100vw - 375px) / 905, 25px);
}

.pr26 {
  padding-right: clamp(22px, 22px + 4 * (100vw - 375px) / 905, 26px);
}

.pr27 {
  padding-right: clamp(22px, 22px + 5 * (100vw - 375px) / 905, 27px);
}

.pr28 {
  padding-right: clamp(22px, 22px + 6 * (100vw - 375px) / 905, 28px);
}

.pr29 {
  padding-right: clamp(23px, 23px + 6 * (100vw - 375px) / 905, 29px);
}

.pr30 {
  padding-right: clamp(23px, 23px + 7 * (100vw - 375px) / 905, 30px);
}

.pr31 {
  padding-right: clamp(23px, 23px + 8 * (100vw - 375px) / 905, 31px);
}

.pr32 {
  padding-right: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}

.pr33 {
  padding-right: clamp(24px, 24px + 9 * (100vw - 375px) / 905, 33px);
}

.pr34 {
  padding-right: clamp(24px, 24px + 10 * (100vw - 375px) / 905, 34px);
}

.pr35 {
  padding-right: clamp(24px, 24px + 11 * (100vw - 375px) / 905, 35px);
}

.pr36 {
  padding-right: clamp(26px, 26px + 10 * (100vw - 375px) / 905, 36px);
}

.pr37 {
  padding-right: clamp(26px, 26px + 11 * (100vw - 375px) / 905, 37px);
}

.pr38 {
  padding-right: clamp(26px, 26px + 12 * (100vw - 375px) / 905, 38px);
}

.pr39 {
  padding-right: clamp(26px, 26px + 13 * (100vw - 375px) / 905, 39px);
}

.pr40 {
  padding-right: clamp(28px, 28px + 12 * (100vw - 375px) / 905, 40px);
}

.pr41 {
  padding-right: clamp(28px, 28px + 13 * (100vw - 375px) / 905, 41px);
}

.pr42 {
  padding-right: clamp(28px, 28px + 14 * (100vw - 375px) / 905, 42px);
}

.pr43 {
  padding-right: clamp(28px, 28px + 15 * (100vw - 375px) / 905, 43px);
}

.pr44 {
  padding-right: clamp(29px, 29px + 15 * (100vw - 375px) / 905, 44px);
}

.pr45 {
  padding-right: clamp(29px, 29px + 16 * (100vw - 375px) / 905, 45px);
}

.pr46 {
  padding-right: clamp(29px, 29px + 17 * (100vw - 375px) / 905, 46px);
}

.pr47 {
  padding-right: clamp(29px, 29px + 18 * (100vw - 375px) / 905, 47px);
}

.pr48 {
  padding-right: clamp(30px, 30px + 18 * (100vw - 375px) / 905, 48px);
}

.pr49 {
  padding-right: clamp(30px, 30px + 19 * (100vw - 375px) / 905, 49px);
}

.pr50 {
  padding-right: clamp(30px, 30px + 20 * (100vw - 375px) / 905, 50px);
}

.pr51 {
  padding-right: clamp(30px, 30px + 21 * (100vw - 375px) / 905, 51px);
}

.pr52 {
  padding-right: clamp(31px, 31px + 21 * (100vw - 375px) / 905, 52px);
}

.pr53 {
  padding-right: clamp(31px, 31px + 22 * (100vw - 375px) / 905, 53px);
}

.pr54 {
  padding-right: clamp(31px, 31px + 23 * (100vw - 375px) / 905, 54px);
}

.pr55 {
  padding-right: clamp(31px, 31px + 24 * (100vw - 375px) / 905, 55px);
}

.pr56 {
  padding-right: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
}

.pr57 {
  padding-right: clamp(32px, 32px + 25 * (100vw - 375px) / 905, 57px);
}

.pr58 {
  padding-right: clamp(32px, 32px + 26 * (100vw - 375px) / 905, 58px);
}

.pr59 {
  padding-right: clamp(32px, 32px + 27 * (100vw - 375px) / 905, 59px);
}

.pr60 {
  padding-right: clamp(33px, 33px + 27 * (100vw - 375px) / 905, 60px);
}

.pr61 {
  padding-right: clamp(33px, 33px + 28 * (100vw - 375px) / 905, 61px);
}

.pr62 {
  padding-right: clamp(33px, 33px + 29 * (100vw - 375px) / 905, 62px);
}

.pr63 {
  padding-right: clamp(33px, 33px + 30 * (100vw - 375px) / 905, 63px);
}

.pr64 {
  padding-right: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}

.pr65 {
  padding-right: clamp(34px, 34px + 31 * (100vw - 375px) / 905, 65px);
}

.pr66 {
  padding-right: clamp(34px, 34px + 32 * (100vw - 375px) / 905, 66px);
}

.pr67 {
  padding-right: clamp(34px, 34px + 33 * (100vw - 375px) / 905, 67px);
}

.pr68 {
  padding-right: clamp(35px, 35px + 33 * (100vw - 375px) / 905, 68px);
}

.pr69 {
  padding-right: clamp(35px, 35px + 34 * (100vw - 375px) / 905, 69px);
}

.pr70 {
  padding-right: clamp(35px, 35px + 35 * (100vw - 375px) / 905, 70px);
}

.pr71 {
  padding-right: clamp(35px, 35px + 36 * (100vw - 375px) / 905, 71px);
}

.pr72 {
  padding-right: clamp(36px, 36px + 36 * (100vw - 375px) / 905, 72px);
}

.pr73 {
  padding-right: clamp(36px, 36px + 37 * (100vw - 375px) / 905, 73px);
}

.pr74 {
  padding-right: clamp(36px, 36px + 38 * (100vw - 375px) / 905, 74px);
}

.pr75 {
  padding-right: clamp(36px, 36px + 39 * (100vw - 375px) / 905, 75px);
}

.pr76 {
  padding-right: clamp(37px, 37px + 39 * (100vw - 375px) / 905, 76px);
}

.pr77 {
  padding-right: clamp(37px, 37px + 40 * (100vw - 375px) / 905, 77px);
}

.pr78 {
  padding-right: clamp(37px, 37px + 41 * (100vw - 375px) / 905, 78px);
}

.pr79 {
  padding-right: clamp(37px, 37px + 42 * (100vw - 375px) / 905, 79px);
}

.pr80 {
  padding-right: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}

.pr81 {
  padding-right: clamp(38px, 38px + 43 * (100vw - 375px) / 905, 81px);
}

.pr82 {
  padding-right: clamp(38px, 38px + 44 * (100vw - 375px) / 905, 82px);
}

.pr83 {
  padding-right: clamp(38px, 38px + 45 * (100vw - 375px) / 905, 83px);
}

.pr84 {
  padding-right: clamp(39px, 39px + 45 * (100vw - 375px) / 905, 84px);
}

.pr85 {
  padding-right: clamp(39px, 39px + 46 * (100vw - 375px) / 905, 85px);
}

.pr86 {
  padding-right: clamp(39px, 39px + 47 * (100vw - 375px) / 905, 86px);
}

.pr87 {
  padding-right: clamp(39px, 39px + 48 * (100vw - 375px) / 905, 87px);
}

.pr88 {
  padding-right: clamp(40px, 40px + 48 * (100vw - 375px) / 905, 88px);
}

.pr89 {
  padding-right: clamp(40px, 40px + 49 * (100vw - 375px) / 905, 89px);
}

.pr90 {
  padding-right: clamp(40px, 40px + 50 * (100vw - 375px) / 905, 90px);
}

.pr91 {
  padding-right: clamp(40px, 40px + 51 * (100vw - 375px) / 905, 91px);
}

.pr92 {
  padding-right: clamp(40px, 40px + 52 * (100vw - 375px) / 905, 92px);
}

.pr93 {
  padding-right: clamp(40px, 40px + 53 * (100vw - 375px) / 905, 93px);
}

.pr94 {
  padding-right: clamp(40px, 40px + 54 * (100vw - 375px) / 905, 94px);
}

.pr95 {
  padding-right: clamp(40px, 40px + 55 * (100vw - 375px) / 905, 95px);
}

.pr96 {
  padding-right: clamp(40px, 40px + 56 * (100vw - 375px) / 905, 96px);
}

.pr97 {
  padding-right: clamp(40px, 40px + 57 * (100vw - 375px) / 905, 97px);
}

.pr98 {
  padding-right: clamp(40px, 40px + 58 * (100vw - 375px) / 905, 98px);
}

.pr99 {
  padding-right: clamp(40px, 40px + 59 * (100vw - 375px) / 905, 99px);
}

.pr100 {
  padding-right: clamp(40px, 40px + 60 * (100vw - 375px) / 905, 100px);
}

.pr110 {
  padding-right: clamp(40px, 40px + 70 * (100vw - 375px) / 905, 110px);
}

.pr120 {
  padding-right: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px);
}

.pr130 {
  padding-right: clamp(50px, 50px + 80 * (100vw - 375px) / 905, 130px);
}

.pr140 {
  padding-right: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}

.pr150 {
  padding-right: clamp(60px, 60px + 90 * (100vw - 375px) / 905, 150px);
}

.pr160 {
  padding-right: clamp(70px, 70px + 90 * (100vw - 375px) / 905, 160px);
}

.pr170 {
  padding-right: clamp(70px, 70px + 100 * (100vw - 375px) / 905, 170px);
}

.pr180 {
  padding-right: clamp(80px, 80px + 100 * (100vw - 375px) / 905, 180px);
}

.pr190 {
  padding-right: clamp(80px, 80px + 110 * (100vw - 375px) / 905, 190px);
}

.pr200 {
  padding-right: clamp(90px, 90px + 110 * (100vw - 375px) / 905, 200px);
}

.pr210 {
  padding-right: clamp(90px, 90px + 120 * (100vw - 375px) / 905, 210px);
}

.pr220 {
  padding-right: clamp(100px, 100px + 120 * (100vw - 375px) / 905, 220px);
}

.pr230 {
  padding-right: clamp(100px, 100px + 130 * (100vw - 375px) / 905, 230px);
}

.pr240 {
  padding-right: clamp(110px, 110px + 130 * (100vw - 375px) / 905, 240px);
}

.pr250 {
  padding-right: clamp(110px, 110px + 140 * (100vw - 375px) / 905, 250px);
}

.pr260 {
  padding-right: clamp(120px, 120px + 140 * (100vw - 375px) / 905, 260px);
}

.pr270 {
  padding-right: clamp(120px, 120px + 150 * (100vw - 375px) / 905, 270px);
}

.pr280 {
  padding-right: clamp(130px, 130px + 150 * (100vw - 375px) / 905, 280px);
}

.pr290 {
  padding-right: clamp(130px, 130px + 160 * (100vw - 375px) / 905, 290px);
}

.pr300 {
  padding-right: clamp(140px, 140px + 160 * (100vw - 375px) / 905, 300px);
}

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  overflow-x: clip;
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-family: "IBM Plex Sans JP", sans-serif;
  font-size: clamp(13px, 13px + 3 * (100vw - 375px) / 905, 16px);
  font-weight: 500;
  color: #251e1c;
  letter-spacing: 0.1em;
  text-align: justify;
  overflow-x: clip;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

ul,
ol {
  list-style: none;
}

a {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

@media (hover: hover) and (pointer: fine) {
  a:hover {
    opacity: 0.8;
  }
}
button,
input,
select,
textarea {
  font: inherit;
  background: none;
  border: none;
  color: inherit;
}

button {
  cursor: pointer;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}

.screen-reader-text {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0;
  border: 0;
  height: 1px;
  width: 1px;
  overflow: hidden;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  clip: auto !important;
  height: auto;
  width: auto;
  display: block;
  z-index: 100000;
}

/*====================================
  Titles
=====================================*/
.sec-ttl__en {
  display: block;
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700;
  font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
  letter-spacing: 0;
  margin-bottom: 12px;
}
.sec-ttl__en.italic {
  font-style: italic;
}
.sec-ttl__jp img {
  display: block;
  width: auto;
  height: 47px;
  object-fit: contain;
}
@media (max-width: 768px) {
  .sec-ttl__jp img {
    height: 40px;
  }
}
@media (max-width: 480px) {
  .sec-ttl__jp img {
    height: 32px;
  }
}
.sec-ttl__jp--small {
  font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
  font-weight: 700;
  color: #0172fd;
  border-bottom: 1px solid #000000;
  padding-bottom: 8px;
}
.sec-ttl__jp--white {
  text-shadow: 6px 6px 0 rgba(9, 0, 0, 0.07);
}
.sec-ttl__jp--white img {
  filter: drop-shadow(6px 6px 0 rgba(9, 0, 0, 0.07));
}
.sec-ttl--center {
  text-align: center;
}
.sec-ttl--center img {
  margin-left: auto;
  margin-right: auto;
}

/*====================================
  cmn-side-ttl(縦書のテキスト)
=====================================*/
.cmn-side-ttl {
  position: absolute;
  width: 12px;
  height: auto;
  object-fit: contain;
  left: 5%;
  transform: translateX(-50%);
  top: 320px;
  z-index: 2;
}
@media (max-width: 1400px) {
  .cmn-side-ttl {
    top: 280px;
    transform: initial;
    left: 1.5%;
  }
}
@media (max-width: 768px) {
  .cmn-side-ttl {
    top: 16px;
    transform: initial;
    width: 8px;
  }
}
@media (max-width: 480px) {
  .cmn-side-ttl {
    display: none;
  }
}
@media (max-width: 768px) {
  .cmn-side-ttl.bottom {
    top: auto;
    bottom: 0;
    transform-origin: bottom right;
    transform: rotate(270deg) translate(calc(100% + 12px), 100%);
  }
}
@media (max-width: 768px) {
  .cmn-side-ttl.left {
    left: 1.5%;
    right: auto;
  }
}

.bg-blue-ttl {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.bg-blue-ttl .text-reveal-chars__visual {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.bg-blue-ttl .text-reveal-chars__break {
  display: contents;
}
.bg-blue-ttl .text-reveal-chars__break br {
  display: none;
}
.bg-blue-ttl p,
.bg-blue-ttl .text-reveal-chars__line {
  display: inline;
  max-width: 100%;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: clamp(18px, 18px + 9 * (100vw - 375px) / 905, 27px);
  letter-spacing: 0.1em;
  background-color: #0172fd;
  color: #ffffff;
  line-height: 2;
  padding: 0.15em 0.5em;
}
@media (max-width: 768px) {
  .bg-blue-ttl p,
  .bg-blue-ttl .text-reveal-chars__line {
    font-size: clamp(18px, 18px + 4 * (100vw - 375px) / 905, 22px);
  }
}
@media (max-width: 480px) {
  .bg-blue-ttl p,
  .bg-blue-ttl .text-reveal-chars__line {
    font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
    padding: 0.12em 0.4em;
  }
}

.cmn__ttl-icon {
  display: block;
  width: fit-content;
  transition: transform 0.3s ease;
}
.cmn__ttl-icon:hover, .cmn__ttl-icon:focus-visible {
  transform: translateY(-20px);
  opacity: 1;
}
.cmn__ttl-icon img {
  height: 103px;
  width: auto;
  object-fit: contain;
}
@media (max-width: 768px) {
  .cmn__ttl-icon img {
    height: 80px;
  }
}
@media (max-width: 480px) {
  .cmn__ttl-icon img {
    height: 64px;
  }
}
.cmn__ttl-icon--center {
  margin-left: auto;
  margin-right: auto;
}

/*====================================
  color
=====================================*/
.color-white {
  color: #ffffff;
}

.color-blue {
  color: #0172fd;
}

.color-cyan {
  color: #c4f6ff;
}

.color-gray1 {
  color: #1d1717;
}

.color-gray2 {
  color: #d8dadb;
}

.color-green {
  color: #00c38e;
}

.color-txt1 {
  color: #000000;
}

.color-txt2 {
  color: #1d1b33;
}

.color-txt3 {
  color: #231815;
}

.color-txt4 {
  color: #181b39;
}

.color-txt5 {
  color: #313047;
}

.color-txt6 {
  color: #121023;
}

.color-lightblue {
  color: #e3f2fd;
}

.color-lightgray {
  color: #f5f5f5;
}

/*====================================
  font
=====================================*/
.font-hammersmith {
  font-family: "Hammersmith One", sans-serif;
}

.font-josefin {
  font-family: "Josefin Sans", sans-serif;
}

.font-zen {
  font-family: "Zen Maru Gothic", sans-serif;
}

.font-ibm {
  font-family: "IBM Plex Sans JP", sans-serif;
}

.font-zen-kaku {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}

.font-noto {
  font-family: "Noto Sans JP", sans-serif;
}

.font-mplus-rounded {
  font-family: "M PLUS Rounded 1c", sans-serif;
}

.mv-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 645px;
  z-index: -1;
}
.mv-bg img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

/*====================================
  SNS
=====================================*/
.cmn__sns-list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}
.cmn__sns-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 92px;
  height: 20px;
  border-radius: 5px;
  background-color: #ffffff;
  color: #1d1b33;
  position: relative;
  z-index: 10;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.cmn__sns-item a:hover, .cmn__sns-item a:focus-visible {
  transform: translateY(-2px);
  opacity: 1;
}
.cmn__sns-item a img {
  height: 13px;
  width: auto;
  object-fit: contain;
}
.cmn__sns-item a img:last-child {
  height: 10px;
  width: auto;
  object-fit: contain;
  margin-left: 4px;
}

.cmn__circle-txt {
  width: 180px;
  height: 180px;
  animation: rotate 30s linear infinite;
}
.cmn__circle-txt img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}
@media screen and (max-width: 1000px) {
  .cmn__circle-txt {
    width: 140px;
    height: 140px;
  }
}
@media screen and (max-width: 600px) {
  .cmn__circle-txt {
    width: 80px;
    height: 80px;
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.bar-blue {
  content: "";
  display: block;
  position: absolute;
  left: 5%;
  transform: translateX(-50%);
  top: 10%;
  width: 16px;
  height: 208px;
  background-color: #0172fd;
}
@media (max-width: 1400px) {
  .bar-blue {
    transform: initial;
    left: 1.5%;
  }
}
@media (max-width: 768px) {
  .bar-blue {
    top: 5%;
    left: 2.5%;
    width: 8px;
    height: 100px;
  }
}

.cmn-desc {
  font-size: clamp(18px, 18px + 4 * (100vw - 375px) / 905, 22px);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #1d1b33;
  text-align: center;
}
.cmn-desc.white {
  color: #ffffff;
}

.dotted {
  position: relative;
  height: 1px;
  width: 100%;
}
.dotted::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(to right, #ffffff, #ffffff 2px, transparent 2px, transparent 13px);
  background-size: 15px 0.5px;
  background-repeat: repeat-x;
}

.js-scroll-bg {
  --scroll-bg-progress: 0;
  --scroll-bg-from: rgba(1, 114, 253, 0);
  --scroll-bg-to: #0172fd;
  position: relative;
  isolation: isolate;
  background-color: var(--scroll-bg-from);
}
.js-scroll-bg .container-1300:not(.fade-in):not(.fade-in-up):not(.fade-in-left):not(.fade-in-right),
.js-scroll-bg .container-1200:not(.fade-in):not(.fade-in-up):not(.fade-in-left):not(.fade-in-right),
.js-scroll-bg .container-1100:not(.fade-in):not(.fade-in-up):not(.fade-in-left):not(.fade-in-right),
.js-scroll-bg .container-1000:not(.fade-in):not(.fade-in-up):not(.fade-in-left):not(.fade-in-right),
.js-scroll-bg .container-900:not(.fade-in):not(.fade-in-up):not(.fade-in-left):not(.fade-in-right),
.js-scroll-bg .container-850:not(.fade-in):not(.fade-in-up):not(.fade-in-left):not(.fade-in-right) {
  transform: translateY(calc((1 - var(--scroll-bg-progress)) * 20px));
  opacity: calc(0.8 + var(--scroll-bg-progress) * 0.2);
}

/*====================================
  Scroll animation（.visible を JS が付与）
=====================================*/
.fade-in {
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.fade-in.visible {
  opacity: 1;
}

.fade-in-up,
.fade-in-left,
.fade-in-right {
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.fade-in-up.visible,
.fade-in-left.visible,
.fade-in-right.visible {
  opacity: 1;
  transform: none;
}

.fade-in-up {
  transform: translateY(30px);
}

.fade-in-left {
  transform: translateX(-30px);
}

.fade-in-right {
  transform: translateX(30px);
}

/*====================================
  text-reveal-chars（1文字ずつ薄→濃）
=====================================*/
.text-reveal-chars__visual {
  display: block;
}
.text-reveal-chars__line {
  display: inline;
}
.text-reveal-chars__char {
  display: inline-block;
  opacity: 0.12;
  will-change: opacity;
}
.text-reveal-chars.is-active .text-reveal-chars__char {
  animation: text-reveal-char 0.55s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  .text-reveal-chars__char {
    opacity: 1 !important;
    animation: none !important;
  }
}

@keyframes text-reveal-char {
  0% {
    opacity: 0.12;
  }
  100% {
    opacity: 1;
  }
}
.floating {
  animation: floating 10s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  position: absolute;
}
.floating.visible {
  animation: floating 10s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes floating {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-30px);
  }
}
.delay-1 {
  transition-delay: 0.1s;
}

.delay-2 {
  transition-delay: 0.2s;
}

.delay-3 {
  transition-delay: 0.3s;
}

.delay-4 {
  transition-delay: 0.4s;
}

.delay-5 {
  transition-delay: 0.5s;
}

.delay-6 {
  transition-delay: 0.6s;
}

.delay-7 {
  transition-delay: 0.7s;
}

.delay-8 {
  transition-delay: 0.8s;
}

.delay-9 {
  transition-delay: 0.9s;
}

/*====================================
  News grid（トップ .t-blog の NewsTabs と共通）
=====================================*/
@media (max-width: 640px) {
  .news-grid__item--hide-sp {
    display: none;
  }
}

/*====================================
  News Tabs
=====================================*/
.news-tabs__panels {
  position: relative;
}
.news-tabs__panel {
  display: none;
}
.news-tabs__panel.is-active {
  display: block;
  animation: fadeIn 0.3s ease;
}
.news-tabs__grid {
  display: grid;
  gap: 48px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
@media (max-width: 960px) {
  .news-tabs__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
@media (max-width: 640px) {
  .news-tabs__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}
@media (max-width: 480px) {
  .news-tabs__grid {
    gap: 24px;
  }
}
.news-tabs__grid > * {
  min-width: 0;
  max-width: 100%;
}
.news-tabs__empty {
  text-align: center;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  color: rgba(29, 27, 51, 0.6);
}

.news-card {
  display: block;
  min-width: 0;
  max-width: 100%;
}
.news-card__link {
  background-color: #ffffff;
  border: 2px solid #1d1b33;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  max-width: 100%;
  color: inherit;
  position: relative;
  z-index: 1;
}
.news-card__link::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.9);
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
  z-index: 5;
}
@media (hover: hover) and (pointer: fine) {
  .news-card__link:hover {
    opacity: 1;
  }
  .news-card__link:hover::after {
    opacity: 1;
  }
  .news-card__link:hover .news-card__more {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
}
.news-card__thumbnail {
  position: relative;
  aspect-ratio: 273/175;
  overflow: hidden;
  margin: 4px;
}
.news-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  z-index: 1;
  transition: transform 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .news-card__link:hover .news-card__img {
    transform: scale(1.1);
  }
}
.news-card__link:focus-visible .news-card__img {
  transform: scale(1.1);
}
.news-card__inr {
  padding: 8px 20px 20px;
  position: relative;
  z-index: 3;
  min-width: 0;
}
.news-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 12px;
  position: relative;
  z-index: 3;
}
@media (max-width: 480px) {
  .news-card__meta {
    margin-bottom: 8px;
  }
}
.news-card__category {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  background-color: #1d1b33;
  color: #ffffff;
  font-size: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
  letter-spacing: 0.18em;
  font-weight: 500;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.news-card__date {
  margin-left: auto;
}
.news-card__date, .news-card__author {
  font-size: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
  color: rgba(29, 27, 51, 0.6);
  transition: color 0.3s ease;
}
.news-card__title {
  font-size: clamp(14px, 14px + 4 * (100vw - 375px) / 905, 18px);
  font-weight: 700;
  color: #313047;
  letter-spacing: 0.1em;
  font-family: "Noto Sans JP", sans-serif;
  text-align: left;
  margin-bottom: 12px;
  position: relative;
  z-index: 3;
  overflow-wrap: anywhere;
}
.news-card__excerpt {
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  color: #1d1b33;
  letter-spacing: 0.1em;
  transition: color 0.3s ease;
  position: relative;
  z-index: 3;
  line-height: 1.6;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
.news-card__more {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, calc(-50% + 12px));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 36px;
  font-family: "Josefin Sans", sans-serif;
  font-style: italic;
  color: #ffffff;
  border: 1px solid #ffffff;
  letter-spacing: 0;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 10;
  pointer-events: none;
}
@media (max-width: 480px) {
  .news-card__inr {
    padding: 8px;
  }
  .news-card__title {
    font-size: clamp(13px, 13px + 3 * (100vw - 375px) / 905, 16px);
  }
  .news-card__excerpt {
    font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  }
}

/*====================================
  News Archive (URL ベースのタブ + 3 カラムカード + ページネーション)
  - /news で利用するアーカイブ専用 BEM。
  - .news-tabs（JS タブ）とは独立したサーバー側マークアップで、
    「すべて見る／お知らせ／実績紹介／スタッフブログ」を
    リンク（<a>）で切り替える。
=====================================*/
.news-archive__grid {
  display: grid;
  gap: 48px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  margin-bottom: clamp(40px, 6vw, 80px);
}
@media (max-width: 960px) {
  .news-archive__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
@media (max-width: 640px) {
  .news-archive__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}
@media (max-width: 480px) {
  .news-archive__grid {
    gap: 24px;
  }
}
.news-archive__grid > * {
  min-width: 0;
  max-width: 100%;
}
.news-archive__empty {
  font-weight: 700;
  margin-bottom: clamp(40px, 6vw, 80px);
}
.news-archive__pagination {
  margin-top: clamp(32px, 5vw, 64px);
}

/*====================================
  News Archive Tabs（カテゴリー切替リンク）
  画像仕様：選択中のタブのみ青背景 + 白文字。
  非選択タブはダークグレーの素文字。
=====================================*/
.news-archive-tabs__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: clamp(16px, 3vw, 40px);
  list-style: none;
  padding: 0;
  margin: 0;
}
.news-archive-tabs__tab {
  display: inline-block;
  padding: 8px 18px;
  color: #313047;
  font-weight: 700;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-decoration: none;
  transition: opacity 0.3s ease, background-color 0.3s ease, color 0.3s ease;
}
.news-archive-tabs__tab:hover {
  opacity: 0.7;
}
.news-archive-tabs__tab.is-active {
  background-color: #0172fd;
  color: #ffffff;
}
.news-archive-tabs__tab.is-active:hover {
  opacity: 1;
}
@media (max-width: 480px) {
  .news-archive-tabs__list {
    gap: 8px 16px;
  }
  .news-archive-tabs__tab {
    padding: 6px 12px;
    font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  }
}

.news-bg {
  position: absolute;
  inset: 0;
  top: 45%;
  width: 100%;
  height: 100%;
  z-index: -2;
  pointer-events: none;
}
.news-bg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.news-list,
#news-archive,
#news-category {
  overflow-x: clip;
}

/*====================================
  News Article Single（/news/[slug]・/blog/[slug] 詳細）
  モックアップ：大見出し → Date 行 → 青枠記事 → 前後ナビ
=====================================*/
#news-single .ud-mv__left,
#blog-single .ud-mv__left,
#staff-single .ud-mv__left {
  width: 50%;
}
@media (max-width: 768px) {
  #news-single .ud-mv__left,
  #blog-single .ud-mv__left,
  #staff-single .ud-mv__left {
    width: 60%;
  }
}
#news-single .news-article__page-ttl,
#blog-single .news-article__page-ttl,
#staff-single .news-article__page-ttl {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(24px, 24px + 24 * (100vw - 375px) / 905, 48px);
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.12em;
  color: #0172fd;
  text-transform: uppercase;
}
#news-single .news-article__meta,
#blog-single .news-article__meta,
#staff-single .news-article__meta {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  gap: 12px;
}
#news-single .news-article__meta-label,
#blog-single .news-article__meta-label,
#staff-single .news-article__meta-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: clamp(8px, 1vw, 12px) clamp(12px, 2vw, 24px);
  background-color: #0172fd;
  color: #ffffff;
  font-weight: 700;
  line-height: 1;
  box-shadow: 1.6px 1.6px 0.57px rgba(0, 0, 0, 0.3);
}
#news-single .news-article__meta-value,
#blog-single .news-article__meta-value,
#staff-single .news-article__meta-value {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
}
#news-single .news-article__box,
#blog-single .news-article__box,
#staff-single .news-article__box {
  position: relative;
  padding: clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px) clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px) clamp(50px, 50px + 70 * (100vw - 375px) / 905, 120px) clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
  margin-bottom: clamp(38px, 38px + 42 * (100vw - 375px) / 905, 80px);
}
@media (max-width: 768px) {
  #news-single .news-article__box,
  #blog-single .news-article__box,
  #staff-single .news-article__box {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 40px;
  }
}
#news-single .news-article__box::after,
#blog-single .news-article__box::after,
#staff-single .news-article__box::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(1300px, 90vw);
  max-width: 1300px;
  border: 1px solid #0172fd;
  box-sizing: border-box;
  pointer-events: none;
}
#news-single .news-article__author,
#blog-single .news-article__author,
#staff-single .news-article__author {
  position: absolute;
  top: 0;
  right: clamp(16px, 4vw, 48px);
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  background-color: #ffffff;
  z-index: 10;
}
#news-single .news-article__author-photo,
#blog-single .news-article__author-photo,
#staff-single .news-article__author-photo {
  width: clamp(56px, 8vw, 80px);
  height: clamp(56px, 8vw, 80px);
  border-radius: 50%;
  overflow: hidden;
  background-color: #1d1717;
}
#news-single .news-article__author-photo img,
#blog-single .news-article__author-photo img,
#staff-single .news-article__author-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#news-single .news-article__author-dept,
#blog-single .news-article__author-dept,
#staff-single .news-article__author-dept {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 16px;
  background-color: #0172fd;
  color: #ffffff;
  font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.12em;
  white-space: nowrap;
}
#news-single .news-article__author-name,
#blog-single .news-article__author-name,
#staff-single .news-article__author-name {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  font-weight: 400;
  line-height: 1;
  color: rgba(1, 114, 253, 0.55);
  letter-spacing: 0.08em;
}
#news-single .news-article__ttl,
#blog-single .news-article__ttl,
#staff-single .news-article__ttl {
  margin: 0 0 clamp(24px, 4vw, 40px);
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 700;
  line-height: 1.6;
  color: #000000;
}
#news-single .news-article__thumbnail,
#blog-single .news-article__thumbnail,
#staff-single .news-article__thumbnail {
  margin-bottom: clamp(24px, 4vw, 40px);
}
#news-single .news-article__thumbnail img,
#blog-single .news-article__thumbnail img,
#staff-single .news-article__thumbnail img {
  display: block;
  width: 100%;
  height: auto;
}
#news-single .news-article__blocks,
#blog-single .news-article__blocks,
#staff-single .news-article__blocks {
  font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  font-weight: 700;
  line-height: 2;
  color: #000000;
}
#news-single .news-article__blocks p,
#blog-single .news-article__blocks p,
#staff-single .news-article__blocks p {
  margin: 0 0 1em;
}
#news-single .news-article__blocks p:last-child,
#blog-single .news-article__blocks p:last-child,
#staff-single .news-article__blocks p:last-child {
  margin-bottom: 0;
}
#news-single .news-article__pager,
#blog-single .news-article__pager,
#staff-single .news-article__pager {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
}
#news-single .news-article__pager-prev,
#blog-single .news-article__pager-prev,
#staff-single .news-article__pager-prev {
  justify-self: start;
}
#news-single .news-article__pager-back,
#blog-single .news-article__pager-back,
#staff-single .news-article__pager-back {
  justify-self: center;
  text-align: center;
}
#news-single .news-article__pager-next,
#blog-single .news-article__pager-next,
#staff-single .news-article__pager-next {
  justify-self: end;
}
#news-single .news-article__pager-link,
#blog-single .news-article__pager-link,
#staff-single .news-article__pager-link {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  font-weight: 700;
  line-height: 1.5;
  color: #000000;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
#news-single .news-article__pager-link:hover,
#blog-single .news-article__pager-link:hover,
#staff-single .news-article__pager-link:hover {
  opacity: 0.6;
}
#news-single .news-article__past,
#blog-single .news-article__past,
#staff-single .news-article__past {
  margin-top: clamp(64px, 8vw, 100px);
}
#news-single .news-article__past-head,
#blog-single .news-article__past-head,
#staff-single .news-article__past-head {
  text-align: center;
  margin-bottom: clamp(32px, 5vw, 48px);
}
#news-single .news-article__past-ttl,
#blog-single .news-article__past-ttl,
#staff-single .news-article__past-ttl {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 8px 24px;
  background-color: #0172fd;
  color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 700;
  line-height: 1.4;
}
#news-single .news-article__past-grid,
#blog-single .news-article__past-grid,
#staff-single .news-article__past-grid {
  display: grid;
  gap: 48px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
@media (max-width: 960px) {
  #news-single .news-article__past-grid,
  #blog-single .news-article__past-grid,
  #staff-single .news-article__past-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
@media (max-width: 640px) {
  #news-single .news-article__past-grid,
  #blog-single .news-article__past-grid,
  #staff-single .news-article__past-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
}
@media (max-width: 480px) {
  #news-single .news-article__past-grid,
  #blog-single .news-article__past-grid,
  #staff-single .news-article__past-grid {
    gap: 24px;
  }
}
#news-single .news-article__past-grid > *,
#blog-single .news-article__past-grid > *,
#staff-single .news-article__past-grid > * {
  min-width: 0;
  max-width: 100%;
}
@media (max-width: 480px) {
  #news-single .news-article__page-ttl,
  #blog-single .news-article__page-ttl,
  #staff-single .news-article__page-ttl {
    font-size: clamp(20px, 20px + 12 * (100vw - 375px) / 905, 32px);
  }
  #news-single .news-article__box--has-author,
  #blog-single .news-article__box--has-author,
  #staff-single .news-article__box--has-author {
    padding-top: clamp(64px, 18vw, 88px);
  }
  #news-single .news-article__pager,
  #blog-single .news-article__pager,
  #staff-single .news-article__pager {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 20px;
  }
  #news-single .news-article__pager-prev, #news-single .news-article__pager-next, #news-single .news-article__pager-back,
  #blog-single .news-article__pager-prev,
  #blog-single .news-article__pager-next,
  #blog-single .news-article__pager-back,
  #staff-single .news-article__pager-prev,
  #staff-single .news-article__pager-next,
  #staff-single .news-article__pager-back {
    justify-self: center;
  }
}

/*====================================
  Pagination（汎用）
  仕様：
  - 数字ボタンは「| 区切り」で中央寄せ
  - カレントは青文字、それ以外はダークグレー
  - 「<< / >>」は総ページ数 > windowSize のときのみ Pagination.tsx で出力
  - is-disabled 状態（先頭/末尾で << >> を押せないとき）は薄く表示
=====================================*/
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.pagination__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}
.pagination__item {
  display: flex;
  align-items: center;
}
.pagination__item:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 16px;
  background-color: #d8dadb;
  margin: 0 clamp(12px, 2vw, 24px);
}
.pagination__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  color: #313047;
  font-weight: 700;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  line-height: 1;
  text-decoration: none;
  padding: 4px;
  cursor: pointer;
  transition: opacity 0.3s ease, color 0.3s ease;
}
.pagination__link:hover {
  opacity: 0.7;
}
.pagination__link--current {
  color: #0172fd;
}
.pagination__link--current:hover {
  opacity: 1;
}
.pagination__link--edge {
  font-size: clamp(13px, 13px + 3 * (100vw - 375px) / 905, 16px);
  letter-spacing: 0.05em;
}
.pagination__link.is-disabled {
  pointer-events: none;
  opacity: 0.3;
}

/*====================================
  Works Tabs & Slider
=====================================*/
.works-tabs {
  position: relative;
  overflow: visible;
}
.works-tabs__list, .works-tabs__nav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 48px;
  color: #1d1b33;
}
@media (max-width: 768px) {
  .works-tabs__list, .works-tabs__nav {
    gap: 8px 12px;
  }
}
.works-tabs__tab {
  appearance: none;
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  position: relative;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 400;
  cursor: pointer;
  transition: all 0.3s ease;
  color: #121023;
}
.works-tabs__tab:focus-visible {
  outline: 2px solid #0172fd;
  outline-offset: 2px;
}
.works-tabs__tab::after {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  right: -24px;
  width: 1px;
  height: 100%;
  background-color: #d8dadb;
}
.works-tabs__tab:last-child::after {
  display: none;
}
.works-tabs__tab:hover {
  opacity: 0.8;
}
.works-tabs__tab.active {
  color: #0172fd;
  font-weight: 700;
}
@media (max-width: 768px) {
  .works-tabs__tab {
    padding: 0 8px;
  }
  .works-tabs__tab::after {
    right: -6px;
  }
}
.works-tabs__list--news .works-tabs__tab,
.works-tabs__list--news .news-tabs__tab {
  color: #1d1b33;
}
.works-tabs__list--news .works-tabs__tab::after,
.works-tabs__list--news .news-tabs__tab::after {
  background-color: #1d1b33;
}
.works-tabs__list--news .works-tabs__tab.is-active,
.works-tabs__list--news .news-tabs__tab.is-active {
  color: #ffffff;
  font-weight: 700;
}
.works-tabs__list--works-archive {
  margin-bottom: 80px;
}
@media (max-width: 480px) {
  .works-tabs__list--works-archive {
    margin-bottom: 40px;
  }
}
.works-tabs__list--works-archive .works-tabs__tab {
  color: #ffffff;
  font-weight: 700;
  font-size: clamp(13px, 13px + 3 * (100vw - 375px) / 905, 16px);
}
.works-tabs__list--works-archive .works-tabs__tab::after {
  background-color: #ffffff;
}
.works-tabs__list--works-archive .works-tabs__tab.is-active, .works-tabs__list--works-archive .works-tabs__tab:hover {
  color: #1d1b33;
}
@media (max-width: 768px) {
  .works-tabs__list--works-archive .works-tabs__tab {
    font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  }
}
.works-tabs__slider {
  display: none;
  position: relative;
  z-index: 10;
}
.works-tabs__slider.active {
  display: block;
  animation: fadeIn 0.3s ease;
}
.works-tabs__slider .works-slider__viewport {
  height: auto;
  overflow: hidden;
  width: 100%;
  touch-action: pan-y;
  cursor: grab;
}
.works-tabs__slider .works-slider__viewport:active {
  cursor: grabbing;
}
.works-tabs__slider .works-slider__track {
  display: flex;
  align-items: flex-start;
  will-change: transform;
}
.works-tabs__slider .works-slider__slide {
  height: auto;
  display: flex;
  align-items: stretch;
  position: relative;
}
.works-tabs__slider .works-slider__btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  object-fit: contain;
  object-position: center;
  display: block;
  margin: 0;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  line-height: 0;
  z-index: 30;
}
.works-tabs__slider .works-slider__btn img {
  max-width: none;
  width: auto;
  height: auto;
  display: block;
}
.works-tabs__slider .works-slider__btn:focus-visible {
  outline: 2px solid #0172fd;
  outline-offset: 2px;
}
.works-tabs__slider .works-slider__btn--next::after,
.works-tabs__slider .works-slider__btn--prev::after {
  display: none;
}
.works-tabs__slider .works-slider__btn--next img {
  transform: rotate(180deg);
}
.works-tabs__slider .works-slider__btn--next {
  left: auto;
  right: -56px;
}
.works-tabs__slider .works-slider__btn--prev {
  left: -56px;
  right: auto;
}
@media (max-width: 960px) {
  .works-tabs__slider {
    padding-bottom: 24px;
  }
  .works-tabs__slider .works-slider__btn--next,
  .works-tabs__slider .works-slider__btn--prev {
    top: auto;
    bottom: 0;
    margin-top: 16px;
    transform: translate(-50%, 50%);
    width: 32px;
    height: 32px;
  }
  .works-tabs__slider .works-slider__btn--next {
    left: calc(50% + 32px);
    right: auto;
  }
  .works-tabs__slider .works-slider__btn--prev {
    right: auto;
    left: calc(50% - 32px);
  }
}
.works-tabs__slider .works-card {
  background-color: transparent;
}
.works-tabs .works-img {
  position: absolute;
  width: 201px;
  height: auto;
  left: 0;
  object-fit: contain;
  bottom: 10%;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 960px) {
  .works-tabs .works-img {
    width: 140px;
    bottom: 0;
  }
}
@media (max-width: 768px) {
  .works-tabs .works-img {
    width: 80px;
    top: 100%;
    bottom: auto;
  }
}
.works-tabs .works-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  color: inherit;
  text-decoration: none;
}
.works-tabs .works-card__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2em;
  margin-bottom: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}
.works-tabs .works-card__ttl {
  display: block;
  font-size: clamp(18px, 18px + 9 * (100vw - 375px) / 905, 27px);
  font-weight: 700;
  letter-spacing: 0;
  color: #1d1b33;
  padding-bottom: 8px;
  border-bottom: 2px solid #181b39;
}
.works-tabs .works-card__img {
  position: relative;
  margin-bottom: clamp(24px, 24px + 8 * (100vw - 375px) / 905, 32px);
}
.works-tabs .works-card__num {
  position: relative;
  flex-shrink: 0;
  width: max-content;
  min-width: clamp(80px, 80px + 36 * (100vw - 375px) / 905, 116px);
  padding: 28px 4px 0 20px;
  z-index: 10;
}
.works-tabs .works-card__num .num {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: clamp(80px, 80px + 36 * (100vw - 375px) / 905, 116px);
  height: auto;
  object-fit: contain;
  pointer-events: none;
}
.works-tabs .works-card .txt {
  display: block;
  margin: 0;
  font-family: "Josefin Sans", sans-serif;
  font-style: italic;
  font-size: clamp(54px, 54px + 58 * (100vw - 375px) / 905, 112px);
  letter-spacing: 0;
  color: #0172fd;
  line-height: 1;
  margin-bottom: -0.15em;
}
.works-tabs .works-card .main-img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.works-tabs .works-card__txt {
  position: relative;
  gap: 56px;
  padding-bottom: clamp(32px, 32px + 24 * (100vw - 375px) / 905, 56px);
  max-width: 720px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.works-tabs .works-card__category {
  display: flex;
  flex-direction: column;
  gap: 20px;
  z-index: 1;
}
.works-tabs .works-card__category-inr {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.works-tabs .works-card__category-txt {
  width: 176px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: clamp(11px, 11px + 3 * (100vw - 375px) / 905, 14px);
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
}
.works-tabs .works-card__category-txt.works01 {
  background-color: #0172fd;
}
.works-tabs .works-card__category-txt.works02 {
  background-color: #00c38e;
}
.works-tabs .works-card__category-txt.works03 {
  background-color: #f39c12;
}
.works-tabs .works-card__category-txt.works04 {
  background-color: #1f8fff;
}
.works-tabs .works-card__category-txt.works05 {
  background-color: #8e6ad8;
}
.works-tabs .works-card__category-txt.works06 {
  background-color: #c0392b;
}
.works-tabs .works-card__category img {
  width: 174px;
  height: auto;
  object-fit: contain;
  margin-top: auto;
}
.works-tabs .works-card__copy {
  flex: 1;
}
.works-tabs .works-card__copy-ttl {
  font-size: clamp(18px, 18px + 6 * (100vw - 375px) / 905, 24px);
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #231815;
  padding-bottom: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
  border-bottom: 1px solid #231815;
}
.works-tabs .works-card__copy-desc {
  padding-top: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  letter-spacing: 0.05em;
  color: #1d1b33;
  line-height: 1.75;
}
.works-tabs .works-card__voice {
  display: flex;
  align-items: center;
  gap: 64px;
  background-color: #f5f5f5;
  border: 2.5px solid #d8dadb;
  padding: 40px 100px;
}
.works-tabs .works-card__voice img {
  width: clamp(64px, 40px + 58 * (100vw - 375px) / 905, 198px);
  height: auto;
  object-fit: contain;
}
.works-tabs .works-card__voice-txt {
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .works-tabs .works-card__voice {
    padding: 24px 40px;
  }
}
@media (max-width: 960px) {
  .works-tabs .works-card__ttl {
    font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
    padding-bottom: 0;
  }
  .works-tabs .works-card__num {
    min-width: 80px;
    padding: 20px 4px 0 16px;
  }
  .works-tabs .works-card__num .num {
    width: 80px;
  }
  .works-tabs .works-card .txt {
    font-size: 64px;
  }
  .works-tabs .works-card__txt {
    gap: 24px;
    padding-bottom: 24px;
  }
  .works-tabs .works-card__category {
    min-width: 20%;
  }
  .works-tabs .works-card__category-txt {
    font-size: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
    width: 100%;
    height: 24px;
  }
  .works-tabs .works-card__category img {
    width: 140px;
  }
  .works-tabs .works-card__copy-ttl {
    font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
  }
  .works-tabs .works-card__voice {
    flex-direction: column;
    gap: 16px;
  }
}
@media (max-width: 640px) {
  .works-tabs .works-card__txt {
    flex-direction: column;
    gap: 12px;
    padding-bottom: 12px;
  }
  .works-tabs .works-card__category {
    position: relative;
  }
  .works-tabs .works-card__category-inr {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
  }
  .works-tabs .works-card__category-txt {
    width: calc(50% - 4px);
  }
  .works-tabs .works-card__category img {
    position: absolute;
    width: 72px;
    right: 4px;
    top: 0;
    margin-top: initial;
  }
  .works-tabs .works-card__copy-ttl {
    padding-right: 88px;
    padding-bottom: 12px;
    font-size: clamp(14px, 14px + 4 * (100vw - 375px) / 905, 18px);
  }
  .works-tabs .works-card__copy-desc {
    padding-top: 12px;
  }
  .works-tabs .works-card__voice {
    padding: 16px;
  }
}
@media (max-width: 480px) {
  .works-tabs .works-card__copy-ttl {
    padding-right: 0;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*====================================
  Common Slider
=====================================*/
.cmn-slide1 {
  overflow: hidden;
  width: 100%;
  padding-top: 20px;
  container-type: inline-size;
  container-name: cmn-slide1;
}
.cmn-slide1__track {
  display: flex;
  width: max-content;
  height: auto;
  will-change: transform;
  gap: 12px;
}
@container cmn-slide1 (min-width: 480px) {
  .cmn-slide1__track {
    gap: 16px;
  }
}
@container cmn-slide1 (min-width: 768px) {
  .cmn-slide1__track {
    gap: 24px;
  }
}
.cmn-slide1__slide {
  flex: 0 0 auto;
  box-sizing: border-box;
  flex-basis: calc((100cqi - 24px) / 2.5);
}
@container cmn-slide1 (min-width: 480px) {
  .cmn-slide1__slide {
    flex-basis: calc((100cqi - 32px) / 3);
  }
}
@container cmn-slide1 (min-width: 768px) {
  .cmn-slide1__slide {
    flex-basis: calc((100cqi - 72px) / 4);
  }
}
@container cmn-slide1 (min-width: 1400px) {
  .cmn-slide1__slide {
    flex-basis: calc((100cqi - 144px) / 7);
  }
}
.cmn-slide1.community-works-marquee .cmn-slide1__track {
  align-items: stretch;
  gap: 24px;
  padding-block: 4px;
}
.cmn-slide1.community-works-marquee .cmn-slide1__slide {
  display: flex;
  flex: 0 0 auto;
  width: auto;
  max-width: none;
  height: auto;
}
.cmn-slide1.community-works-marquee .community-works-card {
  height: 100%;
}
@container cmn-slide1 (max-width: 479px) {
  .cmn-slide1.community-works-marquee .community-works-card__thumbnail,
  .cmn-slide1.community-works-marquee .community-works-card__img {
    height: 160px;
  }
  .cmn-slide1.community-works-marquee .community-works-card__thumbnail {
    flex: 0 0 160px;
  }
}
.cmn-slide1 .community-works-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: fit-content;
  max-width: none;
  height: auto;
  color: inherit;
  text-decoration: none;
  transition: transform 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .cmn-slide1 .community-works-card:hover {
    transform: translateY(-20px);
    opacity: 1;
  }
}
.cmn-slide1 .community-works-card__thumbnail {
  flex: 0 0 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  height: 200px;
  overflow: hidden;
}
.cmn-slide1 .community-works-card__img {
  display: block;
  width: auto;
  height: 200px;
  max-width: none;
  object-fit: contain;
  object-position: center center;
}
.cmn-slide1 .community-works-card__content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  justify-content: center;
  min-height: 0;
  min-width: 0;
  padding-top: 12px;
  text-align: center;
}
.cmn-slide1 .community-works-card__title {
  font-family: "Josefin Sans", sans-serif;
  font-size: clamp(14px, 14px + 4 * (100vw - 375px) / 905, 18px);
  font-weight: 700;
  color: #0172fd;
  text-align: center;
  line-height: 1.4;
  width: 100%;
}
@media (max-width: 1024px) {
  .cmn-slide1 .community-works-card__title {
    font-size: clamp(10px, 10px + 2 * (100vw - 375px) / 905, 12px);
  }
}

/*====================================
  contact
=====================================*/
.cmn-contact {
  position: relative;
  padding: 160px 0 72px 0;
  z-index: 2;
  color: #ffffff;
}
@media (max-width: 768px) {
  .cmn-contact {
    padding: 64px 0 48px 0;
  }
}
.cmn-contact__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.cmn-contact__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cmn-contact__bg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1d1b33;
  mix-blend-mode: multiply;
  z-index: 1;
  transition: all 0.3s ease;
}
.cmn-contact__inr {
  position: relative;
  z-index: 2;
}
.cmn-contact__txt {
  text-align: center;
  padding-bottom: 32px;
}
.cmn-contact__txt--1 {
  text-align: center;
  font-size: clamp(18px, 18px + 5 * (100vw - 375px) / 905, 23px);
  padding-bottom: 32px;
}
.cmn-contact__txt--2 {
  text-align: center;
  font-size: clamp(13px, 13px + 3 * (100vw - 375px) / 905, 16px);
  font-weight: 300;
}
@media (max-width: 768px) {
  .cmn-contact__txt {
    padding-bottom: 24px;
  }
  .cmn-contact__txt--1 {
    padding-bottom: 24px;
  }
}
.cmn-contact:has(.btn-base:hover) .cmn-contact__bg::after {
  opacity: 0.8;
}

.t-works__inr {
  overflow: visible;
}

.maru-bg {
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: auto;
  transform: translateX(-50%);
  z-index: -1;
  pointer-events: none;
}
.maru-bg picture {
  display: block;
  width: 100%;
  height: 100%;
}
.maru-bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center top;
}
.maru-bg.bottom {
  top: auto;
  bottom: 0;
}

/*====================================
  自由ブロック（管理画面で作成する本文ブロックのレイアウト）
  地域貢献（/local）・お知らせ（/news・/blog）の詳細で共用するため
  ページ固有 CSS ではなく common（全ページ共通）に置く。
=====================================*/
.local-blocks {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 32px 24px;
}
.local-blocks__item {
  flex: 0 1 100%;
  min-width: 0;
}
.local-blocks__item--half {
  flex-basis: calc(50% - 12px);
}
.local-blocks__item--third {
  flex-basis: calc(33.333% - 16px);
}
.local-blocks__item--twothirds {
  flex-basis: calc(66.666% - 8px);
}
@media screen and (max-width: 768px) {
  .local-blocks {
    gap: 24px;
  }
  .local-blocks__item {
    flex-basis: 100%;
  }
}

.local-block__heading {
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 0;
}
.local-block__text {
  font-size: 16px;
  line-height: 1.9;
  white-space: pre-line;
}
.local-block__link {
  color: inherit;
  text-decoration: underline;
  transition: opacity 0.2s ease;
}
.local-block__link:hover {
  opacity: 0.7;
}
.local-block__figure {
  margin: 0;
}
.local-block__img {
  width: 100%;
  height: auto;
  max-height: 300px;
  object-fit: contain;
  display: block;
}
.local-block__caption {
  margin-top: 8px;
  font-size: 14px;
  text-align: center;
  color: #666;
}
.local-block__button {
  margin-top: 8px;
}

/*====================================
  カラムブロック（1〜2列）
=====================================*/
.local-columns {
  display: grid;
  gap: 24px;
}
.local-columns__row--1 {
  grid-template-columns: 1fr;
}
.local-columns__row--2 {
  grid-template-columns: 1fr 1fr;
}
.local-columns__col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
  min-width: 0;
}
@media screen and (max-width: 768px) {
  .local-columns {
    grid-template-columns: 1fr;
  }
}

/*====================================
  Buttons
=====================================*/
.btn-base {
  display: block;
}
.btn-base__link {
  display: inline-block;
  font-size: clamp(14px, 14px + 3 * (100vw - 375px) / 905, 17px);
  font-weight: 400;
  letter-spacing: 0.2em;
  padding: 20px 112px;
  background-color: #1d1b33;
  border-radius: 50px;
  text-decoration: none;
  border: 1px solid #ffffff;
  color: #ffffff;
  transition: all 0.3s ease;
}
.btn-base__link:hover {
  transform: translateY(-20px);
  opacity: 1;
}
@media (max-width: 960px) {
  .btn-base__link {
    padding: 16px 64px;
    border-radius: 30px;
  }
}
@media (max-width: 480px) {
  .btn-base__link {
    padding: 12px 40px;
    font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  }
}
.btn-base--center {
  text-align: center;
}
.btn-base--italic {
  font-style: italic;
  font-family: "Josefin Sans", sans-serif;
}
.btn-base--shadow .btn-base__link {
  box-shadow: 2.3px 2.3px 0.8px 0 rgba(17, 6, 4, 0.3);
}
.btn-base--shadow .btn-base__link:hover {
  background-color: #ffffff;
  color: #1d1b33;
  border-color: #1d1b33;
  transform: none;
  opacity: 1;
}
.btn-base button.btn-base__link {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  line-height: 1;
  font-family: inherit;
}

.btn-grad {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: #ffffff;
  padding: 24px;
  width: 100%;
  border: 1px solid #ffffff;
  background: url(../img/common/btn-grad.webp) no-repeat left top;
  background-size: contain;
  line-height: 1;
  transition: all 0.3s ease;
}
.btn-grad:hover {
  background-color: #003785;
}
.btn-grad span {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700;
  font-size: clamp(16px, 16px + 4 * (100vw - 375px) / 905, 20px);
  letter-spacing: 0;
  color: #ffffff;
  display: block;
  line-height: 1.5;
}
.btn-grad__icon {
  display: block;
  opacity: 0;
  width: 9px;
  height: auto;
  object-fit: contain;
  transition: all 0.3s ease;
}
.btn-grad:hover .btn-grad__icon {
  opacity: 1;
}
@media (max-width: 768px) {
  .btn-grad {
    padding: 20px;
  }
  .btn-grad span {
    font-size: clamp(14px, 14px + 4 * (100vw - 375px) / 905, 18px);
  }
}

.cmn-deco {
  position: absolute;
  display: block;
  pointer-events: none;
  z-index: 0;
  opacity: 0;
  translate: 0 30px;
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), translate 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.cmn-deco.is-visible {
  opacity: 1;
  translate: 0 0;
}
.cmn-deco img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  animation: cmn-deco-float 7s ease-in-out infinite;
  will-change: translate;
}
.cmn-deco--01 {
  aspect-ratio: 212/187;
  width: clamp(85px, 14vw, 212px);
  max-width: 212px;
  height: auto;
}
.cmn-deco--01 img {
  animation-name: cmn-deco-float;
  animation-duration: 7s;
  animation-delay: -0.9s;
}
.cmn-deco--02 {
  aspect-ratio: 156/175;
  width: clamp(62px, 14vw, 156px);
  max-width: 156px;
  height: auto;
}
.cmn-deco--02 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 8s;
  animation-delay: -1.8s;
}
.cmn-deco--02-2 {
  aspect-ratio: 204/197;
  width: clamp(82px, 14vw, 204px);
  max-width: 204px;
  height: auto;
}
.cmn-deco--02-2 img {
  animation-name: cmn-deco-float;
  animation-duration: 9s;
  animation-delay: -2.7s;
}
.cmn-deco--03 {
  aspect-ratio: 192/211;
  width: clamp(77px, 14vw, 192px);
  max-width: 192px;
  height: auto;
}
.cmn-deco--03 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 6s;
  animation-delay: -3.6s;
}
.cmn-deco--04 {
  aspect-ratio: 186/194;
  width: clamp(74px, 14vw, 186px);
  max-width: 186px;
  height: auto;
}
.cmn-deco--04 img {
  animation-name: cmn-deco-float;
  animation-duration: 7s;
  animation-delay: 0s;
}
.cmn-deco--05 {
  aspect-ratio: 236/204;
  width: clamp(91px, 14vw, 228.1640276849px);
  max-width: 236px;
  height: auto;
}
.cmn-deco--05 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 8s;
  animation-delay: -0.9s;
}
.cmn-deco--06 {
  aspect-ratio: 205/260;
  width: clamp(75px, 14vw, 188.3633967382px);
  max-width: 205px;
  height: auto;
}
.cmn-deco--06 img {
  animation-name: cmn-deco-float;
  animation-duration: 9s;
  animation-delay: -1.8s;
}
.cmn-deco--07 {
  aspect-ratio: 204/197;
  width: clamp(82px, 14vw, 204px);
  max-width: 204px;
  height: auto;
}
.cmn-deco--07 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 6s;
  animation-delay: -2.7s;
}
.cmn-deco--08 {
  aspect-ratio: 191/186;
  width: clamp(76px, 14vw, 191px);
  max-width: 191px;
  height: auto;
}
.cmn-deco--08 img {
  animation-name: cmn-deco-float;
  animation-duration: 7s;
  animation-delay: -3.6s;
}
.cmn-deco--09 {
  aspect-ratio: 206/194;
  width: clamp(82px, 14vw, 206px);
  max-width: 206px;
  height: auto;
}
.cmn-deco--09 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 8s;
  animation-delay: 0s;
}
.cmn-deco--10 {
  aspect-ratio: 171/148;
  width: clamp(68px, 14vw, 171px);
  max-width: 171px;
  height: auto;
}
.cmn-deco--10 img {
  animation-name: cmn-deco-float;
  animation-duration: 9s;
  animation-delay: -0.9s;
}
.cmn-deco--11 {
  aspect-ratio: 226/121;
  width: clamp(90px, 14vw, 226px);
  max-width: 226px;
  height: auto;
}
.cmn-deco--11 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 6s;
  animation-delay: -1.8s;
}
.cmn-deco--12 {
  aspect-ratio: 201/201;
  width: clamp(80px, 14vw, 201px);
  max-width: 201px;
  height: auto;
}
.cmn-deco--12 img {
  animation-name: cmn-deco-float;
  animation-duration: 7s;
  animation-delay: -2.7s;
}
.cmn-deco--13 {
  aspect-ratio: 198/178;
  width: clamp(79px, 14vw, 198px);
  max-width: 198px;
  height: auto;
}
.cmn-deco--13 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 8s;
  animation-delay: -3.6s;
}
.cmn-deco--14 {
  aspect-ratio: 186/184;
  width: clamp(74px, 14vw, 186px);
  max-width: 186px;
  height: auto;
}
.cmn-deco--14 img {
  animation-name: cmn-deco-float;
  animation-duration: 9s;
  animation-delay: 0s;
}
.cmn-deco--15 {
  aspect-ratio: 245/179;
  width: clamp(98px, 14vw, 245px);
  max-width: 245px;
  height: auto;
}
.cmn-deco--15 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 6s;
  animation-delay: -0.9s;
}
.cmn-deco--16 {
  aspect-ratio: 114/124;
  width: clamp(46px, 14vw, 114px);
  max-width: 114px;
  height: auto;
}
.cmn-deco--16 img {
  animation-name: cmn-deco-float;
  animation-duration: 7s;
  animation-delay: -1.8s;
}
.cmn-deco--17 {
  aspect-ratio: 209/207;
  width: clamp(84px, 14vw, 209px);
  max-width: 209px;
  height: auto;
}
.cmn-deco--17 img {
  animation-name: cmn-deco-float-alt;
  animation-duration: 8s;
  animation-delay: -2.7s;
}
.cmn-deco--maru {
  aspect-ratio: 150/150;
  width: clamp(60px, 14vw, 150px);
  max-width: 150px;
  height: auto;
}
.cmn-deco--maru img {
  animation-name: cmn-deco-float;
  animation-duration: 9s;
  animation-delay: -3.6s;
}
.cmn-deco--bleed-1300 {
  --deco-1300-max: min(calc((100vw - 100%) / 2),
    calc((min(100vw, 1300px) - 100%) / 2));
}
.cmn-deco--bleed-left {
  right: auto;
  left: max(-1 * var(--deco-1300-max, 0px), var(--deco-x, 0px));
}
.cmn-deco--bleed-right {
  left: auto;
  right: max(-1 * var(--deco-1300-max, 0px), var(--deco-x, 0px));
}
@media (max-width: 768px) {
  .cmn-deco--01 {
    width: clamp(85px, 12vw, 212px);
  }
  .cmn-deco--02 {
    width: clamp(62px, 12vw, 156px);
  }
  .cmn-deco--02-2 {
    width: clamp(82px, 12vw, 204px);
  }
  .cmn-deco--03 {
    width: clamp(77px, 12vw, 192px);
  }
  .cmn-deco--04 {
    width: clamp(74px, 12vw, 186px);
  }
  .cmn-deco--05 {
    width: clamp(91px, 12vw, 228.1640276849px);
  }
  .cmn-deco--06 {
    width: clamp(75px, 12vw, 188.3633967382px);
  }
  .cmn-deco--07 {
    width: clamp(82px, 12vw, 204px);
  }
  .cmn-deco--08 {
    width: clamp(76px, 12vw, 191px);
  }
  .cmn-deco--09 {
    width: clamp(82px, 12vw, 206px);
  }
  .cmn-deco--10 {
    width: clamp(68px, 12vw, 171px);
  }
  .cmn-deco--11 {
    width: clamp(90px, 12vw, 226px);
  }
  .cmn-deco--12 {
    width: clamp(80px, 12vw, 201px);
  }
  .cmn-deco--13 {
    width: clamp(79px, 12vw, 198px);
  }
  .cmn-deco--14 {
    width: clamp(74px, 12vw, 186px);
  }
  .cmn-deco--15 {
    width: clamp(98px, 12vw, 245px);
  }
  .cmn-deco--16 {
    width: clamp(46px, 12vw, 114px);
  }
  .cmn-deco--17 {
    width: clamp(84px, 12vw, 209px);
  }
  .cmn-deco--maru {
    width: clamp(60px, 12vw, 150px);
  }
}

.cmn-deco-maru {
  display: block;
  position: absolute;
  aspect-ratio: 143/140;
  width: clamp(57px, 14vw, 143px);
  max-width: 143px;
  height: auto;
  object-fit: contain;
  object-position: center;
  pointer-events: none;
  opacity: 0;
  translate: 0 30px;
  transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), translate 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.cmn-deco-maru.is-visible {
  opacity: 1;
  translate: 0 0;
}
.cmn-deco-maru img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
  animation: cmn-deco-float 8s ease-in-out infinite;
  will-change: translate;
}

/*====================================
  deco 浮遊アニメーション
  - translate プロパティで上下にゆっくり揺れる
  - 振れ幅は控えめ（数 px〜十数 px 程度）
  - cmn-deco-maru にも軽い動きを付与
=====================================*/
@keyframes cmn-deco-float {
  0% {
    translate: 0 0;
  }
  50% {
    translate: 0 -10px;
  }
  100% {
    translate: 0 0;
  }
}
@keyframes cmn-deco-float-alt {
  0% {
    translate: 0 0;
  }
  50% {
    translate: 4px -7px;
  }
  100% {
    translate: 0 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .cmn-slide1 .community-works-card:hover,
  .ser-works__link:hover {
    transform: none;
  }
  .cmn-deco,
  .cmn-deco-maru {
    opacity: 1;
    translate: 0 0;
    transition: none;
  }
  #top .t-ser .service-bg-maru {
    opacity: 1;
    translate: 0 0;
    transition: none;
  }
  .cmn-deco img,
  .cmn-deco-maru img {
    animation: none;
  }
}
/*====================================
  ローディング画面（デザイン画像準拠）
  - navy 背景の上に loading-bg.webp を重ねる
  - morse は白文字（MV と同じ Josefin）/ e だけ青
  - 75% の円形プログレス + LOADING...
=====================================*/
.loading {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  background-color: #1d1b33;
  background-image: url("../img/common/loading-bg.webp");
  background-size: contain;
  background-position: center;
  background-repeat: repeat;
  opacity: 1;
  transition: opacity 0.6s ease;
}
.loading.is-hidden {
  opacity: 0;
  pointer-events: none;
}
.loading__inr {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(20px, 3.5vw, 32px);
  text-align: center;
}
.loading__icon {
  width: clamp(64px, 11vw, 88px);
}
.loading__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.loading__brand {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(30px, 5.5vw, 44px);
  letter-spacing: 0.08em;
  line-height: 1;
}
.loading__brand-e {
  color: #0172fd;
}
.loading__ring {
  position: relative;
  width: clamp(150px, 28vw, 210px);
  aspect-ratio: 1;
}
.loading__ring svg {
  width: 100%;
  height: 100%;
  display: block;
}
.loading__ring-track {
  fill: none;
  stroke: rgba(255, 255, 255, 0.18);
  stroke-width: 6;
}
.loading__ring-bar {
  fill: none;
  stroke: url("#loadingRingGrad");
  stroke-width: 6;
  stroke-linecap: round;
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
}
.loading__percent {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700;
  font-size: clamp(24px, 4.5vw, 32px);
  line-height: 1;
}
.loading__percent-unit {
  font-size: 0.5em;
  margin-left: 2px;
  vertical-align: super;
}
.loading__txt {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(11px, 2vw, 14px);
  letter-spacing: 0.45em;
  padding-left: 0.45em;
}
.loading__icon, .loading__brand {
  opacity: 0;
  animation: loading-fade 1.4s ease forwards;
  animation-delay: 0.1s;
}
.loading__ring, .loading__txt {
  opacity: 0;
  animation: loading-fade-in 0.6s ease forwards;
}
.loading__ring {
  animation-delay: 0.6s;
}
.loading__txt {
  animation-delay: 0.9s;
}
@media (prefers-reduced-motion: reduce) {
  .loading .loading__icon,
  .loading .loading__brand,
  .loading .loading__ring,
  .loading .loading__txt {
    opacity: 1;
    animation: none;
  }
}

@keyframes loading-fade-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes loading-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*====================================
  ud-mv 画像幅（ページ別・基準 510px → pc 440px の比率を維持）
=====================================*/
/*====================================
  mv
=====================================*/
.ud-mv {
  position: relative;
  z-index: 1;
  padding-top: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
  padding-bottom: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
}
.ud-mv__inr {
  justify-content: space-between;
  position: relative;
}
.ud-mv__left {
  margin-top: auto;
  margin-bottom: 0;
  position: static;
  z-index: 2;
}
.ud-mv__left .sec-ttl__en {
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .ud-mv__left .sec-ttl__en {
    margin-bottom: 16px;
  }
}
.ud-mv__left-ttl {
  margin-bottom: 40px;
}
.ud-mv__left-desc {
  width: auto;
  height: 80px;
  object-fit: contain;
}
.ud-mv__left-desc.lines-3 {
  height: 132px;
}
.ud-mv__left-ttl-txt {
  font-size: clamp(14px, 14px + 4 * (100vw - 375px) / 905, 18px);
  font-weight: 700;
  line-height: 1.6;
  color: #000000;
  margin: 0;
}
.ud-mv__right {
  position: relative;
  z-index: 1;
  flex: 1;
}
.ud-mv__right-media {
  position: absolute;
  right: 0;
  top: 0;
  transform: translateY(-25%);
  width: var(--ud-mv-img-width, 510px);
}
.ud-mv__right .cmn__circle-txt {
  position: absolute;
  top: 50%;
  left: 50%;
  right: auto;
  z-index: 10;
  animation: none;
  transform: translate(-50%, -50%);
}
.ud-mv__right .cmn__circle-txt img {
  animation: rotate 30s linear infinite;
}
.ud-mv__right-img {
  position: relative;
  top: auto;
  right: auto;
  width: 100%;
  height: auto;
  object-fit: contain;
  z-index: 1;
  display: block;
}
.ud-mv__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.ud-mv__bg img,
.ud-mv__bg picture {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ud-mv .cmn__ttl-icon {
  position: absolute;
  bottom: 0;
  right: calc(50% - 650px);
  transform: translateY(50%);
  z-index: 2;
  transition: transform 0.3s ease;
}
.ud-mv .cmn__ttl-icon:hover {
  transform: translateY(calc(50% - 20px));
  opacity: 1;
}
@media (max-width: 1400px) {
  .ud-mv .cmn__ttl-icon {
    right: 5%;
  }
}
@media (max-width: 1024px) {
  .ud-mv__right-media {
    width: var(--ud-mv-img-width-pc, 440px);
  }
}
@media (max-width: 960px) {
  .ud-mv__left-ttl {
    margin-bottom: 24px;
  }
  .ud-mv__left-desc {
    height: 64px;
  }
  .ud-mv__left-desc.lines-3 {
    height: 104px;
  }
  .ud-mv__right {
    position: relative;
    z-index: 1;
    flex: 1;
  }
  .ud-mv__right-media {
    max-width: 320px;
    width: 100%;
  }
}
@media (max-width: 768px) {
  .ud-mv__left-ttl {
    margin-bottom: 24px;
  }
  .ud-mv__right {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    height: 100%;
    width: 100%;
  }
  .ud-mv__right-media {
    margin-top: 0;
    width: 100%;
    max-width: 320px;
    margin-left: auto;
  }
  .ud-mv__right-img {
    z-index: 0;
  }
}
@media (max-width: 640px) {
  .ud-mv__left-desc {
    height: 48px;
  }
  .ud-mv__left-desc.lines-3 {
    height: 72px;
  }
  .ud-mv__right-media {
    max-width: 240px;
  }
}
@media (max-width: 480px) {
  .ud-mv__right-media {
    max-width: 200px;
  }
}

.service-page,
#service,
[id^=service-] {
  --ud-mv-img-width: 439px;
  --ud-mv-img-width-pc: 378.7450980392px;
}

#works-archive,
#works-single,
#works-production-list {
  --ud-mv-img-width: 383px;
  --ud-mv-img-width-pc: 330.431372549px;
}

#news-archive,
#news-category,
#news-single,
#blog-single,
#contact,
#privacy-policy {
  --ud-mv-img-width: 450px;
  --ud-mv-img-width-pc: 388.2352941176px;
}

#local,
#local-single {
  --ud-mv-img-width: 453px;
  --ud-mv-img-width-pc: 390.8235294118px;
}

#detail {
  --ud-mv-img-width: 505px;
  --ud-mv-img-width-pc: 435.6862745098px;
}

#company,
#staff-single {
  --ud-mv-img-width: 509px;
  --ud-mv-img-width-pc: 439.137254902px;
}

/*====================================
  404 (not found)
=====================================*/
.notfound {
  padding-top: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
  padding-bottom: clamp(60px, 60px + 80 * (100vw - 375px) / 905, 140px);
  text-align: center;
}
.notfound__inr {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.notfound__code {
  font-family: "Josefin Sans", sans-serif;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #0172fd;
  font-size: clamp(64px, 64px + 60 * (100vw - 375px) / 905, 128px);
}
.notfound__ttl {
  margin-top: 24px;
  font-weight: 700;
  color: #1d1b33;
  font-size: clamp(20px, 20px + 8 * (100vw - 375px) / 905, 28px);
}
@media (max-width: 480px) {
  .notfound__ttl {
    margin-top: 16px;
  }
}
.notfound__txt {
  margin-top: 20px;
  color: #1d1b33;
  line-height: 1.9;
  font-size: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}
.notfound__btn {
  margin-top: 40px;
}
@media (max-width: 480px) {
  .notfound__btn {
    margin-top: 32px;
  }
}

/*====================================
  contact（/contact）
=====================================*/
@media (max-width: 960px) {
  #contact .ud-mv__right-media {
    width: 40vw;
  }
}
#contact .contact-form__done {
  padding-block: clamp(48px, 8vw, 64px);
}
#contact .contact-form__done-ttl {
  font-size: clamp(18px, 18px + 6 * (100vw - 375px) / 905, 24px);
  color: #0172fd;
  margin-bottom: clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}
#contact .contact-form__done-txt {
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  line-height: 1.8;
}
#contact .contact-form__row {
  margin-bottom: clamp(17px, 17px + 3 * (100vw - 375px) / 905, 20px);
}
#contact .contact-form__label {
  display: block;
  margin-bottom: 12px;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
}
#contact .contact-form__tag--required {
  color: #e60012;
}
#contact .contact-form__checks {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 24px;
  margin-bottom: clamp(34px, 34px + 30 * (100vw - 375px) / 905, 64px);
}
#contact .contact-form__check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
  cursor: pointer;
}
#contact .contact-form__check input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #0172fd;
  flex-shrink: 0;
}
#contact .contact-form__input, #contact .contact-form__textarea {
  display: block;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid #1d1717;
  border-radius: 4px;
  background-color: #ffffff;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.6;
  box-sizing: border-box;
}
#contact .contact-form__input::placeholder, #contact .contact-form__textarea::placeholder {
  color: rgba(29, 23, 23, 0.35);
}
#contact .contact-form__input:focus, #contact .contact-form__textarea:focus {
  outline: 2px solid rgba(1, 114, 253, 0.35);
  outline-offset: 0;
}
#contact .contact-form__textarea {
  min-height: 200px;
  resize: vertical;
}
@media (max-width: 480px) {
  #contact .contact-form__checks {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}

/*====================================
  privacy-policy（/privacy-policy）
=====================================*/
#privacy-policy .privacy-policy__lead {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 700;
  line-height: 2;
  color: #000000;
  margin-bottom: clamp(32px, 5vw, 48px);
}
#privacy-policy .privacy-policy__section {
  margin-top: clamp(32px, 5vw, 48px);
}
#privacy-policy .privacy-policy__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(18px, 18px + 6 * (100vw - 375px) / 905, 24px);
  font-weight: 700;
  line-height: 1.6;
  color: #0172fd;
  margin: 0 0 clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}
#privacy-policy .privacy-policy__list {
  list-style: disc;
  margin: 0 0 clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
  padding-left: 1.5em;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 700;
  line-height: 2;
  color: #000000;
}
#privacy-policy .privacy-policy__list li + li {
  margin-top: 0.25em;
}
#privacy-policy .privacy-policy__list--ordered {
  list-style: decimal;
}
#privacy-policy .privacy-policy__list--nested {
  margin-top: 0.5em;
  margin-bottom: 0;
}
#privacy-policy .privacy-policy__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 700;
  line-height: 2;
  color: #000000;
  margin: 0 0 clamp(20px, 20px + 4 * (100vw - 375px) / 905, 24px);
}
#privacy-policy .privacy-policy__text.mb16 {
  margin-bottom: clamp(14px, 14px + 2 * (100vw - 375px) / 905, 16px);
}
#privacy-policy .privacy-policy__text a {
  color: #0172fd;
  text-decoration: underline;
}
#privacy-policy .privacy-policy__text a:hover {
  opacity: 0.7;
}
#privacy-policy .privacy-policy__closing {
  margin-top: clamp(32px, 5vw, 48px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 700;
  line-height: 2;
  color: #000000;
  text-align: right;
}
#privacy-policy .privacy-policy__contact {
  padding: clamp(20px, 3vw, 32px);
  border: 1px solid #1d1717;
  background-color: #f5f5f5;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 12px + 3 * (100vw - 375px) / 905, 15px);
  font-weight: 700;
  line-height: 2;
  color: #000000;
}
#privacy-policy .privacy-policy__contact p {
  margin: 0;
}

/*# sourceMappingURL=common.css.map */
