@charset "UTF-8";
/* 共通STYLE */
@media screen and (max-width: 768px) {
  html {
    font-size: 2.666vw;
  }
  body {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 769px) and (max-width: 1366px) {
  html {
    font-size: 0.724vw;
  }
  body {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1367px) {
  html {
    font-size: 0.724vw;
  }
  body {
    font-size: 1.6rem;
  }
}
html {
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  overscroll-behavior: none;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body,
html {
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  overscroll-behavior: none;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: normal;
  background-color: #F5F5F3;
  color: #212426;
  backface-visibility: hidden;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  border-style: solid;
  border-width: 0;
}

button,
optgroup,
select,
textarea {
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
  -webkit-appearance: none; /* 1 */
  appearance: none;
  background: transparent;
  border-radius: 0;
}
button:focus-visible,
optgroup:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 1px solid #101010;
  outline-offset: -2px;
}

input[type=radio] {
  -webkit-appearance: radio;
  appearance: radio;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: normal;
}

ul,
ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

a {
  text-decoration: none;
}
a:focus-visible {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 0.2rem;
}

video {
  filter: drop-shadow(0px 0px rgba(0, 0, 0, 0));
  outline: none;
  border: none;
}

.pc {
  display: block !important;
}

.pci {
  display: inline-block !important;
}

.pcf {
  display: flex !important;
}

.sp {
  display: none !important;
}

.spi {
  display: none !important;
}

.spf {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
  .spi {
    display: inline-block !important;
  }
  .spf {
    display: flex !important;
  }
  .pc {
    display: none !important;
  }
  .pci {
    display: none !important;
  }
  .pcf {
    display: none !important;
  }
}
.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

.dummy {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 0;
  width: 100%;
  height: auto;
  pointer-events: none;
  transform: translate(-50%, 0);
  opacity: 0.333;
}
@media screen and (max-width: 768px) {
  .dummy {
    top: 0px;
  }
}

img {
  width: 100%;
  height: auto;
  font-size: 12px;
  border: 0;
}

.wrap {
  position: relative;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-direction: column;
}

main {
  position: relative;
  width: 100%;
  padding: 0;
  flex: 1;
  padding-bottom: 6.4rem;
}
@media screen and (max-width: 768px) {
  main {
    padding-bottom: 6.4rem;
  }
}

#frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  pointer-events: none;
  border: solid 4rem #A9CB03;
  border-image: linear-gradient(89.75deg, #A9CB03 15%, #48A63F 85%) 1;
}
@media screen and (max-width: 768px) {
  #frame {
    border-width: 2rem;
  }
}

.company {
  position: relative;
  width: 28.4rem;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .company {
    width: 23rem;
  }
}
.company .company__green {
  position: relative;
  width: 28.4rem;
}
@media screen and (max-width: 768px) {
  .company .company__green {
    width: 23rem;
  }
}
.company .company__tokyu {
  position: relative;
  width: 7.6rem;
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .company .company__tokyu {
    width: 6.2rem;
    margin-top: 1.2rem;
  }
}

.inquiryBtn {
  position: relative;
  width: 39.6rem;
  height: 7rem;
  border: 1px solid #414141;
  background-color: #414141;
  border-radius: 6rem;
  margin: 0 auto 0;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 3.2rem;
}
@media screen and (max-width: 768px) {
  .inquiryBtn {
    width: 23.1rem;
    height: 5rem;
    border-radius: 3rem;
    padding-right: 2.6rem;
  }
}
.inquiryBtn .label {
  position: relative;
  display: block;
  width: 30.2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .inquiryBtn .label {
    width: 16.7rem;
    font-size: 1.4rem;
    line-height: 1.3rem;
  }
}
.inquiryBtn .blank {
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background-color: #fff;
  background-image: url(/tlc/assets/img/common/icon_blank.svg);
  background-repeat: no-repeat;
  background-size: 1.6rem 1.6rem;
  background-position: 50% 50%;
  overflow: hidden;
  transition: all 0.1s;
  transform-origin: 50% 50%;
}
@media screen and (max-width: 768px) {
  .inquiryBtn .blank {
    right: 1.2rem;
    width: 2.4rem;
    height: 2.4rem;
    background-size: 1.1rem 1.1rem;
  }
}
.inquiryBtn:hover .blank {
  transform: translate(0, -50%) scale(1.1);
}

.backBtn {
  position: relative;
  width: 28.3rem;
  height: 5rem;
  margin: 6.4rem auto 0;
  border: 1px solid #414141;
  background-color: #fff;
  border-radius: 3rem;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 2.3rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .backBtn {
    margin: 3.8rem auto 0;
    width: 23rem;
    padding-right: 2.6rem;
  }
}
.backBtn .label {
  position: relative;
  display: block;
  width: 21.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3rem;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .backBtn .label {
    font-size: 1.4rem;
    line-height: 1.3rem;
  }
}
.backBtn .arrow {
  position: absolute;
  top: 50%;
  right: 1.1rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background-color: #414141;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_wh.svg);
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
  background-position: 50% 50%;
  overflow: hidden;
  transition: all 0.3s;
  transform-origin: 50% 50%;
}
.backBtn:hover .arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}

.pageBackBtn {
  position: relative;
  width: 28.3rem;
  height: 5rem;
  margin: 6.4rem auto 0;
  border: 1px solid #414141;
  background-color: #fff;
  border-radius: 3rem;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-left: 2.3rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .pageBackBtn {
    margin: 3.8rem auto 0;
    width: 23rem;
    padding-left: 2.6rem;
  }
}
.pageBackBtn .label {
  position: relative;
  display: block;
  width: 21.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3rem;
  text-align: center;
  letter-spacing: 0.3em;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .pageBackBtn .label {
    font-size: 1.4rem;
    line-height: 1.3rem;
  }
}
.pageBackBtn .arrow {
  position: absolute;
  top: 50%;
  left: 1.1rem;
  transform: translate(0, -50%) scale(-1, 1);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background-color: #414141;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_wh.svg);
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
  background-position: 50% 50%;
  overflow: hidden;
  transition: all 0.3s;
  transform-origin: 50% 50%;
}
.pageBackBtn:hover .arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}

