@charset "UTF-8";
/*********************
COLORS
*********************/
/*Animation------------------------------------------------*/
.trans_s {
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.63, 0, 0, 1);
  animation-duration: 0.3s; }

.trans_m {
  transition-duration: 1s;
  transition-timing-function: cubic-bezier(0.63, 0, 0, 1);
  animation-duration: 1s; }

.trans_l {
  transition-duration: 1.2s;
  transition-timing-function: cubic-bezier(0.63, 0, 0, 1);
  animation-duration: 1.2s; }

input::placeholder, textarea::placeholder {
  color: #111111; }
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #111111; }
input::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #111111; }

/*Flex------------------------------------------------*/
.flex {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px; }

.flex_s {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 16px; }

.flex_e {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 16px; }

/*Shadow------------------------------------------------*/
.shadow {
  box-shadow: 0px 6px 12px rgba(135, 147, 190, 0.25); }

/*Radius------------------------------------------------*/
.radius_m {
  border-radius: 32px; }

.radius_l {
  border-radius: 46px; }

/*========================================================
Font Size
========================================================*/
.text_ss {
  font-size: 10px; }
  @media only screen and (min-width: 1280px) {
    .text_ss {
      font-size: 12px; } }

.text_s {
  font-size: clamp(0.75rem, 0.724rem + 0.11vw, 0.813rem); }
  @media only screen and (min-width: 1280px) {
    .text_s {
      font-size: 14px; } }

.text_m {
  font-size: clamp(0.863rem, 0.806rem + 0.24vw, 1rem); }
  @media only screen and (min-width: 1280px) {
    .text_m {
      font-size: 16px; } }

.text_l {
  font-size: clamp(1rem, 0.948rem + 0.22vw, 1.125rem); }
  @media only screen and (min-width: 1280px) {
    .text_l {
      font-size: 18px; } }

.text_ll {
  font-size: clamp(1.063rem, 0.933rem + 0.55vw, 1.375rem); }
  @media only screen and (min-width: 1280px) {
    .text_ll {
      font-size: 22px; } }

.text_x {
  font-size: clamp(1.25rem, 0.939rem + 1.33vw, 2rem); }
  @media only screen and (min-width: 1280px) {
    .text_x {
      font-size: 32px; } }

.en {
  font-family: 'M PLUS 1p', sans-serif; }

/*********************
MARGIN&PADDING
*********************/
.pd4 {
  padding: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.pd8 {
  padding: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.pd12 {
  padding: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.pd16 {
  padding: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.pd20 {
  padding: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.pd24 {
  padding: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.pd28 {
  padding: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.pd32 {
  padding: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.pd36 {
  padding: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.pd40 {
  padding: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.pd44 {
  padding: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.pd48 {
  padding: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.pd50 {
  padding: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.pd60 {
  padding: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.pd70 {
  padding: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.pd80 {
  padding: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.pd90 {
  padding: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.pd100 {
  padding: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.pd120 {
  padding: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.pd150 {
  padding: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.pd180 {
  padding: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.pd200 {
  padding: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.pt4 {
  padding-top: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.pt8 {
  padding-top: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.pt12 {
  padding-top: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.pt16 {
  padding-top: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.pt20 {
  padding-top: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.pt24 {
  padding-top: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.pt28 {
  padding-top: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.pt32 {
  padding-top: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.pt36 {
  padding-top: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.pt40 {
  padding-top: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.pt44 {
  padding-top: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.pt48 {
  padding-top: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.pt50 {
  padding-top: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.pt60 {
  padding-top: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.pt70 {
  padding-top: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.pt80 {
  padding-top: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.pt90 {
  padding-top: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.pt100 {
  padding-top: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.pt120 {
  padding-top: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.pt150 {
  padding-top: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.pt180 {
  padding-top: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.pt200 {
  padding-top: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.pb4 {
  padding-bottom: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.pb8 {
  padding-bottom: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.pb12 {
  padding-bottom: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.pb16 {
  padding-bottom: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.pb20 {
  padding-bottom: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.pb24 {
  padding-bottom: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.pb28 {
  padding-bottom: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.pb32 {
  padding-bottom: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.pb36 {
  padding-bottom: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.pb40 {
  padding-bottom: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.pb44 {
  padding-bottom: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.pb48 {
  padding-bottom: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.pb50 {
  padding-bottom: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.pb60 {
  padding-bottom: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.pb70 {
  padding-bottom: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.pb80 {
  padding-bottom: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.pb90 {
  padding-bottom: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.pb100 {
  padding-bottom: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.pb120 {
  padding-bottom: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.pb150 {
  padding-bottom: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.pb180 {
  padding-bottom: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.pb200 {
  padding-bottom: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.pl4 {
  padding-left: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.pl8 {
  padding-left: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.pl12 {
  padding-left: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.pl16 {
  padding-left: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.pl20 {
  padding-left: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.pl24 {
  padding-left: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.pl28 {
  padding-left: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.pl32 {
  padding-left: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.pl36 {
  padding-left: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.pl40 {
  padding-left: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.pl44 {
  padding-left: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.pl48 {
  padding-left: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.pl50 {
  padding-left: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.pl60 {
  padding-left: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.pl70 {
  padding-left: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.pl80 {
  padding-left: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.pl90 {
  padding-left: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.pl100 {
  padding-left: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.pl120 {
  padding-left: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.pl150 {
  padding-left: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.pl180 {
  padding-left: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.pl200 {
  padding-left: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.pr4 {
  padding-right: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.pr8 {
  padding-right: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.pr12 {
  padding-right: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.pr16 {
  padding-right: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.pr20 {
  padding-right: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.pr24 {
  padding-right: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.pr28 {
  padding-right: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.pr32 {
  padding-right: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.pr36 {
  padding-right: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.pr40 {
  padding-right: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.pr44 {
  padding-right: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.pr48 {
  padding-right: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.pr50 {
  padding-right: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.pr60 {
  padding-right: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.pr70 {
  padding-right: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.pr80 {
  padding-right: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.pr90 {
  padding-right: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.pr100 {
  padding-right: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.pr120 {
  padding-right: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.pr150 {
  padding-right: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.pr180 {
  padding-right: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.pr200 {
  padding-right: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.mg4 {
  margin: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.mg8 {
  margin: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.mg12 {
  margin: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.mg16 {
  margin: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.mg20 {
  margin: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.mg24 {
  margin: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.mg28 {
  margin: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.mg32 {
  margin: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.mg36 {
  margin: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.mg40 {
  margin: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.mg44 {
  margin: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.mg48 {
  margin: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.mg50 {
  margin: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.mg60 {
  margin: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.mg70 {
  margin: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.mg80 {
  margin: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.mg90 {
  margin: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.mg100 {
  margin: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.mg120 {
  margin: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.mg150 {
  margin: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.mg180 {
  margin: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.mg200 {
  margin: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.mt4 {
  margin-top: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.mt8 {
  margin-top: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.mt12 {
  margin-top: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.mt16 {
  margin-top: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.mt20 {
  margin-top: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.mt24 {
  margin-top: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.mt28 {
  margin-top: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.mt32 {
  margin-top: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.mt36 {
  margin-top: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.mt40 {
  margin-top: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.mt44 {
  margin-top: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.mt48 {
  margin-top: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.mt50 {
  margin-top: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.mt60 {
  margin-top: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.mt70 {
  margin-top: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.mt80 {
  margin-top: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.mt90 {
  margin-top: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.mt100 {
  margin-top: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.mt120 {
  margin-top: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.mt150 {
  margin-top: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.mt180 {
  margin-top: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.mt200 {
  margin-top: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.mb4 {
  margin-bottom: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.mb8 {
  margin-bottom: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.mb12 {
  margin-bottom: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.mb16 {
  margin-bottom: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.mb20 {
  margin-bottom: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.mb24 {
  margin-bottom: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.mb28 {
  margin-bottom: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.mb32 {
  margin-bottom: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.mb36 {
  margin-bottom: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.mb40 {
  margin-bottom: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.mb44 {
  margin-bottom: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.mb48 {
  margin-bottom: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.mb50 {
  margin-bottom: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.mb60 {
  margin-bottom: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.mb70 {
  margin-bottom: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.mb80 {
  margin-bottom: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.mb90 {
  margin-bottom: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.mb100 {
  margin-bottom: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.mb120 {
  margin-bottom: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.mb150 {
  margin-bottom: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.mb180 {
  margin-bottom: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.mb200 {
  margin-bottom: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.ml4 {
  margin-left: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.ml8 {
  margin-left: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.ml12 {
  margin-left: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.ml16 {
  margin-left: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.ml20 {
  margin-left: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.ml24 {
  margin-left: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.ml28 {
  margin-left: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.ml32 {
  margin-left: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.ml36 {
  margin-left: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.ml40 {
  margin-left: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.ml44 {
  margin-left: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.ml48 {
  margin-left: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.ml50 {
  margin-left: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.ml60 {
  margin-left: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.ml70 {
  margin-left: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.ml80 {
  margin-left: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.ml90 {
  margin-left: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.ml100 {
  margin-left: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.ml120 {
  margin-left: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.ml150 {
  margin-left: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.ml180 {
  margin-left: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.ml200 {
  margin-left: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.mr4 {
  margin-right: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

.mr8 {
  margin-right: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }

.mr12 {
  margin-right: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }

.mr16 {
  margin-right: clamp(1rem, 0.876rem + 0.53vw, 1.3rem); }

.mr20 {
  margin-right: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem); }

.mr24 {
  margin-right: clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem); }

.mr28 {
  margin-right: clamp(1.75rem, 1.532rem + 0.93vw, 2.275rem); }

.mr32 {
  margin-right: clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }

.mr36 {
  margin-right: clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem); }

.mr40 {
  margin-right: clamp(2.5rem, 2.189rem + 1.33vw, 3.25rem); }

.mr44 {
  margin-right: clamp(2.75rem, 2.408rem + 1.46vw, 3.575rem); }

.mr48 {
  margin-right: clamp(3rem, 2.627rem + 1.59vw, 3.9rem); }

.mr50 {
  margin-right: clamp(3.125rem, 2.737rem + 1.66vw, 4.063rem); }

.mr60 {
  margin-right: clamp(3.75rem, 3.284rem + 1.99vw, 4.875rem); }

.mr70 {
  margin-right: clamp(4.375rem, 3.831rem + 2.32vw, 5.688rem); }

.mr80 {
  margin-right: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.mr90 {
  margin-right: clamp(5.625rem, 4.926rem + 2.98vw, 7.313rem); }

.mr100 {
  margin-right: clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem); }

.mr120 {
  margin-right: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem); }

.mr150 {
  margin-right: clamp(9.375rem, 8.21rem + 4.97vw, 12.188rem); }

.mr180 {
  margin-right: clamp(11.25rem, 9.852rem + 5.97vw, 14.625rem); }

.mr200 {
  margin-right: clamp(12.5rem, 10.946rem + 6.63vw, 16.25rem); }

.crr_head.crr_head_sc_single {
  padding-top: clamp(5rem, 4.378rem + 2.65vw, 6.5rem); }

.text_gray {
  color: #474A4A; }

#page_top {
  opacity: 0;
  visibility: hidden;
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.63, 0, 0, 1);
  animation-duration: 0.3s; }
  #page_top.visible {
    visibility: visible;
    opacity: 1; }

.pc_only {
  display: none; }

.top_kv {
  padding-bottom: 0;
  width: min(100%, 1550px);
  margin-inline: auto; }
  .top_kv img {
    width: 90%; }

.pc_menu_btn a:focus .header_btn, .menu_btn a:focus .header_btn {
  background-color: #004c52; }

#hum_icon {
  border: 1px solid #111111;
  width: 68px;
  height: auto;
  background-color: #E8EAEE;
  top: clamp(2rem, 1.751rem + 1.06vw, 2.6rem);
  border-radius: 12px; }
  #hum_icon .hum_icon_bar {
    position: relative;
    width: 68px;
    height: 43px;
    padding: 8px;
    padding-bottom: 4px; }
  #hum_icon span {
    width: calc(100% - 16px);
    left: 8px !important; }
    #hum_icon span:nth-of-type(1) {
      top: 8px; }
    #hum_icon span:nth-of-type(2) {
      top: calc(50% - 2px); }
    #hum_icon span:nth-of-type(3) {
      bottom: 8px; }
  #hum_icon .hum_text {
    width: 100%;
    font-size: clamp(0.75rem, 0.724rem + 0.11vw, 0.813rem);
    font-weight: bold; }
    @media only screen and (min-width: 1280px) {
      #hum_icon .hum_text {
        font-size: 14px; } }
  #hum_icon:focus {
    border: 1px solid #007C85; }
  #hum_icon.open .hum_icon_bar {
    transform: scale(0.7); }

#menu-content {
  visibility: hidden; }
  #menu-content.open {
    visibility: visible;
    overflow: scroll; }
  #menu-content #menu_list {
    padding: clamp(7.5rem, 6.568rem + 3.98vw, 9.75rem) clamp(2rem, 1.751rem + 1.06vw, 2.6rem); }
    #menu-content #menu_list .hum_close_btn {
      padding: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem) clamp(1.5rem, 1.314rem + 0.8vw, 1.95rem);
      color: #062542;
      background-color: #fff;
      border: 1px solid #062542; }
      #menu-content #menu_list .hum_close_btn:focus {
        color: #fff;
        background-color: #062542; }

.pc_menu_btn.btn_001 {
  border-left: 1px solid #474A4A;
  padding-left: 1.4vw; }
.pc_menu_btn.btn_002 {
  border-right: 1px solid #474A4A;
  padding-right: 1.4vw; }

.top_kv .pgm_bnr:focus-visible, .top_kv .pgm_bnr:focus {
  border: none; }
  .top_kv .pgm_bnr:focus-visible .top_kv_btn_img, .top_kv .pgm_bnr:focus .top_kv_btn_img {
    display: inline-block;
    border: none; }
    .top_kv .pgm_bnr:focus-visible .top_kv_btn_img.active, .top_kv .pgm_bnr:focus .top_kv_btn_img.active {
      opacity: 1; }

.carousel {
  position: relative;
  margin-inline: auto;
  width: calc(100% - clamp(2rem, 1.751rem + 1.06vw, 2.6rem) - clamp(2rem, 1.751rem + 1.06vw, 2.6rem) ); }
  .carousel input[type="radio"] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%); }

.carousel_viewport {
  overflow: hidden; }

.carousel_track {
  display: flex;
  transition: transform 0.5s ease; }

.carousel_slide {
  flex: 0 0 100%;
  min-width: 0; }
  .carousel_slide img {
    display: block;
    width: 100%;
    height: auto; }
  .carousel_slide:hover, .carousel_slide:focus-visible {
    border: 1px solid #007C85; }

/* CSSのみ：SP（1枚表示） */
.carousel:not(.is-enhanced) #slide1:checked ~ .carousel_viewport .carousel_track {
  transform: translateX(0); }

.carousel:not(.is-enhanced) #slide2:checked ~ .carousel_viewport .carousel_track {
  transform: translateX(-100%); }

.carousel:not(.is-enhanced) #slide3:checked ~ .carousel_viewport .carousel_track {
  transform: translateX(-200%); }

.carousel:not(.is-enhanced) #slide4:checked ~ .carousel_viewport .carousel_track {
  transform: translateX(-300%); }

.carousel:not(.is-enhanced) #slide5:checked ~ .carousel_viewport .carousel_track {
  transform: translateX(-400%); }

/* CSSのみの矢印 */
.carousel_controls {
  display: none;
  position: absolute;
  inset: 0;
  align-items: center;
  justify-content: space-between;
  padding: 12px;
  pointer-events: none; }
  .carousel_controls label {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    cursor: pointer;
    pointer-events: auto; }

#slide1:checked ~ .carousel_fallback_controls .controls1,
#slide2:checked ~ .carousel_fallback_controls .controls2,
#slide3:checked ~ .carousel_fallback_controls .controls3,
#slide4:checked ~ .carousel_fallback_controls .controls4,
#slide5:checked ~ .carousel_fallback_controls .controls5 {
  display: flex; }

/* CSSのみのドット */
.carousel_fallback_dots,
.carousel_js_dots {
  display: flex;
  justify-content: center;
  gap: 10px; }

.carousel_fallback_dots label,
.carousel_js_dots button {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #ccc;
  cursor: pointer; }

#slide1:checked ~ .carousel_fallback_dots label:nth-child(1),
#slide2:checked ~ .carousel_fallback_dots label:nth-child(2),
#slide3:checked ~ .carousel_fallback_dots label:nth-child(3),
#slide4:checked ~ .carousel_fallback_dots label:nth-child(4),
#slide5:checked ~ .carousel_fallback_dots label:nth-child(5),
.carousel_js_dots button.is-active {
  background: #333; }

/* JS用の操作UIは最初は非表示 */
.carousel_js_controls,
.carousel_js_dots {
  display: none;
  visibility: hidden; }

/* JSが正常に初期化された場合のみ切り替え */
.carousel.is-enhanced .carousel_fallback_controls,
.carousel.is-enhanced .carousel_fallback_dots {
  display: none;
  visibility: hidden; }

.carousel.is-enhanced .carousel_js_controls {
  display: block;
  visibility: visible; }

.carousel.is-enhanced .carousel_js_controls button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(2rem, 1.751rem + 1.06vw, 2.6rem);
  height: clamp(2rem, 1.751rem + 1.06vw, 2.6rem);
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  cursor: pointer; }

.carousel.is-enhanced .carousel_prev {
  left: calc(-1 * clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem)); }

.carousel.is-enhanced .carousel_next {
  right: calc(-1 * clamp(2.25rem, 1.97rem + 1.19vw, 2.925rem)); }

.carousel.is-enhanced .carousel_js_dots {
  display: flex;
  visibility: visible; }

@media (prefers-reduced-motion: reduce) {
  .carousel:not(.is-playing) .carousel_track {
    transition: none; } }
.carousel button:focus-visible,
.carousel label:focus-visible {
  outline: 1px solid #007C85;
  outline-offset: 4px; }

/* ドットも視認しやすくする */
.carousel_js_dots button,
.carousel_fallback_dots label {
  position: relative; }

.carousel_rotation {
  font-size: clamp(0.75rem, 0.724rem + 0.11vw, 0.813rem);
  background-color: #565656;
  color: #fff;
  padding: 0 clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem); }
  @media only screen and (min-width: 1280px) {
    .carousel_rotation {
      font-size: 14px; } }
  .carousel_rotation:hover, .carousel_rotation:focus {
    color: #fff; }

.carousel_rotation {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  border: none;
  background: #062542;
  cursor: pointer;
  border-radius: 100px; }

/* 再生アイコン */
.carousel_rotation::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 15px solid currentColor;
  margin-left: 3px; }

/* 停止アイコン */
.carousel_rotation.is-playing::before {
  width: 5px;
  height: 20px;
  border: none;
  background: currentColor;
  margin-left: -10px;
  box-shadow: 10px 0 0 currentColor; }

.top_career_bnr {
  display: grid; }

.pgm_step.top_step li {
  grid-template-columns: calc(clamp(6.25rem, 5.473rem + 3.31vw, 8.125rem) + 6px) 1fr; }
  .pgm_step.top_step li .pgm_step_num_wrap:before {
    background-color: #007C85; }
  .pgm_step.top_step li .pgm_step_num {
    background-color: #007C85; }

.l-footer .sec_content .footer_content_dlbtn {
  display: flex;
  height: auto;
  width: auto;
  padding: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem) clamp(1rem, 0.876rem + 0.53vw, 1.3rem);
  gap: clamp(0.75rem, 0.657rem + 0.4vw, 0.975rem); }
  .l-footer .sec_content .footer_content_dlbtn_title {
    display: flex;
    gap: clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem);
    align-items: center; }

.sns_list img {
  width: 40px; }

.footer_content_dlbtn_link {
  width: fit-content;
  margin-inline: auto; }
  .footer_content_dlbtn_link:focus .footer_content_dlbtn {
    background-color: #004c52;
    transition-duration: 0.3s;
    transition-timing-function: cubic-bezier(0.63, 0, 0, 1);
    animation-duration: 0.3s; }
    .footer_content_dlbtn_link:focus .footer_content_dlbtn.more_arrow_wrap .more_arrow {
      transition-duration: 0.3s;
      transition-timing-function: cubic-bezier(0.63, 0, 0, 1);
      animation-duration: 0.3s;
      transform: scale(1.1); }

.footer_item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-weight: normal; }
  .footer_item:before {
    content: "";
    width: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem);
    height: clamp(0.5rem, 0.438rem + 0.27vw, 0.65rem);
    background-color: #111111; }

.l-footer .sec_content .footer_content_dlbtn {
  width: fit-content; }

.btn_link:focus {
  color: #fff !important; }
  .btn_link:focus:before {
    transform-origin: 0% 50%;
    transform: scaleX(1); }

@media print, screen and (min-width: 768px) {
  .top_kv img {
    width: min(64%, 1024px); }

  .carousel {
    width: calc(90% - clamp(2rem, 1.751rem + 1.06vw, 2.6rem) - clamp(2rem, 1.751rem + 1.06vw, 2.6rem) ); }

  .carousel_slide {
    flex-basis: 50%;
    padding: 0 clamp(0.25rem, 0.219rem + 0.13vw, 0.325rem); }

  .carousel:not(.is-enhanced) #slide1:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(0); }

  .carousel:not(.is-enhanced) #slide2:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(-50%); }

  .carousel:not(.is-enhanced) #slide3:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(-100%); }

  .carousel:not(.is-enhanced) #slide4:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(-150%); }

  .carousel:not(.is-enhanced) #slide5:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(-200%); } }
@media print, screen and (min-width: 1024px) {
  .pc_only {
    display: block; }

  .top_career_bnr {
    grid-template-columns: repeat(3, 1fr); } }
@media print, screen and (min-width: 1280px) {
  .pc_menu {
    padding: 32px 10px; }

  .top_kv_btn {
    width: min(250px, 15%); }

  .carousel_slide {
    flex-basis: 33.3333%; }

  .carousel:not(.is-enhanced) #slide1:checked ~ .carousel_viewport .carousel_track,
  .carousel:not(.is-enhanced) #slide2:checked ~ .carousel_viewport .carousel_track,
  .carousel:not(.is-enhanced) #slide3:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(0); }

  .carousel:not(.is-enhanced) #slide4:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(-66.6667%); }

  .carousel:not(.is-enhanced) #slide5:checked ~ .carousel_viewport .carousel_track {
    transform: translateX(-133.3333%); } }

/*# sourceMappingURL=style.css.map */
