@charset "UTF-8";
/* --------------------------------------------------
	section size
-------------------------------------------------- */
/* reset
---------------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

* {
  box-sizing: border-box;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

img {
  border: 0;
  vertical-align: bottom;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

sub {
  vertical-align: sub;
}

sup {
  vertical-align: super;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

pre {
  white-space: pre-wrap;
}

/* common
---------------------------------------------------------------------------- */
/* common
---------------------------------------------------------------------------- */
/* color */
.color01 {
  color: #FFE84D;
}

.color-purple {
  color: #8C7DC9;
}

.color-blue {
  color: #52BCF8;
}

.color-green {
  color: #79D049;
}

.bgColor {
  background: #F5F5F5;
}

.bgColor_white {
  background: #fff;
}

.bgColor_purple {
  background: #9589C7;
}

.bg-radius {
  border-radius: 0 12rem 0 0;
}
@media screen and (max-width: 480px) {
  .bg-radius {
    border-radius: 0 6.8rem 0 0;
  }
}

.strong {
  font-weight: bold;
}

.medium {
  font-weight: 500 !important;
}

.overflow {
  overflow: hidden;
}

.page-corporate .section {
  position: relative;
  padding: 9.8rem 0 14.4rem 0;
  border-radius: 10rem 10rem 0 0;
  background: rgba(255, 255, 255, 0.96);
  box-sizing: border-box;
  z-index: 3;
}
.page-corporate .section .l-inner {
  max-width: 102.4rem;
}

/* title */
.c-title .-disc {
  position: relative;
  padding-left: 2rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-title .-disc {
    padding-left: 2.4rem;
  }
}
.c-title .-disc:before {
  position: absolute;
  left: 0;
  top: 1.6rem;
  display: block;
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 100%;
  background: #FDD000;
}
@media screen and (max-width: 480px) {
  .c-title .-disc:before {
    top: 2.1rem;
    width: 1.4rem;
    height: 1.4rem;
  }
}
.c-title .en-ttl {
  font-size: 1.4rem;
  line-height: 3.4285714286;
  letter-spacing: 0.56px;
  font-weight: 900;
  margin-bottom: 0.4rem;
}
@media screen and (max-width: 480px) {
  .c-title .en-ttl {
    font-size: 2.6rem;
    line-height: 2.2692307692;
    letter-spacing: 1.04px;
    font-weight: 900;
    margin-bottom: 1.4rem;
  }
}
.c-title .jp-ttl {
  font-size: 2.8rem;
  line-height: 1.1593928571;
  letter-spacing: 0.28px;
  font-weight: 700;
  color: #262626;
}
@media screen and (max-width: 480px) {
  .c-title .jp-ttl {
    font-size: 3.8rem;
    line-height: 1;
    letter-spacing: 0.38px;
    font-weight: 700;
  }
}
.c-title .jp-ttl.-fs22 {
  font-size: 2.2rem;
  line-height: 1.4755909091;
  letter-spacing: 0.28px;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-title .jp-ttl.-fs22 {
    font-size: 2.8rem;
    line-height: 1;
    letter-spacing: 0.38px;
    font-weight: 700;
  }
}
.c-title.-white .-disc:before {
  background: #fff;
  top: 1.2rem;
  width: 0.7rem;
  height: 0.7rem;
}
@media screen and (max-width: 480px) {
  .c-title.-white .-disc:before {
    top: 0.9rem;
    width: 1.2rem;
    height: 1.2rem;
  }
}
.c-title.-white .en-ttl,
.c-title.-white .jp-ttl {
  color: #fff;
}

.c-title02 {
  position: relative;
  color: #2E2E2E;
  font-size: 2.8rem;
  line-height: 1.7142857143;
  letter-spacing: 1.12px;
  font-weight: 700;
  padding-left: 1.7rem;
  margin-bottom: 11.7rem;
}
@media screen and (max-width: 480px) {
  .c-title02 {
    font-size: 3.4rem;
    line-height: 1.5882352941;
    letter-spacing: 1.36px;
    font-weight: 700;
    margin-bottom: 6.7rem;
  }
}
.c-title02:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 100%;
  background: #FFE84D;
}
.c-title02.-small {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 700;
  padding-left: 0;
}
@media screen and (max-width: 480px) {
  .c-title02.-small {
    font-size: 3.4rem;
    line-height: 1;
    font-weight: 700;
  }
}
.c-title02.-small:before {
  left: 0;
  top: -1.3rem;
  width: 0.8rem;
  height: 0.8rem;
}
@media screen and (max-width: 480px) {
  .c-title02.-small:before {
    top: -1.9rem;
    width: 1.2rem;
    height: 1.2rem;
  }
}
.c-title02.-small .small-txt {
  font-size: 1.6rem;
  line-height: 2.125;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-title02.-small .small-txt {
    font-size: 2.4rem;
    line-height: 2.0416666667;
    font-weight: 700;
  }
}

.c-title03 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 1.8rem;
  margin-bottom: 5.7rem;
}
.c-title03 .en-ttl {
  font-size: 5.2rem;
  line-height: 1;
  letter-spacing: 1.84px;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-title03 .en-ttl {
    font-size: 5.2rem;
    line-height: 1;
    letter-spacing: 1.04px;
    font-weight: 700;
  }
}
.c-title03 .jp-ttl {
  position: relative;
  top: 0.4rem;
  font-size: 1.4rem;
  line-height: 2.4285714286;
  font-weight: 500;
  color: #373737;
}
@media screen and (max-width: 480px) {
  .c-title03 .jp-ttl {
    top: 0;
    font-size: 2.2rem;
    line-height: 1.5454545455;
    font-weight: 500;
  }
}

.external-links {
  position: relative;
}
.external-links:after {
  position: relative;
  display: inline-block;
  margin-left: 0.8rem;
  content: "";
  background: url("../images/common/ico_external.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 1.2rem;
  height: 1.1rem;
}
@media screen and (max-width: 480px) {
  .external-links:after {
    width: 2.4rem;
    height: 2.2rem;
  }
}
.external-links.-black:after {
  background: url("../images/common/ico_external_b.svg") no-repeat center center;
}

/* hover */
@media screen and (min-width: 481px) {
  .c-hover {
    display: block;
    transition: opacity 0.4s;
  }
  .c-hover:hover {
    text-decoration: none;
    opacity: 0.7;
  }
}

.c-hover_btn {
  position: relative;
  overflow: hidden;
}
.c-hover_btn .btn-txt {
  position: relative;
  overflow: hidden;
}
.c-hover_btn .hover-txt {
  transition: transform 0.3s ease;
}
.c-hover_btn .hover-txt.-on {
  position: absolute;
  top: 100%;
  left: 0;
}
.c-hover_btn:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  background-color: #FFE84D;
  border-radius: 100%;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.6s cubic-bezier(0.1, 0.8, 0.3, 1);
  z-index: -1;
}
.c-hover_btn .arrow {
  overflow: hidden;
}
.c-hover_btn .arrow:after {
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .c-hover_btn:hover {
    text-decoration: none;
  }
  .c-hover_btn:hover:before {
    transform: translate(-50%, -50%) scale(1.5);
  }
  .c-hover_btn:hover .hover-txt {
    display: block;
    transform: translateY(-100%);
  }
  .c-hover_btn:hover .hover-txt .en-txt,
  .c-hover_btn:hover .hover-txt .jp-txt {
    color: #000 !important;
  }
  .c-hover_btn:hover .arrow:after {
    animation: arrow-slide 0.4s forwards ease-in-out;
  }
}
.c-hover_btn.hover-white:before {
  background-color: #fff;
  z-index: 1;
}
.c-hover_btn.hover-white .btn-txt {
  position: relative;
  z-index: 3;
}
.c-hover_btn.hover-white .arrow {
  z-index: 3;
}
@media screen and (min-width: 481px) {
  .c-hover_btn.hover-white:hover .hover-txt .en-txt,
  .c-hover_btn.hover-white:hover .hover-txt .jp-txt {
    color: #000 !important;
  }
}

/* button */
.c-button {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 27.6rem;
  height: 6.3rem;
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 700;
  color: #fff;
  background: #353535;
  padding: 2rem 4rem;
  border-radius: 10rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-button {
    width: 41.2rem;
    height: 9.4rem;
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 700;
    padding: 2.9rem 5.8rem;
    border-radius: 14.9rem;
  }
}
@media screen and (min-width: 481px) {
  .c-button {
    transition: 0.4s;
  }
  .c-button:hover {
    text-decoration: none;
  }
}
.c-button .arrow {
  position: absolute;
  right: 2.3rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 3.2rem;
  height: 3.2rem;
  background: #5D5A5A;
  border-radius: 100%;
}
@media screen and (max-width: 480px) {
  .c-button .arrow {
    right: 3.4rem;
    width: 4.7rem;
    height: 4.7rem;
  }
}
.c-button .arrow:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 1.9rem;
  height: 1.8rem;
}
@media screen and (max-width: 480px) {
  .c-button .arrow:after {
    width: 2.8rem;
    height: 2.7rem;
  }
}

.c-button02 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 37.3rem;
  height: 8.3rem;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 700;
  color: #fff;
  padding: 2rem 4rem;
  border-radius: 15rem;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-button02 {
    width: 100%;
    height: 13.3rem;
    font-size: 2.8rem;
    line-height: 1.5;
    font-weight: 700;
    padding: 4.5rem 4rem;
    border-radius: 25.4rem;
  }
}
.c-button02:before, .c-button02:after {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  transition: 0.4s;
}
.c-button02:before {
  background: #373737;
  z-index: 1;
}
.c-button02:after {
  width: 0;
  background: #fff;
  z-index: 2;
}
.c-button02 span {
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 481px) {
  .c-button02 {
    transition: 0.4s;
  }
  .c-button02:hover {
    color: #373737;
    text-decoration: none;
  }
  .c-button02:hover:after {
    width: 100%;
  }
  .c-button02:hover .arrow {
    transform: translate(5px, -50%);
  }
}
.c-button02 .arrow {
  position: absolute;
  right: 3.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 2.4rem;
  height: 2.4rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .c-button02 .arrow {
    right: 5.5rem;
    width: 3.9rem;
    height: 3.9rem;
  }
}
.c-button02 .arrow:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 100%;
  height: 100%;
}
.c-button02.-white {
  color: #373737;
  background: #fff;
}
.c-button02.-white:before {
  background: #fff;
}
.c-button02.-white:after {
  background: #373737;
}
.c-button02.-white .arrow:after {
  background: url("../images/common/arrow_b.svg") no-repeat center center;
}
@media screen and (min-width: 481px) {
  .c-button02.-white {
    transition: 0.4s;
  }
  .c-button02.-white:hover {
    color: #fff;
  }
  .c-button02.-white:hover .arrow:after {
    background: url("../images/common/arrow_w.svg") no-repeat center center;
  }
}

.c-button03 {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 34.4rem;
  height: 6.5rem;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  font-weight: 700;
  color: #373737;
  padding: 2rem 5rem 2rem 3rem;
  border-radius: 15.8rem;
  border: 1px solid #909090;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-button03 {
    width: 100%;
    height: 11.2rem;
    font-size: 2.8rem;
    line-height: 1.5;
    font-weight: 700;
    padding: 3.5rem 4rem;
    border-radius: 21.4rem;
  }
}
.c-button03:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 0;
  height: 100%;
  background: #373737;
  z-index: 1;
  transition: 0.4s;
}
.c-button03 .txt {
  position: relative;
  padding-left: 1.7rem;
  z-index: 3;
}
@media screen and (max-width: 480px) {
  .c-button03 .txt {
    padding-left: 2.7rem;
  }
}
.c-button03 .txt:before {
  position: absolute;
  left: 0;
  top: 0.8rem;
  display: block;
  content: "";
  width: 1rem;
  height: 1rem;
  background: #FFEB52;
  border-radius: 100%;
}
@media screen and (max-width: 480px) {
  .c-button03 .txt:before {
    top: 1.2rem;
    width: 1.3rem;
    height: 1.3rem;
  }
}
.c-button03 .arrow {
  position: absolute;
  right: 2.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 2.1rem;
  height: 2.1rem;
  transition: 0.4s;
  z-index: 3;
}
@media screen and (max-width: 480px) {
  .c-button03 .arrow {
    right: 4rem;
    width: 3.9rem;
    height: 3.9rem;
  }
}
.c-button03 .arrow:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_b.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 480px) {
  .c-button03 .arrow:after {
    background: url("../images/common/arrow_b_sp.svg") no-repeat center center;
  }
}
@media screen and (min-width: 481px) {
  .c-button03 {
    transition: 0.4s;
  }
  .c-button03:hover {
    color: #fff;
    text-decoration: none;
  }
  .c-button03:hover:before {
    width: 100%;
  }
  .c-button03:hover .arrow {
    transform: translate(5px, -50%);
  }
  .c-button03:hover .arrow:after {
    background: url("../images/common/arrow_w.svg") no-repeat center center;
  }
}

.c-more-links {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: -moz-fit-content;
  width: fit-content;
}
.c-more-links .link-txt {
  color: #373737;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.84px;
  font-weight: 700;
  white-space: nowrap;
  padding-right: 7.3rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-more-links .link-txt {
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: 1.44px;
    font-weight: 700;
    padding-right: 10.5rem;
  }
}
.c-more-links .arrow {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 6rem;
  height: 6rem;
  background: #373737;
  border-radius: 100%;
  transition: 0.2s;
}
@media screen and (max-width: 480px) {
  .c-more-links .arrow {
    width: 8.6rem;
    height: 8.6rem;
  }
}
.c-more-links .arrow:after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url(../images/common/arrow_w.svg) no-repeat center center;
  background-size: 100% 100% !important;
  width: 2.9rem;
  height: 2.9rem;
}
@media screen and (max-width: 480px) {
  .c-more-links .arrow:after {
    width: 3.6rem;
    height: 3.6rem;
  }
}
@media screen and (min-width: 481px) {
  .c-more-links:hover {
    text-decoration: none;
  }
  .c-more-links:hover .arrow {
    width: 6.4rem;
    height: 6.4rem;
  }
  .c-more-links:hover .arrow:after {
    animation: arrow-slide 0.4s forwards ease-in-out;
  }
}

.c-tbl {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
.c-tbl tr:last-of-type th, .c-tbl tr:last-of-type td {
  border-bottom: none;
}
.c-tbl th, .c-tbl td {
  text-align: left;
  padding: 3rem 0;
  border-bottom: 1px dashed #AAA;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-tbl th, .c-tbl td {
    display: block;
  }
}
.c-tbl th {
  width: 24rem;
  font-size: 1.6rem;
  line-height: 1.625;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-tbl th {
    width: 100%;
    padding-top: 3.4rem;
    padding-bottom: 3.4rem;
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 700;
    border-bottom: none;
  }
}
.c-tbl td {
  width: calc(100% - 24rem);
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .c-tbl td {
    width: 100%;
    padding-top: 0;
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 400;
  }
}
.c-tbl td .ttl {
  margin-top: 2rem;
  font-size: 1.6rem;
  line-height: 1.625;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-tbl td .ttl {
    margin-top: 2.8rem;
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 700;
  }
}
.c-tbl td .ttl:nth-of-type(1) {
  margin-top: 0;
}
.c-tbl td .txt {
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .c-tbl td .txt {
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 400;
  }
}
.c-tbl .white-space {
  white-space: nowrap;
}

/* sec-entry
---------------------------------------------------------------------------- */
.sec-entry {
  position: relative;
  aspect-ratio: 1540/666;
  border-radius: 12rem 12rem 0 0;
  background: url("../images/recruit_top/img_entry.jpg") no-repeat center top;
  background-size: cover !important;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .sec-entry {
    aspect-ratio: 750/527;
    border-radius: 10rem 10rem 0 0;
    background: url("../images/recruit_top/img_entry_sp.jpg") no-repeat center top;
  }
}
.sec-entry .entry-links {
  display: block;
  width: 100%;
  height: 100%;
  /*		padding: 26.5rem 0 16rem 0;*/
}
.sec-entry .entry-links .l-inner {
  position: relative;
  width: 100%;
  height: 100%;
}
.sec-entry .entry-links .entry-btn {
  position: absolute;
  right: 2rem;
  bottom: 16rem;
  padding-bottom: 12.3rem;
  padding-right: 6.7rem;
  transform: translateX(0);
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .sec-entry .entry-links .entry-btn {
    right: auto;
    left: 17.7rem;
    bottom: 18.5rem;
    padding-bottom: 0;
    padding-right: 1.6rem;
  }
}
.sec-entry .entry-links .entry-btn .jp-txt {
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 700;
  margin-bottom: 0.8rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .sec-entry .entry-links .entry-btn .jp-txt {
    font-size: 2.8rem;
    line-height: 1;
    font-weight: 700;
  }
}
.sec-entry .entry-links .entry-btn .en-txt {
  color: #fff;
  font-size: 10rem;
  line-height: 1;
  font-weight: 700;
  transition: 0.4s;
}
.sec-entry .entry-links .entry-btn .arrow {
  position: absolute;
  right: 0.7rem;
  top: 4.8rem;
  width: 4.7rem;
  height: 4.7rem;
  border: 1px solid #fff;
  border-radius: 100%;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .sec-entry .entry-links .entry-btn .arrow {
    right: 0.7rem;
    top: 4.8rem;
    width: 7rem;
    height: 7rem;
  }
}
.sec-entry .entry-links .entry-btn .arrow:after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 2.5rem;
  height: 2.5rem;
}
.sec-entry .entry-links .deco {
  position: absolute;
  left: 6.4rem;
  bottom: 40rem;
  width: 54.1rem;
}
@media screen and (max-width: 480px) {
  .sec-entry .entry-links .deco {
    width: 56.2rem;
    left: 9.4rem;
    bottom: 16rem;
  }
}
.sec-entry .entry-links .deco .img {
  position: absolute;
  width: 100%;
  max-width: inherit;
  transition: 0.4s;
}
.sec-entry .entry-links .deco .img.off {
  z-index: 2;
}
.sec-entry .entry-links .deco .img.on {
  z-index: 1;
}
@media screen and (min-width: 481px) {
  .sec-entry .entry-links:hover {
    text-decoration: none;
  }
  .sec-entry .entry-links:hover .entry-btn {
    transform: translateX(10px);
  }
  .sec-entry .entry-links:hover .entry-btn .jp-txt, .sec-entry .entry-links:hover .entry-btn .en-txt {
    color: #FFE84D;
  }
  .sec-entry .entry-links:hover .entry-btn .arrow {
    border-color: #FFE84D;
  }
  .sec-entry .entry-links:hover .entry-btn .arrow:after {
    background: url("../images/common/arrow_y.svg") no-repeat center center;
  }
  .sec-entry .entry-links:hover .deco .img.off {
    opacity: 0;
  }
}