#header {
  position: relative;
}
#header #header__title {
  position: absolute;
  pointer-events: auto;
  top: 5.6rem;
  left: 9.8rem;
  width: 17.3rem;
  height: auto;
}
#header #header__title img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  #header #header__title {
    top: 3.4rem;
    left: 2.2rem;
    width: 15.6rem;
  }
}

#footer {
  position: relative;
  width: 100%;
  min-height: 15rem;
  padding: 0 11.6rem 8.1rem;
}
@media screen and (max-width: 768px) {
  #footer {
    min-height: 17.9rem;
    padding: 0 4rem 4.4rem;
  }
}
#footer #footer__container {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: solid 2px #48A63F;
  border-image: linear-gradient(89.75deg, #A9CB03 15%, #48A63F 85%) 1;
  padding-top: 3.7rem;
}
@media screen and (max-width: 768px) {
  #footer #footer__container {
    padding-top: 1rem;
    flex-direction: column;
    gap: 2.4rem;
  }
}
#footer #footer__container #footer__links {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  #footer #footer__container #footer__links {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    margin-top: 1.2rem;
  }
}
#footer #footer__container #footer__links li {
  position: relative;
}
#footer #footer__container #footer__links li a {
  position: relative;
  display: block;
  justify-content: center;
  align-items: center;
  margin-right: 3.8rem;
  padding-right: 2.2rem;
  transition: opacity 0.3s ease-out;
}
#footer #footer__container #footer__links li a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 768px) {
  #footer #footer__container #footer__links li a {
    padding-right: 1.8rem;
    margin-left: 1.2rem;
    margin-right: 1rem;
    margin-bottom: 0.8rem;
  }
}
#footer #footer__container #footer__links li a .label {
  position: relative;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.4;
  letter-spacing: 0.02em;
  color: #414141;
}
#footer #footer__container #footer__links li a .arrow {
  position: absolute;
  top: 50%;
  right: 0rem;
  transform: translate(0, -48%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  background-color: #414141;
  background-image: url(/tlc/assets/img/common/icon_arrow_ss.svg);
  background-repeat: no-repeat;
  background-size: 0.5rem 0.6rem;
  background-position: 50% 50%;
  overflow: hidden;
}
#footer #footer__container #footer__links li a .blank {
  position: absolute;
  top: 50%;
  right: 0rem;
  transform: translate(0, -48%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.4rem;
  height: 1.4rem;
  background-image: url(/tlc/assets/img/common/icon_blank.svg);
  background-repeat: no-repeat;
  background-size: 1.2rem 1.2rem;
  background-position: 50% 50%;
  overflow: hidden;
}
@media screen and (max-width: 1381px) and (min-width: 769px) {
  #footer #footer__container #footer__links li a {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #footer #footer__container #footer__links li a {
    font-size: 1.4rem;
  }
}
#footer #footer__container #footer__links li a img {
  width: 100%;
  height: auto;
}
#footer #footer__container #footer__copyright {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.1rem;
  line-height: 3.2rem;
  color: #414141;
}
@media screen and (max-width: 1381px) and (min-width: 769px) {
  #footer #footer__container #footer__copyright {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  #footer #footer__container #footer__copyright {
    font-size: 1rem;
  }
}

main {
  width: 100%;
}

#fv {
  position: relative;
  width: 100%;
}
#fv #fv__container {
  position: relative;
  width: 100%;
}
#fv #fv__container img {
  width: 100%;
  height: auto;
}
#fv #fv__company {
  position: relative;
  margin: -7rem auto 0;
  width: 78rem;
  height: auto;
  z-index: 10;
  background-color: #F5F5F3;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding-top: 4rem;
}
@media screen and (max-width: 768px) {
  #fv #fv__company {
    margin: -3.2rem auto 0;
    width: 29.4rem;
    padding-top: 2.1rem;
  }
}
#fv #fv__company #logo__green {
  position: relative;
  width: 60rem;
}
@media screen and (max-width: 768px) {
  #fv #fv__company #logo__green {
    width: 25rem;
  }
}
#fv #fv__company #logo__tokyu {
  position: relative;
  width: 16rem;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  #fv #fv__company #logo__tokyu {
    width: 8rem;
    margin-top: 1.6rem;
  }
}
#fv .fv__lead {
  position: relative;
  display: block;
  width: 496px;
  width: 49.6rem;
  height: auto;
  margin: 0 auto;
  margin-top: 3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #fv .fv__lead {
    width: 29.4rem;
    height: auto;
    margin-top: 2.45rem;
    font-size: 1.4rem;
    line-height: 200%;
  }
}

