@charset "UTF-8";
@media screen and (max-width: 1200px) {
  /**************************************************
  サブ共通    
  **************************************************/
  .main_wiz_index .index_wrap {
    display: none !important;
  }
  .main_wiz_index .contents_wrap {
    width: 100%;
  }
  .anchor_wrap.partners_anchor_wrap {
    display: block !important;
  }
  /***************************cmn_btn****************************/
  .cmn_btn {
    width: 30vw;
  }
  .cmn_btn.large {
    width: 40vw;
  }
  /***************************service****************************/
  main .service02 .service02_inner {
    flex-direction: column;
  }
  main .service02 .txtbox {
    margin-bottom: min(2.0833333333vw, 40px);
  }
  main .service02 .lists {
    width: 100%;
    max-width: 960px;
  }
}
@media screen and (max-width: 767px) {
  /*----------------------------------------------------------------

  フォントサイズ

  ----------------------------------------------------------------*/
  .f_10 {
    font-size: 2.8vw;
  }
  .f_12 {
    font-size: 2.8vw;
  }
  .f_12-sp {
    font-size: clamp(10px, 3.0769230769vw, 12px) !important;
  }
  .f_12_sp {
    font-size: clamp(10px, 3.0769230769vw, 12px) !important;
  }
  .f_14 {
    font-size: clamp(12px, 2.8vw, 14px);
  }
  .f_14-sp {
    font-size: clamp(12px, 3.5897435897vw, 14px) !important;
  }
  .f_16 {
    font-size: clamp(14px, 3.2vw, 16px);
  }
  .f_16-sp {
    font-size: clamp(12px, 4.1025641026vw, 16px) !important;
  }
  .f_16_sp {
    font-size: clamp(12px, 4.1025641026vw, 16px) !important;
  }
  .f_18 {
    font-size: clamp(14px, 3.6vw, 18px);
  }
  .f_18-sp {
    font-size: clamp(14px, 4.6153846154vw, 18px) !important;
  }
  .f_18_sp {
    font-size: clamp(14px, 4.6153846154vw, 18px) !important;
  }
  .f_19 {
    font-size: clamp(14px, 3.7vw, 19px);
  }
  .f_20 {
    font-size: clamp(14px, 3.8vw, 20px);
  }
  .f_20-sp {
    font-size: clamp(14px, 5.1282051282vw, 20px) !important;
  }
  .f_21-sp {
    font-size: clamp(14px, 5.3846153846vw, 21px) !important;
  }
  .f_22 {
    font-size: clamp(14px, 4vw, 22px);
  }
  .f_22-sp {
    font-size: clamp(14px, 5.641025641vw, 22px) !important;
  }
  .f_24 {
    font-size: clamp(14px, 4.2vw, 24px);
  }
  .f_24-sp {
    font-size: clamp(15px, 6.1538461538vw, 24px) !important;
  }
  .f_25-sp {
    font-size: clamp(15px, 6.4102564103vw, 25px) !important;
  }
  .f_26 {
    font-size: clamp(15px, 4.4vw, 26px);
  }
  .f_26-sp {
    font-size: clamp(15px, 6.6666666667vw, 26px) !important;
  }
  .f_28 {
    font-size: clamp(15px, 4.6vw, 28px);
  }
  .f_28-sp {
    font-size: clamp(15px, 7.1794871795vw, 28px) !important;
  }
  .f_29-sp {
    font-size: clamp(15px, 7.4358974359vw, 29px) !important;
  }
  .f_30 {
    font-size: clamp(15px, 4.6vw, 30px);
  }
  .f_32 {
    font-size: clamp(15px, 4.8vw, 32px);
  }
  .f_32-sp {
    font-size: clamp(15px, 8.2051282051vw, 32px) !important;
  }
  .f_34 {
    font-size: clamp(15px, 4.8vw, 34px);
  }
  .f_34-sp {
    font-size: clamp(15px, 8.7179487179vw, 34px) !important;
  }
  .f_36 {
    font-size: clamp(15px, 4.8vw, 36px);
  }
  .f_36-sp {
    font-size: clamp(15px, 9.2307692308vw, 36px) !important;
  }
  .f_38 {
    font-size: clamp(15px, 5vw, 38px);
  }
  .f_40 {
    font-size: clamp(15px, 5vw, 40px);
  }
  .f_40-sp {
    font-size: clamp(15px, 10.2564102564vw, 40px) !important;
  }
  .f_42 {
    font-size: clamp(15px, 5vw, 42px);
  }
  .f_44 {
    font-size: clamp(15px, 5.2vw, 44px);
  }
  .f_46 {
    font-size: clamp(15px, 5.2vw, 46px);
  }
  .f_48 {
    font-size: clamp(15px, 5.4vw, 48px);
  }
  .f_50 {
    font-size: clamp(15px, 5.4vw, 50px);
  }
  .f_50-sp {
    font-size: clamp(15px, 12.8205128205vw, 50px) !important;
  }
  .f_52 {
    font-size: clamp(15px, 5.6vw, 52px);
  }
  .f_54 {
    font-size: clamp(15px, 5.6vw, 54px);
  }
  .f_56 {
    font-size: clamp(15px, 5.8vw, 56px);
  }
  .f_58 {
    font-size: clamp(15px, 5.8vw, 58px);
  }
  .f_60 {
    font-size: clamp(15px, 6vw, 60px);
  }
  .f_62 {
    font-size: clamp(15px, 6vw, 62px);
  }
  .f_64 {
    font-size: clamp(15px, 6.2vw, 64px);
  }
  .f_65 {
    font-size: clamp(15px, 6.2vw, 65px);
  }
  .f_66 {
    font-size: clamp(15px, 6.2vw, 66px);
  }
  .f_68 {
    font-size: clamp(15px, 6.4vw, 68px);
  }
  .f_70 {
    font-size: clamp(15px, 6.4vw, 70px);
  }
  .f_72 {
    font-size: clamp(15px, 6.6vw, 72px);
  }
  .f_74 {
    font-size: clamp(15px, 6.6vw, 74px);
  }
  .f_76 {
    font-size: clamp(15px, 6.8vw, 76px);
  }
  .f_78 {
    font-size: clamp(15px, 6.8vw, 78px);
  }
  .f_80 {
    font-size: clamp(15px, 7vw, 80px);
  }
  .f_82 {
    font-size: clamp(15px, 7vw, 82px);
  }
  .f_84 {
    font-size: clamp(15px, 7.2vw, 84px);
  }
  .f_86 {
    font-size: clamp(15px, 7.2vw, 86px);
  }
  .f_88 {
    font-size: clamp(15px, 7.4vw, 88px);
  }
  .f_90 {
    font-size: clamp(15px, 7.4vw, 90px);
  }
  .f_92 {
    font-size: clamp(15px, 7.6vw, 92px);
  }
  .f_94 {
    font-size: clamp(15px, 7.6vw, 94px);
  }
  .f_96 {
    font-size: clamp(15px, 7.8vw, 96px);
  }
  .f_98 {
    font-size: clamp(15px, 7.8vw, 98px);
  }
  .f_100 {
    font-size: clamp(15px, 8vw, 100px);
  }
  .f_102 {
    font-size: clamp(15px, 8vw, 102px);
  }
  .f_104 {
    font-size: clamp(15px, 8.2vw, 104px);
  }
  .f_106 {
    font-size: clamp(15px, 8.2vw, 106px);
  }
  .f_108 {
    font-size: clamp(15px, 8.4vw, 108px);
  }
  .f_110 {
    font-size: clamp(15px, 8.4vw, 110px);
  }
  .f_112 {
    font-size: clamp(15px, 8.6vw, 112px);
  }
  .f_114 {
    font-size: clamp(15px, 8.6vw, 114px);
  }
  .f_116 {
    font-size: clamp(15px, 8.8vw, 116px);
  }
  .f_118 {
    font-size: clamp(15px, 8.8vw, 118px);
  }
  .f_120 {
    font-size: clamp(15px, 9vw, 120px);
  }
  .f_122 {
    font-size: clamp(15px, 9vw, 122px);
  }
  .f_124 {
    font-size: clamp(15px, 9.2vw, 124px);
  }
  .f_126 {
    font-size: clamp(15px, 9.2vw, 126px);
  }
  .f_128 {
    font-size: clamp(15px, 9.4vw, 128px);
  }
  .f_130 {
    font-size: clamp(15px, 9.4vw, 130px);
  }
  .f_132 {
    font-size: clamp(15px, 9.6vw, 132px);
  }
  .f_134 {
    font-size: clamp(15px, 9.6vw, 134px);
  }
  .f_136 {
    font-size: clamp(15px, 9.8vw, 136px);
  }
  .f_138 {
    font-size: clamp(15px, 9.8vw, 138px);
  }
  .f_140 {
    font-size: clamp(15px, 10vw, 140px);
  }
  .f_142 {
    font-size: clamp(15px, 10vw, 142px);
  }
  .f_144 {
    font-size: clamp(15px, 10.2vw, 144px);
  }
  .f_146 {
    font-size: clamp(15px, 10.2vw, 146px);
  }
  .f_148 {
    font-size: clamp(15px, 10.4vw, 148px);
  }
  .f_150 {
    font-size: clamp(15px, 10.4vw, 150px);
  }
  .f_152 {
    font-size: clamp(15px, 10.6vw, 152px);
  }
  .f_154 {
    font-size: clamp(15px, 10.6vw, 154px);
  }
  .f_156 {
    font-size: clamp(15px, 10.8vw, 156px);
  }
  .f_158 {
    font-size: clamp(15px, 10.8vw, 158px);
  }
  .f_160 {
    font-size: clamp(15px, 11vw, 160px);
  }
  .f_162 {
    font-size: clamp(15px, 11vw, 162px);
  }
  .f_164 {
    font-size: clamp(15px, 11vw, 164px);
  }
  .mt10 {
    margin-top: 1vw;
  }
  .mb10 {
    margin-bottom: 1vw;
  }
  .ml10 {
    margin-left: 1vw;
  }
  .mr10 {
    margin-right: 1vw;
  }
  .my10 {
    margin-top: 1vw;
    margin-bottom: 1vw;
  }
  .mx10 {
    margin-left: 1vw;
    margin-right: 1vw;
  }
  .mt20 {
    margin-top: 2vw;
  }
  .mb20 {
    margin-bottom: 2vw;
  }
  .ml20 {
    margin-left: 2vw;
  }
  .mr20 {
    margin-right: 2vw;
  }
  .my20 {
    margin-top: 2vw;
    margin-bottom: 2vw;
  }
  .mx20 {
    margin-left: 2vw;
    margin-right: 2vw;
  }
  .mt30 {
    margin-top: 3vw;
  }
  .mb30 {
    margin-bottom: 3vw;
  }
  .ml30 {
    margin-left: 3vw;
  }
  .mr30 {
    margin-right: 3vw;
  }
  .my30 {
    margin-top: 3vw;
    margin-bottom: 3vw;
  }
  .mx30 {
    margin-left: 3vw;
    margin-right: 3vw;
  }
  .mt40 {
    margin-top: 4vw;
  }
  .mb40 {
    margin-bottom: 4vw;
  }
  .ml40 {
    margin-left: 4vw;
  }
  .mr40 {
    margin-right: 4vw;
  }
  .my40 {
    margin-top: 4vw;
    margin-bottom: 4vw;
  }
  .mx40 {
    margin-left: 4vw;
    margin-right: 4vw;
  }
  .mt50 {
    margin-top: 5vw;
  }
  .mb50 {
    margin-bottom: 5vw;
  }
  .ml50 {
    margin-left: 5vw;
  }
  .mr50 {
    margin-right: 5vw;
  }
  .my50 {
    margin-top: 5vw;
    margin-bottom: 5vw;
  }
  .mx50 {
    margin-left: 5vw;
    margin-right: 5vw;
  }
  .mt60 {
    margin-top: 6vw;
  }
  .mb60 {
    margin-bottom: 6vw;
  }
  .ml60 {
    margin-left: 6vw;
  }
  .mr60 {
    margin-right: 6vw;
  }
  .my60 {
    margin-top: 6vw;
    margin-bottom: 6vw;
  }
  .mx60 {
    margin-left: 6vw;
    margin-right: 6vw;
  }
  .mt70 {
    margin-top: 7vw;
  }
  .mb70 {
    margin-bottom: 7vw;
  }
  .ml70 {
    margin-left: 7vw;
  }
  .mr70 {
    margin-right: 7vw;
  }
  .my70 {
    margin-top: 7vw;
    margin-bottom: 7vw;
  }
  .mx70 {
    margin-left: 7vw;
    margin-right: 7vw;
  }
  .mt80 {
    margin-top: 8vw;
  }
  .mb80 {
    margin-bottom: 8vw;
  }
  .ml80 {
    margin-left: 8vw;
  }
  .mr80 {
    margin-right: 8vw;
  }
  .my80 {
    margin-top: 8vw;
    margin-bottom: 8vw;
  }
  .mx80 {
    margin-left: 8vw;
    margin-right: 8vw;
  }
  .mt90 {
    margin-top: 9vw;
  }
  .mb90 {
    margin-bottom: 9vw;
  }
  .ml90 {
    margin-left: 9vw;
  }
  .mr90 {
    margin-right: 9vw;
  }
  .my90 {
    margin-top: 9vw;
    margin-bottom: 9vw;
  }
  .mx90 {
    margin-left: 9vw;
    margin-right: 9vw;
  }
  .mt100 {
    margin-top: 10vw;
  }
  .mb100 {
    margin-bottom: 10vw;
  }
  .ml100 {
    margin-left: 10vw;
  }
  .mr100 {
    margin-right: 10vw;
  }
  .my100 {
    margin-top: 10vw;
    margin-bottom: 10vw;
  }
  .mx100 {
    margin-left: 10vw;
    margin-right: 10vw;
  }
  .mt110 {
    margin-top: 11vw;
  }
  .mb110 {
    margin-bottom: 11vw;
  }
  .ml110 {
    margin-left: 11vw;
  }
  .mr110 {
    margin-right: 11vw;
  }
  .my110 {
    margin-top: 11vw;
    margin-bottom: 11vw;
  }
  .mx110 {
    margin-left: 11vw;
    margin-right: 11vw;
  }
  .mt120 {
    margin-top: 12vw;
  }
  .mb120 {
    margin-bottom: 12vw;
  }
  .ml120 {
    margin-left: 12vw;
  }
  .mr120 {
    margin-right: 12vw;
  }
  .my120 {
    margin-top: 12vw;
    margin-bottom: 12vw;
  }
  .mx120 {
    margin-left: 12vw;
    margin-right: 12vw;
  }
  .mt130 {
    margin-top: 13vw;
  }
  .mb130 {
    margin-bottom: 13vw;
  }
  .ml130 {
    margin-left: 13vw;
  }
  .mr130 {
    margin-right: 13vw;
  }
  .my130 {
    margin-top: 13vw;
    margin-bottom: 13vw;
  }
  .mx130 {
    margin-left: 13vw;
    margin-right: 13vw;
  }
  .mt140 {
    margin-top: 14vw;
  }
  .mb140 {
    margin-bottom: 14vw;
  }
  .ml140 {
    margin-left: 14vw;
  }
  .mr140 {
    margin-right: 14vw;
  }
  .my140 {
    margin-top: 14vw;
    margin-bottom: 14vw;
  }
  .mx140 {
    margin-left: 14vw;
    margin-right: 14vw;
  }
  .mt150 {
    margin-top: 15vw;
  }
  .mb150 {
    margin-bottom: 15vw;
  }
  .ml150 {
    margin-left: 15vw;
  }
  .mr150 {
    margin-right: 15vw;
  }
  .my150 {
    margin-top: 15vw;
    margin-bottom: 15vw;
  }
  .mx150 {
    margin-left: 15vw;
    margin-right: 15vw;
  }
  .mt160 {
    margin-top: 16vw;
  }
  .mb160 {
    margin-bottom: 16vw;
  }
  .ml160 {
    margin-left: 16vw;
  }
  .mr160 {
    margin-right: 16vw;
  }
  .my160 {
    margin-top: 16vw;
    margin-bottom: 16vw;
  }
  .mx160 {
    margin-left: 16vw;
    margin-right: 16vw;
  }
  .mt170 {
    margin-top: 17vw;
  }
  .mb170 {
    margin-bottom: 17vw;
  }
  .ml170 {
    margin-left: 17vw;
  }
  .mr170 {
    margin-right: 17vw;
  }
  .my170 {
    margin-top: 17vw;
    margin-bottom: 17vw;
  }
  .mx170 {
    margin-left: 17vw;
    margin-right: 17vw;
  }
  .mt180 {
    margin-top: 18vw;
  }
  .mb180 {
    margin-bottom: 18vw;
  }
  .ml180 {
    margin-left: 18vw;
  }
  .mr180 {
    margin-right: 18vw;
  }
  .my180 {
    margin-top: 18vw;
    margin-bottom: 18vw;
  }
  .mx180 {
    margin-left: 18vw;
    margin-right: 18vw;
  }
  .mt190 {
    margin-top: 19vw;
  }
  .mb190 {
    margin-bottom: 19vw;
  }
  .ml190 {
    margin-left: 19vw;
  }
  .mr190 {
    margin-right: 19vw;
  }
  .my190 {
    margin-top: 19vw;
    margin-bottom: 19vw;
  }
  .mx190 {
    margin-left: 19vw;
    margin-right: 19vw;
  }
  .mt200 {
    margin-top: 20vw;
  }
  .mb200 {
    margin-bottom: 20vw;
  }
  .ml200 {
    margin-left: 20vw;
  }
  .mr200 {
    margin-right: 20vw;
  }
  .my200 {
    margin-top: 20vw;
    margin-bottom: 20vw;
  }
  .mx200 {
    margin-left: 20vw;
    margin-right: 20vw;
  }
  .mt210 {
    margin-top: 21vw;
  }
  .mb210 {
    margin-bottom: 21vw;
  }
  .ml210 {
    margin-left: 21vw;
  }
  .mr210 {
    margin-right: 21vw;
  }
  .my210 {
    margin-top: 21vw;
    margin-bottom: 21vw;
  }
  .mx210 {
    margin-left: 21vw;
    margin-right: 21vw;
  }
  .mt220 {
    margin-top: 22vw;
  }
  .mb220 {
    margin-bottom: 22vw;
  }
  .ml220 {
    margin-left: 22vw;
  }
  .mr220 {
    margin-right: 22vw;
  }
  .my220 {
    margin-top: 22vw;
    margin-bottom: 22vw;
  }
  .mx220 {
    margin-left: 22vw;
    margin-right: 22vw;
  }
  .mt230 {
    margin-top: 23vw;
  }
  .mb230 {
    margin-bottom: 23vw;
  }
  .ml230 {
    margin-left: 23vw;
  }
  .mr230 {
    margin-right: 23vw;
  }
  .my230 {
    margin-top: 23vw;
    margin-bottom: 23vw;
  }
  .mx230 {
    margin-left: 23vw;
    margin-right: 23vw;
  }
  .mt240 {
    margin-top: 24vw;
  }
  .mb240 {
    margin-bottom: 24vw;
  }
  .ml240 {
    margin-left: 24vw;
  }
  .mr240 {
    margin-right: 24vw;
  }
  .my240 {
    margin-top: 24vw;
    margin-bottom: 24vw;
  }
  .mx240 {
    margin-left: 24vw;
    margin-right: 24vw;
  }
  .mt250 {
    margin-top: 25vw;
  }
  .mb250 {
    margin-bottom: 25vw;
  }
  .ml250 {
    margin-left: 25vw;
  }
  .mr250 {
    margin-right: 25vw;
  }
  .my250 {
    margin-top: 25vw;
    margin-bottom: 25vw;
  }
  .mx250 {
    margin-left: 25vw;
    margin-right: 25vw;
  }
  .mt260 {
    margin-top: 26vw;
  }
  .mb260 {
    margin-bottom: 26vw;
  }
  .ml260 {
    margin-left: 26vw;
  }
  .mr260 {
    margin-right: 26vw;
  }
  .my260 {
    margin-top: 26vw;
    margin-bottom: 26vw;
  }
  .mx260 {
    margin-left: 26vw;
    margin-right: 26vw;
  }
  .mt270 {
    margin-top: 27vw;
  }
  .mb270 {
    margin-bottom: 27vw;
  }
  .ml270 {
    margin-left: 27vw;
  }
  .mr270 {
    margin-right: 27vw;
  }
  .my270 {
    margin-top: 27vw;
    margin-bottom: 27vw;
  }
  .mx270 {
    margin-left: 27vw;
    margin-right: 27vw;
  }
  .mt280 {
    margin-top: 28vw;
  }
  .mb280 {
    margin-bottom: 28vw;
  }
  .ml280 {
    margin-left: 28vw;
  }
  .mr280 {
    margin-right: 28vw;
  }
  .my280 {
    margin-top: 28vw;
    margin-bottom: 28vw;
  }
  .mx280 {
    margin-left: 28vw;
    margin-right: 28vw;
  }
  .mt290 {
    margin-top: 29vw;
  }
  .mb290 {
    margin-bottom: 29vw;
  }
  .ml290 {
    margin-left: 29vw;
  }
  .mr290 {
    margin-right: 29vw;
  }
  .my290 {
    margin-top: 29vw;
    margin-bottom: 29vw;
  }
  .mx290 {
    margin-left: 29vw;
    margin-right: 29vw;
  }
  .mt300 {
    margin-top: 30vw;
  }
  .mb300 {
    margin-bottom: 30vw;
  }
  .ml300 {
    margin-left: 30vw;
  }
  .mr300 {
    margin-right: 30vw;
  }
  .my300 {
    margin-top: 30vw;
    margin-bottom: 30vw;
  }
  .mx300 {
    margin-left: 30vw;
    margin-right: 30vw;
  }
  .pt10 {
    padding-top: 1vw;
  }
  .pb10 {
    padding-bottom: 1vw;
  }
  .pl10 {
    padding-left: 1vw;
  }
  .pr10 {
    padding-right: 1vw;
  }
  .py10 {
    padding-top: 1vw;
    padding-bottom: 1vw;
  }
  .px10 {
    padding-left: 1vw;
    padding-right: 1vw;
  }
  .pt20 {
    padding-top: 2vw;
  }
  .pb20 {
    padding-bottom: 2vw;
  }
  .pl20 {
    padding-left: 2vw;
  }
  .pr20 {
    padding-right: 2vw;
  }
  .py20 {
    padding-top: 2vw;
    padding-bottom: 2vw;
  }
  .px20 {
    padding-left: 2vw;
    padding-right: 2vw;
  }
  .pt30 {
    padding-top: 3vw;
  }
  .pb30 {
    padding-bottom: 3vw;
  }
  .pl30 {
    padding-left: 3vw;
  }
  .pr30 {
    padding-right: 3vw;
  }
  .py30 {
    padding-top: 3vw;
    padding-bottom: 3vw;
  }
  .px30 {
    padding-left: 3vw;
    padding-right: 3vw;
  }
  .pt40 {
    padding-top: 4vw;
  }
  .pb40 {
    padding-bottom: 4vw;
  }
  .pl40 {
    padding-left: 4vw;
  }
  .pr40 {
    padding-right: 4vw;
  }
  .py40 {
    padding-top: 4vw;
    padding-bottom: 4vw;
  }
  .px40 {
    padding-left: 4vw;
    padding-right: 4vw;
  }
  .pt50 {
    padding-top: 5vw;
  }
  .pb50 {
    padding-bottom: 5vw;
  }
  .pl50 {
    padding-left: 5vw;
  }
  .pr50 {
    padding-right: 5vw;
  }
  .py50 {
    padding-top: 5vw;
    padding-bottom: 5vw;
  }
  .px50 {
    padding-left: 5vw;
    padding-right: 5vw;
  }
  .pt60 {
    padding-top: 6vw;
  }
  .pb60 {
    padding-bottom: 6vw;
  }
  .pl60 {
    padding-left: 6vw;
  }
  .pr60 {
    padding-right: 6vw;
  }
  .py60 {
    padding-top: 6vw;
    padding-bottom: 6vw;
  }
  .px60 {
    padding-left: 6vw;
    padding-right: 6vw;
  }
  .pt70 {
    padding-top: 7vw;
  }
  .pb70 {
    padding-bottom: 7vw;
  }
  .pl70 {
    padding-left: 7vw;
  }
  .pr70 {
    padding-right: 7vw;
  }
  .py70 {
    padding-top: 7vw;
    padding-bottom: 7vw;
  }
  .px70 {
    padding-left: 7vw;
    padding-right: 7vw;
  }
  .pt80 {
    padding-top: 8vw;
  }
  .pb80 {
    padding-bottom: 8vw;
  }
  .pl80 {
    padding-left: 8vw;
  }
  .pr80 {
    padding-right: 8vw;
  }
  .py80 {
    padding-top: 8vw;
    padding-bottom: 8vw;
  }
  .px80 {
    padding-left: 8vw;
    padding-right: 8vw;
  }
  .pt90 {
    padding-top: 9vw;
  }
  .pb90 {
    padding-bottom: 9vw;
  }
  .pl90 {
    padding-left: 9vw;
  }
  .pr90 {
    padding-right: 9vw;
  }
  .py90 {
    padding-top: 9vw;
    padding-bottom: 9vw;
  }
  .px90 {
    padding-left: 9vw;
    padding-right: 9vw;
  }
  .pt100 {
    padding-top: 10vw;
  }
  .pb100 {
    padding-bottom: 10vw;
  }
  .pl100 {
    padding-left: 10vw;
  }
  .pr100 {
    padding-right: 10vw;
  }
  .py100 {
    padding-top: 10vw;
    padding-bottom: 10vw;
  }
  .px100 {
    padding-left: 10vw;
    padding-right: 10vw;
  }
  .pt110 {
    padding-top: 11vw;
  }
  .pb110 {
    padding-bottom: 11vw;
  }
  .pl110 {
    padding-left: 11vw;
  }
  .pr110 {
    padding-right: 11vw;
  }
  .py110 {
    padding-top: 11vw;
    padding-bottom: 11vw;
  }
  .px110 {
    padding-left: 11vw;
    padding-right: 11vw;
  }
  .pt120 {
    padding-top: 12vw;
  }
  .pb120 {
    padding-bottom: 12vw;
  }
  .pl120 {
    padding-left: 12vw;
  }
  .pr120 {
    padding-right: 12vw;
  }
  .py120 {
    padding-top: 12vw;
    padding-bottom: 12vw;
  }
  .px120 {
    padding-left: 12vw;
    padding-right: 12vw;
  }
  .pt130 {
    padding-top: 13vw;
  }
  .pb130 {
    padding-bottom: 13vw;
  }
  .pl130 {
    padding-left: 13vw;
  }
  .pr130 {
    padding-right: 13vw;
  }
  .py130 {
    padding-top: 13vw;
    padding-bottom: 13vw;
  }
  .px130 {
    padding-left: 13vw;
    padding-right: 13vw;
  }
  .pt140 {
    padding-top: 14vw;
  }
  .pb140 {
    padding-bottom: 14vw;
  }
  .pl140 {
    padding-left: 14vw;
  }
  .pr140 {
    padding-right: 14vw;
  }
  .py140 {
    padding-top: 14vw;
    padding-bottom: 14vw;
  }
  .px140 {
    padding-left: 14vw;
    padding-right: 14vw;
  }
  .pt150 {
    padding-top: 15vw;
  }
  .pb150 {
    padding-bottom: 15vw;
  }
  .pl150 {
    padding-left: 15vw;
  }
  .pr150 {
    padding-right: 15vw;
  }
  .py150 {
    padding-top: 15vw;
    padding-bottom: 15vw;
  }
  .px150 {
    padding-left: 15vw;
    padding-right: 15vw;
  }
  .pt160 {
    padding-top: 16vw;
  }
  .pb160 {
    padding-bottom: 16vw;
  }
  .pl160 {
    padding-left: 16vw;
  }
  .pr160 {
    padding-right: 16vw;
  }
  .py160 {
    padding-top: 16vw;
    padding-bottom: 16vw;
  }
  .px160 {
    padding-left: 16vw;
    padding-right: 16vw;
  }
  .pt170 {
    padding-top: 17vw;
  }
  .pb170 {
    padding-bottom: 17vw;
  }
  .pl170 {
    padding-left: 17vw;
  }
  .pr170 {
    padding-right: 17vw;
  }
  .py170 {
    padding-top: 17vw;
    padding-bottom: 17vw;
  }
  .px170 {
    padding-left: 17vw;
    padding-right: 17vw;
  }
  .pt180 {
    padding-top: 18vw;
  }
  .pb180 {
    padding-bottom: 18vw;
  }
  .pl180 {
    padding-left: 18vw;
  }
  .pr180 {
    padding-right: 18vw;
  }
  .py180 {
    padding-top: 18vw;
    padding-bottom: 18vw;
  }
  .px180 {
    padding-left: 18vw;
    padding-right: 18vw;
  }
  .pt190 {
    padding-top: 19vw;
  }
  .pb190 {
    padding-bottom: 19vw;
  }
  .pl190 {
    padding-left: 19vw;
  }
  .pr190 {
    padding-right: 19vw;
  }
  .py190 {
    padding-top: 19vw;
    padding-bottom: 19vw;
  }
  .px190 {
    padding-left: 19vw;
    padding-right: 19vw;
  }
  .pt200 {
    padding-top: 20vw;
  }
  .pb200 {
    padding-bottom: 20vw;
  }
  .pl200 {
    padding-left: 20vw;
  }
  .pr200 {
    padding-right: 20vw;
  }
  .py200 {
    padding-top: 20vw;
    padding-bottom: 20vw;
  }
  .px200 {
    padding-left: 20vw;
    padding-right: 20vw;
  }
  .pt210 {
    padding-top: 21vw;
  }
  .pb210 {
    padding-bottom: 21vw;
  }
  .pl210 {
    padding-left: 21vw;
  }
  .pr210 {
    padding-right: 21vw;
  }
  .py210 {
    padding-top: 21vw;
    padding-bottom: 21vw;
  }
  .px210 {
    padding-left: 21vw;
    padding-right: 21vw;
  }
  .pt220 {
    padding-top: 22vw;
  }
  .pb220 {
    padding-bottom: 22vw;
  }
  .pl220 {
    padding-left: 22vw;
  }
  .pr220 {
    padding-right: 22vw;
  }
  .py220 {
    padding-top: 22vw;
    padding-bottom: 22vw;
  }
  .px220 {
    padding-left: 22vw;
    padding-right: 22vw;
  }
  .pt230 {
    padding-top: 23vw;
  }
  .pb230 {
    padding-bottom: 23vw;
  }
  .pl230 {
    padding-left: 23vw;
  }
  .pr230 {
    padding-right: 23vw;
  }
  .py230 {
    padding-top: 23vw;
    padding-bottom: 23vw;
  }
  .px230 {
    padding-left: 23vw;
    padding-right: 23vw;
  }
  .pt240 {
    padding-top: 24vw;
  }
  .pb240 {
    padding-bottom: 24vw;
  }
  .pl240 {
    padding-left: 24vw;
  }
  .pr240 {
    padding-right: 24vw;
  }
  .py240 {
    padding-top: 24vw;
    padding-bottom: 24vw;
  }
  .px240 {
    padding-left: 24vw;
    padding-right: 24vw;
  }
  .pt250 {
    padding-top: 25vw;
  }
  .pb250 {
    padding-bottom: 25vw;
  }
  .pl250 {
    padding-left: 25vw;
  }
  .pr250 {
    padding-right: 25vw;
  }
  .py250 {
    padding-top: 25vw;
    padding-bottom: 25vw;
  }
  .px250 {
    padding-left: 25vw;
    padding-right: 25vw;
  }
  .pt260 {
    padding-top: 26vw;
  }
  .pb260 {
    padding-bottom: 26vw;
  }
  .pl260 {
    padding-left: 26vw;
  }
  .pr260 {
    padding-right: 26vw;
  }
  .py260 {
    padding-top: 26vw;
    padding-bottom: 26vw;
  }
  .px260 {
    padding-left: 26vw;
    padding-right: 26vw;
  }
  .pt270 {
    padding-top: 27vw;
  }
  .pb270 {
    padding-bottom: 27vw;
  }
  .pl270 {
    padding-left: 27vw;
  }
  .pr270 {
    padding-right: 27vw;
  }
  .py270 {
    padding-top: 27vw;
    padding-bottom: 27vw;
  }
  .px270 {
    padding-left: 27vw;
    padding-right: 27vw;
  }
  .pt280 {
    padding-top: 28vw;
  }
  .pb280 {
    padding-bottom: 28vw;
  }
  .pl280 {
    padding-left: 28vw;
  }
  .pr280 {
    padding-right: 28vw;
  }
  .py280 {
    padding-top: 28vw;
    padding-bottom: 28vw;
  }
  .px280 {
    padding-left: 28vw;
    padding-right: 28vw;
  }
  .pt290 {
    padding-top: 29vw;
  }
  .pb290 {
    padding-bottom: 29vw;
  }
  .pl290 {
    padding-left: 29vw;
  }
  .pr290 {
    padding-right: 29vw;
  }
  .py290 {
    padding-top: 29vw;
    padding-bottom: 29vw;
  }
  .px290 {
    padding-left: 29vw;
    padding-right: 29vw;
  }
  .pt300 {
    padding-top: 30vw;
  }
  .pb300 {
    padding-bottom: 30vw;
  }
  .pl300 {
    padding-left: 30vw;
  }
  .pr300 {
    padding-right: 30vw;
  }
  .py300 {
    padding-top: 30vw;
    padding-bottom: 30vw;
  }
  .px300 {
    padding-left: 30vw;
    padding-right: 30vw;
  }
  .sp {
    display: block !important;
  }
  .tab {
    display: block !important;
  }
  .pc {
    display: none !important;
  }
  .sp-flex {
    display: flex !important;
  }
  .pc-flex {
    display: none !important;
  }
  ::-moz-placeholder {
    font-size: 3.6vw;
    letter-spacing: 0.12em;
    color: #cccccc;
  }
  ::placeholder {
    font-size: 3.6vw;
    letter-spacing: 0.12em;
    color: #cccccc;
  }
  .wrap_btn {
    right: 5px;
    bottom: 25px;
    width: 12vw;
    height: 12vw;
  }
  .wrap_btn_img {
    width: auto;
    height: auto;
  }
  .wrap_btn_img span {
    text-align: center;
  }
  .wrap_btn_img:hover {
    opacity: 1;
  }
  .wrap_btn p {
    font-size: 12px;
  }
  /***************************cmn_btn****************************/
  .cmn_btn {
    width: 85%;
    padding: 2vw 3vw;
  }
  .cmn_btn.large {
    width: 85%;
  }
}
/* sponly */
@media (min-width: 768px) {
  header nav.sp-only {
    display: none;
  }
  main .top02 .about-btn.sp-only,
  main .top02 .bg .sp-only,
  main .top04 .bg .sp-only {
    display: none;
  }
  main .company02 .top .bg .sp-only {
    display: none;
  }
  br.sp {
    display: none;
  }
  .news01 .side.sp-only {
    display: none;
  }
  .newsdetail01 .side.sp-only {
    display: none;
  }
}
/* sp */
@media (max-width: 767px) {
  body:has(#menu_trigger.active) {
    overflow: hidden;
  }
  br.pc {
    display: none;
  }
  span.pc-only {
    display: none;
  }
  /*----------------------------------------------------------------

  header

  ----------------------------------------------------------------*/
  header .header_row:has(nav.pc-only) {
    display: none !important;
  }
  header nav.sp-only {
    display: block;
  }
  header,
  header .header_inner .header_row {
    height: 60px;
  }
  header .header_inner nav.sp-only:has(#menu_trigger.active) {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    z-index: 3;
    background-color: #fff;
  }
  header .header_inner nav.sp-only:has(#menu_trigger:not(.active)) .header_row {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 3;
    background-color: #fff;
  }
  header .header_inner nav.sp-only .header_row {
    padding: 0 0 0 3.8461538462%;
  }
  header .header_inner nav.sp-only .header_row .logo a img {
    width: 44.8717948718vw;
  }
  header .header_inner nav.sp-only .bugerbtn {
    width: 60px;
    aspect-ratio: 1/1;
    text-align: center;
  }
  header .header_inner nav.sp-only .bugerbtn #menu_trigger {
    width: 50%;
    aspect-ratio: 1/1;
    row-gap: 4.5px;
  }
  header .header_inner nav.sp-only .bugerbtn #menu_trigger span {
    width: 66.6666666667%;
    height: 2px;
    background-color: #032437;
    transition: all 0.5s ease-out;
  }
  header .header_inner nav.sp-only .bugerbtn #menu_trigger.active span {
    position: absolute;
  }
  header .header_inner nav.sp-only .bugerbtn #menu_trigger.active span:nth-child(1) {
    transform: rotate(45deg);
  }
  header .header_inner nav.sp-only .bugerbtn #menu_trigger.active span:nth-child(2) {
    display: none;
  }
  header .header_inner nav.sp-only .bugerbtn #menu_trigger.active span:nth-child(3) {
    transform: rotate(-45deg);
  }
  header .header_inner nav.sp-only .bugerbtn .tx {
    font-size: 12px;
  }
  header .header_inner nav.sp-only .buger {
    display: none;
  }
  header .header_inner nav.sp-only .buger .navi {
    padding: 10.2564102564vw 8.2051282051%;
  }
  header .header_inner nav.sp-only .buger .navi ul li {
    border-bottom: 1px solid #032437;
    padding-bottom: min(1.2820512821vw, 5px);
  }
  header .header_inner nav.sp-only .buger .navi ul li a.f_14 {
    letter-spacing: 0.1428571429em;
  }
  header .header_inner nav.sp-only .buger .navi ul li a::after {
    content: "";
    width: 20px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background: url(../img/common/arow-white.webp) no-repeat center/60% auto #0E7ABC;
    margin-left: auto;
  }
  header .header_inner nav.sp-only .buger .navi ul li:not(:first-child) {
    padding: min(3.0769230769vw, 12px) min(5.8974358974vw, 23px) min(3.0769230769vw, 12px) min(2.0512820513vw, 8px);
  }
  header .header_inner nav.sp-only .buger.open {
    display: block;
  }
  header .header_inner nav.sp-only .bottom {
    padding: 9.7435897436vw 8.7179487179%;
  }
  header .header_inner nav.sp-only .bottom .btns {
    margin-bottom: min(8.4615384615vw, 33px);
  }
  header .header_inner nav.sp-only .bottom .btns .b-btn a {
    width: min(100%, 322px);
    aspect-ratio: 322/70;
    max-height: 70px;
    padding: 0 5.900621118%;
    -moz-column-gap: 4.5774647887%;
         column-gap: 4.5774647887%;
    margin: 0 auto;
  }
  header .header_inner nav.sp-only .bottom .btns .b-btn a::after {
    content: "";
    width: 7.0422535211%;
    aspect-ratio: 1/1;
    border-radius: 50%;
    margin-left: auto;
  }
  header .header_inner nav.sp-only .bottom .btns .b-btn.contactbtn a::after {
    background: url(../img/common/arow-white.webp) no-repeat center/60% auto #0E7ABC;
  }
  header .header_inner nav.sp-only .bottom .btns .b-btn.linebtn a span.bg_white {
    padding: min(1.7948717949vw, 7px) 3.1690140845%;
  }
  header .header_inner nav.sp-only .bottom .btns .b-btn.linebtn a::after {
    background: url(../img/common/arow-green.webp) no-repeat center/60% auto #fff;
  }
  header .header_inner nav.sp-only .bottom .btns .b-btn:not(:last-child) {
    margin-bottom: min(2.8205128205vw, 11px);
  }
  header .header_inner nav.sp-only .bottom .copyright {
    text-align: center;
  }
  /*----------------------------------------------------------------

  main

  ----------------------------------------------------------------*/
  main .top02 .bg .pc-only,
  main .top04 .bg .pc-only {
    display: none;
  }
  main {
    margin-top: 60px;
  }
  main .mv .catch {
    padding: 0 5.641025641% calc(var(--pb) + min(10.7692307692vw, 42px) + min(8.2051282051vw, 32px)) 8.4615384615%;
  }
  main .mv .catch .f_32-sp {
    margin-right: -5px;
  }
  main .mv .catch .name {
    max-width: 97.0149253731%;
  }
  main .mv .mv_area {
    background-image: url(../img/top/mv_area_sp.jpg);
    height: 168vw;
  }
  main .mv .bnr:not(.vartical) {
    position: absolute;
    bottom: min(10.7692307692vw, 42px);
    right: unset;
    left: 50%;
    transform: translateX(-50%);
    width: min(100% - 20px, 324px);
    height: 54px;
  }
  main .mv .bnr:not(.vartical).scroll {
    position: fixed;
    bottom: 10px;
  }
  main .mv .bnr:not(.vartical) a {
    padding: 0 min(2.5641025641vw, 10px) 0 min(4.6153846154vw, 18px);
    -moz-column-gap: 3.3783783784%;
         column-gap: 3.3783783784%;
  }
  main .mv .bnr:not(.vartical) a .box {
    display: flex;
    align-items: center;
    -moz-column-gap: min(3.8461538462vw, 15px);
         column-gap: min(3.8461538462vw, 15px);
  }
  main .mv .bnr:not(.vartical) a .box .f_14-sp {
    letter-spacing: 0;
  }
  main .mv .bnr:not(.vartical) a::after {
    width: 10.1351351351%;
  }
  main .top01 {
    /* width: 100%;
    aspect-ratio: 390/330;
    max-height: 330px; */
    padding: min(17.9487179487vw, 70px) 10px;
  }
  main .top01 .top01_inner {
    /* display: none !important; */
    flex-direction: column;
    align-items: center;
    row-gap: min(16.6666666667vw, 65px);
  }
  main .top01 .top01_inner .logo img {
    width: min(77.6923076923vw, 303px);
  }
  main .top01 .top01_inner .logo img.mb20 {
    margin-bottom: min(5.1282051282vw, 20px);
  }
  main .top01 .top01_inner .txbox h2 {
    margin-bottom: min(5.1282051282vw, 20px);
  }
  main .top01 .top01_inner .txbox .text {
    max-width: 329px;
  }
  main .top01 .top01_inner .txbox .catch {
    margin-bottom: min(6.9230769231vw, 27px);
  }
  main .top02 {
    padding: 0;
  }
  main .top02 .top02_inner {
    flex-direction: column;
    align-items: center !important;
    padding: min(21.2820512821vw, 83px) 8.7179487179% min(23.0769230769vw, 90px);
  }
  main .top02 .top02_inner .txbox {
    margin-bottom: min(64.1025641026vw, 250px);
  }
  main .top02 .top02_inner .txbox .head {
    margin-bottom: min(9.7435897436vw, 38px);
  }
  main .top02 .top02_inner .txbox .head h2 {
    margin-top: max(-2.5641025641vw, -10px);
  }
  main .top02 .top02_inner .txbox .catch {
    padding-top: min(2.8205128205vw, 11px);
    padding-right: min(8.2051282051vw, 32px);
    margin-bottom: min(7.9487179487vw, 31px);
  }
  main .top02 .top02_inner .txbox .catch::before, main .top02 .top02_inner .txbox .catch::after {
    width: 6.2111801242%;
  }
  main .top02 .top02_inner .txbox .catch2 {
    margin-bottom: min(3.8461538462vw, 15px);
  }
  main .top02 .top02_inner .txbox .catch2 .f_18-sp {
    letter-spacing: 0;
  }
  main .top02 .top02_inner .txbox .text {
    max-width: 318px;
    margin-bottom: 0;
  }
  main .top02 .top02_inner .names {
    margin: 0 auto min(15.3846153846vw, 60px);
    padding: min(6.1538461538vw, 24px) 10.5590062112%;
  }
  main .top02 .top02_inner .names ul {
    padding-top: min(4.1025641026vw, 16px) !important;
  }
  main .top02 .top02_inner .about-btn {
    width: 100%;
  }
  main .top02 .top02_inner .about-btn:not(.sp-only) {
    display: none;
  }
  main .top02 .top02_inner .about-btn a {
    width: min(100%, 322px);
    aspect-ratio: 322/60;
    max-height: 60px;
    padding: 5.900621118%;
    margin: 0 auto;
  }
  main .top03 {
    padding-top: min(20.5128205128vw, 80px);
    padding-bottom: min(10.4166666667vw, 200px);
  }
  main .top03 .top03_head {
    flex-direction: column;
    row-gap: min(10.7692307692vw, 42px);
    padding: 0 10px 0 0;
    margin-bottom: min(14.6153846154vw, 57px);
  }
  main .top03 .top03_head .image {
    width: min(100%, 310px);
  }
  main .top03 .top03_head .txbox {
    padding: 0 0 0 10px;
    max-width: 332px;
    margin: 0 auto;
  }
  main .top03 .top03_head .txbox .heading {
    flex-direction: column;
    align-items: start !important;
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .top03 .top03_head .txbox .catch {
    padding-right: 0;
    padding-top: min(3.0769230769vw, 12px);
    margin-bottom: min(7.6923076923vw, 30px);
    padding-left: min(1.5625vw, 30px);
  }
  main .top03 .top03_head .txbox .catch::before, main .top03 .top03_head .txbox .catch::after {
    width: min(6.3492063492%, 20px);
  }
  main .top03 .top03_head .txbox .catch2 {
    margin-bottom: min(5.1282051282vw, 20px);
  }
  main .top03 .top03_head .txbox .text {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .top03 .top03_head .txbox .business-btn a {
    width: min(100%, 322px);
    aspect-ratio: 322/60;
    max-height: 60px;
    padding: 5.900621118%;
    margin: 0 auto;
  }
  main .top03 .top03_bottom {
    min-width: 83.5897435897vw;
    align-items: unset !important;
  }
  main .top03 .top03_bottom h3 {
    text-align: center;
    padding-bottom: min(5.1282051282vw, 20px);
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .top03 .top03_bottom h3.f_22-sp {
    letter-spacing: 0.0909090909em;
    line-height: 1.4;
  }
  main .top03 .top03_bottom .contents {
    gap: min(6.1538461538vw, 24px) 7.9754601227%;
  }
  main .top03 .top03_bottom .contents .item {
    width: 46.0122699387%;
    flex-direction: column;
    align-items: center;
    padding: min(5.1282051282vw, 20px) min(2.5641025641vw, 10px) min(6.6666666667vw, 26px) 0;
  }
  main .top03 .top03_bottom .contents .item .icon {
    width: 57.1428571429%;
    margin-bottom: min(2.5641025641vw, 10px);
  }
  main .top03 .top03_bottom .contents .item .tx .f_16-sp.lh_14 {
    min-height: calc(clamp(14px, 4.1025641026vw, 16px) * 1.4 * 2);
  }
  main .top04 {
    padding: min(22.5641025641vw, 88px) 8.3333333333% min(23.8461538462vw, 93px);
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .top04 .top04_contents {
    flex-direction: column;
    row-gap: min(12.3076923077vw, 48px);
    width: 100%;
    padding: min(10.7692307692vw, 42px) 10.7692307692% min(12.8205128205vw, 50px);
  }
  main .top04 .top04_contents .txbox .topbtn.company-btn a {
    width: min(100%, 255px);
    aspect-ratio: 255/60;
    max-height: 60px;
    padding: 0 9.0196078431%;
    margin: 0 auto;
  }
  main .top04 .top04_contents .txbox .topbtn.company-btn a::after {
    width: min(9.6618357488%, 20px);
  }
  main .top04 .top04_contents .links ul li {
    padding-bottom: min(3.0769230769vw, 12px);
  }
  main .top04 .top04_contents .links ul li a::after {
    width: min(7.8431372549%, 20px);
  }
  main .top04 .top04_contents .links ul li:not(:last-child) {
    margin-bottom: min(2.5641025641vw, 10px);
  }
  main .top05 {
    padding: min(26.1538461538vw, 102px) 0 min(25.641025641vw, 100px);
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .top05::after {
    display: none;
  }
  main .top05 .top05_inner {
    flex-direction: column;
    padding: 0;
    row-gap: min(31.5384615385vw, 123px);
  }
  main .top05 .top05_inner .txbox {
    width: min(322px, 100% - 20px);
    margin: 0 auto;
  }
  main .top05 .top05_inner .txbox .head {
    flex-direction: column;
    margin-bottom: min(9.7435897436vw, 38px);
  }
  main .top05 .top05_inner .txbox .head h2 {
    margin-top: min(0.7692307692vw, 3px);
  }
  main .top05 .top05_inner .txbox .catch {
    margin-bottom: min(7.1794871795vw, 28px);
  }
  main .top05 .top05_inner .txbox .catch small {
    margin-left: 0;
  }
  main .top05 .top05_inner .txbox .catch small.f_36 .ml {
    letter-spacing: 0;
  }
  main .top05 .top05_inner .txbox .text {
    margin: 0 0 min(4.358974359vw, 17px);
  }
  main .top05 .top05_inner .txbox .list {
    width: 100%;
    margin-left: 0;
    margin-bottom: min(7.6923076923vw, 30px);
  }
  main .top05 .top05_inner .txbox .list ul {
    flex-direction: column;
    row-gap: min(2.0512820513vw, 8px);
  }
  main .top05 .top05_inner .txbox .list ul li {
    width: min(100%, 313px);
  }
  main .top05 .top05_inner .txbox .topbtn.recruit-btn {
    width: 100%;
  }
  main .top05 .top05_inner .txbox .topbtn.recruit-btn a {
    margin-left: 0;
    width: min(100%, 322px);
    aspect-ratio: 322/60;
    max-height: 60px;
    padding: 5.900621118%;
  }
  main .top05 .top05_inner .image {
    width: 100%;
    padding: 0 6.4102564103% 0 8.2051282051%;
    position: relative;
  }
  main .top05 .top05_inner .image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-28.1954887218%);
    width: 99.4871794872%;
    aspect-ratio: 388/266;
    background: url(../img/top/recruit-shape.webp) no-repeat center/cover;
    z-index: -1;
  }
  main .top05 .linebnr {
    flex-direction: column;
    align-items: center;
    width: calc(96.6666666667% - 10px);
    padding: min(5.1282051282vw, 20px) 5.1282051282% min(7.1794871795vw, 28px) 8.2051282051%;
    margin: 0 0 0 3.3333333333% !important;
    row-gap: min(3.5897435897vw, 14px);
    border-top-left-radius: 11.3636363636% 16.1943319838%;
    border-top-right-radius: 11.3636363636% 16.1943319838%;
    border-bottom-left-radius: 11.3636363636% 16.1943319838%;
    border-bottom-right-radius: 11.3636363636% 16.1943319838%;
  }
  main .top05 .linebnr .title {
    white-space: nowrap;
  }
  main .top05 .linebnr .title * {
    line-height: 1.4;
  }
  main .top05 .linebnr .title .bd {
    border: unset;
  }
  main .top05 .linebnr .title .f_21-sp.ls_m14px {
    letter-spacing: -0.6666666667em;
  }
  main .top05 .linebnr .title .f_25-sp.ls_m12px {
    letter-spacing: -0.48em;
  }
  main .top05 .linebnr .title .bd-sp {
    border-bottom: 4px solid #ffeb11;
  }
  main .top05 .linebnr .linebtn {
    width: 100%;
  }
  main .top05 .linebnr .linebtn p {
    width: min(100%, 292px);
    aspect-ratio: 292/61;
    padding: 0 0 0 1.7123287671%;
    -moz-column-gap: 4.5138888889%;
         column-gap: 4.5138888889%;
    margin: 0 auto;
  }
  main .top06 {
    padding-top: min(18.9743589744vw, 74px);
    padding-bottom: min(24.1025641026vw, 94px);
    margin-bottom: min(20.2564102564vw, 79px);
    clip-path: polygon(0 min(3.125vw, 60px), 50% min(0.5208333333vw, 10px), 100% min(3.125vw, 60px), 100% calc(100% - min(3.125vw, 60px)), 50% calc(100% - min(0.5208333333vw, 10px)), 0 calc(100% - min(3.125vw, 60px)));
  }
  main .top06 .top06_inner {
    min-width: min(100% - 20px, 320px);
  }
  main .top06 .top06_inner .head {
    flex-direction: column;
    align-items: start !important;
    margin-bottom: min(5.1282051282vw, 20px);
  }
  main .top06 .top06_inner .contents {
    margin-bottom: min(9.7435897436vw, 38px);
  }
  main .top06 .top06_inner .contents article:not(:has(a)),
  main .top06 .top06_inner .contents article a {
    flex-wrap: wrap;
    row-gap: 1px;
    padding: min(5.1282051282vw, 20px) min(6.1538461538vw, 24px) min(5.1282051282vw, 20px) min(4.1025641026vw, 16px);
  }
  main .top06 .top06_inner .contents article a::after {
    width: min(10.7142857143%, 30px);
  }
  main .top06 .top06_inner .contents article .title {
    width: calc(100% - min(10.7142857143%, 30px) - 2.9661016949%);
    flex: unset;
  }
  main .top06 .top06_inner .contents article:not(:last-child) {
    margin-bottom: min(5.641025641vw, 22px);
  }
  main .top06 .topbtn.newsbtn a {
    width: min(100%, 322px);
    aspect-ratio: 322/60;
    max-height: 60px;
    padding: 5.900621118%;
  }
  main .top07 {
    padding: min(20.5128205128vw, 80px) 0;
  }
  main .top07 .top07_inner {
    min-width: min(81.7948717949vw, 319px);
    flex-direction: column;
    row-gap: min(11.2820512821vw, 44px);
  }
  main .top07 .top07_inner .txbox .head {
    margin-bottom: min(5.641025641vw, 22px);
  }
  main .top07 .top07_inner .txbox .head .eg {
    margin-bottom: min(2.3076923077vw, 9px);
  }
  main .top07 .top07_inner .txbox .text p {
    letter-spacing: 0;
  }
  main .top07 .top07_inner .links {
    width: min(100%, 303px);
    margin: 0 auto;
    row-gap: min(5.1282051282vw, 20px);
  }
  main .top07 .top07_inner .links .item {
    width: 100%;
  }
  main .top07 .top07_inner .links .item:not(:has(a)),
  main .top07 .top07_inner .links .item a {
    padding-top: min(8.2051282051vw, 32px);
    padding-bottom: min(14.8717948718vw, 58px);
  }
  main .top07 .top07_inner .links .item .icon {
    width: min(28.6738351254%, 80px);
    margin-bottom: min(11.7948717949vw, 46px);
  }
  main .top07 .top07_inner .links .item.tel:not(:has(a)),
  main .top07 .top07_inner .links .item.tel a {
    padding-bottom: min(5.1282051282vw, 20px);
  }
  main .top07 .top07_inner .links .item.tel .icon {
    margin-bottom: min(4.8717948718vw, 19px);
  }
  main .top07 .top07_inner .links .item.tel .title {
    margin-bottom: min(3.3333333333vw, 13px);
  }
  main .pagetitle .txbox {
    padding: min(20.5128205128vw, 80px) min(7.6923076923vw, 30px);
  }
  main .pagetitle .txbox h1 {
    padding-top: min(5.1282051282vw, 20px);
  }
  main .pagetitle .txbox h2 {
    margin-bottom: min(7.6923076923vw, 30px);
  }
  main:not(:has(.news01)):not(.newsdetail01) .breadcrumbs_wrap {
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .company02 .top .bg .pc-only {
    display: none;
  }
  main {
    /*----------------------------------------------------------------

    会社案内

    ----------------------------------------------------------------*/
  }
  main .company01 {
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .company01 .head {
    flex-direction: column;
    align-items: start !important;
    row-gap: 0;
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .company01 .head small {
    margin-top: min(5.1282051282vw, 20px);
    text-align: start;
  }
  main .company01 .company01_inner {
    row-gap: min(5.1282051282vw, 20px);
  }
  main .company01 .company01_inner .item {
    width: 100%;
  }
  main .company02 {
    padding: min(20.5128205128vw, 80px) 0;
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .company02 .head:first-child {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .company02 .top {
    padding: min(10.5729166667vw, 203px) 0 148.7179487179vw;
    margin: 0 auto min(15.3846153846vw, 60px);
  }
  main .company02 .top .catch {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .company02 .top .txbox {
    width: min(322px, 100% - 20px);
    margin: 0 auto;
  }
  main .company02 .bottom {
    -moz-column-gap: 6%;
         column-gap: 6%;
    justify-content: center;
  }
  main .company02 .bottom .item {
    width: min(47%, 180px);
  }
  main .company02 .bottom .item::before {
    width: 6cqw;
  }
  main .company02 .bottom .item .title.f_14-sp.lh_14 {
    min-height: calc(clamp(12px, 3.5897435897vw, 14px) * 1.4 * 3);
  }
  main .company02 .bottom .item:nth-child(odd)::before {
    display: none;
  }
  main .company02 .bottom .item:nth-child(odd):last-child {
    margin-left: calc((100% - min(47%, 180px) * 2 - 6%) / 2);
    margin-right: auto;
  }
  main .company03 {
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .company03 .head {
    flex-direction: column;
    align-items: start;
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .company03 .company03_inner {
    row-gap: min(10.2564102564vw, 40px);
  }
  main .company03 .company03_inner .item {
    padding-top: min(5.1282051282vw, 20px) !important;
    padding-bottom: min(5.1282051282vw, 20px) !important;
  }
  main .company03 .company03_inner .item .txs .tx .heading {
    padding: min(5.1282051282vw, 20px) !important;
  }
  main .company03 .company03_inner .item:not(.full) {
    width: 100%;
  }
  main .company03 .company03_inner .item.full .txs .tx {
    width: 100%;
  }
  main .company04 {
    padding: min(10.2564102564vw, 40px) 0 min(20.5128205128vw, 80px);
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .company04 .head {
    flex-direction: column;
    align-items: start;
  }
  main .company04 .data {
    width: 66.6666666667%;
  }
  main .company04 .data table tr th,
  main .company04 .data table tr td {
    display: block;
    padding: 0 10px 5px !important;
  }
  main .company04 .data table tr th::before {
    margin-right: 5px;
  }
  main .company04 .data table tr td {
    padding-top: 5px !important;
  }
  main .company04 .data table tr:first-child td {
    padding-top: 5px !important;
  }
  main .company04 .data table tr:not(:first-child) th {
    padding-top: 30px !important;
  }
  main .company05 {
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .company05 .head {
    flex-direction: column;
    align-items: start;
  }
  main .company05 .data {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main {
    /*----------------------------------------------------------------

    お知らせ一覧

    ----------------------------------------------------------------*/
  }
  main .news01 {
    width: 66.6666666667%;
    min-width: min(100% - 20px, 322px);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  main .news01 .news01_inner {
    flex-direction: column;
  }
  main .news01 .news01_inner .contents {
    width: 100%;
  }
  main .news01 .news01_inner .contents article:not(:last-child) {
    margin-bottom: min(7.6923076923vw, 30px);
  }
  main .news01:has(.wp-pagenavi) .side:not(.sp-only) {
    display: none;
  }
  main .news01 .side {
    display: flex;
    flex-direction: column;
    min-width: unset;
    margin-top: min(15.3846153846vw, 60px);
  }
  main .news01 .side .cate .title,
  main .news01 .side .arcaive .title {
    padding: 10px;
    margin-bottom: 15px;
  }
  main .news01 .side .cate ul li,
  main .news01 .side .arcaive ul li {
    padding-bottom: 10px;
  }
  main .news01 .side .cate ul li a,
  main .news01 .side .arcaive ul li a {
    font-size: min(4.6153846154vw, 18px);
  }
  main .news01 .side .cate ul li:not(:last-child),
  main .news01 .side .arcaive ul li:not(:last-child) {
    margin-bottom: 15px;
  }
  main .news01 .side .cate {
    margin-bottom: min(7.6923076923vw, 30px);
  }
  main {
    /*----------------------------------------------------------------

    お知らせ詳細

    ----------------------------------------------------------------*/
  }
  main .newsdetail01 {
    width: 66.6666666667%;
    min-width: min(100% - 20px, 322px);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  main .newsdetail01 .newsdetail01_inner {
    flex-direction: column;
  }
  main .newsdetail01 .newsdetail01_inner .contents {
    width: 100%;
  }
  main .newsdetail01:has(.post_link) .side:not(.sp-only) {
    display: none;
  }
  main .newsdetail01 .side {
    display: flex;
    flex-direction: column;
    min-width: unset;
    margin-top: min(15.3846153846vw, 60px);
  }
  main .newsdetail01 .side .cate .title,
  main .newsdetail01 .side .arcaive .title {
    padding: 10px;
    margin-bottom: 15px;
  }
  main .newsdetail01 .side .cate ul li,
  main .newsdetail01 .side .arcaive ul li {
    padding-bottom: 10px;
  }
  main .newsdetail01 .side .cate ul li a,
  main .newsdetail01 .side .arcaive ul li a {
    font-size: min(4.6153846154vw, 18px);
  }
  main .newsdetail01 .side .cate ul li:not(:last-child),
  main .newsdetail01 .side .arcaive ul li:not(:last-child) {
    margin-bottom: 15px;
  }
  main .newsdetail01 .side .cate {
    margin-bottom: min(15.3846153846vw, 60px);
  }
  main {
    /*----------------------------------------------------------------

    事業内容

    ----------------------------------------------------------------*/
  }
  main .service01 {
    flex-direction: column;
    align-items: center;
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .service01 .txtbox {
    width: 100%;
    margin-bottom: min(15.3846153846vw, 60px);
  }
  main .service01 .txtbox > *:not(:last-child) {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .service01 .image {
    width: 100%;
    max-width: 480px;
  }
  main .service02 {
    padding: min(20.5128205128vw, 80px) 0;
  }
  main .service02 .txtbox {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .service02 .lists ul {
    flex-wrap: wrap;
  }
  main .service02 .lists ul:nth-child(1) {
    border-bottom: none;
  }
  main .service02 .lists ul:nth-child(2) {
    width: 100%;
  }
  main .service02 .lists ul:nth-child(2) li:last-child {
    border-bottom: none;
  }
  main .service02 .lists ul li {
    border-bottom: 2px dashed #032437;
  }
  main .service02 .lists ul li:nth-child(odd) {
    width: 60%;
  }
  main .service02 .lists ul li:nth-child(even) {
    width: 40%;
  }
  main .service02 + .service03 {
    padding-top: min(20.5128205128vw, 80px);
  }
  main .service03 {
    padding: min(15.3846153846vw, 60px) 0;
  }
  main .service03:not(:has(+ .service03)) {
    padding-bottom: min(20.5128205128vw, 80px);
  }
  main .service03.img-right .image {
    margin-left: auto;
  }
  main .service03 .service03_inner {
    flex-direction: column;
    gap: 8.3333333333%;
  }
  main .service03 .image {
    width: 90%;
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .service03 .txtbox {
    margin-left: auto;
    margin-right: auto;
    width: 90%;
    order: 1;
  }
  main .service03 .txtbox .text {
    margin-bottom: min(5.1282051282vw, 20px);
  }
  main .service04 {
    padding: min(20.5128205128vw, 80px) 0;
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .service04 .service04_inner {
    width: 90%;
  }
  main .service04 .step-area:after {
    border-right: dashed clamp(2px, 0.5215123859vw, 4px) #0e7abc;
  }
  main .service04 .step-area .step-content {
    padding: min(3.9113428944vw, 30px);
    border-radius: clamp(6px, 1.0430247718vw, 8px);
    flex-direction: column;
    gap: 4vw;
  }
  main .service04 .step-area .step-content > .col-5 {
    width: 100%;
  }
  main .service04 .step-area .step-content > .col-6 {
    width: 100%;
    padding-right: 0;
  }
  main .service04 .step-area .step-linkbtn a {
    margin: 0 auto;
  }
  main .service05 {
    flex-direction: column;
    align-items: center;
    width: 90%;
    margin-bottom: min(20.5128205128vw, 80px);
  }
  main .service05 .txtbox {
    margin-bottom: min(6.518904824vw, 50px);
    width: 100%;
  }
  main .service05 .txtbox .head {
    margin-bottom: min(10.2564102564vw, 40px);
  }
  main .service05 .areas {
    width: 100%;
    max-width: 480px;
  }
  main .service05 .areas .area01 h4,
  main .service05 .areas .area02 h4 {
    width: clamp(120px, 24.7718383312vw, 190px);
  }
  main .service05 .areas .area01 {
    background-size: clamp(50px, 10.4302477184vw, 80px);
    background-position: right 5.3455019557vw bottom 3.520208605vw;
  }
  main .service05 .areas .area02 {
    background-size: clamp(70px, 14.3415906128vw, 110px);
    background-position: right 3.7809647979vw bottom 7.1707953064vw;
  }
  footer .footer_inner .head-item {
    flex-direction: column;
    row-gap: min(15.8974358974vw, 62px);
    min-width: 82.5641025641vw;
    padding-top: min(20.5128205128vw, 80px);
  }
  footer .footer_inner .head-item .txbox .logo {
    margin-bottom: min(7.4358974359vw, 29px);
  }
  footer .footer_inner .head-item .txbox .data {
    margin-bottom: min(9.2307692308vw, 36px);
  }
  footer .footer_inner .head-item .txbox .btns {
    justify-content: center;
    row-gap: 20px;
  }
  footer .footer_inner .head-item .txbox .btns .topbtn.contactbtn, footer .footer_inner .head-item .txbox .btns .topbtn.linebtn {
    width: 100%;
  }
  footer .footer_inner .head-item .txbox .btns .topbtn.contactbtn a, footer .footer_inner .head-item .txbox .btns .topbtn.linebtn a {
    width: min(100%, 322px);
    aspect-ratio: 322/60;
    max-height: 60px;
    padding: min(5.900621118%, 19px);
  }
  footer .footer_inner .head-item .navs {
    margin-right: auto;
    flex-direction: column;
    width: 100%;
    row-gap: min(11.2820512821vw, 44px);
  }
  footer .footer_inner .head-item .navs .title {
    padding-bottom: min(1.7948717949vw, 7px);
    margin-bottom: min(3.8461538462vw, 15px) !important;
  }
  footer .footer_inner .head-item .navs ul li:not(:last-child) {
    margin-bottom: min(2.8205128205vw, 11px);
  }
}
@media (max-width: 390px) {
  main .top02 .bg img {
    -o-object-position: bottom center;
       object-position: bottom center;
  }
}
@media (max-width: 767px) {
  .wp-pagenavi {
    margin-top: min(15.3846153846vw, 60px);
  }
  .wp-pagenavi a, .wp-pagenavi span,
  .page-numbers, .wp-pagenavi .current, .wp-pagenavi .page, .previouspostslink, .nextpostslink, #pagenavi a.last, #pagenavi a.first,
  .wp-pagenavi span.extend, .wp-pagenavi a.last {
    margin: 5px;
  }
  .single-nav {
    flex-wrap: wrap;
    row-gap: 10px;
  }
  .single-nav .topbtn.detailbtn {
    width: 100%;
    order: 2;
  }
  .single-nav .topbtn.detailbtn a {
    width: 100%;
    aspect-ratio: 322/60;
    max-height: 60px;
    padding: 5.900621118%;
  }
}