/* c-contact-wrap
---------------------------------------------------------------------------- */
.c-contact-wrap {
  padding: 12.9rem 0 11.5rem 0;
  border-radius: 10rem 10rem 0 0;
  background: #FFE627;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap {
    padding: 7.8rem 0 8.2rem 0;
    border-radius: 8rem 8rem 0 0;
  }
}
.c-contact-wrap .sec-inner {
  width: 100%;
  max-width: 120rem;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner {
    max-width: inherit;
    padding: 0 3.5rem;
    box-sizing: border-box;
    flex-direction: column;
  }
}
.c-contact-wrap .sec-inner .sec-head {
  position: relative;
  width: calc(100% - 93rem);
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-head {
    width: 100%;
    padding-bottom: 5.4rem;
    margin-bottom: 4rem;
  }
  .c-contact-wrap .sec-inner .sec-head:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    content: "";
    width: 100%;
    height: 1px;
    border-bottom: 1px dotted #878787;
  }
}
.c-contact-wrap .sec-inner .sec-head .title {
  font-size: 2.4rem;
  line-height: 1.4166666667;
  font-weight: 700;
  margin-bottom: 2rem;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-head .title {
    text-align: center;
    font-size: 3.8rem;
    line-height: 1.3421052632;
    font-weight: 700;
    margin-bottom: 5rem;
  }
}
.c-contact-wrap .sec-inner .sec-head .txt {
  font-size: 1.4rem;
  line-height: 2.3571428571;
  font-weight: 400;
  padding-right: 1rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-head .txt {
    text-align: center;
    font-size: 2.6rem;
    line-height: 1.7307692308;
    font-weight: 400;
    padding-right: 0;
  }
}
.c-contact-wrap .sec-inner .sec-cnts {
  position: relative;
  width: 93rem;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  transform: translateX(4.5rem);
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts {
    width: 100%;
    flex-direction: column;
    transform: translateX(0);
    gap: 10.1rem 0;
  }
}
.c-contact-wrap .sec-inner .sec-cnts:after {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  content: "";
  width: 1px;
  height: 100%;
  border-right: 1px dotted #878787;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts:after {
    top: 50%;
    transform: translateY(-50%, -50%);
    width: 100%;
    height: 1px;
    border-bottom: 1px dotted #878787;
    border-right: none;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box {
  position: relative;
  width: 50%;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box {
    width: 100%;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box .ttl {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 700;
  margin-bottom: 2rem;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box .ttl {
    font-size: 3.2rem;
    line-height: 1;
    font-weight: 700;
    margin-bottom: 2.6rem;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box .txt {
  text-align: center;
  color: #231815;
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box .txt {
    font-size: 2.2rem;
    line-height: 2.0454545455;
    font-weight: 400;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box .btn_wrap {
  margin-top: 2.2rem;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box .btn_wrap {
    margin-top: 3.5rem;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box .btn_wrap .c-button02 {
  margin: 0 auto;
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box.-form .c-button02 .ico {
  position: relative;
  padding-left: 3.6rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-form .c-button02 .ico {
    padding-left: 5.8rem;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box.-form .c-button02 .ico:before {
  position: absolute;
  top: -0.1rem;
  left: 0;
  display: inline-block;
  content: "";
  background: url("../images/common/ico_mail.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 3.2rem;
  height: 3.2rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-form .c-button02 .ico:before {
    top: -0.4rem;
    width: 5.2rem;
    height: 5.2rem;
  }
}
@media screen and (min-width: 481px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-form:hover .c-button02 .ico:before {
    background: url("../images/common/ico_mail_w.svg") no-repeat center center;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel .c-button02 {
  font-size: 2.4rem;
  line-height: 1.1666666667;
  letter-spacing: 1.44px;
  font-weight: 700;
  font-style: italic;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel .c-button02 {
    font-size: 3.8rem;
    line-height: 1;
    letter-spacing: 2.28px;
    font-weight: 700;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel .c-button02 .ico {
  position: relative;
  padding-left: 3rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel .c-button02 .ico {
    padding-left: 4.7rem;
  }
}
.c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel .c-button02 .ico:before {
  position: absolute;
  top: 0.5rem;
  left: 0;
  display: inline-block;
  content: "";
  background: url("../images/common/ico_phone_w.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 2.1rem;
  height: 2.1rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel .c-button02 .ico:before {
    top: 0.5rem;
    width: 3.3rem;
    height: 3.3rem;
  }
}
@media screen and (min-width: 481px) {
  .c-contact-wrap .sec-inner .sec-cnts .contact-box.-tel:hover .c-button02 .ico:before {
    background: url("../images/common/ico_phone.svg") no-repeat center center;
  }
}

/* breadcrumb
---------------------------------------------------------------------------- */
.breadcrumb_wrap {
  width: 100%;
  max-width: 134rem;
  margin: 19.7rem auto 4.3rem auto;
  padding: 0 7rem;
}
@media screen and (max-width: 480px) {
  .breadcrumb_wrap {
    max-width: inherit;
    margin: 18.7rem auto 3.8rem auto;
    padding: 1rem 4rem 3rem 4rem;
    overflow: auto;
    box-sizing: border-box;
  }
}
.breadcrumb_wrap .breadcrumb__list {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 4rem;
}
@media screen and (max-width: 480px) {
  .breadcrumb_wrap .breadcrumb__list {
    width: -moz-max-content;
    width: max-content;
    gap: 0 5rem;
    margin: 0 0 0 auto;
  }
}
.breadcrumb_wrap .breadcrumb__list .breadcrumb__item {
  position: relative;
}
.breadcrumb_wrap .breadcrumb__list .breadcrumb__item:not(:last-of-type):after {
  position: absolute;
  right: -2.5rem;
  top: 1.4rem;
  display: block;
  content: "";
  width: 1.3rem;
  height: 1px;
  background: #9D9D9D;
  transform: rotate(-55deg);
}
@media screen and (max-width: 480px) {
  .breadcrumb_wrap .breadcrumb__list .breadcrumb__item:not(:last-of-type):after {
    right: -3rem;
    width: 2.1rem;
  }
}
.breadcrumb_wrap .breadcrumb__list .breadcrumb__item span {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.64px;
  font-weight: 600;
}
@media screen and (max-width: 480px) {
  .breadcrumb_wrap .breadcrumb__list .breadcrumb__item span {
    font-size: 2.4rem;
    line-height: 1;
    letter-spacing: 0.96px;
    font-weight: 600;
    white-space: nowrap;
  }
}
.breadcrumb_wrap .breadcrumb__list .breadcrumb__item a {
  text-decoration: none;
}
.breadcrumb_wrap .breadcrumb__list .breadcrumb__item a span {
  color: #919191;
}
@media screen and (min-width: 481px) {
  .breadcrumb_wrap .breadcrumb__list .breadcrumb__item a:hover span {
    color: #000;
  }
}

.page-corporate .breadcrumb_wrap {
  width: 100%;
  max-width: 105rem;
  margin: 0 auto;
  padding: 0;
}
.page-corporate .breadcrumb_wrap .breadcrumb__list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 3rem;
}
@media screen and (max-width: 480px) {
  .page-corporate .breadcrumb_wrap .breadcrumb__list {
    margin: 0 0 0 0;
  }
}
.page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item:not(:last-of-type):after {
  right: -2rem;
}
@media screen and (max-width: 480px) {
  .page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item:not(:last-of-type):after {
    top: 2.8rem;
    right: -2.4rem;
  }
}
.page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item span {
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item span {
    font-size: 2.4rem;
    line-height: 2.125;
    font-weight: 400;
    white-space: nowrap;
  }
}
.page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item span .en {
  color: #373737;
  font-size: 1.5rem;
  line-height: 1.8666666667;
  letter-spacing: 0.6px;
  font-weight: 700;
  margin-right: 1rem;
}
@media screen and (max-width: 480px) {
  .page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item span .en {
    font-size: 2.6rem;
    line-height: 1.9615384615;
    letter-spacing: 1.04px;
    font-weight: 700;
    margin-right: 1.2rem;
  }
}
.page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item a {
  text-decoration: none;
}
.page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item a span {
  color: #919191;
  font-size: 1.5rem;
  line-height: 1.8666666667;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item a span {
    font-size: 2.4rem;
    line-height: 2.125;
    font-weight: 700;
  }
}
@media screen and (min-width: 481px) {
  .page-corporate .breadcrumb_wrap .breadcrumb__list .breadcrumb__item a:hover span {
    color: #000;
  }
}

/* c-pagetitle
---------------------------------------------------------------------------- */
.c-pagetitle {
  position: relative;
  width: 100%;
}
.c-pagetitle .lead-txt {
  width: 100%;
  max-width: 134rem;
  padding: 0 7rem;
  margin: 0 auto 2.8rem auto;
  color: #323030;
  font-size: 3.4rem;
  line-height: 1.7647058824;
  letter-spacing: 2.72px;
  font-weight: 700;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-pagetitle .lead-txt {
    max-width: inherit;
    padding: 0 4rem;
    margin: 0 auto 3.5rem auto;
    font-size: 3rem;
    line-height: 1.6666666667;
    letter-spacing: 2.4px;
    font-weight: 700;
  }
}
.c-pagetitle .sec-inner {
  position: relative;
}
.c-pagetitle .sec-inner .title-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 5.3rem;
  margin: 0 auto;
  z-index: 2;
  /* 画像をまとめているグループ */
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .title-wrap {
    bottom: 7rem;
  }
}
.c-pagetitle .sec-inner .title-wrap .slider-container {
  overflow: hidden;
  width: 100%;
}
.c-pagetitle .sec-inner .title-wrap .slider-track {
  display: flex;
  width: -moz-max-content;
  width: max-content; /* 中身の合計幅に自動で合わせる */
  animation: scroll-left 30s linear infinite;
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .title-wrap .slider-track {
    animation: scroll-left 20s linear infinite;
  }
}
.c-pagetitle .sec-inner .title-wrap .slider-group {
  display: flex;
  gap: 4rem; /* 画像と画像の間の余白 */
  padding-right: 4rem; /* ループのつなぎ目の余白（gapと同じ値にする） */
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .title-wrap .slider-group {
    gap: 3rem;
    padding-right: 3rem;
  }
}
.c-pagetitle .sec-inner .title-wrap .title {
  font-size: 14rem;
  line-height: 1;
  font-weight: 500;
  font-style: italic;
  white-space: nowrap;
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .title-wrap .title {
    font-size: 8rem;
    line-height: 1;
    font-weight: 500;
  }
}
.c-pagetitle .sec-inner .bg-img {
  position: relative;
  width: 100%;
  max-width: 134rem;
  margin: 0 auto;
  z-index: 1;
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .bg-img {
    width: calc(100% - 8rem);
    max-width: inherit;
  }
}
.c-pagetitle .sec-inner .bg-img .mask-container {
  position: relative;
  width: 100%;
  aspect-ratio: 1340/630;
  mask-image: url("../images/common/mask_pagettl.svg"); /* 標準仕様 */
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMzQwIDYzMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PHBhdGggZD0iTTAgMTIwQzAgNTMuNzI1NSA1My43MjU1IDAgMTIwIDBIMTMxMEMxMzI2LjU3IDAgMTM0MCAxMy40MzE1IDEzNDAgMzBWNTEwQzEzNDAgNTc2LjI3NCAxMjg2LjI3IDYzMCAxMjIwIDYzMEgzMEMxMy40MzE0IDYzMCAwIDYxNi41NjkgMCA2MDBWMTIwWiIgZmlsbD0iIzAwMCIvPjwvc3ZnPg==");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMzQwIDYzMCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+PHBhdGggZD0iTTAgMTIwQzAgNTMuNzI1NSA1My43MjU1IDAgMTIwIDBIMTMxMEMxMzI2LjU3IDAgMTM0MCAxMy40MzE1IDEzNDAgMzBWNTEwQzEzNDAgNTc2LjI3NCAxMjg2LjI3IDYzMCAxMjIwIDYzMEgzMEMxMy40MzE0IDYzMCAwIDYxNi41NjkgMCA2MDBWMTIwWiIgZmlsbD0iIzAwMCIvPjwvc3ZnPg==");
  overflow: hidden;
  /* マスクの位置とサイズ調整 */
  -webkit-mask-size: contain;
  mask-size: contain; /* 枠線内にSVGを収める（枠いっぱいは cover） */
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat; /* マスクをループさせない */
  -webkit-mask-position: center;
  mask-position: center; /* マスクを中央配置 */
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .bg-img .mask-container {
    aspect-ratio: 670/352;
  }
}
.c-pagetitle .sec-inner .bg-img .mask-container .masked-image {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
}
.c-pagetitle .sec-inner .bg-img .team-txt {
  position: absolute;
  left: 0;
  top: 0;
  width: 22.7rem;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  border-radius: 0 0 3rem 0;
  padding: 2rem 0;
  box-sizing: border-box;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .c-pagetitle .sec-inner .bg-img .team-txt {
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 700;
    padding: 1.9rem 0;
  }
}

.c-pagetitle02 {
  position: relative;
  padding: 25rem 0 10.7rem 0;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02 {
    padding: 22rem 0 5.7rem 0;
  }
}
.c-pagetitle02:before, .c-pagetitle02:after {
  position: absolute;
  top: 0;
  display: block;
  content: "";
  background-size: 100% auto !important;
  z-index: 1;
  animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}
.c-pagetitle02:before {
  left: 0;
  background: url("../images/common/deco01.png") no-repeat center center;
  width: 40.9rem;
  height: 58.6rem;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02:before {
    background: url("../images/common/deco01_sp.png") no-repeat center center;
    width: 36.7rem;
    height: 66.6rem;
  }
}
.c-pagetitle02:after {
  top: 14.7rem;
  right: 0;
  background: url("../images/common/deco02.png") no-repeat center center;
  width: 24.3rem;
  height: 40.3rem;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02:after {
    top: 22.2rem;
    background: url("../images/common/deco02_sp.png") no-repeat center center;
    width: 17.4rem;
    height: 46rem;
  }
}
.c-pagetitle02 .sec-inner {
  position: relative;
  width: 100%;
  max-width: 102.4rem;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 9.9rem;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02 .sec-inner {
    max-width: inherit;
    flex-direction: column;
    gap: 5.4rem 0;
    padding: 0 11rem;
  }
}
.c-pagetitle02 .sec-inner .title .en-ttl {
  font-size: 8.8rem;
  line-height: 1;
  letter-spacing: 1.76px;
  font-weight: 700;
  color: #373737;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02 .sec-inner .title .en-ttl {
    font-size: 7.2rem;
    line-height: 1;
    letter-spacing: 1.44px;
    font-weight: 800;
  }
}
.c-pagetitle02 .sec-inner .title .jp-ttl {
  font-size: 1.4rem;
  line-height: 2.4285714286;
  font-weight: 500;
  color: #373737;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02 .sec-inner .title .jp-ttl {
    margin-top: 0.3rem;
    font-size: 2.2rem;
    line-height: 1.5454545455;
    font-weight: 500;
  }
}
.c-pagetitle02 .sec-inner .lead-txt {
  padding-top: 1rem;
  font-size: 1.5rem;
  line-height: 2.1333333333;
  font-weight: 400;
  color: #373737;
}
@media screen and (max-width: 480px) {
  .c-pagetitle02 .sec-inner .lead-txt {
    padding-top: 0;
    font-size: 2.6rem;
    line-height: 1.8461538462;
    font-weight: 400;
  }
}

.c-pagetitle03 {
  position: relative;
  padding: 20.3rem 0 4.3rem 0;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-pagetitle03 {
    padding: 19.2rem 0 5rem 0;
  }
}
.c-pagetitle03 .sec-inner {
  position: relative;
  width: 100%;
  max-width: 144rem;
  aspect-ratio: 1440/521;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  margin: 0 auto;
  background: rgba(0, 0, 0, 0.05);
  border-radius: 2rem;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-pagetitle03 .sec-inner {
    width: calc(100% - 8rem);
    max-width: inherit;
    aspect-ratio: 670/261;
    border-radius: 1rem;
  }
}
.c-pagetitle03 .sec-inner .title {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex-wrap: nowrap;
  align-content: stretch;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 0 11.6rem;
  box-sizing: border-box;
  z-index: 3;
}
@media screen and (max-width: 480px) {
  .c-pagetitle03 .sec-inner .title {
    padding: 0 4rem;
  }
}
.c-pagetitle03 .sec-inner .title .en-ttl {
  text-align: right;
  font-size: 5.2rem;
  line-height: 1;
  letter-spacing: 1.04px;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-pagetitle03 .sec-inner .title .en-ttl {
    font-size: 4.2rem;
    line-height: 1;
    letter-spacing: 0.84px;
    font-weight: 700;
  }
}
.c-pagetitle03 .sec-inner .title .jp-ttl {
  margin-top: 0.8rem;
  text-align: right;
  font-size: 1.6rem;
  line-height: 2.125;
  font-weight: 500;
  color: #373737;
}
@media screen and (max-width: 480px) {
  .c-pagetitle03 .sec-inner .title .jp-ttl {
    margin-top: 1.4rem;
    font-size: 2rem;
    line-height: 1.05;
    font-weight: 500;
  }
}
.c-pagetitle03 .sec-inner .pagettl__img {
  position: relative;
  z-index: 1;
}
.c-pagetitle03 .sec-inner .deco {
  position: absolute;
  top: 50%;
  transform: translateY(-53%);
  animation: floating-y02 1.8s ease-in-out infinite alternate-reverse;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .c-pagetitle03 .sec-inner .deco {
    animation: none;
  }
}

/* c-page-index
---------------------------------------------------------------------------- */
.c-page-index {
  position: relative;
  width: 100%;
  max-width: 134rem;
  margin: 0 auto;
  padding: 5rem 15rem;
  border-radius: 2.4rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .c-page-index {
    width: calc(100% - 8rem);
    margin-left: auto;
    margin-right: auto;
    max-width: inherit;
    padding: 2.8rem 3.7rem;
  }
}
.c-page-index .ttl {
  text-align: center;
  color: #fff;
  font-size: 3.2rem;
  line-height: 1.5;
  letter-spacing: 3.2px;
  font-weight: 800;
  margin-bottom: 3rem;
}
@media screen and (max-width: 480px) {
  .c-page-index .ttl {
    font-size: 3.6rem;
    line-height: 1.3333333333;
    letter-spacing: 3.6px;
    font-weight: 800;
    margin-bottom: 1rem;
  }
}
.c-page-index .index-list-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0 3.4rem;
}
@media screen and (max-width: 480px) {
  .c-page-index .index-list-wrap {
    flex-direction: column;
    gap: 0 0;
  }
}
.c-page-index .index-list-wrap .index-list .index-list__item {
  position: relative;
  width: -moz-max-content;
  width: max-content;
  padding: 1.5rem 0;
}
@media screen and (max-width: 480px) {
  .c-page-index .index-list-wrap .index-list .index-list__item {
    width: auto;
  }
}
.c-page-index .index-list-wrap .index-list .index-list__item:after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  content: "";
  width: 0;
  height: 1px;
  background: #fff;
  transition: 0.4s;
}
.c-page-index .index-list-wrap .index-list .index-list__item a {
  position: relative;
  color: #fff;
  display: inline-block;
  font-size: 2.2rem;
  line-height: 1;
  font-weight: 700;
  padding-left: 2.2rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .c-page-index .index-list-wrap .index-list .index-list__item a {
    font-size: 2.6rem;
    line-height: 1.6;
    font-weight: 700;
    padding-left: 2.7rem;
  }
}
.c-page-index .index-list-wrap .index-list .index-list__item a:before {
  position: absolute;
  left: 0;
  top: 0.7rem;
  display: block;
  content: "";
  width: 1.3rem;
  height: 1.3rem;
  border-radius: 100%;
}
@media screen and (max-width: 480px) {
  .c-page-index .index-list-wrap .index-list .index-list__item a:before {
    top: 1.4rem;
  }
}
.c-page-index .index-list-wrap .index-list .index-list__item a .num {
  margin-right: 0.8rem;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .c-page-index .index-list-wrap .index-list .index-list__item a .num {
    font-size: 2.8rem;
    line-height: 1;
    font-weight: 800;
  }
}
@media screen and (min-width: 481px) {
  .c-page-index .index-list-wrap .index-list .index-list__item:hover:after {
    width: 100%;
  }
  .c-page-index .index-list-wrap .index-list .index-list__item:hover a {
    text-decoration: none;
    transform: translateY(-5px);
  }
}
.c-page-index .index-list-wrap .index-list.-number .index-list__item a {
  padding-left: 0;
}
@media screen and (max-width: 480px) {
  .c-page-index .index-list-wrap .index-list.-number .index-list__item a {
    text-indent: -5.2rem;
    margin-left: 5.2rem;
  }
}
.c-page-index .index-list-wrap .index-list.-number .index-list__item a:before {
  display: none;
}

/* c-pager
---------------------------------------------------------------------------- */
.c-pager {
  margin-top: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 2rem 2rem;
}
.c-pager a, .c-pager span {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  width: 3.7rem;
  height: 3.7rem;
  font-family: "Montserrat", sans-serif;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.7px;
  font-weight: 500;
  border-radius: 100%;
  box-sizing: border-box;
}
.c-pager .current {
  color: #fff;
}
.c-pager .dotted {
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  border: none;
}
@media screen and (min-width: 481px) {
  .c-pager a:hover {
    color: #fff;
    transition: 0.4s;
    text-decoration: none;
  }
}

/* contact form
---------------------------------------------------------------------------- */
.form_style {
  /* error */
}
.form_style .input-box {
  width: 100%;
  max-width: 102.4rem;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  padding: 3.8rem 0 3rem 0;
  border-bottom: 1px solid #D9D9D9;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style .input-box {
    flex-wrap: wrap;
    gap: 3rem 0;
    max-width: inherit;
    padding: 3.7rem 0 4.6rem 0;
  }
}
.form_style .form_ttl {
  position: relative;
  top: 1rem;
  display: block;
  width: 28.6rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style .form_ttl {
    top: 0;
    width: 100%;
  }
}
.form_style .form_ttl.-top00 {
  top: 0;
}
.form_style .form_ttl .required {
  position: relative;
  margin-top: 0.7rem;
  display: inline-block;
  font-size: 1.3rem;
  line-height: 1;
  font-weight: 500;
  padding: 0.55rem 1rem;
  border-radius: 0.5rem;
  background: #FFE310;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style .form_ttl .required {
    margin-top: 0;
    top: -0.2rem;
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 500;
    padding: 1rem 1.5rem;
  }
}
.form_style .form_ttl .any {
  position: relative;
  margin-top: 0.8rem;
  display: block;
  text-align: center;
  width: 4.8rem;
  font-size: 1.3rem;
  line-height: 1;
  font-weight: 500;
  padding: 0.55rem 0.2rem;
  border-radius: 0.5rem;
  background: #fff;
  border: 1px solid #262626;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style .form_ttl .any {
    display: inline-block;
    width: auto;
    margin-top: 0;
    top: -0.2rem;
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 500;
    padding: 1rem 1.5rem;
  }
}
.form_style .form_ttl .ttl {
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-weight: 700;
  padding-right: 1.3rem;
}
@media screen and (max-width: 480px) {
  .form_style .form_ttl .ttl {
    font-size: 2.8rem;
    line-height: 1.8214285714;
    font-weight: 700;
    padding-right: 2.4rem;
  }
}
.form_style .form_ttl .note {
  display: block;
  margin-top: 2.3rem;
  font-size: 1.3rem;
  line-height: 2.1538461538;
  font-weight: 400;
  padding-right: 3.5rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style .form_ttl .note {
    margin-top: 2.8rem;
    font-size: 2.4rem;
    line-height: 1.8333333333;
    font-weight: 400;
    padding-right: 0;
  }
}
.form_style .form_input {
  width: calc(100% - 28.6rem);
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 480px) {
  .form_style .form_input {
    width: 100%;
    font-size: 2.8rem;
    line-height: 1.5714285714;
    font-weight: 400;
  }
}
.form_style input, .form_style textarea {
  width: 100%;
  color: #000;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  border-radius: 0.5rem;
  border: 1px solid rgba(38, 38, 38, 0.2);
  background: #FBFBFB;
  padding: 1.6rem 3.5rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style input, .form_style textarea {
    font-size: 2.8rem;
    line-height: 1.1428571429;
    font-weight: 400;
    padding: 3.2rem 2.8rem;
  }
}
.form_style input::-moz-placeholder, .form_style textarea::-moz-placeholder {
  color: rgba(38, 38, 38, 0.3);
}
.form_style input::placeholder, .form_style textarea::placeholder {
  color: rgba(38, 38, 38, 0.3);
}
.form_style input.small-width, .form_style textarea.small-width {
  width: 26.5rem;
  padding: 1.6rem 3rem;
}
@media screen and (max-width: 480px) {
  .form_style input.small-width, .form_style textarea.small-width {
    width: 100%;
    padding: 3.2rem 2.8rem;
  }
}
.form_style textarea {
  height: 17.2rem;
  resize: vertical;
  word-break: initial;
}
@media screen and (max-width: 480px) {
  .form_style textarea {
    height: 26rem;
    font-size: 2.8rem;
    line-height: 1.5714285714;
    font-weight: 400;
  }
}
.form_style .radio-wrap .form-control .list-item,
.form_style .checkbox-wrap .form-control .list-item {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
}
.form_style .radio-wrap .form-control .list-item + .list-item,
.form_style .checkbox-wrap .form-control .list-item + .list-item {
  margin-top: 1.5rem;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item + .list-item,
  .form_style .checkbox-wrap .form-control .list-item + .list-item {
    margin-top: 2rem;
  }
}
.form_style .radio-wrap .form-control .list-item label,
.form_style .checkbox-wrap .form-control .list-item label {
  display: block;
}
.form_style .radio-wrap .form-control .list-item .list-item-label,
.form_style .checkbox-wrap .form-control .list-item .list-item-label {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  padding-left: 3.5rem;
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item .list-item-label,
  .form_style .checkbox-wrap .form-control .list-item .list-item-label {
    font-size: 2.6rem;
    line-height: 1.7692307692;
    font-weight: 400;
    padding-left: 5rem;
  }
}
.form_style .radio-wrap .form-control .list-item .list-item-label:before, .form_style .radio-wrap .form-control .list-item .list-item-label:after,
.form_style .checkbox-wrap .form-control .list-item .list-item-label:before,
.form_style .checkbox-wrap .form-control .list-item .list-item-label:after {
  position: absolute;
  left: 0;
  top: 0.3rem;
  display: block;
  content: "";
  border-radius: 100%;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item .list-item-label:before, .form_style .radio-wrap .form-control .list-item .list-item-label:after,
  .form_style .checkbox-wrap .form-control .list-item .list-item-label:before,
  .form_style .checkbox-wrap .form-control .list-item .list-item-label:after {
    top: 0.3rem;
  }
}
.form_style .radio-wrap .form-control .list-item .list-item-label:before,
.form_style .checkbox-wrap .form-control .list-item .list-item-label:before {
  width: 2.1rem;
  height: 2.1rem;
  border: 1px solid #262626;
  background: #F6F6F6;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item .list-item-label:before,
  .form_style .checkbox-wrap .form-control .list-item .list-item-label:before {
    width: 3rem;
    height: 3rem;
  }
}
.form_style .radio-wrap .form-control .list-item .list-item-label:after,
.form_style .checkbox-wrap .form-control .list-item .list-item-label:after {
  top: 0.7rem;
  left: 0.4rem;
  width: 1.3rem;
  height: 1.3rem;
  background: #262626;
  opacity: 0;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item .list-item-label:after,
  .form_style .checkbox-wrap .form-control .list-item .list-item-label:after {
    top: 0.95rem;
    left: 0.6rem;
    width: 1.7rem;
    height: 1.7rem;
  }
}
.form_style .radio-wrap .form-control .list-item.-space,
.form_style .checkbox-wrap .form-control .list-item.-space {
  margin-right: 22rem;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item.-space,
  .form_style .checkbox-wrap .form-control .list-item.-space {
    margin-right: 0;
  }
}
.form_style .radio-wrap .form-control .list-item.-space02,
.form_style .checkbox-wrap .form-control .list-item.-space02 {
  margin-right: 15rem;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item.-space02,
  .form_style .checkbox-wrap .form-control .list-item.-space02 {
    margin-right: 0;
  }
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item.-sp_space,
  .form_style .checkbox-wrap .form-control .list-item.-sp_space {
    margin-right: 22rem;
  }
  .form_style .radio-wrap .form-control .list-item.-sp_space02,
  .form_style .checkbox-wrap .form-control .list-item.-sp_space02 {
    margin-right: 18rem;
  }
}
.form_style .radio-wrap .form-control .list-item .form-control-wrap.-other input,
.form_style .checkbox-wrap .form-control .list-item .form-control-wrap.-other input {
  width: 29.7rem;
  padding: 0.8rem 3.1rem;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control .list-item .form-control-wrap.-other input,
  .form_style .checkbox-wrap .form-control .list-item .form-control-wrap.-other input {
    width: 40.6rem;
    padding: 2.1rem 2.6rem;
  }
}
.form_style .radio-wrap .form-control.-flex,
.form_style .checkbox-wrap .form-control.-flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 1.2rem 3.6rem;
}
@media screen and (max-width: 480px) {
  .form_style .radio-wrap .form-control.-flex,
  .form_style .checkbox-wrap .form-control.-flex {
    gap: 2.8rem 2.8rem;
  }
}
.form_style .radio-wrap .form-control.-flex .list-item + .list-item,
.form_style .checkbox-wrap .form-control.-flex .list-item + .list-item {
  margin-top: 0;
}
.form_style .radio-wrap input[type=radio],
.form_style .checkbox-wrap input[type=radio] {
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  visibility: hidden;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  margin: 0;
  padding: 0;
  border: none;
  cursor: pointer;
}
.form_style .radio-wrap input[type=radio]:checked:after,
.form_style .checkbox-wrap input[type=radio]:checked:after {
  opacity: 1;
}
.form_style .radio-wrap input[type=radio]:checked + .list-item-label:after,
.form_style .checkbox-wrap input[type=radio]:checked + .list-item-label:after {
  opacity: 1;
}
.form_style .checkbox-wrap .form-control .list-item .list-item-label {
  padding-left: 3.5rem;
}
@media screen and (max-width: 480px) {
  .form_style .checkbox-wrap .form-control .list-item .list-item-label {
    padding-left: 3.9rem;
  }
}
.form_style .checkbox-wrap .form-control.-flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 1.2rem 3.6rem;
}
@media screen and (max-width: 480px) {
  .form_style .checkbox-wrap .form-control.-flex {
    gap: 2.1rem 2.8rem;
  }
}
.form_style .checkbox-wrap .form-control.-flex .list-item + .list-item {
  margin-top: 0;
}
.form_style .checkbox-wrap .form-control input[type=checkbox] {
  visibility: hidden;
  width: 1px !important;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 !important;
  margin: 0 !important;
}
.form_style .checkbox-wrap .form-control input[type=checkbox] + .list-item-label:before {
  top: 0.2rem;
  left: 0;
  width: 2.4rem;
  height: 2.4rem;
  background: #F6F6F6;
  border: 1px solid #373737;
  border-radius: 0.5rem;
}
@media screen and (max-width: 480px) {
  .form_style .checkbox-wrap .form-control input[type=checkbox] + .list-item-label:before {
    top: 0.2rem;
    width: 3.1rem;
    height: 3.1rem;
  }
}
.form_style .checkbox-wrap .form-control input[type=checkbox]:checked + .list-item-label:after {
  top: 0.5rem;
  left: 0.8rem;
  width: 0.8rem;
  height: 1.4rem;
  transform: rotate(45deg);
  border-right: 2px solid #373737;
  border-bottom: 2px solid #373737;
  background: none;
  border-radius: 0;
  opacity: 1;
}
@media screen and (max-width: 480px) {
  .form_style .checkbox-wrap .form-control input[type=checkbox]:checked + .list-item-label:after {
    top: 0.3rem;
    left: 0.8rem;
    width: 1.5rem;
    height: 2rem;
  }
}
.form_style .select-wrap {
  position: relative;
  top: 3rem;
  width: 100%;
  max-width: 44.6rem;
}
@media screen and (max-width: 480px) {
  .form_style .select-wrap {
    top: 0;
    max-width: inherit;
  }
}
.form_style .select-wrap:after {
  position: absolute;
  content: "";
  right: 2.7rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-color: #373737 transparent transparent transparent;
  border-width: 1rem 0.55rem 0 0.55rem;
  z-index: 2;
  pointer-events: none;
}
@media screen and (max-width: 480px) {
  .form_style .select-wrap:after {
    right: 3.3rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #373737 transparent transparent transparent;
    border-width: 2rem 1.05rem 0 1.05rem;
  }
}
.form_style .select-wrap .form-control-wrap {
  position: relative;
  width: 100%;
  padding: 0;
  box-sizing: border-box;
  z-index: 1;
}
@media screen and (max-width: 480px) {
  .form_style .select-wrap .form-control-wrap {
    max-width: inherit;
  }
}
.form_style .select-wrap select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  background: none;
  border: none;
  color: #373737;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  padding: 1.6rem 3.5rem;
  border-radius: 0.5rem;
  border: 1px solid rgba(55, 55, 55, 0.2);
  background: #FBFBFB;
  width: 100%;
  height: 100%;
  outline: none;
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .form_style .select-wrap select {
    font-size: 2.6rem;
    line-height: 2;
    font-weight: 400;
    padding: 2.7rem 5.3rem 2.7rem 4.2rem;
  }
}
.form_style .select-wrap option {
  color: #373737;
}
.form_style #datepicker {
  cursor: pointer;
}
.form_style .agree-wrap {
  margin: 7.5rem auto 0 auto;
  max-width: 102.4rem;
}
@media screen and (max-width: 480px) {
  .form_style .agree-wrap {
    margin: 8.4rem auto 0 auto;
    max-width: inherit;
  }
}
.form_style .agree-wrap .agree-txt {
  color: #373737;
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 400;
  margin-bottom: 2rem;
}
@media screen and (max-width: 480px) {
  .form_style .agree-wrap .agree-txt {
    font-size: 2.8rem;
    line-height: 1.9285714286;
    font-weight: 400;
    margin-bottom: 2.7rem;
  }
}
.form_style .agree-wrap a {
  font-weight: 700;
  text-decoration: underline;
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .form_style .agree-wrap a:hover {
    opacity: 0.7;
  }
}
.form_style .agree-wrap .form-control .list-item .list-item-label {
  padding-left: 4.2rem;
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .form_style .agree-wrap .form-control .list-item .list-item-label {
    padding-left: 4.2rem;
    font-size: 2.8rem;
    line-height: 1.1428571429;
    font-weight: 400;
  }
}
.form_style .agree-wrap .form-control input[type=checkbox] + .list-item-label:before {
  top: -0.3rem;
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 480px) {
  .form_style .agree-wrap .form-control input[type=checkbox] + .list-item-label:before {
    top: 0.6rem;
    width: 3.1rem;
    height: 3.1rem;
  }
}
.form_style .agree-wrap .form-control input[type=checkbox]:checked + .list-item-label:after {
  top: 0.1rem;
  left: 1rem;
  width: 1rem;
  height: 1.6rem;
}
@media screen and (max-width: 480px) {
  .form_style .agree-wrap .form-control input[type=checkbox]:checked + .list-item-label:after {
    top: 0.7rem;
    left: 0.8rem;
    width: 1.5rem;
    height: 2rem;
  }
}
.form_style .btn_wrap {
  position: relative;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 2rem;
  margin-top: 6rem;
}
@media screen and (max-width: 480px) {
  .form_style .btn_wrap {
    flex-direction: column;
    gap: 2rem 0;
  }
}
.form_style .btn_wrap .form-button {
  position: relative;
  width: 44.2rem;
  height: 8.6rem;
  margin: 0;
  border-radius: 5.85rem;
  background: #FFE310;
  box-sizing: border-box;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .form_style .btn_wrap .form-button {
    width: 55rem;
    height: 10.7rem;
    border-radius: 7.3rem;
  }
}
.form_style .btn_wrap .form-button:after {
  position: absolute;
  top: 50%;
  right: 4.2rem;
  display: block;
  content: "";
  pointer-events: none;
  transform: translateY(-50%);
  background: url("../images/common/btn_arrow.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 3.1rem;
  height: 2.5rem;
  z-index: 2;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .form_style .btn_wrap .form-button:after {
    right: 5rem;
    width: 3.9rem;
    height: 3.2rem;
  }
}
.form_style .btn_wrap .form-button .btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  width: 100%;
  height: 100%;
  text-align: center;
  padding: 2rem;
  color: #000;
  background: none;
  border: none;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  opacity: 1 !important;
  cursor: pointer;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .form_style .btn_wrap .form-button .btn {
    font-size: 2.8rem;
    line-height: 1;
    font-weight: 700;
  }
}
.form_style .btn_wrap .form-button .btn:disabled {
  pointer-events: none;
}
.form_style .btn_wrap .form-button.-disabled {
  pointer-events: none;
  background: rgba(38, 38, 38, 0.2);
}
.form_style .btn_wrap .form-button.-disabled .btn {
  pointer-events: none;
}
@media screen and (min-width: 481px) {
  .form_style .btn_wrap .form-button:hover {
    background: #262626;
    text-decoration: none;
  }
  .form_style .btn_wrap .form-button:hover .btn {
    color: #fff;
  }
  .form_style .btn_wrap .form-button:hover:after {
    transform: translate(1rem, -50%);
    background: url("../images/common/btn_arrow_w.svg") no-repeat center center;
  }
}
.form_style .btn_wrap .form-button.-back {
  background: rgba(38, 38, 38, 0.2);
}
.form_style .btn_wrap .form-button.-back:after {
  right: auto;
  left: 4.2rem;
  transform: translateY(-50%) scale(-1, 1);
}
@media screen and (max-width: 480px) {
  .form_style .btn_wrap .form-button.-back:after {
    right: 5rem;
    width: 3.9rem;
    height: 3.2rem;
  }
}
@media screen and (min-width: 481px) {
  .form_style .btn_wrap .form-button.-back:hover {
    background: #262626;
  }
  .form_style .btn_wrap .form-button.-back:hover:after {
    transform: translate(-1rem, -50%) scale(-1, 1);
  }
}
.form_style .error {
  display: block;
  margin-top: 0.8rem;
  text-align: left;
  color: #F8634A;
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .form_style .error {
    padding-left: 1rem;
    font-size: 2.8rem;
    line-height: 1.1428571429;
    font-weight: 400;
  }
}

@media screen and (max-width: 480px) {
  /* カレンダー全体の横幅を画面幅（または親要素）にフィットさせる */
  #ui-datepicker-div {
    width: 95% !important;
    max-width: 340px !important;
    left: 50% !important;
    transform: translateX(-50%); /* 画面の中央にポップアップ表示 */
    box-sizing: border-box;
    padding: 10px;
    font-size: 16px !important; /* スマホで文字が小さくならないように調整 */
  }
  /* 日付（マス目）を大きくしてタップしやすくする */
  .ui-datepicker td span,
  .ui-datepicker td a {
    padding: 10px 0 !important;
    text-align: center !important;
    display: block !important;
  }
  /* 「前月」「次月」ボタンを押しやすく拡大 */
  .ui-datepicker .ui-datepicker-prev,
  .ui-datepicker .ui-datepicker-next {
    top: 5px !important;
    padding: 5px !important;
    width: 40px !important;
    height: 30px !important;
  }
}
.-confirm .form_style .form_ttl {
  top: -0.3rem;
}
.-confirm .form_style .select-wrap {
  top: 0;
}
.-confirm .form_style .select-wrap:after {
  display: none;
}
.-confirm .agree-wrap {
  display: none;
}

.-thanks .thanks-txt-wrap {
  width: 100%;
  max-width: 102.4rem;
  margin: 7.6rem auto 0 auto;
}
@media screen and (max-width: 480px) {
  .-thanks .thanks-txt-wrap {
    max-width: inherit;
    margin-top: 4rem;
  }
}
.-thanks .thanks-txt-wrap .lead-txt {
  text-align: center;
  font-size: 2.2rem;
  line-height: 2;
  font-weight: 700;
  margin-bottom: 4.2rem;
}
@media screen and (max-width: 480px) {
  .-thanks .thanks-txt-wrap .lead-txt {
    font-size: 3rem;
    line-height: 1.8;
    font-weight: 700;
    margin-bottom: 3rem;
  }
}
.-thanks .thanks-txt-wrap .txt {
  font-size: 1.8rem;
  line-height: 2.4444444444;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .-thanks .thanks-txt-wrap .txt {
    font-size: 2.8rem;
    line-height: 1.9285714286;
    font-weight: 400;
  }
}
.-thanks .thanks-txt-wrap .txt + .txt {
  margin-top: 4.2rem;
}
@media screen and (max-width: 480px) {
  .-thanks .thanks-txt-wrap .txt + .txt {
    margin-top: 2.4rem;
  }
}
.-thanks .btn_wrap .form-button {
  position: relative;
  width: 44.2rem;
  height: 8.6rem;
  margin: 8.4rem auto 0 auto;
  box-sizing: border-box;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .-thanks .btn_wrap .form-button {
    width: 55rem;
    height: 10.7rem;
  }
}
.-thanks .btn_wrap .form-button .btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  width: 100%;
  height: 100%;
  text-align: center;
  padding: 2rem;
  color: #000;
  background: #FFE310;
  border: none;
  font-size: 2rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  opacity: 1 !important;
  border-radius: 5.85rem;
  cursor: pointer;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .-thanks .btn_wrap .form-button .btn {
    font-size: 2.8rem;
    line-height: 1;
    font-weight: 700;
    border-radius: 7.3rem;
  }
}
.-thanks .btn_wrap .form-button .btn .arrow {
  position: absolute;
  top: 50%;
  left: 4.2rem;
  display: block;
  content: "";
  pointer-events: none;
  transform: translateY(-50%) scale(-1, 1);
  background: url("../images/common/btn_arrow.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 3.1rem;
  height: 2.5rem;
  z-index: 2;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .-thanks .btn_wrap .form-button .btn .arrow {
    right: 5rem;
    width: 3.9rem;
    height: 3.2rem;
  }
}
@media screen and (min-width: 481px) {
  .-thanks .btn_wrap .form-button .btn:hover {
    background: #262626;
    text-decoration: none;
    color: #fff;
  }
  .-thanks .btn_wrap .form-button .btn:hover .arrow {
    transform: translate(-1rem, -50%) scale(-1, 1);
    background: url("../images/common/btn_arrow_w.svg") no-repeat center center;
  }
}

/* c-contens
---------------------------------------------------------------------------- */
.c-contens {
  padding: 13.2rem 0;
}
@media screen and (max-width: 480px) {
  .c-contens {
    padding: 9.3rem 0 10rem 0;
  }
}
.c-contens .l-inner {
  max-width: 120rem;
}
@media screen and (max-width: 480px) {
  .c-contens .l-inner {
    max-width: inherit;
  }
}
.c-contens .contens-flex {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0 3rem;
}
@media screen and (max-width: 480px) {
  .c-contens .contens-flex {
    gap: 2.9rem 2.4rem;
  }
}
.c-contens .contens-flex .contens-box {
  width: calc((100% - 12rem) / 5);
  height: 17.9rem;
}
@media screen and (max-width: 480px) {
  .c-contens .contens-flex .contens-box {
    width: calc((100% - 4.8rem) / 3);
    height: 18.6rem;
  }
}
.c-contens .contens-flex .contens-box .contens-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.c-contens .contens-flex .contens-box .contens-btn .en-txt {
  position: relative;
  text-align: center;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 700;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .c-contens .contens-flex .contens-box .contens-btn .en-txt {
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 700;
  }
}
.c-contens .contens-flex .contens-box .contens-btn .jp-txt {
  position: relative;
  text-align: center;
  font-size: 1.1rem;
  line-height: 2.1818181818;
  font-weight: 500;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .c-contens .contens-flex .contens-box .contens-btn .jp-txt {
    margin-top: 0.4rem;
    font-size: 2rem;
    line-height: 1.2;
    font-weight: 500;
  }
}
.c-contens .contens-flex .contens-box .contens-btn .bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
  /* マスクの位置とサイズ調整 */
  -webkit-mask-size: contain;
  mask-size: 100% 100%; /* 枠線内にSVGを収める（枠いっぱいは cover） */
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat; /* マスクをループさせない */
  -webkit-mask-position: center;
  mask-position: center; /* マスクを中央配置 */
  transition: 0.4s;
}
.c-contens .contens-flex .contens-box .contens-btn .bg:after {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 0;
  height: 100%;
  background: #373737;
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .c-contens .contens-flex .contens-box .contens-btn:hover {
    text-decoration: none;
  }
  .c-contens .contens-flex .contens-box .contens-btn:hover .en-txt, .c-contens .contens-flex .contens-box .contens-btn:hover .jp-txt {
    color: #fff;
  }
  .c-contens .contens-flex .contens-box .contens-btn:hover .bg {
    transform: scale(1.1);
  }
  .c-contens .contens-flex .contens-box .contens-btn:hover .bg:after {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .c-contens .contens-flex .contens-box.-about .contens-btn {
    margin-right: -2rem;
  }
}
.c-contens .contens-flex .contens-box.-about .contens-btn .bg {
  aspect-ratio: 179/179;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTc5IiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDE3OSAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNjQuODc1IDk1LjA2ODRDMTU3LjAzMSA4Ny4yMTczIDE1NC40NjEgNzUuMzYyOSAxNTguOTg0IDY1LjIwMzNDMTU5LjEyIDY0Ljg5MTkgMTU5LjI2NiA2NC41ODUgMTU5LjQxNiA2NC4yNzgxQzE2Mi45NzIgNTYuOTY5NyAxNjkuMzkzIDUwLjk2MDMgMTcxLjAwNSA0Mi45ODQ3QzE3My4yNTMgMzEuODU1NCAxNjUuMjE1IDIxLjA5MDggMTU1Ljg5MiAxNC43MDMyQzE0MC4xNjkgMy45Mjk3MyAxMjAuNDc2IDAuOTg5NDg4IDEwMS40ODEgMC4xNzEwMjRDNzYuMTI2NSAtMC45MTg3NzggNDcuNTgzIDIuODA4NzkgMzEuNzI3OSAyMi43NjdDMTguMTM4NSAzOS44NzEgMTcuOSA2My44NiA5LjY5ODY5IDg0LjE0ODFDNy4wNDAwOSA5MC43MTggMy41MTU2NyA5Ni45NjMzIDEuNTk4OTMgMTAzLjc5MUMtNS4zMzA0OCAxMjguNDYxIDExLjE2OTQgMTU1LjEwMSAzMy42MDQ5IDE2Ny4yMDlDNTYuMDQ0OSAxNzkuMzIxIDgyLjc0MjMgMTc5Ljk3NSAxMDguMTUgMTc4LjM1MkMxMzEuOTU5IDE3Ni44MjYgMTU4LjU1MSAxNzEuODY2IDE3Mi4wOTIgMTUyLjA4MUMxODMuNDk1IDEzNS40MTggMTgwLjU3MSAxMTAuNzg0IDE2NC44NzUgOTUuMDY4NFoiIGZpbGw9IiNGRkU2MjciLz4KPC9zdmc+");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTc5IiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDE3OSAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNjQuODc1IDk1LjA2ODRDMTU3LjAzMSA4Ny4yMTczIDE1NC40NjEgNzUuMzYyOSAxNTguOTg0IDY1LjIwMzNDMTU5LjEyIDY0Ljg5MTkgMTU5LjI2NiA2NC41ODUgMTU5LjQxNiA2NC4yNzgxQzE2Mi45NzIgNTYuOTY5NyAxNjkuMzkzIDUwLjk2MDMgMTcxLjAwNSA0Mi45ODQ3QzE3My4yNTMgMzEuODU1NCAxNjUuMjE1IDIxLjA5MDggMTU1Ljg5MiAxNC43MDMyQzE0MC4xNjkgMy45Mjk3MyAxMjAuNDc2IDAuOTg5NDg4IDEwMS40ODEgMC4xNzEwMjRDNzYuMTI2NSAtMC45MTg3NzggNDcuNTgzIDIuODA4NzkgMzEuNzI3OSAyMi43NjdDMTguMTM4NSAzOS44NzEgMTcuOSA2My44NiA5LjY5ODY5IDg0LjE0ODFDNy4wNDAwOSA5MC43MTggMy41MTU2NyA5Ni45NjMzIDEuNTk4OTMgMTAzLjc5MUMtNS4zMzA0OCAxMjguNDYxIDExLjE2OTQgMTU1LjEwMSAzMy42MDQ5IDE2Ny4yMDlDNTYuMDQ0OSAxNzkuMzIxIDgyLjc0MjMgMTc5Ljk3NSAxMDguMTUgMTc4LjM1MkMxMzEuOTU5IDE3Ni44MjYgMTU4LjU1MSAxNzEuODY2IDE3Mi4wOTIgMTUyLjA4MUMxODMuNDk1IDEzNS40MTggMTgwLjU3MSAxMTAuNzg0IDE2NC44NzUgOTUuMDY4NFoiIGZpbGw9IiNGRkU2MjciLz4KPC9zdmc+");
  background: #FFE627;
}
@media screen and (max-width: 480px) {
  .c-contens .contens-flex .contens-box.-about .contens-btn .bg {
    top: -0.5rem;
    left: -2rem;
    width: calc(100% + 5rem);
    height: calc(100% + 1rem);
  }
}
.c-contens .contens-flex .contens-box.-service .contens-btn .bg {
  aspect-ratio: 223/179;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIzIiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIyMyAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xLjYxMDk4IDEyOC41MjJDLTQuMTgzOTcgMTExLjYyMSA2LjE3NDU3IDkzLjkxMyAyNC4zNDg1IDg4LjI1MUMyOC42NjU4IDg2LjkwNzYgMzIuNjc2NiA4NC4yNzU2IDM1LjMzMDMgODAuODgyM0M0MS4zMDExIDczLjI1IDQyLjE4MDcgNjMuMjc0MiA0Mi40NjcyIDUzLjg1NTdDNDIuNzUzNiA0NC40MzcyIDQyLjc1ODcgMzQuNjA1NyA0Ny40MTc4IDI2LjIyNzFDNTUuMTA3NSAxMi40MDAzIDcyLjk5NSA2LjU4ODk4IDg5LjQ4MDIgMy41MDQyQzEyOC4xNzUgLTMuNzQ1MDIgMTcyLjk2NyAtMS4xNjc3NCAyMDAuNjQ1IDI0Ljg1ODhDMjI5LjgwNiA1Mi4yNzg1IDIyOS40MjkgOTkuNjI5OCAyMDUuMzg0IDEzMS4wMUMxODEuMzQgMTYyLjM5IDEzOC41MTkgMTc4LjQxNiA5Ni45MjM3IDE3OC45ODNDNzcuNjA4OCAxNzkuMjQ3IDU3Ljk0NzIgMTc2LjQzNiA0MC42NTc4IDE2OC40N0MyMy4zNjg0IDE2MC40OTkgOC42MjIyMiAxNDcuMDExIDIuMTk5MDIgMTMwLjE2OUMxLjk5Mjk2IDEyOS42MjcgMS43OTE5MiAxMjkuMDc5IDEuNjA1OTYgMTI4LjUyN0wxLjYxMDk4IDEyOC41MjJaIiBmaWxsPSIjRDZBOUY0Ii8+Cjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIzIiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIyMyAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xLjYxMDk4IDEyOC41MjJDLTQuMTgzOTcgMTExLjYyMSA2LjE3NDU3IDkzLjkxMyAyNC4zNDg1IDg4LjI1MUMyOC42NjU4IDg2LjkwNzYgMzIuNjc2NiA4NC4yNzU2IDM1LjMzMDMgODAuODgyM0M0MS4zMDExIDczLjI1IDQyLjE4MDcgNjMuMjc0MiA0Mi40NjcyIDUzLjg1NTdDNDIuNzUzNiA0NC40MzcyIDQyLjc1ODcgMzQuNjA1NyA0Ny40MTc4IDI2LjIyNzFDNTUuMTA3NSAxMi40MDAzIDcyLjk5NSA2LjU4ODk4IDg5LjQ4MDIgMy41MDQyQzEyOC4xNzUgLTMuNzQ1MDIgMTcyLjk2NyAtMS4xNjc3NCAyMDAuNjQ1IDI0Ljg1ODhDMjI5LjgwNiA1Mi4yNzg1IDIyOS40MjkgOTkuNjI5OCAyMDUuMzg0IDEzMS4wMUMxODEuMzQgMTYyLjM5IDEzOC41MTkgMTc4LjQxNiA5Ni45MjM3IDE3OC45ODNDNzcuNjA4OCAxNzkuMjQ3IDU3Ljk0NzIgMTc2LjQzNiA0MC42NTc4IDE2OC40N0MyMy4zNjg0IDE2MC40OTkgOC42MjIyMiAxNDcuMDExIDIuMTk5MDIgMTMwLjE2OUMxLjk5Mjk2IDEyOS42MjcgMS43OTE5MiAxMjkuMDc5IDEuNjA1OTYgMTI4LjUyN0wxLjYxMDk4IDEyOC41MjJaIiBmaWxsPSIjRDZBOUY0Ii8+Cjwvc3ZnPg==");
  background: #D6A9F4;
}
.c-contens .contens-flex .contens-box.-pricing .contens-btn .bg {
  aspect-ratio: 206/179;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjA2IiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIwNiAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik05NS4yNDcgMTU2LjAzMUM5NC41OTk2IDE1NS45MzggOTMuOTQxOSAxNTUuODcxIDkzLjI5OTcgMTU1Ljc0MkM3OS40ODI3IDE1Mi45MDggNjguNzYyNSAxNjkuNjA2IDU0Ljc3OTcgMTczLjMzMkM0MC4zMzYgMTc3LjE2MyAyNC4zMjgzIDE2Mi44OTYgMjYuNTkxNCAxNDguMjAxQzI3LjY0MjcgMTQxLjM2MSAzMS44MjcyIDEzNC4zODggMjkuMjExOSAxMjcuOTc3QzI3LjgzOTUgMTI0LjYwNiAyNC44MzU4IDEyMi4yMjcgMjIuMDcwMyAxMTkuODQyQzEwLjY2MTQgMTEwLjAwOSAxLjEyMjAzIDk2Ljc4OTggMC4wNzU5MTI4IDgxLjgxNTdDLTAuOTcwMjA4IDY2Ljg0MTUgOC44OTAyNSA1MC41OTI0IDIzLjgxMDQgNDguMzA1N0MzMS4xNzk5IDQ3LjE3NTMgNDEuMDQ1NSA0OC4wNzg2IDQzLjY1MDQgNDEuMTMwOUM0NC4zODA3IDM5LjE3OTggNDQuMjUxMiAzNy4wMzI1IDQ0LjM5MSAzNC45NTI0QzQ1LjA3NDYgMjQuNzExNSA1Mi42NDYgMTUuOTMxNCA2MS42NjI0IDEwLjk0QzcwLjY3ODcgNS45NDg2MiA4MS4wNTcgNC4wNzQ5MiA5MS4yMjMgMi4yNzg2NEMxMDEuMDk0IDAuNTMzOTc0IDExMS4zMDYgLTEuMjA1NTMgMTIxLjA1MyAxLjEyNzU3QzEzMC44IDMuNDYwNjcgMTQwLjAzMyAxMC45OTY4IDE0MS4wMDcgMjAuOTE3NkMxNDEuNzA2IDI4LjAzMDUgMTM4Ljg2MyAzNi45ODYxIDE0NC43MDUgNDEuMTUxNkMxNDguMjc4IDQzLjY5NjMgMTUzLjE1MSA0Mi42Nzk1IDE1Ny41MTcgNDIuMjA0NkMxNzAuMTUzIDQwLjgyMTIgMTgzLjYyOSA0NS40ODIzIDE5MS42NCA1NS4yOTQ3QzE5OS42NTcgNjUuMTA3MiAyMDEuMjgzIDgwLjAyOTcgMTk0LjQ0MiA5MC42ODM1QzE5MS40MTggOTUuMzkxIDE4Ni43MSAxMDAuMjUzIDE4OC4yMTcgMTA1LjYzMkMxODkuNDI5IDEwOS45NTIgMTk0LjA5NSAxMTIuMTM2IDE5Ny41ODUgMTE0Ljk4QzIwOC4wMDUgMTIzLjQ3NiAyMDguMjQ5IDE0MC4yNTIgMjAxLjA2IDE1MS41ODdDMTkzLjg3NyAxNjIuOTIyIDE4MS4yMTAgMTY5LjY2MyAxNjguNDgxIDE3NC4wNTZDMTUwLjI3NyAxODAuMzMyIDEyOC4zMTkgMTgyLjE5NiAxMTMuMzA1IDE3MC4xOTVDMTA2LjY4NyAxNjQuOTA0IDEwMC43NTIgMTU2LjgwNSA5NS4yNDE4IDE1Ni4wMzFIOTUuMjQ3WiIgZmlsbD0iIzY4Q0ZGQyIvPgo8L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjA2IiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIwNiAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik05NS4yNDcgMTU2LjAzMUM5NC41OTk2IDE1NS45MzggOTMuOTQxOSAxNTUuODcxIDkzLjI5OTcgMTU1Ljc0MkM3OS40ODI3IDE1Mi45MDggNjguNzYyNSAxNjkuNjA2IDU0Ljc3OTcgMTczLjMzMkM0MC4zMzYgMTc3LjE2MyAyNC4zMjgzIDE2Mi44OTYgMjYuNTkxNCAxNDguMjAxQzI3LjY0MjcgMTQxLjM2MSAzMS44MjcyIDEzNC4zODggMjkuMjExOSAxMjcuOTc3QzI3LjgzOTUgMTI0LjYwNiAyNC44MzU4IDEyMi4yMjcgMjIuMDcwMyAxMTkuODQyQzEwLjY2MTQgMTEwLjAwOSAxLjEyMjAzIDk2Ljc4OTggMC4wNzU5MTI4IDgxLjgxNTdDLTAuOTcwMjA4IDY2Ljg0MTUgOC44OTAyNSA1MC41OTI0IDIzLjgxMDQgNDguMzA1N0MzMS4xNzk5IDQ3LjE3NTMgNDEuMDQ1NSA0OC4wNzg2IDQzLjY1MDQgNDEuMTMwOUM0NC4zODA3IDM5LjE3OTggNDQuMjUxMiAzNy4wMzI1IDQ0LjM5MSAzNC45NTI0QzQ1LjA3NDYgMjQuNzExNSA1Mi42NDYgMTUuOTMxNCA2MS42NjI0IDEwLjk0QzcwLjY3ODcgNS45NDg2MiA4MS4wNTcgNC4wNzQ5MiA5MS4yMjMgMi4yNzg2NEMxMDEuMDk0IDAuNTMzOTc0IDExMS4zMDYgLTEuMjA1NTMgMTIxLjA1MyAxLjEyNzU3QzEzMC44IDMuNDYwNjcgMTQwLjAzMyAxMC45OTY4IDE0MS4wMDcgMjAuOTE3NkMxNDEuNzA2IDI4LjAzMDUgMTM4Ljg2MyAzNi45ODYxIDE0NC43MDUgNDEuMTUxNkMxNDguMjc4IDQzLjY5NjMgMTUzLjE1MSA0Mi42Nzk1IDE1Ny41MTcgNDIuMjA0NkMxNzAuMTUzIDQwLjgyMTIgMTgzLjYyOSA0NS40ODIzIDE5MS42NCA1NS4yOTQ3QzE5OS42NTcgNjUuMTA3MiAyMDEuMjgzIDgwLjAyOTcgMTk0LjQ0MiA5MC42ODM1QzE5MS40MTggOTUuMzkxIDE4Ni43MSAxMDAuMjUzIDE4OC4yMTcgMTA1LjYzMkMxODkuNDI5IDEwOS45NTIgMTk0LjA5NSAxMTIuMTM2IDE5Ny41ODUgMTE0Ljk4QzIwOC4wMDUgMTIzLjQ3NiAyMDguMjQ5IDE0MC4yNTIgMjAxLjA2IDE1MS41ODdDMTkzLjg3NyAxNjIuOTIyIDE4MS4yMTAgMTY5LjY2MyAxNjguNDgxIDE3NC4wNTZDMTUwLjI3NyAxODAuMzMyIDEyOC4zMTkgMTgyLjE5NiAxMTMuMzA1IDE3MC4xOTVDMTA2LjY4NyAxNjQuOTA0IDEwMC43NTIgMTU2LjgwNSA5NS4yNDE4IDE1Ni4wMzFIOTUuMjQ3WiIgZmlsbD0iIzY4Q0ZGQyIvPgo8L3N2Zz4=");
  background: #68CFFC;
}
.c-contens .contens-flex .contens-box.-case .contens-btn .bg {
  aspect-ratio: 214/179;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjE0IiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIxNCAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNTQuNjk1IDE5LjM4NDlDMTQ0LjAyMyA0LjQwMzcgMTIzLjkwOCAwLjA0NTE4MjIgMTA1LjY5NiAwLjAwMDQwMjk0NEM3MC41MjIyIC0wLjA4NDE4MDIgMzMuODE2MyAxMy4xNDU2IDEyLjQ1MiA0MS41MDU4QzIuNTc3ODkgNTQuNjE2MiAtMy42ODc2NCA3Mi4zNzM3IDIuNDA0NCA4Ny42NzMzQzQuOTQ3MjkgOTQuMDU2OCA5LjUzNzM4IDk5Ljc4MzYgMTAuMTc2OCAxMDYuNjRDMTAuODExMyAxMTMuNDQ2IDcuNDEwODcgMTE5LjkwOSA2LjE2MTczIDEyNi42MjZDMy4zNTYxMiAxNDEuNzEyIDEyLjA0MDYgMTU3LjI1NSAyNC40NzI1IDE2NS45OTdDMzYuOTA0NSAxNzQuNzM5IDUyLjQwNDcgMTc3LjczOSA2Ny40OTg1IDE3OC42NzVDMTExLjc3NCAxODEuNDE2IDE1OC4wMzYgMTY2LjgzOCAxODguOTI4IDEzNC41MzdDMjAyLjk5NSAxMTkuODMgMjEzLjk0IDEwMC43MjQgMjE0IDgwLjIyNUMyMTQuMDU0IDU5LjcyNiAyMDAuNyAzOC40OTU3IDE4MC44ODggMzQuNTQwMkMxNzMuOTEzIDMzLjE0NyAxNjQuNjc5IDMzLjQwMDggMTU0LjcgMTkuMzg5OEwxNTQuNjk1IDE5LjM4NDlaIiBmaWxsPSIjOTZERTY3Ii8+Cjwvc3ZnPg==");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjE0IiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIxNCAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNTQuNjk1IDE5LjM4NDlDMTQ0LjAyMyA0LjQwMzcgMTIzLjkwOCAwLjA0NTE4MjIgMTA1LjY5NiAwLjAwMDQwMjk0NEM3MC41MjIyIC0wLjA4NDE4MDIgMzMuODE2MyAxMy4xNDU2IDEyLjQ1MiA0MS41MDU4QzIuNTc3ODkgNTQuNjE2MiAtMy42ODc2NCA3Mi4zNzM3IDIuNDA0NCA4Ny42NzMzQzQuOTQ3MjkgOTQuMDU2OCA5LjUzNzM4IDk5Ljc4MzYgMTAuMTc2OCAxMDYuNjRDMTAuODExMyAxMTMuNDQ2IDcuNDEwODcgMTE5LjkwOSA2LjE2MTczIDEyNi42MjZDMy4zNTYxMiAxNDEuNzEyIDEyLjA0MDYgMTU3LjI1NSAyNC40NzI1IDE2NS45OTdDMzYuOTA0NSAxNzQuNzM5IDUyLjQwNDcgMTc3LjczOSA2Ny40OTg1IDE3OC42NzVDMTExLjc3NCAxODEuNDE2IDE1OC4wMzYgMTY2LjgzOCAxODguOTI4IDEzNC41MzdDMjAyLjk5NSAxMTkuODMgMjEzLjk0IDEwMC43MjQgMjE0IDgwLjIyNUMyMTQuMDU0IDU5LjcyNiAyMDAuNyAzOC40OTU3IDE4MC44ODggMzQuNTQwMkMxNzMuOTEzIDMzLjE0NyAxNjQuNjc5IDMzLjQwMDggMTU0LjcgMTkuMzg5OEwxNTQuNjk1IDE5LjM4NDlaIiBmaWxsPSIjOTZERTY3Ii8+Cjwvc3ZnPg==");
  background: #96DE67;
}
.c-contens .contens-flex .contens-box.-gateway .contens-btn .bg {
  aspect-ratio: 213/179;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEzIiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIxMyAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xOTguNDUxIDgyLjYyNEMxODguMjI3IDc5LjYxNyAxNzYuMjUzIDc0LjkwMjQgMTc0LjExNyA2NC4yMzA3QzE3My4xODcgNTkuNTY4MyAxNzQuNDU5IDU0Ljc4MjYgMTc0LjgxNSA1MC4wMzk2QzE3Ni4zMTkgMjkuODk2MSAxNjAuNDM5IDExLjcyMDkgMTQxLjkyIDQuNzY3NjRDMTIzLjQgLTIuMTg1NjEgMTAyLjkyNiAtMC4zMDI2MzYgODMuNDE5MiAyLjY5OTY5QzY2LjQ4OTggNS4zMDM1OSA0OS4zODk2IDguNzg0OTYgMzQuMjQ5NSAxNi45NjE5QzE5LjEwOTQgMjUuMTM4OCA1Ljk3Njk1IDM4LjY2NTkgMS42NDM3NiA1NS42MjY5Qy0xLjQ0MTIxIDY3LjY5NzggMC4xMTA3NjYgODAuNjEzIDMuODU1NDQgOTIuNDg0OEMxNy4zMjQ5IDEzNS4xNzIgNTcuODgwNCAxNjQuNDAzIDEwMC40NzIgMTc0Ljg2NkMxMjkuNDU2IDE4MS45ODUgMTYyLjI4IDE4MS4wNTYgMTg2LjI2MyAxNjIuOTMzQzIxMC4yNDUgMTQ0LjgxIDIyNS45NDUgOTAuNzE1NiAxOTguNDUxIDgyLjYyODhWODIuNjI0WiIgZmlsbD0iI0U2RTZFNiIvPgo8L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEzIiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIxMyAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xOTguNDUxIDgyLjYyNEMxODguMjI3IDc5LjYxNyAxNzYuMjUzIDc0LjkwMjQgMTc0LjExNyA2NC4yMzA3QzE3My4xODcgNTkuNTY4MyAxNzQuNDU5IDU0Ljc4MjYgMTc0LjgxNSA1MC4wMzk2QzE3Ni4zMTkgMjkuODk2MSAxNjAuNDM5IDExLjcyMDkgMTQxLjkyIDQuNzY3NjRDMTIzLjQgLTIuMTg1NjEgMTAyLjkyNiAtMC4zMDI2MzYgODMuNDE5MiAyLjY5OTY5QzY2LjQ4OTggNS4zMDM1OSA0OS4zODk2IDguNzg0OTYgMzQuMjQ5NSAxNi45NjE5QzE5LjEwOTQgMjUuMTM4OCA1Ljk3Njk1IDM4LjY2NTkgMS42NDM3NiA1NS42MjY5Qy0xLjQ0MTIxIDY3LjY5NzggMC4xMTA3NjYgODAuNjEzIDMuODU1NDQgOTIuNDg0OEMxNy4zMjQ5IDEzNS4xNzIgNTcuODgwNCAxNjQuNDAzIDEwMC40NzIgMTc0Ljg2NkMxMjkuNDU2IDE4MS45ODUgMTYyLjI4IDE4MS4wNTYgMTg2LjI2MyAxNjIuOTMzQzIxMC4yNDUgMTQ0LjgxIDIyNS45NDUgOTAuNzE1NiAxOTguNDUxIDgyLjYyODhWODIuNjI0WiIgZmlsbD0iI0U2RTZFNiIvPgo8L3N2Zz4=");
  background: #E6E6E6;
}
.c-contens .contens-flex .contens-box.-faq .contens-btn .bg {
  aspect-ratio: 230/179;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjMwIiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIzMCAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNjQuMTI1IDM2LjU1MTJDMTQyLjI3MiAwLjk4OTM0NiA4Ni4wMTY4IC0xMS4yNDY1IDQ5LjQ2NzQgMTEuNjA2N0M0MC4wMTE0IDE3LjUxOTkgMzEuNjk3NiAyNS42OTQ5IDI4LjM5MzcgMzUuODI5N0MyMy41NTA1IDUwLjY3ODQgMjkuOTI4IDY3LjcwNjEgMjIuODQ5NSA4MS43NjAyQzE5LjYwOTMgODguMTk1IDEzLjg4ODYgOTMuMjExMiA5LjUwNjIxIDk5LjAyNjhDLTQuNDA1NjkgMTE3LjQ5MyAtMi44ODYwNyAxNDQuNzA0IDEzLjAwMTMgMTYxLjczN0MyOC44ODg4IDE3OC43NjkgNTcuNjQ4OSAxODQuMDA1IDc5LjI3MTYgMTczLjgwN0M4Ny43NzE3IDE2OS43OTkgOTUuMDgwNiAxNjMuNzY0IDEwMy44MTYgMTYwLjIyQzEyMy43NTcgMTUyLjEyMyAxNDYuNjk5IDE1OC4zMTQgMTY4LjQ0OSAxNTcuNTY5QzE4OS4yMTQgMTU2Ljg1NyAyMTAuNTkyIDE0OC43MjEgMjIyLjIyOSAxMzIuNzEyQzIzMy44NjYgMTE2LjcwMyAyMzIuNzU0IDkyLjQxNjYgMjE2LjcxOSA4MC4xMjcyQzIwOC43MTQgNzMuOTg5OCAxOTguMjk3IDcxLjM5MTUgMTg5LjM2MSA2Ni40OTIzQzE3OC4zODUgNjAuNDgxNiAxNzIuMjYzIDQ5Ljc4NjMgMTY0LjEyNSAzNi41NTEyWiIgZmlsbD0iI0U2RTZFNiIvPgo8L3N2Zz4=");
          mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjMwIiBoZWlnaHQ9IjE3OSIgdmlld0JveD0iMCAwIDIzMCAxNzkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xNjQuMTI1IDM2LjU1MTJDMTQyLjI3MiAwLjk4OTM0NiA4Ni4wMTY4IC0xMS4yNDY1IDQ5LjQ2NzQgMTEuNjA2N0M0MC4wMTE0IDE3LjUxOTkgMzEuNjk3NiAyNS42OTQ5IDI4LjM5MzcgMzUuODI5N0MyMy41NTA1IDUwLjY3ODQgMjkuOTI4IDY3LjcwNjEgMjIuODQ5NSA4MS43NjAyQzE5LjYwOTMgODguMTk1IDEzLjg4ODYgOTMuMjExMiA5LjUwNjIxIDk5LjAyNjhDLTQuNDA1NjkgMTE3LjQ5MyAtMi44ODYwNyAxNDQuNzA0IDEzLjAwMTMgMTYxLjczN0MyOC44ODg4IDE3OC43NjkgNTcuNjQ4OSAxODQuMDA1IDc5LjI3MTYgMTczLjgwN0M4Ny43NzE3IDE2OS43OTkgOTUuMDgwNiAxNjMuNzY0IDEwMy44MTYgMTYwLjIyQzEyMy43NTcgMTUyLjEyMyAxNDYuNjk5IDE1OC4zMTQgMTY4LjQ0OSAxNTcuNTY5QzE4OS4yMTQgMTU2Ljg1NyAyMTAuNTkyIDE0OC43MjEgMjIyLjIyOSAxMzIuNzEyQzIzMy44NjYgMTE2LjcwMyAyMzIuNzU0IDkyLjQxNjYgMjE2LjcxOSA4MC4xMjcyQzIwOC43MTQgNzMuOTg5OCAxOTguMjk3IDcxLjM5MTUgMTg5LjM2MSA2Ni40OTIzQzE3OC4zODUgNjAuNDgxNiAxNzIuMjYzIDQ5Ljc4NjMgMTY0LjEyNSAzNi41NTEyWiIgZmlsbD0iI0U2RTZFNiIvPgo8L3N2Zz4=");
  background: #E6E6E6;
}

/* animation
---------------------------------------------------------------------------- */
.js-anime.fadein {
  opacity: 0;
  overflow: hidden;
  transform: translateY(50px);
}
.js-anime.fadein.is-visible {
  animation: fadein 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.slideIn-y {
  transform: translateY(100%);
}
.js-anime.slideIn-y.is-visible {
  animation: slidein-y 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.slideIn-x {
  transform: translateX(100%);
}
.js-anime.slideIn-x.is-visible {
  animation: slidein-x 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.slideIn-x.-reverse {
  transform: translateX(-100%);
}
.js-anime.slideIn-x.-reverse.is-visible {
  animation: slidein-x02 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.spinIn-left {
  opacity: 0;
  transform: rotate(45deg);
}
.js-anime.spinIn-left.is-visible {
  animation: spinIn-left 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.slidefadeIn-x {
  opacity: 0;
  transform: translateX(100%);
}
.js-anime.slidefadeIn-x.is-visible {
  animation: slidefadein-x 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.slidefadeIn-x.-reverse {
  opacity: 0;
  transform: translateX(-100%);
}
.js-anime.slidefadeIn-x.-reverse.is-visible {
  animation: slidefadein-x02 0.4s 0.2s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime .list-fadein {
  opacity: 0;
  overflow: hidden;
}
.js-anime.is-visible .list-fadein {
  animation: fadein02 0.4s cubic-bezier(0, 0.25, 1, 1) both;
}
.js-anime.img-clip img {
  display: block;
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
}
.js-anime.img-clip.is-visible img {
  animation: clipTopToBottom 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
.js-anime.bouncy {
  transform: scale(0.6);
  transform-origin: right center;
}
.js-anime.bouncy.is-visible {
  animation: bouncy 1.4s 0.2s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;
}

.rotate-animation {
  animation: tilt-rotate 2s ease-in-out infinite alternate;
}

.rotate-animation02 {
  animation: tilt-rotate02 2s ease-in-out infinite alternate;
}

.spin-animation {
  animation: tilt-spin 4s linear infinite;
}

.delay1 {
  animation-delay: 0.4s !important;
}

.delay2 {
  animation-delay: 0.6s !important;
}

.delay3 {
  animation-delay: 0.8s !important;
}

.delay4 {
  animation-delay: 1s !important;
}

@keyframes fadein {
  0% {
    opacity: 0;
    overflow: hidden;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    overflow: visible;
    transform: translateY(0);
  }
}
@keyframes fadein02 {
  0% {
    opacity: 0;
    overflow: hidden;
  }
  100% {
    opacity: 1;
    overflow: visible;
  }
}
@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes tilt-rotate {
  0% {
    transform: rotate(-15deg);
  }
  100% {
    transform: rotate(15deg);
  }
}
@keyframes tilt-rotate02 {
  0% {
    transform: rotate(15deg);
  }
  100% {
    transform: rotate(-15deg);
  }
}
@keyframes tilt-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes slidein-y {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes slidein-x {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes slidein-x02 {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes spinIn-left {
  0% {
    opacity: 0;
    transform: rotate(45deg) translateX(30px);
  }
  100% {
    opacity: 1;
    transform: rotate(0deg) translateX(0);
  }
}
@keyframes slidefadein-x {
  0% {
    opacity: 0;
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes slidefadein-x02 {
  0% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
/* 矢印が右へ消えて左から出る動き */
@keyframes arrow-slide {
  /* 1. まず右へ動きながら消える */
  49% {
    transform: translate(0%, -50%);
    opacity: 0;
  }
  /* 2. 一瞬で画面外の左側へワープ（見えない状態） */
  50% {
    transform: translate(-250%, -50%);
    opacity: 0;
  }
  /* 3. 左から元の位置（0）へ戻りながら現れる */
  100% {
    transform: translate(-50%, -50%);
    opacity: 1;
  }
}
@keyframes arrow-slide_case {
  /* 1. まず右へ動きながら消える */
  49% {
    transform: translate(0%, -50%);
    opacity: 0;
  }
  /* 2. 一瞬で画面外の左側へワープ（見えない状態） */
  50% {
    transform: translate(-250%, -50%);
    opacity: 0;
  }
  /* 3. 左から元の位置（0）へ戻りながら現れる */
  100% {
    transform: translate(0, -50%);
    opacity: 1;
  }
}
/* 矢印が右へ消えて左から出る動き */
@keyframes arrow-slide_down {
  0% {
    transform: translate(-50%, -50%) rotate(90deg);
    opacity: 1 !important; /* 【修正】!important でホバー瞬間のチラつき（薄化）をガード */
  }
  /* 1. まず下へ動きながら消える */
  49% {
    transform: translate(-50%, 150%) rotate(90deg);
    opacity: 0;
  }
  /* 2. 一瞬で画面外の上側へワープ */
  50% {
    transform: translate(-50%, -250%) rotate(90deg);
    opacity: 0;
  }
  /* 3. 上から元の位置へ戻りながら現れる */
  100% {
    transform: translate(-50%, -50%) rotate(90deg);
    opacity: 1;
  }
}
/* 上から下へ表示させるキーフレーム */
@keyframes clipTopToBottom {
  0% {
    /* inset(上 右 下 左) -> 下側100%の位置まで完全に隠す */
    -webkit-clip-path: inset(0 0 100% 0);
            clip-path: inset(0 0 100% 0);
  }
  100% {
    /* 下側のマスクを0%にしてすべて表示 */
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@keyframes bouncy {
  0% {
    transform: scale(0.6);
  }
  60% {
    /* 全体の6割の時間をかけて、ゆっくり1.2倍まで拡大 */
    transform: scale(1.1);
  }
  85% {
    /* わずかに縮んでなめらかに戻るクッション */
    transform: scale(0.99);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes floating-y {
  0% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes floating-y02 {
  0% {
    transform: translateY(-53%);
  }
  100% {
    transform: translateY(-47%);
  }
}
/* layout
-----------------------------------------------------------------------------*/
.en {
  font-family: "Albert Sans", sans-serif;
}

.en02 {
  font-family: "Poppins", sans-serif;
}

.en03 {
  font-family: "Lato", sans-serif;
}

/* base
---------------------------------------------------------------------------- */
html {
  font-size: 0.6493506494vw;
}
@media screen and (min-width: 1541px) {
  html {
    font-size: 62.5%;
  }
}
@media screen and (max-width: 480px) {
  html {
    font-size: 1.3333333333vw;
  }
}

body {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #000;
  background: #F9F9F9;
  font-size: 1.5rem;
  /*	min-width: 1280px;*/
}
@media screen and (max-width: 480px) {
  body {
    min-width: inherit;
  }
}

a {
  text-decoration: none;
  color: #000;
}
@media screen and (min-width: 481px) {
  a:hover {
    text-decoration: underline;
  }
}

img {
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 480px) {
  img {
    width: 100%;
    max-width: inherit;
  }
}

* {
  word-break: break-all;
}

input,
textarea {
  -webkit-appearance: none;
  border: none;
  border-radius: 0;
}

/*------------- .l-pagebody -------------*/
.main_cnts {
  width: 100%;
  overflow: hidden;
}

.l-wrapper {
  width: 100%;
  max-width: 144rem;
  margin: 0 auto;
  padding: 0 2rem;
}
@media screen and (min-width: 1441px) {
  .l-wrapper {
    padding: 0;
  }
}
@media screen and (max-width: 480px) {
  .l-wrapper {
    width: 100%;
    max-width: inherit;
    padding: 0 4rem;
    box-sizing: border-box;
  }
}

.l-inner {
  width: 92%;
  max-width: 116rem;
  margin: 0 auto;
}
@media screen and (max-width: 480px) {
  .l-inner {
    width: 100%;
    max-width: inherit;
    padding: 0 4rem;
    box-sizing: border-box;
  }
}

/*------------- .l-footer -------------*/
.l-footer {
  position: relative;
  margin-top: -16rem;
  padding: 10.4rem 0 11.8rem 0;
  border-radius: 12rem 12rem 0 0;
  background: #231815;
  overflow: hidden;
  box-sizing: border-box;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .l-footer {
    margin-top: 0;
    padding: 7.2rem 0 16.6rem 0;
    border-radius: 0 0 0 0;
  }
}
.l-footer .flex {
  max-width: 120rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
}
@media screen and (max-width: 480px) {
  .l-footer .flex {
    flex-direction: column;
    gap: 8.6rem 0;
  }
}
.l-footer .f-cnts01 {
  width: calc(100% - 51.7rem);
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 {
    width: 100%;
  }
}
.l-footer .f-cnts01 .logo-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 1.6rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .logo-wrap {
    gap: 0 2.8rem;
  }
}
.l-footer .f-cnts01 .logo-wrap .f-logo {
  width: 29.8rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .logo-wrap .f-logo {
    width: 44rem;
  }
}
.l-footer .f-cnts01 .logo-wrap .f-logo img {
  width: 100%;
  max-width: inherit;
}
.l-footer .f-cnts01 .logo-wrap .recruit-txt .txt {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.1666666667;
  font-weight: 400;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .logo-wrap .recruit-txt .txt {
    font-size: 2rem;
    line-height: 1.2;
    font-weight: 400;
  }
}
.l-footer .f-cnts01 .logo-wrap .recruit-txt .txt02 {
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.1666666667;
  font-weight: 900;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .logo-wrap .recruit-txt .txt02 {
    font-size: 2.6rem;
    line-height: 1.1538461538;
    letter-spacing: 0.52px;
    font-weight: 900;
  }
}
.l-footer .f-cnts01 .f-nav {
  margin-top: 12.5rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .f-nav {
    margin-top: 3.5rem;
  }
}
.l-footer .f-cnts01 .f-nav .nav-list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  flex-direction: column;
  gap: 1.6rem 0;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .f-nav .nav-list {
    flex-direction: row;
    gap: 1.8rem 3.8rem;
  }
}
.l-footer .f-cnts01 .f-nav .nav-list li {
  position: relative;
  display: inline-block;
  padding-bottom: 0.3rem;
  transition: 0.4s;
}
.l-footer .f-cnts01 .f-nav .nav-list li:after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  content: "";
  width: 0;
  height: 1px;
  background: #fff;
  transition: 0.4s;
}
.l-footer .f-cnts01 .f-nav .nav-list li a {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.75;
  font-weight: 700;
  padding-left: 0;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .f-nav .nav-list li a {
    font-size: 2.6rem;
    line-height: 1.5;
    font-weight: 700;
  }
}
@media screen and (min-width: 481px) {
  .l-footer .f-cnts01 .f-nav .nav-list li:hover:after {
    width: 100%;
  }
  .l-footer .f-cnts01 .f-nav .nav-list li:hover a {
    text-decoration: none;
    padding-left: 1rem;
  }
}
.l-footer .f-cnts01 .copy {
  margin-top: 5.5rem;
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.9090909091;
  letter-spacing: 1.1px;
  font-weight: 400;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts01 .copy {
    position: absolute;
    left: 4rem;
    bottom: 8.8rem;
    font-size: 2.2rem;
    line-height: 1.9090909091;
    letter-spacing: 2.2px;
    font-weight: 400;
  }
}
.l-footer .f-cnts02 {
  width: 49.7rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 {
    width: 100%;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 4.4rem 0;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list {
    gap: 3.2rem 0;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item {
  position: relative;
  width: 25%;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item.w23 {
    width: 23%;
  }
  .l-footer .f-cnts02 .f-nav .nav-list__item.w26 {
    width: 26%;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .en-txt {
  display: block;
  color: #fff;
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 900;
  margin-bottom: 0.4rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .en-txt {
    font-size: 3rem;
    line-height: 1.5;
    font-weight: 900;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .jp-txt {
  display: block;
  color: #fff;
  font-size: 1.1rem;
  line-height: 2.5454545455;
  font-weight: 500;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .jp-txt {
    font-size: 2rem;
    line-height: 2.25;
    font-weight: 500;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu {
  position: relative;
  padding-right: 3.4rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu {
    padding-right: 5.4rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn {
  position: relative;
  cursor: pointer;
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico {
  position: absolute;
  top: 0.6rem;
  right: 5.5rem;
  display: inline-block;
  margin-left: 1rem;
  width: 1.6rem;
  height: 1.6rem;
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico {
    top: 0.7rem;
    margin-left: 0;
    width: 2.6rem;
    height: 2.6rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico:before, .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: #fff;
  transition: opacity 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico:before {
  width: 100%;
  height: 0.15rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico:before {
    height: 0.2rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico:after {
  width: 0.15rem;
  height: 100%;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico:after {
    width: 0.2rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn .ico.-pos {
  right: 2rem;
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn.open .ico {
  transform: rotate(180deg);
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__btn.open .ico:after {
  opacity: 0;
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts {
  position: absolute;
  top: 3.5rem;
  right: 0;
  width: 37.2rem;
  background: #FFE84D;
  padding: 3.5rem 1rem 3.5rem 4rem;
  border-radius: 1.9rem;
  box-sizing: border-box;
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts {
    top: 6rem;
    right: -14rem;
    width: 47.1rem;
    padding: 3rem 1rem 3.6rem 3.5rem;
    border-radius: 2rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__ttl {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 700;
  margin-top: 1.6rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__ttl {
    font-size: 2.2rem;
    line-height: 1.5;
    font-weight: 700;
    margin-top: 2.6rem;
    margin-bottom: 1.4rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__ttl:nth-of-type(1) {
  margin-top: 0;
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item .link {
  color: #000;
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item .link .num {
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 800;
  margin-right: 1rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item .link .num {
    font-size: 2.6rem;
    line-height: 1;
    font-weight: 800;
    margin-right: 1.7rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item .link .txt {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item .link .txt {
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 700;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item + .sub-menu__item {
  margin-top: 1rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts .sub-menu__item + .sub-menu__item {
    margin-top: 1.4rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts.-interview {
  width: 20rem;
  right: 0;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts.-interview {
    width: 27.4rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts.-interview .sub-menu__list {
  margin-left: 3.3rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts.-interview .sub-menu__list {
    margin-left: 6rem;
  }
}
.l-footer .f-cnts02 .f-nav .nav-list__item .sub-menu__cnts.is-show {
  opacity: 1;
  visibility: visible;
}
@media screen and (min-width: 481px) {
  .l-footer .f-cnts02 .f-nav .nav-list__item:hover .en-txt,
  .l-footer .f-cnts02 .f-nav .nav-list__item:hover .jp-txt {
    color: #FFE84D;
  }
  .l-footer .f-cnts02 .f-nav .nav-list__item:hover .ico:before, .l-footer .f-cnts02 .f-nav .nav-list__item:hover .ico:after {
    background: #FFE84D;
  }
}
.l-footer .f-cnts02 .f-nav02 {
  margin-top: 4.4rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav02 {
    margin-top: 4.2rem;
  }
}
.l-footer .f-cnts02 .f-nav02 .nav-list li {
  position: relative;
  display: inline-block;
  padding-bottom: 0.3rem;
}
.l-footer .f-cnts02 .f-nav02 .nav-list li:after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  content: "";
  width: 0;
  height: 1px;
  background: #fff;
  transition: 0.4s;
}
.l-footer .f-cnts02 .f-nav02 .nav-list li a {
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.9090909091;
  letter-spacing: 1.1px;
  font-weight: 400;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .f-nav02 .nav-list li a {
    font-size: 2.6rem;
    line-height: 1.5;
    letter-spacing: 2.6px;
    font-weight: 400;
  }
}
@media screen and (min-width: 481px) {
  .l-footer .f-cnts02 .f-nav02 .nav-list li:hover:after {
    width: 100%;
  }
  .l-footer .f-cnts02 .f-nav02 .nav-list li:hover a {
    text-decoration: none;
    padding-left: 1rem;
  }
}
.l-footer .f-cnts02 .btn_wrap {
  margin-top: 3.6rem;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .btn_wrap {
    margin-top: 7.2rem;
  }
}
.l-footer .f-cnts02 .btn_wrap .entry-btn {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  width: 100%;
  height: 8.3rem;
  border-radius: 10rem;
  border: 1px solid #929292;
  gap: 0 1.1rem;
  padding: 0 4.6rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .btn_wrap .entry-btn {
    height: 11rem;
    border-radius: 13.3rem;
    gap: 0 1.8rem;
    padding: 0 6.1rem;
  }
}
.l-footer .f-cnts02 .btn_wrap .entry-btn .btn-txt {
  height: 2.8rem;
}
.l-footer .f-cnts02 .btn_wrap .entry-btn .hover-txt {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0 1.1rem;
  transition: transform 0.3s ease;
}
.l-footer .f-cnts02 .btn_wrap .entry-btn .hover-txt .en-txt {
  color: #fff;
  font-size: 2.6rem;
  line-height: 1;
  letter-spacing: 1.04px;
  font-weight: 900;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .btn_wrap .entry-btn .hover-txt .en-txt {
    font-size: 3.4rem;
    line-height: 1;
    letter-spacing: 1.36px;
    font-weight: 900;
  }
}
.l-footer .f-cnts02 .btn_wrap .entry-btn .hover-txt .jp-txt {
  color: #fff;
  font-size: 1.4rem;
  line-height: 2;
  font-weight: 500;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .btn_wrap .entry-btn .hover-txt .jp-txt {
    font-size: 2rem;
    line-height: 1.85;
    font-weight: 500;
  }
}
.l-footer .f-cnts02 .btn_wrap .entry-btn .ico {
  display: block;
  position: absolute;
  right: 3rem;
  top: 50%;
  transform: translateY(-50%);
  width: 3.2rem;
  height: 3.2rem;
  background: #5D5A5A;
  border-radius: 100%;
  transition: 0.6s;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .btn_wrap .entry-btn .ico {
    right: 4rem;
    width: 4.2rem;
    height: 4.2rem;
  }
}
.l-footer .f-cnts02 .btn_wrap .entry-btn .ico:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 100%;
  background: #fff;
}
@media screen and (max-width: 480px) {
  .l-footer .f-cnts02 .btn_wrap .entry-btn .ico:after {
    width: 1rem;
    height: 1rem;
  }
}
@media screen and (min-width: 481px) {
  .l-footer .f-cnts02 .btn_wrap .entry-btn:hover {
    border: 1px solid #FFE84D;
  }
  .l-footer .f-cnts02 .btn_wrap .entry-btn:hover .ico {
    background: #000;
  }
}
.l-footer.-corporate {
  margin-top: 0;
  border-radius: 0;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate {
    padding-bottom: 8.3rem;
  }
  .l-footer.-corporate .flex {
    gap: 6rem 0;
  }
}
.l-footer.-corporate .f-cnts01 {
  width: 35.7rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 {
    width: 100%;
  }
}
.l-footer.-corporate .f-cnts01 .logo-wrap {
  display: block;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .logo-wrap {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: nowrap;
    align-content: stretch;
    flex-direction: row-reverse;
    gap: 0 1.8rem;
  }
}
.l-footer.-corporate .f-cnts01 .logo-wrap .logo-txt {
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  margin-bottom: 1rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .logo-wrap .logo-txt {
    font-size: 2rem;
    line-height: 1.7;
    font-weight: 500;
    margin-bottom: 0;
  }
}
.l-footer.-corporate .f-cnts01 .logo-wrap .f-logo {
  width: 31.5rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .logo-wrap .f-logo {
    width: 44.6rem;
  }
}
.l-footer.-corporate .f-cnts01 .logo-wrap .f-logo img {
  width: 100%;
  max-width: inherit;
  height: auto;
}
.l-footer.-corporate .f-cnts01 .f-nav {
  margin-top: 4.2rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav {
    margin-top: 5.3rem;
  }
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  flex-direction: column;
  gap: 1.5rem 0;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list {
    gap: 2.5rem 0;
  }
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list li {
  position: relative;
  width: 100%;
  height: 6.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  padding-bottom: 0;
  box-sizing: border-box;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li {
    height: 10rem;
  }
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list li:after {
  display: none;
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 0.8rem;
  width: 100%;
  height: 100%;
  color: #fff;
  border: 1px solid #929292;
  border-radius: 10rem;
  padding-left: 0;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button {
    gap: 0 1.5rem;
    border-radius: 18.8rem;
  }
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button .en {
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.56px;
  font-weight: 800;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button .en {
    font-size: 2.6rem;
    line-height: 1;
    letter-spacing: 1.055px;
    font-weight: 800;
  }
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button .jp {
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button .jp {
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 700;
  }
}
.l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button .arrow {
  position: absolute;
  right: 2.5rem;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  content: "";
  background: url("../../assets/images/common/arrow02_w.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 1.4rem;
  height: 1.4rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button .arrow {
    right: 4.9rem;
    width: 2.5rem;
    height: 2.5rem;
  }
}
@media screen and (min-width: 481px) {
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button:hover {
    text-decoration: none;
    color: #FFE310;
    border: 1px solid #FFE310;
  }
  .l-footer.-corporate .f-cnts01 .f-nav .nav-list li a.f-button:hover .arrow {
    background: url("../../assets/images/common/arrow02_y.svg") no-repeat center center;
    transform: translate(5px, -50%);
  }
}
.l-footer.-corporate .f-cnts02 {
  width: 58.4rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 {
    width: 100%;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 2.2rem 3.4rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list {
    gap: 2.2rem 5rem;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list__item {
  position: relative;
  width: auto;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__item {
    width: calc((100% - 10rem) / 3);
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list__item.w124 {
  width: 12.4rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__item.w124 {
    width: calc((100% - 10rem) / 3);
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list__item.w143 {
  width: 14.3rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__item.w143 {
    width: calc((100% - 10rem) / 3);
  }
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__item .en-txt {
    margin-bottom: 0.8rem;
  }
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__item .jp-txt {
    margin-right: -1rem;
    line-height: 1.6;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem {
  margin-top: 0.3rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem {
    margin-top: 1.2rem;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem .txt-link {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 1.3rem;
  line-height: 2.1538461538;
  font-weight: 500;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem .txt-link {
    font-size: 2.2rem;
    line-height: 1.7727272727;
    font-weight: 500;
    margin-right: -2rem;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem .txt-link .arrow {
  position: relative;
  top: 0.1rem;
  display: inline-block;
  margin-right: 0.3rem;
  content: "";
  background: url("../../assets/images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 1.4rem;
  height: 1.3rem;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem .txt-link .arrow {
    top: 0.4rem;
    width: 3rem;
    height: 3rem;
  }
}
@media screen and (min-width: 481px) {
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem .txt-link:hover {
    color: #FFE310;
    text-decoration: none;
    transform: translateX(5px);
  }
  .l-footer.-corporate .f-cnts02 .f-nav .nav-list__subitem .txt-link:hover .arrow {
    background: url("../../assets/images/common/arrow_y.svg") no-repeat center center;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav02 {
  margin-top: 5rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav02 {
    margin-top: 5.8rem;
  }
}
.l-footer.-corporate .f-cnts02 .f-nav02 .nav-list li {
  position: relative;
  display: inline-block;
  padding-bottom: 0.3rem;
}
.l-footer.-corporate .f-cnts02 .f-nav02 .nav-list li:after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  content: "";
  width: 0;
  height: 1px;
  background: #fff;
  transition: 0.4s;
}
.l-footer.-corporate .f-cnts02 .f-nav02 .nav-list li a {
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 1.4px;
  font-weight: 400;
  transition: 0.4s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .f-nav02 .nav-list li a {
    font-size: 2.6rem;
    line-height: 1.5;
    letter-spacing: 2.6px;
    font-weight: 400;
  }
}
@media screen and (min-width: 481px) {
  .l-footer.-corporate .f-cnts02 .f-nav02 .nav-list li:hover:after {
    width: 100%;
  }
  .l-footer.-corporate .f-cnts02 .f-nav02 .nav-list li:hover a {
    text-decoration: none;
    padding-left: 1rem;
  }
}
.l-footer.-corporate .f-cnts02 .btn_wrap {
  margin-top: 4.6rem;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .btn_wrap {
    margin-top: 5rem;
  }
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  width: 37.3rem;
  height: 8.3rem;
  border-radius: 15.8rem;
  margin: 0 0 0 auto;
  background: #FFE310;
  border: none;
  padding: 0 4.6rem;
  box-sizing: border-box;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn {
    justify-content: center;
    width: calc(100% - 7rem);
    height: 12.1rem;
    border-radius: 23.1rem;
    gap: 0 1.8rem;
    padding: 0 1rem 0 0;
    margin: 0 auto;
  }
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn.c-hover_btn:before {
  display: none;
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .btn-txt {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  flex-direction: column;
  gap: 5rem 0;
  height: -moz-fit-content;
  height: fit-content;
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .hover-txt {
  padding: 0.5rem 0;
  box-sizing: border-box;
  transition: transform 0.3s ease;
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .hover-txt .jp-txt {
  color: #000;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 700;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .hover-txt .jp-txt {
    font-size: 2.6rem;
    line-height: 1;
    font-weight: 700;
  }
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .ico {
  right: 3.7rem;
  transform: translateY(-50%);
  background: url("../../assets/images/common/arrow_b.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 2.4rem;
  height: 2.3rem;
  border-radius: 0;
  transition: 0.6s;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .ico {
    right: 5.9rem;
    width: 3.4rem;
    height: 3.3rem;
  }
}
.l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn .ico:after {
  display: none;
}
@media screen and (min-width: 481px) {
  .l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn:hover {
    background: #373737;
    border: none;
  }
  .l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn:hover .hover-txt .jp-txt {
    color: #fff !important;
  }
  .l-footer.-corporate .f-cnts02 .btn_wrap .entry-btn:hover .ico {
    background: url("../../assets/images/common/arrow_w.svg") no-repeat center center;
    transform: translate(10px, -50%);
  }
}
.l-footer.-corporate .f-cnts02 .copy {
  margin-top: 4.7rem;
  color: #fff;
  text-align: right;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 1.6px;
  font-weight: 600;
}
@media screen and (max-width: 480px) {
  .l-footer.-corporate .f-cnts02 .copy {
    margin-top: 4.2rem;
    font-size: 2.2rem;
    line-height: 1.9090909091;
    letter-spacing: 2.2px;
    font-weight: 400;
  }
}

.fixed-btn {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 1.7rem;
  margin: 0 auto;
  width: calc(100% - 8rem);
  z-index: 888;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 1.9rem;
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
.fixed-btn .c-button {
  width: 40.9rem;
  font-size: 2.6rem;
  line-height: 1;
  font-weight: 700;
  background: #7669AE;
  padding: 2.8rem 4.8rem;
}
.fixed-btn .c-button.-entry {
  width: calc(100% - 42.8rem);
  font-size: 2.6rem;
  line-height: 1;
  font-weight: 800;
  color: #000;
  background: #FFE84D;
}
.fixed-btn .c-button.-entry .ico {
  display: block;
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  width: 3.1rem;
  height: 3.1rem;
  background: #5D5A5A;
  border-radius: 100%;
}
.fixed-btn .c-button.-entry .ico:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 100%;
  background: #fff;
}
.fixed-btn.is-show {
  opacity: 1;
  visibility: visible;
}

/*------------- .l-header -------------*/
.nav-open .l-header .fixed-header {
  transform: translateY(0) !important;
}

.l-header {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  box-sizing: border-box;
}
.l-header .fixed-header {
  position: fixed;
  top: 0;
  right: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 2rem;
  padding: 3.6rem 10.2rem 0 5.5rem;
  z-index: 999;
  transform: translateY(0);
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header .fixed-header {
    display: block;
    padding: 4.5rem 4rem 3.6rem 4rem;
    border-radius: 0 0 2.3rem 2.3rem;
    background: #fff;
    transform: translateY(-100%);
  }
  .l-header .fixed-header.is-show {
    transform: translateY(0);
  }
}
.l-header .fixed-header .h-logo {
  width: 11.5rem;
}
@media screen and (max-width: 1023px) {
  .l-header .fixed-header .h-logo {
    width: 48.9rem;
  }
}
.l-header .fixed-header .h-logo img {
  max-width: inherit;
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .l-header .fixed-header.-visible {
    transform: translateY(0);
  }
}
.l-header .nav-btn {
  position: absolute;
  right: 4rem;
  top: 2.3rem;
  display: none;
  width: 12.1rem;
  height: 12.1rem;
  border-radius: 100%;
  background: #5D5A5A;
  z-index: 997;
  cursor: pointer;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header .nav-btn {
    display: block;
  }
}
.l-header .nav-btn__inner {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  flex-direction: column;
  gap: 1rem 0;
  box-sizing: border-box;
}
.l-header .nav-btn__inner .btn-border {
  width: 3.8rem;
  height: 2px;
  background: #fff;
  transition: 0.4s;
}
.l-header .nav-btn.active .btn-border {
  position: absolute;
}
.l-header .nav-btn.active .btn-border:nth-of-type(1) {
  transform: rotate(30deg);
}
.l-header .nav-btn.active .btn-border:nth-of-type(2) {
  transform: rotate(-30deg);
}
.l-header .nav__wrapper {
  max-width: 91.8rem;
  padding: 1.53rem 2rem 1.53rem 4rem;
  border-radius: 110rem;
  background: #fff;
  box-shadow: 0 0.4rem 0.4rem 0 rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
  z-index: 998;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper {
    position: absolute;
    right: 0;
    top: 17rem;
    width: calc(100% - 3.6rem);
    max-width: inherit;
    border-radius: 2.5rem 0 0 0;
    height: 100dvh;
    transform: translateX(100%);
    padding: 6.6rem 7.8rem 24rem 6rem;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
  }
}
.l-header .nav__wrapper .nav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 2.9rem;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav {
    display: block;
  }
}
.l-header .nav__wrapper .nav__items {
  position: relative;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items {
    font-size: 2.8rem;
    line-height: 1.5;
    font-weight: 500;
    border-bottom: 1px solid #DADADA;
  }
  .l-header .nav__wrapper .nav__items:last-of-type, .l-header .nav__wrapper .nav__items:nth-last-of-type(2) {
    border-bottom: none;
  }
}
.l-header .nav__wrapper .nav__items .menu-txt {
  position: relative;
  display: block;
  transform: translateX(0);
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items .menu-txt {
    padding: 2.2rem 0;
    box-sizing: border-box;
  }
}
@media screen and (min-width: 1024px) {
  .l-header .nav__wrapper .nav__items:after {
    position: absolute;
    left: 0;
    right: 0;
    top: 2.5rem;
    margin: 0 auto;
    display: block;
    content: "";
    width: 0.8rem;
    height: 0.8rem;
    border-radius: 100%;
    background: #FFE84D;
    opacity: 0;
    transition: 0.4s;
  }
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items:after {
    position: absolute;
    right: 2rem;
    top: 50%;
    border-style: solid;
    border-width: 0 2px 2px 0;
    content: "";
    display: inline-block;
    height: 1.2rem;
    width: 1.2rem;
    border-color: #000;
    transform: translateY(-50%) rotate(-45deg);
  }
}
.l-header .nav__wrapper .nav__items.-entry {
  margin-left: 0.8rem;
  transform: translateX(0) !important;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.-entry {
    display: none;
  }
}
.l-header .nav__wrapper .nav__items.-entry:after {
  display: none;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 15.4rem;
  height: 4.8rem;
  padding: 0 3rem;
  border-radius: 20rem;
  background-color: transparent;
  box-sizing: border-box;
  z-index: 1;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn:after {
  position: absolute;
  left: 0;
  top: 0;
  inset: -1px;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: #262626;
  border-radius: inherit;
  z-index: -2;
  opacity: 1 !important;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn .btn-txt {
  position: relative;
  display: block;
  height: 1.7rem;
  z-index: 2;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn .hover-txt {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0 1.1rem;
  transition: transform 0.3s ease;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn .hover-txt .en-txt {
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 600;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn .ico {
  display: block;
  position: absolute;
  right: 1.3rem;
  top: 50%;
  transform: translateY(-50%);
  width: 2.3rem;
  height: 2.3rem;
  background: #5D5A5A;
  border-radius: 100%;
  transition: 0.6s;
  z-index: 2;
}
.l-header .nav__wrapper .nav__items.-entry .entry-btn .ico:after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 100%;
  background: #fff;
}
@media screen and (min-width: 481px) {
  .l-header .nav__wrapper .nav__items.-entry .entry-btn:hover .ico {
    background: #000;
  }
}
.l-header .nav__wrapper .nav__items.submenu {
  cursor: pointer;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.submenu:before {
    position: absolute;
    top: 2.8rem;
    right: 2.4rem;
    display: block;
    content: "";
    width: 2px;
    height: 3rem;
    background: #000;
    transition: 0.2s;
  }
  .l-header .nav__wrapper .nav__items.submenu:after {
    top: 4rem;
    right: 1.2rem;
    width: 3rem;
    height: 2px;
    border: none;
    background: #000;
    transform: translateY(0) rotate(0);
  }
  .l-header .nav__wrapper .nav__items.submenu.open:before {
    opacity: 0;
  }
}
.l-header .nav__wrapper .nav__items.submenu .subnav {
  position: fixed;
  width: 144rem;
  top: 8.6rem;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 5.3rem;
  cursor: default;
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.submenu .subnav {
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
    transform: translateX(0);
    padding-top: 0;
    opacity: 1;
    visibility: visible;
    display: none;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav.sp-acd_cnts {
    will-change: height, padding, margin;
    transform: translateZ(0);
  }
}
.l-header .nav__wrapper .nav__items.submenu .subnav__inner {
  border-radius: 3rem;
  background: #F8F8F8;
  box-shadow: 0 0.4rem 0.4rem 0 rgba(0, 0, 0, 0.05);
  padding: 9.7rem 0;
  box-sizing: border-box;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner {
    border-radius: 0;
    background: none;
    box-shadow: none;
    padding: 1.4rem 0 3.3rem 0;
  }
}
.l-header .nav__wrapper .nav__items.submenu .subnav__inner.pc-submenu {
  display: block;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner.pc-submenu {
    display: none;
  }
}
.l-header .nav__wrapper .nav__items.submenu .subnav__inner.sp-submenu {
  display: none;
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner.sp-submenu {
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .list-ttl {
    color: #ADADAD;
    font-size: 2.6rem;
    line-height: 1.2307692308;
    letter-spacing: 0.26px;
    font-weight: 700;
    margin-top: 3.6rem;
    margin-bottom: 2rem;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .list-ttl:nth-of-type(1) {
    margin-top: 0;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list {
    padding-left: 1rem;
    box-sizing: border-box;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li {
    position: relative;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li + li {
    margin-top: 3rem;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li:after {
    position: absolute;
    right: 2rem;
    top: 50%;
    border-style: solid;
    border-width: 0 2px 2px 0;
    content: "";
    display: inline-block;
    height: 1.2rem;
    width: 1.2rem;
    border-color: #000;
    transform: translateY(-50%) rotate(-45deg);
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li .menu-list__links {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: nowrap;
    align-content: stretch;
    gap: 0 0.7rem;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li .menu-list__links .num {
    position: relative;
    top: 0.4rem;
    font-size: 3rem;
    line-height: 1;
    font-weight: 800;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li .menu-list__links .txt {
    font-size: 2.6rem;
    line-height: 1.5384615385;
    font-weight: 500;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li .menu-list__links .subtxt {
    font-size: 2.4rem;
    line-height: 1.6666666667;
    font-weight: 500;
    margin-left: 1.2rem;
  }
  .l-header .nav__wrapper .nav__items.submenu .subnav__inner .menu-list li .menu-list__links .subtxt .small {
    font-size: 2.2rem;
    line-height: 1.8181818182;
    font-weight: 400;
  }
}
@media screen and (min-width: 481px) {
  .l-header .nav__wrapper .nav__items.submenu:hover .subnav {
    opacity: 1;
    visibility: visible;
  }
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0 2rem;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box {
  width: calc((100% - 6rem) / 4);
  max-width: 21.8rem;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-heading {
  padding: 1.2rem 0 1.1rem 0;
  margin-bottom: 1.7rem;
  border-radius: 0.96rem;
  background: #4AAD13;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-heading .ttl {
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.1875;
  font-weight: 700;
  margin-bottom: 0.3rem;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-heading .ttl .small {
  font-size: 1.1rem;
  line-height: 1.7272727273;
  font-weight: 700;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-heading .txt {
  text-align: center;
  color: #C6F9AA;
  font-size: 1.2rem;
  line-height: 1.5833333333;
  font-weight: 500;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-img {
  position: relative;
  width: 100%;
  aspect-ratio: 218/136;
  border-radius: 1.1rem;
  overflow: hidden;
  box-sizing: border-box;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-img img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-img .num {
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 4.4rem;
  height: 4.4rem;
  color: #fff;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 600;
  background: #4AAD13;
  border-radius: 1.1rem 0 0 0;
  z-index: 4;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-img .arrow {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 100%;
  background: #4AAD13;
  z-index: 3;
  overflow: hidden;
  opacity: 0;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-img .arrow:after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 1.7rem;
  height: 1.7rem;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links .box-img:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 2;
  opacity: 0;
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links:hover {
    text-decoration: none;
  }
  .l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links:hover .box-img img {
    transform: scale(1.1);
  }
  .l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links:hover .box-img .arrow {
    opacity: 1;
  }
  .l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links:hover .box-img .arrow:after {
    animation: arrow-slide 0.4s 0.4s forwards ease-in-out;
  }
  .l-header .nav__wrapper .nav__items.submenu .box-wrap .job-box__links:hover .box-img:before {
    opacity: 1;
  }
}
.l-header .nav__wrapper .nav__items.submenu .flex {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 7.3rem;
}
.l-header .nav__wrapper .nav__items.submenu .flex .flex-interview {
  width: 58.4rem;
}
.l-header .nav__wrapper .nav__items.submenu .flex .flex-talk {
  width: 50.4rem;
}
.l-header .nav__wrapper .nav__items.submenu .voice-title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 1.1rem;
  margin-bottom: 2rem;
}
.l-header .nav__wrapper .nav__items.submenu .voice-title .en-ttl {
  color: #C7C7C7;
  font-size: 2.2rem;
  line-height: 1;
  letter-spacing: 0.88px;
  font-weight: 800;
}
.l-header .nav__wrapper .nav__items.submenu .voice-title .jp-ttl {
  color: #262626;
  font-size: 1.2rem;
  line-height: 1.25;
  letter-spacing: 0.12px;
  font-weight: 700;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 2rem;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box {
  width: calc((100% - 4rem) / 3);
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  /* SVGでマスクをかける設定 */
  /*-webkit-mask-image: url('../images/common/nav01_mask.svg'); /* Safari用 
  mask-image: url('../images/common/nav01_mask.svg');         /* 標準仕様 */
  -webkit-mask-image: url("data:image/svg+xml;utf8,<svg width='179' height='179' viewBox='0 0 179 179' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M79.5341 0H151.3C166.467 0 178.781 12.3135 178.781 27.4812V99.2473C178.781 143.143 143.143 178.781 99.2473 178.781H27.4812C12.3135 178.78 0 166.467 0 151.299V79.5332C0 35.6381 35.6381 0 79.5341 0Z' fill='%23FF0011'/></svg>");
  mask-image: url("data:image/svg+xml;utf8,<svg width='179' height='179' viewBox='0 0 179 179' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M79.5341 0H151.3C166.467 0 178.781 12.3135 178.781 27.4812V99.2473C178.781 143.143 143.143 178.781 99.2473 178.781H27.4812C12.3135 178.78 0 166.467 0 151.299V79.5332C0 35.6381 35.6381 0 79.5341 0Z' fill='%23FF0011'/></svg>");
  /* マスクの位置とサイズ調整 */
  -webkit-mask-size: contain;
  mask-size: contain; /* 枠線内にSVGを収める（枠いっぱいは cover） */
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat; /* マスクをループさせない */
  -webkit-mask-position: center;
  mask-position: center; /* マスクを中央配置 */
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 2;
  opacity: 0;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container .masked-image {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container .year {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 11.4rem;
  padding: 0.7rem 0;
  border-radius: 0 0.8742rem 0 0;
  z-index: 4;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container .year p {
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.25;
  font-weight: 700;
  color: #fff;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container .arrow {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 100%;
  overflow: hidden;
  z-index: 3;
  opacity: 0;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .mask-container .arrow:after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 1.7rem;
  height: 1.7rem;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .box-txt {
  margin-top: 1.2rem;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .box-txt .name {
  font-size: 1.2rem;
  line-height: 1.1666666667;
  font-weight: 700;
  margin-bottom: 0.4rem;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .box-txt .name .color {
  font-size: 1.9rem;
  line-height: 1;
  letter-spacing: 1.923px;
  font-weight: 700;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links .box-txt .txt {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  font-weight: 500;
}
@media screen and (min-width: 481px) {
  .l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links:hover {
    text-decoration: none;
  }
  .l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links:hover .mask-container:before {
    opacity: 1;
  }
  .l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links:hover .mask-container .masked-image {
    transform: scale(1.1);
  }
  .l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links:hover .mask-container .arrow {
    opacity: 1;
  }
  .l-header .nav__wrapper .nav__items.submenu .interview-wrap .box__links:hover .mask-container .arrow:after {
    animation: arrow-slide 0.4s 0.4s forwards ease-in-out;
  }
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b01 .box__links .mask-container .year {
  background: #9589C7;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b01 .box__links .mask-container .arrow {
  background: #9589C7;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b01 .box__links .box-txt .name .color {
  color: #9589C7;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b02 .box__links .mask-container .year {
  background: #61C9FF;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b02 .box__links .mask-container .arrow {
  background: #61C9FF;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b02 .box__links .box-txt .name .color {
  color: #61C9FF;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b03 .box__links .mask-container .year {
  background: #77CF47;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b03 .box__links .mask-container .arrow {
  background: #77CF47;
}
.l-header .nav__wrapper .nav__items.submenu .interview-wrap .box.b03 .box__links .box-txt .name .color {
  color: #77CF47;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 1rem;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box {
  position: relative;
  width: calc((100% - 1rem) / 2);
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container {
  position: relative;
  width: 100%;
  aspect-ratio: 248/180;
  /*									-webkit-mask-image: url('../images/common/nav02_mask.svg'); /* Safari用 */
  mask-image: url("../images/common/nav02_mask.svg"); /* 標準仕様 */
  -webkit-mask-image: url("data:image/svg+xml;utf8,<svg width='249' height='180' viewBox='0 0 249 180' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 52.9598C0 23.7109 23.7109 0 52.9598 0H235.049C242.361 0 248.289 5.92773 248.289 13.24V126.772C248.289 156.021 224.578 179.731 195.329 179.731H13.24C5.92774 179.731 0 173.804 0 166.491V52.9598Z' fill='%23D9D9D9'/></svg>");
  mask-image: url("data:image/svg+xml;utf8,<svg width='249' height='180' viewBox='0 0 249 180' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M0 52.9598C0 23.7109 23.7109 0 52.9598 0H235.049C242.361 0 248.289 5.92773 248.289 13.24V126.772C248.289 156.021 224.578 179.731 195.329 179.731H13.24C5.92774 179.731 0 173.804 0 166.491V52.9598Z' fill='%23D9D9D9'/></svg>");
  overflow: hidden;
  /* マスクの位置とサイズ調整 */
  -webkit-mask-size: contain;
  mask-size: contain; /* 枠線内にSVGを収める（枠いっぱいは cover） */
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat; /* マスクをループさせない */
  -webkit-mask-position: center;
  mask-position: center; /* マスクを中央配置 */
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 2;
  opacity: 0;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container .masked-image {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 1;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container .team {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 11.4rem;
  padding: 0.7rem 0;
  border-radius: 0 0.8827rem 0 0;
  z-index: 4;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container .team p {
  text-align: center;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 700;
  color: #fff;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container .arrow {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  width: 3.1rem;
  height: 3.1rem;
  border-radius: 100%;
  overflow: hidden;
  z-index: 3;
  opacity: 0;
  transition: 0.4s;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .mask-container .arrow:after {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  content: "";
  background: url("../images/common/arrow_w.svg") no-repeat center center;
  background-size: 100% 100% !important;
  width: 1.7rem;
  height: 1.7rem;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .box-txt {
  margin-top: 1.4rem;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links .box-txt .ttl {
  font-size: 1.4rem;
  line-height: 1.0714285714;
  font-weight: 700;
}
@media screen and (min-width: 481px) {
  .l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links:hover {
    text-decoration: none;
  }
  .l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links:hover .mask-container:before {
    opacity: 1;
  }
  .l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links:hover .mask-container .masked-image {
    transform: scale(1.1);
  }
  .l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links:hover .mask-container .arrow {
    opacity: 1;
  }
  .l-header .nav__wrapper .nav__items.submenu .talk-wrap .box__links:hover .mask-container .arrow:after {
    animation: arrow-slide 0.4s 0.4s forwards ease-in-out;
  }
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box.b01 .box__links .mask-container .team {
  background: #F8634A;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box.b01 .box__links .mask-container .arrow {
  background: #F8634A;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box.b02 .box__links .mask-container .team {
  background: #0080C7;
}
.l-header .nav__wrapper .nav__items.submenu .talk-wrap .box.b02 .box__links .mask-container .arrow {
  background: #0080C7;
}
@media screen and (min-width: 481px) {
  .l-header .nav__wrapper .nav__items:hover .menu-txt {
    text-decoration: none;
    transform: translateY(5px);
  }
  .l-header .nav__wrapper .nav__items:hover:after {
    opacity: 1;
  }
}
.l-header .nav__wrapper.open {
  transform: translateX(0);
}
@media screen and (max-width: 1023px) {
  .l-header .nav__wrapper .btn_wrap {
    margin-top: 3.2rem;
  }
  .l-header .nav__wrapper .btn_wrap .c-button {
    width: 54.4rem;
    height: 10.3rem;
    padding: 2rem 5.6rem;
    background: #7669AE;
    margin: 0 auto;
    font-size: 2.8rem;
    line-height: 1;
    font-weight: 700;
  }
  .l-header .nav__wrapper .btn_wrap .c-button .arrow {
    transform: translateY(-50%) rotate(90deg);
  }
  .l-header .nav__wrapper .btn_wrap .c-button.-entry {
    margin-top: 3.8rem;
    color: #000;
    background: #FFE84D;
    font-size: 3.2rem;
    line-height: 1;
    font-weight: 800;
  }
  .l-header .nav__wrapper .btn_wrap .c-button.-entry .ico {
    display: block;
    position: absolute;
    right: 4.1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 4.9rem;
    height: 4.9rem;
    background: #5D5A5A;
    border-radius: 100%;
    transition: 0.6s;
    z-index: 2;
  }
  .l-header .nav__wrapper .btn_wrap .c-button.-entry .ico:after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    border-radius: 100%;
    background: #fff;
  }
}
.l-header.-corporate .fixed-header {
  padding: 2.2rem 5rem 2.5rem 5rem;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .fixed-header {
    padding: 4.2rem 4rem 2.6rem 4rem;
    border-radius: 0;
    background: none;
    transform: translateY(-100%);
  }
  .l-header.-corporate .fixed-header.is-show {
    transform: translateY(0);
  }
}
.l-header.-corporate .fixed-header .h-logo {
  position: relative;
  width: 32.6rem;
  height: 7rem;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .fixed-header .h-logo {
    width: 100%;
    height: auto;
    z-index: 999;
  }
  .l-header.-corporate .fixed-header .h-logo a {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: nowrap;
    align-content: stretch;
    flex-direction: row-reverse;
    gap: 0 2rem;
  }
}
.l-header.-corporate .fixed-header .h-logo .logo-txt {
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  margin-bottom: 1rem;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .fixed-header .h-logo .logo-txt {
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 500;
    margin-bottom: 0;
    opacity: 1 !important;
  }
}
.l-header.-corporate .fixed-header .h-logo .logo-txt .notab {
  display: none;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .fixed-header .h-logo .logo-txt .notab {
    display: block;
  }
}
.l-header.-corporate .fixed-header .h-logo .logo01 {
  position: relative;
  width: 100%;
  transition: 0.4s;
  z-index: 2;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .fixed-header .h-logo .logo01 {
    position: relative !important;
    width: 13.6rem;
    opacity: 1 !important;
  }
}
.l-header.-corporate .fixed-header .h-logo .logo02 {
  position: absolute;
  left: 0;
  top: 0;
  width: 10.9rem;
  z-index: 1;
  opacity: 0;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .fixed-header .h-logo .logo02 {
    display: none;
  }
}
.l-header.-corporate .fixed-header.-visible {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.4) 0.68%, rgba(255, 255, 255, 0.2) 100%);
  -webkit-backdrop-filter: blur(40px);
          backdrop-filter: blur(40px);
}
.l-header.-corporate .fixed-header.-visible .logo-txt {
  opacity: 0;
}
.l-header.-corporate .fixed-header.-visible .logo01 {
  position: absolute;
  opacity: 0;
}
.l-header.-corporate .fixed-header.-visible .logo02 {
  opacity: 1;
}
.l-header.-corporate .nav-btn {
  width: 10.8rem;
  height: 10.8rem;
  z-index: 999;
}
.l-header.-corporate .btn_wrap.sp-btn {
  position: absolute;
  right: 15.6rem;
  top: 2.3rem;
  width: 10.8rem;
  height: 10.8rem;
  z-index: 999;
  display: none;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .btn_wrap.sp-btn {
    display: block;
  }
}
.l-header.-corporate .btn_wrap.sp-btn .h-button.-access {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .btn_wrap.sp-btn .h-button.-access {
    display: flex;
  }
}
.l-header.-corporate .btn_wrap.sp-btn .h-button.-access .ico {
  width: 3.6rem;
  height: 4.5rem;
}
.l-header.-corporate .nav__wrapper {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 3rem;
  max-width: 91.8rem;
  padding: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav__wrapper {
    top: 0;
    display: block !important;
    width: 100%;
    max-width: inherit;
    background: #fff;
    padding: 18.6rem 8.5rem 8.5rem 8.5rem;
  }
}
.l-header.-corporate .nav {
  justify-content: flex-start;
  gap: 0 0.9rem;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav {
    display: none;
  }
}
.l-header.-corporate .nav__items {
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  font-weight: 700;
  border-radius: 20rem;
  padding: 0;
  overflow: hidden;
  box-sizing: border-box;
}
.l-header.-corporate .nav__items:after {
  top: 0;
  width: 100%;
  height: 100%;
  background: #E5E5E5;
  opacity: 1 !important;
  z-index: 1;
  border-radius: 0;
}
.l-header.-corporate .nav__items .menu-txt {
  position: relative;
  padding: 0.8rem 2rem;
  transform: translateY(0) !important;
  z-index: 3;
}
.l-header.-corporate .nav__items .menu-txt:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  width: 0;
  height: 100%;
  background: #747474;
  z-index: -1;
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .l-header.-corporate .nav__items:hover .menu-txt {
    color: #fff;
  }
  .l-header.-corporate .nav__items:hover .menu-txt:after {
    width: 100%;
  }
}
.l-header.-corporate .nav02 {
  margin-top: 1.4rem;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 2.6rem;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02 {
    flex-direction: column;
    gap: 0 0;
  }
}
.l-header.-corporate .nav02__items {
  position: relative;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items {
    display: block;
    width: 100%;
    padding: 2.2rem 0;
    border-bottom: 1px solid #DADADA;
  }
  .l-header.-corporate .nav02__items:after {
    position: absolute;
    right: 2.3rem;
    top: 3.6rem;
    border-style: solid;
    border-width: 0 0.2px 0.2px 0;
    content: "";
    display: inline-block;
    position: absolute;
    height: 2.4rem;
    width: 2.4rem;
    border-color: #000;
    transform: rotate(-45deg);
  }
}
@media screen and (max-width: 1023px) and (max-width: 480px) {
  .l-header.-corporate .nav02__items:after {
    height: 1.2rem;
    width: 1.2rem;
  }
}
.l-header.-corporate .nav02__items:before {
  position: absolute;
  left: -1.3rem;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0.3rem;
  display: block;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  background: #FFE207;
  border-radius: 100%;
  opacity: 0;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items:before {
    display: none;
  }
}
.l-header.-corporate .nav02__items .menu-txt {
  position: relative;
  display: block;
  margin-left: -1.5rem;
  padding-left: 1.5rem;
  height: 1.85rem;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items .menu-txt {
    margin-left: 0;
    padding-left: 0;
    height: auto;
  }
}
.l-header.-corporate .nav02__items .menu-txt:before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0.3rem;
  display: block;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  background: #FFE207;
  border-radius: 100%;
  opacity: 0;
  transition: 0.4s;
}
.l-header.-corporate .nav02__items .menu-txt .hover-txt {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  transition: 0.3s;
  gap: 0 2.6rem;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items .menu-txt .hover-txt.-on .txt {
    display: none;
  }
}
.l-header.-corporate .nav02__items .menu-txt .hover-txt .txt {
  color: #373737;
  font-size: 1.3rem;
  line-height: 1.6153846154;
  font-weight: 700;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items .menu-txt .hover-txt .txt {
    font-size: 2.8rem;
    line-height: 1.5;
    font-weight: 500;
  }
}
@media screen and (min-width: 481px) {
  .l-header.-corporate .nav02__items .menu-txt:hover {
    text-decoration: none;
  }
  .l-header.-corporate .nav02__items .menu-txt:hover:before {
    opacity: 1;
  }
  .l-header.-corporate .nav02__items .menu-txt:hover .hover-txt {
    transform: translateY(-100%);
  }
}
@media screen and (min-width: 481px) {
  .l-header.-corporate .nav02__items.submenu:hover .submenu_wrap {
    visibility: visible;
    opacity: 1;
  }
}
.l-header.-corporate .nav02__items.submenu .submenu_wrap {
  position: absolute;
  top: calc(100% + 1rem);
  left: 50%;
  transform: translateX(-50%);
  width: 19.6rem;
  padding: 1.9rem 0;
  background: #fff;
  border-radius: 1.4rem;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items.submenu .submenu_wrap {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 3rem 0 0 5rem;
    transform: translateX(0);
    background: none;
    box-shadow: none;
    border-radius: 0;
    opacity: 1 !important;
    visibility: visible !important;
  }
}
.l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems {
  position: relative;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems:after {
    position: absolute;
    right: 2.3rem;
    top: 1.4rem;
    border-style: solid;
    border-width: 0 0.2px 0.2px 0;
    content: "";
    display: inline-block;
    position: absolute;
    height: 2.4rem;
    width: 2.4rem;
    border-color: #000;
    transform: rotate(-45deg);
  }
}
@media screen and (max-width: 1023px) and (max-width: 480px) {
  .l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems:after {
    height: 1.2rem;
    width: 1.2rem;
  }
}
.l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems .menu-txt {
  position: relative;
  margin-left: 0;
  padding: 0 3.2rem 0 5.2rem;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems .menu-txt {
    padding: 0 0 0 3.6rem;
  }
}
.l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems .menu-txt:before {
  left: 2.2rem;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0.1rem;
  display: inline-block;
  background: url("../images/common/arrow_b.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 1.4rem;
  height: 1.1rem;
  border-radius: 0;
  opacity: 1;
  transition: 0.4s;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems .menu-txt:before {
    left: 0;
    width: 2.6rem;
    height: 2.4rem;
  }
}
@media screen and (min-width: 481px) {
  .l-header.-corporate .nav02__items.submenu .submenu_wrap .nav__sub .nav__subitems .menu-txt:hover:before {
    transform: translate(5px, -50%);
  }
}
.l-header.-corporate .sp-menu {
  display: none;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .sp-menu {
    display: block;
    margin-top: 5rem;
  }
  .l-header.-corporate .sp-menu .menu-btn {
    position: relative;
    display: block;
    padding: 3.2rem 4.1rem;
    border-radius: 3rem;
    border: 1px solid #373737;
    box-sizing: border-box;
  }
  .l-header.-corporate .sp-menu .menu-btn:after {
    position: absolute;
    right: 3rem;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    content: "";
    background: url("../images/common/arrow_b.svg") no-repeat center center;
    background-size: 100% auto !important;
    width: 4rem;
    height: 3.5rem;
  }
  .l-header.-corporate .sp-menu .menu-btn .txt01 {
    display: block;
    font-size: 2.4rem;
    line-height: 1.2083333333;
    font-weight: 500;
  }
  .l-header.-corporate .sp-menu .menu-btn .txt02 {
    display: block;
    font-size: 2.6rem;
    line-height: 1.5;
    letter-spacing: 1.56px;
    font-weight: 500;
  }
  .l-header.-corporate .sp-menu .menu-btn .txt02 .small {
    font-size: 2.2rem;
    line-height: 1.7727272727;
    letter-spacing: 1.32px;
    font-weight: 500;
  }
  .l-header.-corporate .sp-menu .menu-btn + .menu-btn {
    margin-top: 2.3rem;
  }
}
.l-header.-corporate .btn_wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 0.6rem;
}
.l-header.-corporate .btn_wrap .h-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
}
.l-header.-corporate .btn_wrap .h-button:before, .l-header.-corporate .btn_wrap .h-button:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: "";
  height: 100%;
  z-index: 1;
  transition: 0.4s;
}
.l-header.-corporate .btn_wrap .h-button:before {
  width: 100%;
  background: #E5E5E5;
  z-index: 1;
}
.l-header.-corporate .btn_wrap .h-button:after {
  width: 0;
  background: #373737;
  z-index: 2;
}
.l-header.-corporate .btn_wrap .h-button.-access {
  width: 6rem;
  height: 6rem;
  border-radius: 100%;
  background: #E5E5E5;
  overflow: hidden;
}
.l-header.-corporate .btn_wrap .h-button.-access .ico {
  position: relative;
  width: 2rem;
  height: 2.6rem;
  z-index: 3;
}
.l-header.-corporate .btn_wrap .h-button.-access .ico:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  background: url("../images/common/ico_pin.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 100%;
  height: 100%;
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .l-header.-corporate .btn_wrap .h-button.-access:hover:after {
    width: 100%;
  }
  .l-header.-corporate .btn_wrap .h-button.-access:hover .ico:before {
    background: url("../images/common/ico_pin_w.svg") no-repeat center center;
  }
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .btn_wrap .h-button.-access {
    display: none;
  }
}
.l-header.-corporate .btn_wrap .h-button.-entry {
  padding: 1.7rem 5.6rem 1.7rem 2.8rem;
  border-radius: 20rem;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .btn_wrap .h-button.-entry {
    width: 100%;
    padding: 3rem 5rem;
    border-radius: 27.4rem;
  }
}
.l-header.-corporate .btn_wrap .h-button.-entry:before {
  width: 100%;
  background: #FFE310;
  z-index: 1;
}
.l-header.-corporate .btn_wrap .h-button.-entry .menu-txt {
  position: relative;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.64px;
  font-weight: 700;
  z-index: 3;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .btn_wrap .h-button.-entry .menu-txt {
    font-size: 2.8rem;
    line-height: 1.4642857143;
    letter-spacing: 0.12px;
    font-weight: 700;
  }
}
.l-header.-corporate .btn_wrap .h-button.-entry .ico {
  position: absolute;
  right: 2.3rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.3rem;
  transition: 0.4s;
  z-index: 3;
}
@media screen and (max-width: 1023px) {
  .l-header.-corporate .btn_wrap .h-button.-entry .ico {
    right: 3rem;
    width: 4rem;
    height: 3.5rem;
  }
}
.l-header.-corporate .btn_wrap .h-button.-entry .ico:after {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  background: url("../images/common/arrow_b.svg") no-repeat center center;
  background-size: 100% auto !important;
  width: 100%;
  height: 100%;
  transition: 0.4s;
}
@media screen and (min-width: 481px) {
  .l-header.-corporate .btn_wrap .h-button.-entry:hover {
    text-decoration: none;
  }
  .l-header.-corporate .btn_wrap .h-button.-entry:hover:after {
    width: 100%;
  }
  .l-header.-corporate .btn_wrap .h-button.-entry:hover .menu-txt {
    color: #fff;
  }
  .l-header.-corporate .btn_wrap .h-button.-entry:hover .ico {
    transform: translate(5px, -50%);
  }
  .l-header.-corporate .btn_wrap .h-button.-entry:hover .ico:after {
    background: url("../images/common/arrow_w.svg") no-repeat center center;
  }
}

body:before {
  position: fixed;
  left: 0;
  top: 0;
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: #F8F8F8;
  z-index: 997;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
}
body.nav-open .l-header .fixed-header {
  background: #F8F8F8;
}
body.nav-open:before {
  opacity: 1;
  pointer-events: auto;
}

/* layout
-----------------------------------------------------------------------------*/
/* module
---------------------------------------------------------------------------- */
@media screen and (min-width: 481px) {
  .nopc {
    display: none !important;
  }
}
@media screen and (max-width: 480px) {
  .nosp {
    display: none !important;
  }
}
/* clearfix
---------------------------------------------------------------------------- */
.clearfix {
  zoom: 1;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/* text
---------------------------------------------------------------------------- */
.tal {
  text-align: left !important;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

.fwb {
  font-weight: bold !important;
}

@media screen and (max-width: 480px) {
  .sptal {
    text-align: left !important;
  }
  .sptac {
    text-align: center !important;
  }
  .sptar {
    text-align: right !important;
  }
  .spfwb {
    font-weight: bold !important;
  }
}
/* margin
---------------------------------------------------------------------------- */
.mt100 {
  margin-top: 100px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.ml100 {
  margin-left: 100px !important;
}

.mr100 {
  margin-right: 100px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.ml5 {
  margin-left: 5px !important;
}

.mr5 {
  margin-right: 5px !important;
}

.mt0 {
  margin-top: 0px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}

.ml0 {
  margin-left: 0px !important;
}

.mr0 {
  margin-right: 0px !important;
}

@media screen and (max-width: 480px) {
  .spmt100 {
    margin-top: 27.7777777778vw !important;
  }
  .spmb100 {
    margin-bottom: 27.7777777778vw !important;
  }
  .spml100 {
    margin-left: 27.7777777778vw !important;
  }
  .spmr100 {
    margin-right: 27.7777777778vw !important;
  }
  .spmt95 {
    margin-top: 26.3888888889vw !important;
  }
  .spmb95 {
    margin-bottom: 26.3888888889vw !important;
  }
  .spml95 {
    margin-left: 26.3888888889vw !important;
  }
  .spmr95 {
    margin-right: 26.3888888889vw !important;
  }
  .spmt90 {
    margin-top: 25vw !important;
  }
  .spmb90 {
    margin-bottom: 25vw !important;
  }
  .spml90 {
    margin-left: 25vw !important;
  }
  .spmr90 {
    margin-right: 25vw !important;
  }
  .spmt85 {
    margin-top: 23.6111111111vw !important;
  }
  .spmb85 {
    margin-bottom: 23.6111111111vw !important;
  }
  .spml85 {
    margin-left: 23.6111111111vw !important;
  }
  .spmr85 {
    margin-right: 23.6111111111vw !important;
  }
  .spmt80 {
    margin-top: 22.2222222222vw !important;
  }
  .spmb80 {
    margin-bottom: 22.2222222222vw !important;
  }
  .spml80 {
    margin-left: 22.2222222222vw !important;
  }
  .spmr80 {
    margin-right: 22.2222222222vw !important;
  }
  .spmt75 {
    margin-top: 20.8333333333vw !important;
  }
  .spmb75 {
    margin-bottom: 20.8333333333vw !important;
  }
  .spml75 {
    margin-left: 20.8333333333vw !important;
  }
  .spmr75 {
    margin-right: 20.8333333333vw !important;
  }
  .spmt70 {
    margin-top: 19.4444444444vw !important;
  }
  .spmb70 {
    margin-bottom: 19.4444444444vw !important;
  }
  .spml70 {
    margin-left: 19.4444444444vw !important;
  }
  .spmr70 {
    margin-right: 19.4444444444vw !important;
  }
  .spmt65 {
    margin-top: 18.0555555556vw !important;
  }
  .spmb65 {
    margin-bottom: 18.0555555556vw !important;
  }
  .spml65 {
    margin-left: 18.0555555556vw !important;
  }
  .spmr65 {
    margin-right: 18.0555555556vw !important;
  }
  .spmt60 {
    margin-top: 16.6666666667vw !important;
  }
  .spmb60 {
    margin-bottom: 16.6666666667vw !important;
  }
  .spml60 {
    margin-left: 16.6666666667vw !important;
  }
  .spmr60 {
    margin-right: 16.6666666667vw !important;
  }
  .spmt55 {
    margin-top: 15.2777777778vw !important;
  }
  .spmb55 {
    margin-bottom: 15.2777777778vw !important;
  }
  .spml55 {
    margin-left: 15.2777777778vw !important;
  }
  .spmr55 {
    margin-right: 15.2777777778vw !important;
  }
  .spmt50 {
    margin-top: 13.8888888889vw !important;
  }
  .spmb50 {
    margin-bottom: 13.8888888889vw !important;
  }
  .spml50 {
    margin-left: 13.8888888889vw !important;
  }
  .spmr50 {
    margin-right: 13.8888888889vw !important;
  }
  .spmt45 {
    margin-top: 12.5vw !important;
  }
  .spmb45 {
    margin-bottom: 12.5vw !important;
  }
  .spml45 {
    margin-left: 12.5vw !important;
  }
  .spmr45 {
    margin-right: 12.5vw !important;
  }
  .spmt40 {
    margin-top: 11.1111111111vw !important;
  }
  .spmb40 {
    margin-bottom: 11.1111111111vw !important;
  }
  .spml40 {
    margin-left: 11.1111111111vw !important;
  }
  .spmr40 {
    margin-right: 11.1111111111vw !important;
  }
  .spmt35 {
    margin-top: 9.7222222222vw !important;
  }
  .spmb35 {
    margin-bottom: 9.7222222222vw !important;
  }
  .spml35 {
    margin-left: 9.7222222222vw !important;
  }
  .spmr35 {
    margin-right: 9.7222222222vw !important;
  }
  .spmt30 {
    margin-top: 8.3333333333vw !important;
  }
  .spmb30 {
    margin-bottom: 8.3333333333vw !important;
  }
  .spml30 {
    margin-left: 8.3333333333vw !important;
  }
  .spmr30 {
    margin-right: 8.3333333333vw !important;
  }
  .spmt25 {
    margin-top: 6.9444444444vw !important;
  }
  .spmb25 {
    margin-bottom: 6.9444444444vw !important;
  }
  .spml25 {
    margin-left: 6.9444444444vw !important;
  }
  .spmr25 {
    margin-right: 6.9444444444vw !important;
  }
  .spmt20 {
    margin-top: 5.5555555556vw !important;
  }
  .spmb20 {
    margin-bottom: 5.5555555556vw !important;
  }
  .spml20 {
    margin-left: 5.5555555556vw !important;
  }
  .spmr20 {
    margin-right: 5.5555555556vw !important;
  }
  .spmt15 {
    margin-top: 4.1666666667vw !important;
  }
  .spmb15 {
    margin-bottom: 4.1666666667vw !important;
  }
  .spml15 {
    margin-left: 4.1666666667vw !important;
  }
  .spmr15 {
    margin-right: 4.1666666667vw !important;
  }
  .spmt10 {
    margin-top: 2.7777777778vw !important;
  }
  .spmb10 {
    margin-bottom: 2.7777777778vw !important;
  }
  .spml10 {
    margin-left: 2.7777777778vw !important;
  }
  .spmr10 {
    margin-right: 2.7777777778vw !important;
  }
  .spmt5 {
    margin-top: 1.3888888889vw !important;
  }
  .spmb5 {
    margin-bottom: 1.3888888889vw !important;
  }
  .spml5 {
    margin-left: 1.3888888889vw !important;
  }
  .spmr5 {
    margin-right: 1.3888888889vw !important;
  }
  .spmt0 {
    margin-top: 0vw !important;
  }
  .spmb0 {
    margin-bottom: 0vw !important;
  }
  .spml0 {
    margin-left: 0vw !important;
  }
  .spmr0 {
    margin-right: 0vw !important;
  }
}
/* padding
---------------------------------------------------------------------------- */
.pt100 {
  padding-top: 100px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.pl100 {
  padding-left: 100px !important;
}

.pr100 {
  padding-right: 100px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.pl5 {
  padding-left: 5px !important;
}

.pr5 {
  padding-right: 5px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pl0 {
  padding-left: 0px !important;
}

.pr0 {
  padding-right: 0px !important;
}

@media screen and (max-width: 480px) {
  .sppt100 {
    padding-top: 27.7777777778vw !important;
  }
  .sppb100 {
    padding-bottom: 27.7777777778vw !important;
  }
  .sppl100 {
    padding-left: 27.7777777778vw !important;
  }
  .sppr100 {
    padding-right: 27.7777777778vw !important;
  }
  .sppt95 {
    padding-top: 26.3888888889vw !important;
  }
  .sppb95 {
    padding-bottom: 26.3888888889vw !important;
  }
  .sppl95 {
    padding-left: 26.3888888889vw !important;
  }
  .sppr95 {
    padding-right: 26.3888888889vw !important;
  }
  .sppt90 {
    padding-top: 25vw !important;
  }
  .sppb90 {
    padding-bottom: 25vw !important;
  }
  .sppl90 {
    padding-left: 25vw !important;
  }
  .sppr90 {
    padding-right: 25vw !important;
  }
  .sppt85 {
    padding-top: 23.6111111111vw !important;
  }
  .sppb85 {
    padding-bottom: 23.6111111111vw !important;
  }
  .sppl85 {
    padding-left: 23.6111111111vw !important;
  }
  .sppr85 {
    padding-right: 23.6111111111vw !important;
  }
  .sppt80 {
    padding-top: 22.2222222222vw !important;
  }
  .sppb80 {
    padding-bottom: 22.2222222222vw !important;
  }
  .sppl80 {
    padding-left: 22.2222222222vw !important;
  }
  .sppr80 {
    padding-right: 22.2222222222vw !important;
  }
  .sppt75 {
    padding-top: 20.8333333333vw !important;
  }
  .sppb75 {
    padding-bottom: 20.8333333333vw !important;
  }
  .sppl75 {
    padding-left: 20.8333333333vw !important;
  }
  .sppr75 {
    padding-right: 20.8333333333vw !important;
  }
  .sppt70 {
    padding-top: 19.4444444444vw !important;
  }
  .sppb70 {
    padding-bottom: 19.4444444444vw !important;
  }
  .sppl70 {
    padding-left: 19.4444444444vw !important;
  }
  .sppr70 {
    padding-right: 19.4444444444vw !important;
  }
  .sppt65 {
    padding-top: 18.0555555556vw !important;
  }
  .sppb65 {
    padding-bottom: 18.0555555556vw !important;
  }
  .sppl65 {
    padding-left: 18.0555555556vw !important;
  }
  .sppr65 {
    padding-right: 18.0555555556vw !important;
  }
  .sppt60 {
    padding-top: 16.6666666667vw !important;
  }
  .sppb60 {
    padding-bottom: 16.6666666667vw !important;
  }
  .sppl60 {
    padding-left: 16.6666666667vw !important;
  }
  .sppr60 {
    padding-right: 16.6666666667vw !important;
  }
  .sppt55 {
    padding-top: 15.2777777778vw !important;
  }
  .sppb55 {
    padding-bottom: 15.2777777778vw !important;
  }
  .sppl55 {
    padding-left: 15.2777777778vw !important;
  }
  .sppr55 {
    padding-right: 15.2777777778vw !important;
  }
  .sppt50 {
    padding-top: 13.8888888889vw !important;
  }
  .sppb50 {
    padding-bottom: 13.8888888889vw !important;
  }
  .sppl50 {
    padding-left: 13.8888888889vw !important;
  }
  .sppr50 {
    padding-right: 13.8888888889vw !important;
  }
  .sppt45 {
    padding-top: 12.5vw !important;
  }
  .sppb45 {
    padding-bottom: 12.5vw !important;
  }
  .sppl45 {
    padding-left: 12.5vw !important;
  }
  .sppr45 {
    padding-right: 12.5vw !important;
  }
  .sppt40 {
    padding-top: 11.1111111111vw !important;
  }
  .sppb40 {
    padding-bottom: 11.1111111111vw !important;
  }
  .sppl40 {
    padding-left: 11.1111111111vw !important;
  }
  .sppr40 {
    padding-right: 11.1111111111vw !important;
  }
  .sppt35 {
    padding-top: 9.7222222222vw !important;
  }
  .sppb35 {
    padding-bottom: 9.7222222222vw !important;
  }
  .sppl35 {
    padding-left: 9.7222222222vw !important;
  }
  .sppr35 {
    padding-right: 9.7222222222vw !important;
  }
  .sppt30 {
    padding-top: 8.3333333333vw !important;
  }
  .sppb30 {
    padding-bottom: 8.3333333333vw !important;
  }
  .sppl30 {
    padding-left: 8.3333333333vw !important;
  }
  .sppr30 {
    padding-right: 8.3333333333vw !important;
  }
  .sppt25 {
    padding-top: 6.9444444444vw !important;
  }
  .sppb25 {
    padding-bottom: 6.9444444444vw !important;
  }
  .sppl25 {
    padding-left: 6.9444444444vw !important;
  }
  .sppr25 {
    padding-right: 6.9444444444vw !important;
  }
  .sppt20 {
    padding-top: 5.5555555556vw !important;
  }
  .sppb20 {
    padding-bottom: 5.5555555556vw !important;
  }
  .sppl20 {
    padding-left: 5.5555555556vw !important;
  }
  .sppr20 {
    padding-right: 5.5555555556vw !important;
  }
  .sppt15 {
    padding-top: 4.1666666667vw !important;
  }
  .sppb15 {
    padding-bottom: 4.1666666667vw !important;
  }
  .sppl15 {
    padding-left: 4.1666666667vw !important;
  }
  .sppr15 {
    padding-right: 4.1666666667vw !important;
  }
  .sppt10 {
    padding-top: 2.7777777778vw !important;
  }
  .sppb10 {
    padding-bottom: 2.7777777778vw !important;
  }
  .sppl10 {
    padding-left: 2.7777777778vw !important;
  }
  .sppr10 {
    padding-right: 2.7777777778vw !important;
  }
  .sppt5 {
    padding-top: 1.3888888889vw !important;
  }
  .sppb5 {
    padding-bottom: 1.3888888889vw !important;
  }
  .sppl5 {
    padding-left: 1.3888888889vw !important;
  }
  .sppr5 {
    padding-right: 1.3888888889vw !important;
  }
  .sppt0 {
    padding-top: 0vw !important;
  }
  .sppb0 {
    padding-bottom: 0vw !important;
  }
  .sppl0 {
    padding-left: 0vw !important;
  }
  .sppr0 {
    padding-right: 0vw !important;
  }
}
/* print
---------------------------------------------------------------------------- */
/* print
---------------------------------------------------------------------------- */
@media print {
  * html body {
    zoom: 70%;
  }
}