#gift {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: auto;
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  #gift {
    margin-top: 4rem;
  }
}
#gift #gift__container {
  position: relative;
  width: 113.5rem;
  margin: 0 auto;
  height: auto;
}
@media screen and (max-width: 768px) {
  #gift #gift__container {
    width: 29.5rem;
  }
}
#gift #gift__container #gift__list {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list {
    grid-template-columns: 1fr;
    gap: 1.6rem;
  }
}
#gift #gift__container #gift__list .item {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  background-color: #fff;
  width: 100%;
  padding: 5rem 4rem 5rem 4rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item {
    flex-direction: column;
    width: 29.5rem;
    min-height: auto;
    padding: 4rem 3.2rem 4rem 3.2rem;
  }
}
#gift #gift__container #gift__list .item::before {
  content: "";
  display: block;
  width: 4rem;
  height: 4.4rem;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url(/tlc/assets/img/common/ribbon_top.svg);
  background-repeat: no-repeat;
  background-size: 4rem auto;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item::before {
    width: 3.2rem;
    height: 3.2rem;
    background-size: 3.2rem auto;
  }
}
#gift #gift__container #gift__list .item::after {
  content: "";
  display: block;
  width: 4rem;
  height: 4rem;
  position: absolute;
  bottom: 0;
  right: 0;
  background-image: url(/tlc/assets/img/common/ribbon_bottom.svg);
  background-repeat: no-repeat;
  background-size: 4rem auto;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item::after {
    width: 3.2rem;
    height: 3.2rem;
    background-size: 3.2rem auto;
  }
}
#gift #gift__container #gift__list .item .item__img {
  position: relative;
  width: 28.3rem;
  height: 26.2rem;
  background-color: #D9D9D9;
  overflow: hidden;
  margin-right: 3rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__img {
    width: 23.1rem;
    height: 21.4rem;
    margin-right: 0;
  }
}
#gift #gift__container #gift__list .item .item__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 1;
}
#gift #gift__container #gift__list .item .item__content {
  position: relative;
  flex: 1;
}
#gift #gift__container #gift__list .item .item__shop {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 170%;
  letter-spacing: 0.02em;
  color: #999;
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__shop {
    height: auto;
    font-size: 1.4rem;
    line-height: 2rem;
    margin-top: 2.4rem;
  }
}
#gift #gift__container #gift__list .item .item__name {
  position: relative;
  display: block;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 20px;
  font-size: 2rem;
  line-height: 170%;
  color: #414141;
  margin-top: 0.4rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__name {
    font-size: 1.6rem;
    margin-top: 1.6rem;
  }
}
#gift #gift__container #gift__list .item .item__story {
  position: relative;
  display: block;
  width: 100%;
  background-color: #F5F5F3;
  padding: 2rem 3rem 2.9rem 3rem;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__story {
    padding: 2rem 1.9rem 2rem 2rem;
    margin-top: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
#gift #gift__container #gift__list .item .item__story h4 {
  position: relative;
  width: 100%;
}
#gift #gift__container #gift__list .item .item__story h4 span {
  position: relative;
  display: inline-block;
  background: #F5F5F3;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  color: #414141;
  padding-right: 2rem;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__story h4 span {
    padding-right: 1.25rem;
  }
}
#gift #gift__container #gift__list .item .item__story h4::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #E6E6E6;
}
#gift #gift__container #gift__list .item .item__story p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__story p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__story {
    font-size: 1.6rem;
    margin-top: 1.6rem;
  }
}
#gift #gift__container #gift__list .item .item__detail {
  position: relative;
  width: 28.3rem;
  height: 5rem;
  border: 1px solid #414141;
  border-radius: 3rem;
  display: inline-flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 2.3rem;
  margin-right: 0.8rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__detail {
    width: 23rem;
    padding-right: 2rem;
    margin-right: 0;
  }
}
#gift #gift__container #gift__list .item .item__detail .label {
  position: relative;
  display: block;
  width: 21.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3rem;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__detail .label {
    font-size: 1.4rem;
    line-height: 1.3rem;
  }
}
#gift #gift__container #gift__list .item .item__detail .arrow {
  position: absolute;
  top: 50%;
  right: 1.1rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background-color: #414141;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_wh.svg);
  background-repeat: no-repeat;
  background-size: 1.1rem 0.8rem;
  background-position: 50% 50%;
  overflow: hidden;
}
#gift #gift__container #gift__list .item .item__detail:hover .arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}
#gift #gift__container #gift__list .item .item__order {
  position: relative;
  width: 28.3rem;
  height: 5rem;
  border: 1px solid #414141;
  background-color: #414141;
  border-radius: 3rem;
  display: inline-flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 2.3rem;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__order {
    width: 23rem;
    height: 6.4rem;
    padding-right: 2rem;
    margin-top: 1.2rem;
  }
}
#gift #gift__container #gift__list .item .item__order .label {
  position: relative;
  display: block;
  width: 21.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 768px) {
  #gift #gift__container #gift__list .item .item__order .label {
    width: 15.4rem;
    line-height: 150%;
  }
}
#gift #gift__container #gift__list .item .item__order .arrow {
  position: absolute;
  top: 50%;
  right: 1.1rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background-color: #fff;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_gr.svg);
  background-repeat: no-repeat;
  background-size: 1.1rem 0.8rem;
  background-position: 50% 50%;
  overflow: hidden;
}
#gift #gift__container #gift__list .item .item__order:hover .arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}

main {
  width: 100%;
}

#itemMain {
  position: relative;
  width: 113.4rem;
  margin: 7.2rem auto 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  #itemMain {
    width: 29.5rem;
    margin: 3.2rem auto 0;
    flex-direction: column;
  }
}
#itemMain #itemMain__img {
  position: relative;
  width: 54rem;
  height: 50rem;
  background-color: #D9D9D9;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #itemMain #itemMain__img {
    width: 29.5rem;
    height: 27.3rem;
  }
}
#itemMain #itemMain__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#itemMain #itemMain__info {
  position: relative;
  width: 54rem;
}
@media screen and (max-width: 768px) {
  #itemMain #itemMain__info {
    width: 29.5rem;
    margin-top: 2.4rem;
  }
}
#itemMain #itemMain__info .item__shop {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 200%;
  color: #999;
}
#itemMain #itemMain__info .item__title {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 200%;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #itemMain #itemMain__info .item__title {
    font-size: 2rem;
  }
}
#itemMain #itemMain__info .item__desc {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
  margin-top: 2.4rem;
  margin-bottom: 5.2rem;
}
@media screen and (max-width: 768px) {
  #itemMain #itemMain__info .item__desc {
    font-size: 1.4rem;
    margin-top: 2.4rem;
    margin-bottom: 4rem;
  }
}

.orderBtn {
  position: relative;
  width: 39.6rem;
  height: 7rem;
  border: 1px solid #414141;
  background-color: #414141;
  border-radius: 6rem;
  margin: 0 auto 0;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 3.2rem;
}
@media screen and (max-width: 768px) {
  .orderBtn {
    width: 29.5rem;
    height: 5rem;
    border-radius: 3rem;
    padding-right: 2.3rem;
  }
}
.orderBtn .orderBtn__label {
  position: relative;
  display: block;
  width: 30.2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .orderBtn .orderBtn__label {
    width: 22.8rem;
    font-size: 1.4rem;
    line-height: 150%;
  }
}
.orderBtn .orderBtn__arrow {
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background-color: #fff;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_gr.svg);
  background-repeat: no-repeat;
  background-size: 1.5rem 1.2rem;
  background-position: 50% 50%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .orderBtn .orderBtn__arrow {
    right: 1.2rem;
    width: 2.4rem;
    height: 2.4rem;
    background-size: 1.1rem 0.8rem;
  }
}
.orderBtn:hover .orderBtn__arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}
.orderBtn:focus-visible {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 6rem;
}

#detail {
  position: relative;
  width: 113.4rem;
  margin: 6.4rem auto 0;
}
@media screen and (max-width: 768px) {
  #detail {
    width: 29.5rem;
    margin: 4rem auto 0;
  }
}
#detail .detail__section {
  position: relative;
  width: 113.4rem;
  height: 2.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 200%;
  color: #C8C8C8;
}
@media screen and (max-width: 768px) {
  #detail .detail__section {
    width: 29.5rem;
    margin: 4rem auto 0;
  }
}
#detail .detail__section::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 50rem;
  height: 1px;
  background-color: #E6E6E6;
}
@media screen and (max-width: 768px) {
  #detail .detail__section::before {
    width: 10rem;
  }
}
#detail .detail__section::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 50rem;
  height: 1px;
  background-color: #E6E6E6;
}
@media screen and (max-width: 768px) {
  #detail .detail__section::after {
    width: 10rem;
  }
}
#detail .detail__list {
  position: relative;
  margin-top: 2.4rem;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 2.7rem;
}
@media screen and (max-width: 768px) {
  #detail .detail__list {
    margin-top: 1.7rem;
    flex-direction: column;
    gap: 1.7rem;
  }
}
#detail .detail__list li {
  position: relative;
  display: block;
}
#detail .detail__list li .detail__img {
  position: relative;
  width: 36rem;
  height: 33.3rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #detail .detail__list li .detail__img {
    width: 29.5rem;
    height: 27.3rem;
  }
}
#detail .detail__list li .detail__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#story {
  position: relative;
  width: 113.4rem;
  height: 35.2rem;
  margin: 6.4rem auto 6.4rem;
}
@media screen and (max-width: 768px) {
  #story {
    width: 29.5rem;
    height: auto;
    margin: 4rem auto 4rem;
    padding: 5.6rem 0 9.6rem;
  }
}
#story::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 7.6rem;
  height: 35.2rem;
  background-image: url(/tlc/assets/img/brace.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}
@media screen and (max-width: 768px) {
  #story::before {
    transform-origin: 0 0;
    transform: rotate(90deg);
    left: 100%;
    width: 6.4rem;
    height: 29.5rem;
  }
}
#story::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 7.6rem;
  height: 35.2rem;
  transform: scale(-1, 1);
  background-image: url(/tlc/assets/img/brace.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}
@media screen and (max-width: 768px) {
  #story::after {
    transform-origin: 0% 100%;
    transform: scale(1) rotate(-90deg);
    top: auto;
    bottom: 0;
    left: 100%;
    right: auto;
    width: 6.4rem;
    height: 29.5rem;
  }
}
#story .story__section {
  position: relative;
  width: 55.5rem;
  height: 2.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 200%;
  color: #C8C8C8;
}
@media screen and (max-width: 768px) {
  #story .story__section {
    width: 29.5rem;
    margin: 4rem auto 0;
  }
}
#story .story__section::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 21rem;
  height: 1px;
  background-color: #E6E6E6;
}
@media screen and (max-width: 768px) {
  #story .story__section::before {
    width: 10rem;
  }
}
#story .story__section::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 21rem;
  height: 1px;
  background-color: #E6E6E6;
}
@media screen and (max-width: 768px) {
  #story .story__section::after {
    width: 10rem;
  }
}
#story .story__title {
  position: relative;
  display: block;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 20px;
  font-size: 2rem;
  line-height: 200%;
  color: #414141;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  #story .story__title {
    line-height: 170%;
    margin-top: 1rem;
  }
}
#story .story__txt {
  position: relative;
  display: block;
  width: 74.8rem;
  height: auto;
  margin: 0 auto;
  margin-top: 3rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  #story .story__txt {
    width: 29.5rem;
    margin-top: 3.2rem;
    font-size: 1.4rem;
  }
}

.bgWhite {
  position: relative;
  width: 100%;
  background-color: #fff;
  padding: 6rem 0;
}
@media screen and (max-width: 768px) {
  .bgWhite {
    padding: 4rem;
  }
}

#information {
  position: relative;
  width: 113.4rem;
  margin: 0 auto 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  #information {
    width: 29.5rem;
    flex-direction: column;
  }
}
#information .information__desc {
  position: relative;
  width: 54rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  #information .information__desc {
    width: 29.5rem;
    font-size: 1.4rem;
  }
}
#information .information__detail {
  position: relative;
  width: 54rem;
  margin-bottom: -1.6rem;
}
@media screen and (max-width: 768px) {
  #information .information__detail {
    width: 29.5rem;
    margin-top: 4rem;
    margin-bottom: -1.6rem;
  }
}
#information .information__detail dl {
  position: relative;
}
#information .information__detail dl div {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.9rem;
  padding: 1.6rem 0;
  border-top: 1px solid #E6E6E6;
}
@media screen and (max-width: 768px) {
  #information .information__detail dl div {
    padding: 1.6rem 0;
  }
}
#information .information__detail dl div dt {
  position: relative;
  width: 10rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #information .information__detail dl div dt {
    width: 7rem;
    font-size: 1.4rem;
    line-height: 170%;
  }
}
#information .information__detail dl div dd {
  position: relative;
  flex: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #information .information__detail dl div dd {
    font-size: 1.4rem;
    line-height: 170%;
  }
}
#information .information__detail dl div dd .allergyList {
  position: relative;
  width: 42.8rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 0.4rem;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 768px) {
  #information .information__detail dl div dd .allergyList {
    width: 21.6rem;
    flex-wrap: wrap;
    gap: 0.8rem 0.4rem;
  }
}
#information .information__detail dl div dd .allergyList li {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FFFFFF;
  width: 5rem;
  height: 5rem;
  border: 1px solid #C8C8C8;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 200%;
  color: #C8C8C8;
}
#information .information__detail dl div dd .allergyList li.used {
  background: #414141;
  color: #fff;
}

#shop {
  position: relative;
  width: 113.4rem;
  margin: 5.6rem auto 0;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border: solid 1px #E6E6E6;
  padding: 6rem;
}
@media screen and (max-width: 768px) {
  #shop {
    width: 29.5rem;
    margin: 4rem auto 0;
    flex-direction: column;
    padding: 3.2rem;
  }
}
#shop .shop__img {
  position: relative;
  width: 48rem;
}
@media screen and (max-width: 768px) {
  #shop .shop__img {
    width: 23.1rem;
  }
}
#shop .shop__img .shop__logo {
  position: relative;
  width: 48rem;
  height: 20rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #shop .shop__img .shop__logo {
    width: 23.1rem;
    height: 9.6rem;
  }
}
#shop .shop__img .shop__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#shop .shop__img .shop__caption {
  position: relative;
  width: 100%;
  margin-top: 1.6rem;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 200%;
  color: #414141;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  #shop .shop__img .shop__caption {
    margin-top: 0.8rem;
  }
}
#shop .shop__info {
  position: relative;
  width: 48rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  #shop .shop__info {
    width: 23.1rem;
    font-size: 1.4rem;
    margin-top: 1.8rem;
  }
}
#shop .shop__info .shop__link {
  position: relative;
  display: block;
  justify-content: center;
  align-items: center;
  padding-left: 2.4rem;
  margin-top: 1.6rem;
  transition: opacity 0.3s ease-out;
}
@media screen and (max-width: 768px) {
  #shop .shop__info .shop__link {
    margin-top: 1.8rem;
  }
}
#shop .shop__info .shop__link:hover {
  opacity: 0.7;
}
#shop .shop__info .shop__link .label {
  position: relative;
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 2;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #shop .shop__info .shop__link .label {
    font-size: 1.4rem;
  }
}
#shop .shop__info .shop__link .arrow {
  position: absolute;
  top: 50%;
  left: 0rem;
  transform: translate(0, -48%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  background-color: #414141;
  background-image: url(/tlc/assets/img/common/icon_arrow_ss.svg);
  background-repeat: no-repeat;
  background-size: 0.5rem 0.6rem;
  background-position: 50% 50%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #shop .shop__info .shop__link .arrow {
    font-size: 1.4rem;
  }
}
#shop .shop__info .shop__link img {
  width: 100%;
  height: auto;
}

.btnArea {
  position: relative;
  width: 100%;
  padding-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .btnArea {
    padding-top: 4rem;
  }
}
.btnArea .backBtn {
  margin: 6.4rem auto 0;
}
@media screen and (max-width: 768px) {
  .btnArea .backBtn {
    margin: 6.4rem auto 0;
  }
}

.backBtn {
  position: relative;
  width: 28.3rem;
  height: 5rem;
  background-color: #fff;
  border: 1px solid #414141;
  border-radius: 3rem;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 2.3rem;
}
@media screen and (max-width: 768px) {
  .backBtn {
    width: 23.1rem;
  }
}
.backBtn .backBtn__label {
  position: relative;
  display: block;
  width: 21.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3rem;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .backBtn .backBtn__label {
    font-size: 1.4rem;
    line-height: 1.3rem;
  }
}
.backBtn .backBtn__arrow {
  position: absolute;
  top: 50%;
  right: 1.1rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background-color: #414141;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_wh.svg);
  background-repeat: no-repeat;
  background-size: 1.1rem 0.8rem;
  background-position: 50% 50%;
  overflow: hidden;
}
.backBtn:hover .backBtn__arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}
.backBtn:focus-visible {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 6rem;
}

main {
  width: 100%;
}
@media screen and (max-width: 768px) {
  main.order {
    padding-bottom: 4.8rem;
  }
}

#orderForm, #confirmList {
  position: relative;
  width: 74.8rem;
  margin: 8rem auto 0;
  display: block;
}
@media screen and (max-width: 768px) {
  #orderForm, #confirmList {
    width: 29.5rem;
    margin: 2rem auto 0;
  }
}
#orderForm h2, #confirmList h2 {
  position: relative;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #orderForm h2, #confirmList h2 {
    font-size: 2.4rem;
  }
}
#orderForm form, #confirmList form {
  position: relative;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  #orderForm form, #confirmList form {
    margin-top: 3.2rem;
  }
}
#orderForm .required, #confirmList .required {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
  width: 4.2rem;
  height: 2.4rem;
  background-color: #E6371E;
  color: #fff;
  border-radius: 0.5rem;
  padding: 0.3rem 1rem 0.5rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 11px;
  font-size: 1.1rem;
  line-height: 1;
  color: #fff;
  margin-left: 1.6rem;
  margin-top: -0.4rem;
}
@media screen and (max-width: 768px) {
  #orderForm .required, #confirmList .required {
    margin-left: 0.8rem;
  }
}
#orderForm .error, #confirmList .error {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 0.4rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 200%;
  text-align: left;
  padding-left: 2.4rem;
  color: #E6371E;
  display: none;
}
@media screen and (max-width: 768px) {
  #orderForm .error, #confirmList .error {
    font-size: 1.2rem;
    padding-left: 1.6rem;
    padding-right: 1.6rem;
    line-height: 170%;
  }
}
#orderForm .form__item, #confirmList .form__item {
  position: relative;
  width: 100%;
}
#orderForm .form__item legend, #confirmList .form__item legend {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #333;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item legend, #confirmList .form__item legend {
    font-size: 1.4rem;
  }
}
#orderForm .form__item .item__list, #confirmList .form__item .item__list {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list, #confirmList .form__item .item__list {
    flex-direction: column;
    margin-top: 2.2rem;
  }
}
#orderForm .form__item .item__list li, #confirmList .form__item .item__list li {
  position: relative;
  width: 23.5rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li, #confirmList .form__item .item__list li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 29.5rem;
    gap: 0.8rem;
    margin-bottom: 2.4rem;
  }
  #orderForm .form__item .item__list li:last-child, #confirmList .form__item .item__list li:last-child {
    margin-bottom: 0;
  }
}
#orderForm .form__item .item__list li input, #confirmList .form__item .item__list li input {
  position: absolute;
  top: 24.2rem;
  left: 0.2rem;
  width: 2rem;
  height: 2rem;
  border: #333 solid 0.2rem;
  opacity: 0;
  border: solid #333 2px;
  accent-color: #333;
}
#orderForm .form__item .item__list li input:focus-visible, #confirmList .form__item .item__list li input:focus-visible {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 0.2rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li input, #confirmList .form__item .item__list li input {
    position: relative;
    top: auto;
    left: auto;
  }
}
#orderForm .form__item .item__list li input:disabled, #confirmList .form__item .item__list li input:disabled {
  display: none;
}
#orderForm .form__item .item__list li input[type=radio]:focus-visible + .radioMark, #confirmList .form__item .item__list li input[type=radio]:focus-visible + .radioMark {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 50%;
}
#orderForm .form__item .item__list li input[type=radio]:checked + .radioMark::after, #confirmList .form__item .item__list li input[type=radio]:checked + .radioMark::after {
  opacity: 1;
}
#orderForm .form__item .item__list li input[type=radio]:disabled + .radioMark, #confirmList .form__item .item__list li input[type=radio]:disabled + .radioMark {
  display: none;
}
#orderForm .form__item .item__list li .radioMark, #confirmList .form__item .item__list li .radioMark {
  position: absolute;
  top: 24.2rem;
  left: 0.2rem;
  width: 2rem;
  height: 2rem;
  border: #333 solid 0.25rem;
  border-radius: 1rem;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li .radioMark, #confirmList .form__item .item__list li .radioMark {
    top: 50%;
    left: 0.2rem;
    transform: translate(0, -50%);
  }
}
#orderForm .form__item .item__list li .radioMark::after, #confirmList .form__item .item__list li .radioMark::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1rem;
  height: 1rem;
  border-radius: 0.5rem;
  background-color: #333;
  opacity: 0;
}
#orderForm .form__item .item__list li label, #confirmList .form__item .item__list li label {
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li label, #confirmList .form__item .item__list li label {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 0.7rem;
  }
}
#orderForm .form__item .item__list li label .item__img, #confirmList .form__item .item__list li label .item__img {
  width: 23.5rem;
  height: 21.8rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li label .item__img, #confirmList .form__item .item__list li label .item__img {
    width: 7rem;
    height: 6.5rem;
  }
}
#orderForm .form__item .item__list li label .item__img img, #confirmList .form__item .item__list li label .item__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#orderForm .form__item .item__list li label .item__name, #confirmList .form__item .item__list li label .item__name {
  position: relative;
  display: block;
  width: 23.5rem;
  margin-top: 1.6rem;
  padding-left: 3.2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  text-align: left;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li label .item__name, #confirmList .form__item .item__list li label .item__name {
    width: 18.6rem;
    margin-top: 0;
    padding-left: 0;
    flex: 1;
    font-size: 1.4rem;
    line-height: 170%;
  }
}
#orderForm .form__item .item__list li input[type=radio]:disabled ~ label, #confirmList .form__item .item__list li input[type=radio]:disabled ~ label {
  cursor: default;
}
#orderForm .form__item .item__list li input[type=radio]:disabled ~ label .item__name, #confirmList .form__item .item__list li input[type=radio]:disabled ~ label .item__name {
  width: 74.8rem;
  padding-left: 0;
}
@media screen and (max-width: 768px) {
  #orderForm .form__item .item__list li input[type=radio]:disabled ~ label .item__name, #confirmList .form__item .item__list li input[type=radio]:disabled ~ label .item__name {
    width: 21.8rem;
    padding-left: 0;
  }
}
#orderForm .form__user, #confirmList .form__user {
  position: relative;
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__user, #confirmList .form__user {
    margin-top: 3.8rem;
  }
}
#orderForm .form__user .user__data, #confirmList .form__user .user__data {
  position: relative;
}
#orderForm .form__user .user__data li, #confirmList .form__user .user__data li {
  position: relative;
  margin-bottom: 6.4rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__user .user__data li, #confirmList .form__user .user__data li {
    margin-bottom: 4rem;
  }
}
#orderForm .form__user .user__data li label, #confirmList .form__user .user__data li label {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #333;
}
@media screen and (max-width: 768px) {
  #orderForm .form__user .user__data li label, #confirmList .form__user .user__data li label {
    font-size: 1.4rem;
  }
}
#orderForm .form__user .user__data li label .sub, #confirmList .form__user .user__data li label .sub {
  font-size: 1.2rem;
}
#orderForm .form__user .user__data li input, #confirmList .form__user .user__data li input {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.4rem 2.4rem;
  margin-top: 0.9rem;
  width: 74.7rem;
  height: 5.6rem;
  background: #FFF;
  border: 1px solid #C8C8C8;
  border-radius: 0.8rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2.8rem;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #orderForm .form__user .user__data li input, #confirmList .form__user .user__data li input {
    padding: 1.4rem 1.6rem;
    margin-top: 0.8rem;
    width: 29.5rem;
    height: 5.6rem;
    font-size: 1.4rem;
  }
}
#orderForm .form__user .user__data li input::placeholder, #confirmList .form__user .user__data li input::placeholder {
  color: #aaa;
}
#orderForm .form__user .user__data li input:disabled, #confirmList .form__user .user__data li input:disabled {
  border: 1px solid #fff;
}
#orderForm .form__user .user__data li .confirm__box, #confirmList .form__user .user__data li .confirm__box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.4rem 2.4rem;
  margin-top: 0.9rem;
  width: 74.7rem;
  min-height: 5.6rem;
  height: auto;
  background: #FFF;
  border-radius: 0.8rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2.4rem;
  color: #414141;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  #orderForm .form__user .user__data li .confirm__box, #confirmList .form__user .user__data li .confirm__box {
    padding: 1.4rem 1.6rem;
    margin-top: 0.8rem;
    width: 29.5rem;
    min-height: 5.6rem;
    font-size: 1.4rem;
  }
}
#orderForm .form__user .user__data li .confirm__box::placeholder, #confirmList .form__user .user__data li .confirm__box::placeholder {
  color: #aaa;
}
#orderForm .form__user .user__data li .confirm__box:disabled, #confirmList .form__user .user__data li .confirm__box:disabled {
  border: 1px solid #fff;
}
#orderForm .form__agree, #confirmList .form__agree {
  position: relative;
}
#orderForm .form__agree .agree__inner, #confirmList .form__agree .agree__inner {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
#orderForm .form__agree .agree__inner input, #confirmList .form__agree .agree__inner input {
  position: relative;
  width: 2.4rem;
  height: 2.4rem;
  vertical-align: middle;
  opacity: 0;
  margin-right: 1rem;
  cursor: pointer;
}
#orderForm .form__agree .agree__inner input:disabled, #confirmList .form__agree .agree__inner input:disabled {
  display: none;
}
#orderForm .form__agree .agree__inner input[type=checkbox]:checked + .checkMark, #confirmList .form__agree .agree__inner input[type=checkbox]:checked + .checkMark {
  background-image: url(/tlc/assets/img/check_on.svg);
}
#orderForm .form__agree .agree__inner input[type=checkbox]:focus-visible + .checkMark, #confirmList .form__agree .agree__inner input[type=checkbox]:focus-visible + .checkMark {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 0.2rem;
}
#orderForm .form__agree .agree__inner input[type=checkbox]:disabled + .checkMark, #confirmList .form__agree .agree__inner input[type=checkbox]:disabled + .checkMark {
  display: none;
}
#orderForm .form__agree .agree__inner .checkMark, #confirmList .form__agree .agree__inner .checkMark {
  position: absolute;
  top: 0.6rem;
  left: 0.3rem;
  width: 1.8rem;
  height: 1.8rem;
  background-image: url(/tlc/assets/img/check_off.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  pointer-events: none;
  cursor: pointer;
}
#orderForm .form__agree .agree__inner label, #confirmList .form__agree .agree__inner label {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #333;
  margin-top: -0.2rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__agree .agree__inner label, #confirmList .form__agree .agree__inner label {
    font-size: 1.4rem;
    white-space: nowrap;
  }
}
#orderForm .form__agree .agree__inner label .required, #confirmList .form__agree .agree__inner label .required {
  margin-left: 1rem;
}
@media screen and (max-width: 768px) {
  #orderForm .form__agree .agree__inner label .required, #confirmList .form__agree .agree__inner label .required {
    margin-left: 0.4rem;
  }
}
#orderForm .form__agree .agree__inner label a, #confirmList .form__agree .agree__inner label a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  text-decoration: underline;
  color: #333;
}
@media screen and (max-width: 768px) {
  #orderForm .form__agree .agree__inner label a, #confirmList .form__agree .agree__inner label a {
    font-size: 1.4rem;
  }
}

input:focus-visible {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 0.2rem;
}

.confirmBtn {
  position: relative;
  width: 39.6rem;
  height: 7rem;
  border: 1px solid #414141;
  background-color: #414141;
  border-radius: 6rem;
  margin: 18rem auto 0;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 3.2rem;
  cursor: pointer;
  pointer-events: all;
}
@media screen and (max-width: 768px) {
  .confirmBtn {
    margin: 8.8rem auto 0;
  }
}
.confirmBtn:focus-visible {
  outline: 2px solid #48A63F;
  outline-offset: 2px;
  border-radius: 6rem;
}
@media screen and (max-width: 768px) {
  .confirmBtn {
    width: 29.5rem;
    height: 5rem;
    border-radius: 3rem;
    padding-right: 2.3rem;
  }
}
.confirmBtn .confirmBtn__label {
  position: relative;
  display: block;
  width: 30.2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .confirmBtn .confirmBtn__label {
    width: 22.8rem;
    font-size: 1.4rem;
    line-height: 150%;
  }
}
.confirmBtn .confirmBtn__arrow {
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background-color: #fff;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_gr.svg);
  background-repeat: no-repeat;
  background-size: 1.5rem 1.2rem;
  background-position: 50% 50%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .confirmBtn .confirmBtn__arrow {
    right: 1.2rem;
    width: 2.4rem;
    height: 2.4rem;
    background-size: 1.1rem 0.8rem;
  }
}
.confirmBtn:hover .confirmBtn__arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}
.confirmBtn:disabled {
  opacity: 0.5;
  pointer-events: none;
  cursor: default;
}

.sendBtn {
  position: relative;
  width: 39.6rem;
  height: 7rem;
  border: 1px solid #414141;
  background-color: #414141;
  border-radius: 6rem;
  margin: 18rem auto 0;
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding-right: 3.2rem;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .sendBtn {
    margin: 8.8rem auto 0;
  }
}
.sendBtn:focus-visible {
  outline: 1px solid #48A63F;
  outline-offset: 2px;
  border-radius: 6rem;
}
@media screen and (max-width: 768px) {
  .sendBtn {
    width: 29.5rem;
    height: 5rem;
    border-radius: 3rem;
    padding-right: 2.3rem;
  }
}
.sendBtn .sendBtn__label {
  position: relative;
  display: block;
  width: 30.2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .sendBtn .sendBtn__label {
    width: 22.8rem;
    font-size: 1.4rem;
    line-height: 150%;
  }
}
.sendBtn .sendBtn__arrow {
  position: absolute;
  top: 50%;
  right: 1.6rem;
  transform: translate(0, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 50%;
  background-color: #fff;
  background-image: url(/tlc/assets/img/common/icon_arrow_s_gr.svg);
  background-repeat: no-repeat;
  background-size: 1.5rem 1.2rem;
  background-position: 50% 50%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .sendBtn .sendBtn__arrow {
    right: 1.2rem;
    width: 2.4rem;
    height: 2.4rem;
    background-size: 1.1rem 0.8rem;
  }
}
.sendBtn:hover .confirmBtn__arrow {
  animation: arrow 0.6s ease-in-out 1;
}
@keyframes arrow {
  0% {
    background-position: 50% 50%;
  }
  50% {
    background-position: 200% 50%;
  }
  51% {
    background-position: -200% 50%;
  }
  100% {
    background-position: 50% 50%;
  }
}

#sentMessage {
  position: relative;
  display: block;
  width: 74.8rem;
  margin: 16rem auto 0;
}
@media screen and (max-width: 768px) {
  #sentMessage {
    width: 29.5rem;
    margin: 4rem auto 0;
  }
}
#sentMessage h2 {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #sentMessage h2 {
    font-size: 2.4rem;
    line-height: 170%;
  }
}
#sentMessage p {
  position: relative;
  width: 100%;
  margin-top: 4rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  #sentMessage p {
    margin-top: 2.5rem;
    font-size: 1.4rem;
    text-align: left;
  }
}

.entryItem {
  position: relative;
  width: 74.8rem;
  height: auto;
  background-color: #fff;
  border-radius: 0.8rem;
  margin: 8rem auto 0;
  padding: 4rem;
}
@media screen and (max-width: 768px) {
  .entryItem {
    width: 29.5rem;
    margin: 2.5rem auto 0;
    padding: 3.2rem;
  }
}
.entryItem dl {
  position: relative;
}
.entryItem dl div {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2.4rem;
  padding-bottom: 1.6rem;
  margin-bottom: 1.6rem;
  border-bottom: 1px solid #E6E6E6;
}
.entryItem dl div:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .entryItem dl div {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.4rem;
  }
}
.entryItem dl div dt {
  position: relative;
  display: block;
  width: 11.2rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .entryItem dl div dt {
    width: auto;
  }
}
.entryItem dl div dd {
  position: relative;
  display: block;
  flex: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  color: #414141;
}

.sent .company {
  margin-top: 10rem;
}
@media screen and (max-width: 768px) {
  .sent .company {
    margin-top: 7rem;
  }
}

main {
  width: 100%;
}
@media screen and (max-width: 768px) {
  main.sub {
    padding-bottom: 4.8rem;
  }
}

.terms .company {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .terms .company {
    margin-top: 7rem;
  }
}

.law .company {
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .law .company {
    margin-top: 7rem;
  }
}

.privacy .company {
  margin-top: 11.2rem;
}
@media screen and (max-width: 768px) {
  .privacy .company {
    margin-top: 8rem;
  }
}

.doc__title {
  position: relative;
  display: block;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
  margin-top: 8rem;
}
@media screen and (max-width: 768px) {
  .doc__title {
    font-size: 2.4rem;
    line-height: 170%;
    margin-top: 4rem;
  }
}

.doc__area {
  position: relative;
  display: block;
  width: 94rem;
  border-radius: 0.8rem;
  margin: 0 auto;
  margin-top: 4rem;
  padding: 6rem 9.6rem 9.6rem;
  background-color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
  text-align: left;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .doc__area {
    width: 100%;
    border-radius: 0;
    margin-top: 3rem;
    padding: 3rem 4rem 6rem;
    font-size: 1.4rem;
    line-height: 170%;
  }
}
.doc__area .doc__date {
  position: relative;
  display: block;
  width: 100%;
  text-align: right;
}
.doc__area .doc__lead {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__lead {
    margin-top: 2.4rem;
  }
}
.doc__area .doc__para {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__para {
    margin-top: 2.4rem;
  }
}
.doc__area .doc__chapter {
  position: relative;
  width: 100%;
  height: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 3rem;
  background-color: #E6E6E6;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 200%;
  text-align: center;
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__chapter {
    font-size: 1.8rem;
    line-height: 150%;
    height: auto;
    min-height: 4.8rem;
    margin-top: 5rem;
    padding: 1rem 2rem 0.9rem 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .doc__area .doc__chapter.mt-3 {
    margin-top: 3rem;
  }
}
.doc__area .doc__article {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 2px;
  font-size: 2rem;
  line-height: 200%;
  margin-top: 3rem;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__article {
    font-size: 1.8rem;
    line-height: 170%;
  }
}
.doc__area .doc__item {
  position: relative;
  margin-top: 1.6rem;
}
.doc__area .doc__item li {
  position: relative;
  display: block;
  padding-left: 2.4rem;
  margin-bottom: 1.6rem;
}
.doc__area .doc__item li.no2 {
  padding-left: 3.2rem;
}
.doc__area .doc__item li.no2 .doc__no {
  width: 3.2rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item li.no2 .doc__no {
    width: 2.4rem;
  }
}
.doc__area .doc__item li:last-child {
  margin-bottom: 0;
}
.doc__area .doc__item li .doc__no {
  position: absolute;
  top: 0;
  left: 0;
  width: 2.4rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item li .doc__no {
    width: 2rem;
  }
}
.doc__area .doc__item li .doc__note {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 0.8rem;
  margin-left: -2.4rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 170%;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item li .doc__note {
    margin-left: -2rem;
  }
}
.doc__area .doc__item .mt-8 {
  margin-top: 0.8rem;
}
.doc__area .doc__item .mt-16 {
  margin-top: 1.6rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item .mt-16 {
    margin-top: 1.6rem;
  }
}
.doc__area .doc__item .mt-32 {
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item .mt-32 {
    margin-top: 2.4rem;
  }
}
.doc__area .doc__item .mb-0 {
  margin-bottom: 0rem;
}
.doc__area .doc__item__title {
  position: relative;
  display: block;
  width: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 200%;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item__title {
    font-size: 1.4rem;
    line-height: 170%;
  }
}
.doc__area .doc__item--s {
  position: relative;
  margin-top: 1.6rem;
  font-size: 1.4rem;
  line-height: 200%;
}
@media screen and (max-width: 768px) {
  .doc__area .doc__item--s {
    font-size: 1.2rem;
    line-height: 170%;
  }
}
.doc__area .doc__item--s li {
  position: relative;
  display: block;
  padding-left: 2.4rem;
  margin-bottom: 0rem;
}
.doc__area .doc__item--s li .doc__no {
  position: absolute;
  top: 0;
  left: 0;
  width: 2.4rem;
}
.doc__area .uline {
  color: #414141;
  text-decoration: underline;
}
.doc__area a {
  color: #414141;
  text-decoration: underline;
}
.doc__area .conclude {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 3.2rem;
  text-align: right;
}

.message {
  position: relative;
  display: block;
  width: 100%;
  margin-top: 16rem;
}
@media screen and (max-width: 768px) {
  .message {
    margin-top: 4rem;
  }
}
.message .message__txt {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .message .message__txt {
    font-size: 1.6rem;
    line-height: 170%;
    margin-bottom: 1.6rem;
  }
}

.error404 .inquiryBtn, .expired .inquiryBtn, .used .inquiryBtn {
  margin-top: 10rem;
}
@media screen and (max-width: 768px) {
  .error404 .inquiryBtn, .expired .inquiryBtn, .used .inquiryBtn {
    margin-top: 5rem;
  }
}
.error404 .company, .expired .company, .used .company {
  margin-top: 18.2rem;
}
@media screen and (max-width: 768px) {
  .error404 .company, .expired .company, .used .company {
    margin-top: 8rem;
  }
}

.maintenance .maintenance__icon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 74.8rem;
  height: 12.8rem;
  margin: 0 auto;
  margin-top: 10rem;
}
@media screen and (max-width: 768px) {
  .maintenance .maintenance__icon {
    width: 29.5rem;
    height: 9.6rem;
    margin-top: 4.8rem;
  }
}
.maintenance .maintenance__icon p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: 64px;
  font-size: 6.4rem;
  line-height: 200%;
  text-align: center;
  color: #414141;
}
@media screen and (max-width: 768px) {
  .maintenance .maintenance__icon p {
    font-size: 4.8rem;
  }
}
.maintenance .message {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .maintenance .message {
    margin-top: 2rem;
  }
}
.maintenance .message .message__txt {
  margin-bottom: 1rem;
}

.admin__contents {
  position: relative;
  margin-top: 3.2rem;
}