img {
  user-drag: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
}

.l-header__logo img {
  width: 34rem;
}

.l-footer__subNav {
  display: flex;
  background-color: rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  max-width: 100rem;
  letter-spacing: 0.2rem;
  margin: 0px auto;
  padding: 0px 0px 65px;
}

.l-footer__subNav__box {
  width: 40%;
  font-size: 1.4rem;
}
.l-footer__subNav__box a {
  color: rgb(0, 0, 0);
}

.l-footer__subNav__box a:first-of-type {
  font-weight: bold;
}

.p-footerSubNav {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.p-footerSubNav > li {
  margin-right: 6.3rem;
}

.p-footerSubNav > li > a {
  color: rgb(0, 0, 0);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: 1.4rem;
  transition: opacity 0.3s ease 0s;
}

.p-footerSubNav > li:nth-of-type(4),
.p-footerSubNav > li:last-child {
  margin-right: 0px;
}

.p-footerSubNav > li:nth-of-type(5),
.p-footerSubNav > li:last-child {
  margin-top: auto;
}

.p-footerSubNav > li:nth-of-type(5) {
  margin-right: 19.2rem;
}

.c-btnUnderLine {
  background-color: #e3e1e2;
  color: #000;
}

@media screen and (max-width: 750px) {
  .l-header__logo img {
    width: 100%;
  }
  .l-footer__subNav {
    display: none;
  }
}

/* flow */

.p-flowAnchor {
  height: 35rem;
}

.p-flowAnchor__item {
  padding-left: 7rem;
}

.flow-btn {
  background-color: #000;
  color: #fff;
  position: relative;
  display: inline-block;
  background-color: #000;
  color: #fff;
  padding: 1.2rem 0;
  font-weight: bold;
  transition: opacity 0.3s;
  text-align: center;
}

.flow-btn::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.4rem;
  background-color: #bc6329;
  transform: translateY(100%);
}

.u-fz15-26-flow {
  font-size: 1.5rem;
}

@media screen and (max-width: 750px) {
  .l-pageTtl.flowTtl {
    border: none;
  }

  .u-fz15-26-flow {
    font-size: 2.59rem;
  }

  .l-pageTtl.flowTtl h1 span:nth-of-type(2) {
    letter-spacing: 0.08rem;
  }

  .p-flowAnchor {
    height: auto;
  }

  .l-flowAnchor__text {
    padding-bottom: 2rem;
    text-align: left;
  }

  .p-flowAnchor__item {
    padding-left: 10rem;
  }
}

/* header */

.p-headerNav {
  position: relative;
}

.p-headerNav > li {
  position: relative;
}

.p-headerNav > li .sub-menu {
  display: none;
}

.p-headerNav > li .sub-menu li {
  padding: 10px 20px;
  text-align: left;
  border-bottom: 1px solid #000;
  border-left: none;
}

.p-headerNav > li .sub-menu li:first-of-type {
  position: relative;
}

.p-headerNav > li .sub-menu li:last-of-type {
  border: none;
}

.p-headerNav > li .sub-menu li:before {
  content: "";
  position: absolute;
  top: -16px;
  left: 19%;
  border: 8px solid transparent;
  border-right: 29px solid #dbdbdb;
  -webkit-transform: rotate(35deg);
  transform: rotate(74deg);
}

.p-headerNav > li .sub-menu li:not(:first-of-type) a {
  font-weight: 400;
}
@media (hover: hover) and (pointer: fine) {
  .p-headerNav > li:hover .sub-menu {
    display: block;
    position: absolute;
    top: 7rem;
    width: 305px;
    background-color: #dbdbdb;
  }
}

.p-headerNav li {
  flex-grow: 1;
  text-align: center;
  vertical-align: middle;
  height: auto;
  padding: 10px 0;
}

.p-headerNav li + li {
  border-left: 1px solid #000;
}

.p-headerNav li:first-of-type,
.p-headerNav li:nth-of-type(2) {
  padding: 0;
}

@media screen and (max-width: 750px) {
  .p-headerNav li,
  .p-headerNav li:first-of-type,
  .p-headerNav li:nth-of-type(2) {
    padding: 0;
  }

  .p-headerNav li {
    height: auto;
  }

  .p-headerNav li + li {
    border-left: none;
  }
}

/*
    footer
*/

@media screen and (max-width: 750px) {
  .p-footerNav > li:nth-of-type(4) {
    width: 33rem;
  }
  .p-footerNav > li:nth-of-type(5) {
    margin-top: 1rem;
  }
}
/*
simulation
*/

.l-simulation__ttl {
  font-size: 1.9rem;
  letter-spacing: 0.2rem;
}

.l-simulation__ttl2 {
  padding-top: 3.3rem;
  text-align: center;
  line-height: 1.88;
  font-weight: 700;
  font-size: 1.9rem;
  letter-spacing: 0.2rem;
}

.p-simulationTtl {
  background-color: #000;
}

@media screen and (max-width: 750px) {
  .p-simulationTtl {
    padding: 2.1rem 0;
  }
}

.p-simulationTables__item {
  width: 100%;
}

.p-simulationTables__item table tr td:nth-of-type(1) {
  width: 59.5rem;
  font-weight: 700;
  font-size: 1.5rem;
  background-color: #d6d6d6;
}
.p-simulationTables__item table tr td:nth-of-type(2) {
  width: calc(100% - 28.5rem);
  font-size: 1.7rem;
}

.p-simulationTables__item table th,
.p-simulationTables__item table td {
  padding-left: 6rem;
  text-align: left;
}

.p-simulationTables__item p {
  margin-top: 1rem;
}

.p-simulationTables2 {
  display: flex;
  justify-content: space-between;
  max-width: 100rem;
  margin: 0 auto;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2 {
    display: block;
  }
}

.p-simulationTables2__item {
  width: 31rem;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item {
    width: 100%;
  }

  .p-simulationTables2__item:not(:first-child) {
    margin-top: 2.3rem;
  }
}

.p-simulationTables2__item table {
  border-collapse: collapse;
  width: 100%;
}

.p-simulationTables2__item table tr:not(:first-child) td:nth-of-type(1) {
  width: 18.7rem;
  font-weight: 700;
  font-size: 1.5rem;
  background-color: #d6d6d6;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item table tr:not(:first-child) td:nth-of-type(1) {
    width: 43rem;
    font-size: 2.5rem;
  }
}

.p-simulationTables2__item table tr:not(:first-child) td:nth-of-type(2) {
  width: calc(100% - 28.5rem);
  font-size: 1.7rem;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item table tr:not(:first-child) td:nth-of-type(2) {
    width: calc(100% - 43rem);
    font-size: 2.7rem;
    text-align: right;
    padding: 0 5%;
  }
}

.p-simulationTables2__item table th,
.p-simulationTables2__item table td {
  border: 1px solid #808080;
  height: 6.1rem;
  vertical-align: middle;
  text-align: center;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item table th,
  .p-simulationTables2__item table td {
    height: 8.5rem;
  }
}

.p-simulationTables2__item table th.price,
.p-simulationTables2__item table td.price {
  text-align: right;
  padding-right: 2rem;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item table th.price,
  .p-simulationTables2__item table td.price {
    padding-right: 2.7rem;
  }
}

.p-simulationTables2__item table th.gray,
.p-simulationTables2__item table td.gray {
  background-color: #585a60 !important;
  color: #fff !important;
}

.p-simulationTables2__item table th.white,
.p-simulationTables2__item table td.white {
  background-color: #fff !important;
  color: #9a272d !important;
  font-size: 1.8rem !important;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item table th.white,
  .p-simulationTables2__item table td.white {
    font-size: 2.9rem !important;
  }
}

.p-simulationTables2__item table th {
  font-size: 1.7rem;
  font-weight: 700;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item table th {
    font-size: 3rem;
  }
}

.p-simulationTables2__item p {
  font-size: 1.4rem;
  margin-top: 1.7rem;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item p {
    font-size: 2.4rem;
  }
}

.p-simulationTables2__item p span {
  display: block;
  text-indent: -1.4rem;
  padding-left: 1.4rem;
}

@media screen and (max-width: 750px) {
  .p-simulationTables2__item p span {
    text-indent: -2.4rem;
    padding-left: 2.4rem;
  }
}

.simulation__txt {
  margin-top: 1rem;
  font-size: 1.4rem;
}

@media screen and (max-width: 750px) {
  .l-simulation__ttl {
    padding-bottom: 15px;
    font-size: 2.6rem;
    color: #444444;
    letter-spacing: 0.1rem;
  }

  .l-simulation__ttl2 {
    padding-top: 2.2rem;
    padding-bottom: 0;
    font-size: 2.9rem;
    color: #000;
    letter-spacing: 0.1rem;
    line-height: 23px;
  }

  .p-simulationTables__item table tr td:nth-of-type(1) {
    font-size: 2.5rem;
    text-align: center;
    width: 43rem;
    height: 15rem;
  }

  .p-simulationTables__item table tr:not(:first-child) td:nth-of-type(1) {
    font-size: 2.5rem;
    width: 38.5rem;
  }

  .p-simulationTables__item table tr:not(:first-child) td:nth-of-type(2) {
    font-size: 2.7rem;
  }

  .p-simulationTables__item table th,
  .p-simulationTables__item table td {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .p-simulationTables__item table tr td:nth-of-type(2) {
    font-size: 2.7rem;
    text-align: center;
  }

  .p-simulationTables__item table tr:nth-of-type(4) td {
    height: 20rem;
  }

  .p-simulationTables__item p {
    margin-top: 0;
  }

  .p-simulationTables__item p:first-of-type {
    margin-top: 2rem;
  }

  .p-simulationTables__item p:last-of-type {
    margin-bottom: 6rem;
  }

  .simulation__txt {
    font-size: 2.4rem;
  }

  .simulation__txt:first-of-type {
    margin-top: 2rem;
  }

  .simulation__txt {
    margin: 0;
  }
}

/*
    strengths
*/

.strengths-ttl {
  font-size: 36px;
  font-weight: bold;
  letter-spacing: 0.3rem;
}

.strengths-hdg p {
  padding-top: 25px;
  font-size: 18px;
  font-weight: bold;
}

.strengths-hdg2 h3 {
  font-size: 45px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 4px;
}

.strengths-container {
  padding-top: 25px;
  display: flex;
  gap: 30px;
}

.strengths-container-txt {
  width: 57%;
  font-size: 16px;
}

.strengths-container-img {
  width: 43%;
}

.strengths-imgbox {
  position: relative;
  padding: 20px 0;
}

.strengths-imgbox__txt {
  position: absolute;
  top: 6.7rem;
  left: 2.1rem;
  font-size: 2.2rem;
}

.strengths-imgbox__txt2 {
  position: absolute;
  top: 6rem;
  right: 11rem;
  font-size: 2.2rem;
}

.strengths-imgbox__txt2 span {
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
}

.strengths-imgbox__txt3 {
  position: absolute;
  top: 13.4rem;
  left: 0;
  font-size: 3.2rem;
  font-weight: bold;
}

.strengths-imgbox__txt4 {
  position: absolute;
  top: 14rem;
  right: 41.6rem;
  font-size: 2.2rem;
  color: #fff;
  font-weight: bold;
}

.strengths-imgbox__txt5 {
  position: absolute;
  top: 13.7rem;
  right: -0.2rem;
  font-size: 2.2rem;
}

.strengths-imgbox__txt5 span {
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.18rem;
}

.strengths-imgbox2 {
  position: relative;
}

.strengths-imgbox2__txt {
  position: absolute;
  bottom: 10rem;
  left: 2rem;
  font-size: 1.9rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.04rem;
}

.strengths-imgbox2__txt2 {
  position: absolute;
  bottom: 1.7rem;
  left: 9.5rem;
  font-size: 1.9rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.3rem;
}

.strengths-imgbox2__txt3 {
  position: absolute;
  bottom: 10rem;
  left: 36.4rem;
  font-size: 1.9rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.04rem;
}

.strengths-imgbox2__txt4 {
  position: absolute;
  bottom: 1.7rem;
  left: 44rem;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.2rem;
}

.strengths-imgbox2__txt5 {
  position: absolute;
  bottom: 10rem;
  right: 2rem;
  font-size: 1.9rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.04rem;
}

.strengths-imgbox2__txt6 {
  position: absolute;
  bottom: 1.7rem;
  right: 5.6rem;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.2rem;
}

.strengths-imgbox3 {
  position: relative;
}

.strengths-imgbox3__txt {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  top: 7rem;
  left: 29.4rem;
  letter-spacing: 0.2rem;
}

.strengths-imgbox3__txt2 {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  top: 10rem;
  left: 30.7rem;
  letter-spacing: 0.2rem;
}

.strengths-imgbox3__txt3 {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  top: 13.2rem;
  left: 31.8rem;
  letter-spacing: 0.2rem;
}

.strengths-imgbox3__txt4 {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  top: 17.6rem;
  left: 25.3rem;
  letter-spacing: 0.2rem;
}

.strengths-imgbox3__txt5 {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  bottom: 1.2rem;
  left: 30rem;
  letter-spacing: 0.1rem;
}

.strengths-imgbox3__txt6 {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  bottom: 13rem;
  right: 26.8rem;
  letter-spacing: 0.07rem;
}

.strengths-imgbox3__txt7 {
  position: absolute;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  bottom: 1.2rem;
  right: 28.5rem;
  letter-spacing: 0.1rem;
}

.strengths-imgbox4 {
  position: relative;
}

.strengths-imgbox4__txt {
  position: absolute;
  font-size: 2.6rem;
  font-weight: bold;
  top: 1rem;
  left: 31.5rem;
  color: #fff;
  letter-spacing: 0.07rem;
}

.strengths-imgbox4__txt2 {
  position: absolute;
  font-size: 2.6rem;
  font-weight: bold;
  top: 9.7rem;
  left: 5.6rem;
  letter-spacing: 0.3rem;
}

.strengths-imgbox4__txt3 {
  position: absolute;
  font-size: 1.6rem;
  top: 14.5rem;
  left: 5.6rem;
}

.strengths-imgbox4__txt4 {
  position: absolute;
  font-size: 2.6rem;
  font-weight: bold;
  top: 9.7rem;
  left: 35.3rem;
  letter-spacing: 0.3rem;
}

.strengths-imgbox4__txt5 {
  position: absolute;
  font-size: 1.6rem;
  top: 14.5rem;
  left: 35.2rem;
}

.strengths-imgbox4__txt6 {
  position: absolute;
  font-size: 2.2rem;
  font-weight: bold;
  top: 10.5rem;
  right: 4.5rem;
  letter-spacing: 0.2rem;
}

.strengths-imgbox4__txt6 span {
  color: #88272d;
}

@media screen and (max-width: 750px) {
  .strengths-imgbox__txt {
    top: 15.4rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox__txt2 {
    top: 0.3rem;
    right: 0rem;
    font-size: 3.3rem;
  }

  .strengths-imgbox__txt2 span {
    font-size: 3.7rem;
  }

  .strengths-imgbox__txt3 {
    top: 23.7rem;
    left: -0.2rem;
    font-size: 3.9em;
  }

  .strengths-imgbox__txt4 {
    top: 24.7rem;
    right: 3.2rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox__txt5 {
    top: auto;
    bottom: 6.8rem;
    right: 0;
    font-size: 3.3rem;
  }

  .strengths-imgbox__txt5 span {
    font-size: 3.7rem;
    font-weight: bold;
    letter-spacing: 0.1rem;
  }

  .strengths-imgbox2__txt {
    top: 1.5rem;
    left: auto;
    bottom: auto;
    right: 2.2rem;
    font-size: 2.4rem;
    letter-spacing: 0.12rem;
  }

  .strengths-imgbox2__txt2 {
    top: 7.6rem;
    right: 12rem;
    font-size: 2.5rem;
    left: auto;
    bottom: auto;
  }

  .strengths-imgbox2__txt3 {
    top: 22.4rem;
    left: auto;
    bottom: auto;
    right: 2.2rem;
    font-size: 2.4rem;
    letter-spacing: 0.12rem;
  }

  .strengths-imgbox2__txt4 {
    top: 28.6rem;
    right: 12rem;
    font-size: 2.5rem;
    left: auto;
    bottom: auto;
  }

  .strengths-imgbox2__txt5 {
    left: auto;
    bottom: 13rem;
    right: 2.2rem;
    font-size: 2.4rem;
    letter-spacing: 0.12rem;
  }

  .strengths-imgbox2__txt6 {
    right: 7.8rem;
    font-size: 2.5rem;
    left: auto;
    bottom: 2.5rem;
  }

  .strengths-imgbox3__txt {
    top: 5.5rem;
    left: 8.9rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox3__txt2 {
    top: 9.5rem;
    left: 10.9rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox3__txt3 {
    top: 13.5rem;
    left: 12.3rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox3__txt4 {
    top: 19.5rem;
    left: 3.3rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox3__txt5 {
    top: auto;
    left: 9.8rem;
    bottom: 1.3rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox3__txt6 {
    top: auto;
    left: auto;
    font-size: 2.8rem;
    bottom: 13.3rem;
    right: 2.7rem;
    letter-spacing: 0;
  }

  .strengths-imgbox3__txt7 {
    top: auto;
    left: auto;
    bottom: 1.3rem;
    right: 5.7rem;
    font-size: 2.8rem;
  }

  .strengths-imgbox4__txt {
    font-size: 3rem;
    left: 12.5rem;
    top: 2rem;
    letter-spacing: 0.03rem;
  }

  .strengths-imgbox4__txt2 {
    top: 12rem;
    font-size: 3.4rem;
    left: 6rem;
    letter-spacing: 0;
  }

  .strengths-imgbox4__txt3 {
    top: 18rem;
    font-size: 2.5rem;
    left: 6rem;
    letter-spacing: 0.2rem;
  }

  .strengths-imgbox4__txt4 {
    top: 32rem;
    font-size: 3.2rem;
    left: 6rem;
  }

  .strengths-imgbox4__txt5 {
    top: 38.5rem;
    font-size: 2.5rem;
    left: 6rem;
    letter-spacing: 0.2rem;
  }

  .strengths-imgbox4__txt6 {
    top: auto;
    bottom: 5.6rem;
    right: auto;
    left: 6.1rem;
    font-size: 3.5rem;
    letter-spacing: 0.3rem;
  }
}

.strengths-point {
  padding-bottom: 40px;
  display: flex;
  align-items: center;
  gap: 25px;
}

.strengths-point img {
  max-width: 243px;
}

.strengths-point p {
  font-size: 16px;
}

.strengths-container2 {
  text-align: center;
  position: relative;
  inset-inline: 50%;
  width: 100vw;
  margin-inline: -50vw;
  padding-inline: calc((100vw - 100%) / 2);
  padding-block: 20px 40px;
  background-color: #e3e1e2;
}

.strengths-container2 h3 {
  margin-bottom: 15px;
  font-size: 40px;
  font-weight: bold;
}

.strengths-container3 {
  padding-top: 50px;
  text-align: center;
}
.strengths-container3 h3 {
  padding-bottom: 35px;
  font-size: 40px;
  font-weight: bold;
}

.strengths-container4 {
  padding: 30px 0 40px;
  display: flex;
  flex-wrap: wrap;
  gap: 35px;
}

.strengths-merit {
  padding: 20px 30px;
  display: flex;
  align-items: center;
  gap: 50px;
  width: calc(50% - 20px);
  background-color: #e3e1e2;
  border-radius: 10px;
}

.strengths-merit img {
  width: 15%;
}

.strengths-merit p {
  font-size: 16px;
}

.costimgbox {
  padding-bottom: 5px;
}

.costimgbox2 {
  padding-bottom: 45px;
  text-align: center;
  width: 100%;
}

.costimgbox2 img {
  margin: 0 auto;
  max-width: 590px;
}

.strengths-point2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
}

.strengths-point2 img {
  max-width: 243px;
}

.strengths-point2 p {
  font-size: 27px;
  font-weight: bold;
}

.strengths-point2 span {
  color: #88272d;
}

.aiContainer {
  padding-top: 35px;
  display: flex;
}

.aiContainer dl:first-of-type {
  padding-right: 40px;
  border-right: 1px solid #000;
}

.aiContainer dl:last-of-type {
  padding-left: 40px;
}

.aiContainer dl dt {
  margin-bottom: 25px;
  font-size: 22px;
  font-weight: bold;
  color: #585a60;
}

.strengths-container5 {
  padding-top: 30px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
}

.packageBox {
  padding: 30px 0;
  width: calc(50% - 25px);
  border-radius: 10px;
  background-color: #e3e1e2;
  text-align: center;
}

.packageBox p {
  font-size: 18px;
  font-weight: bold;
}

.packageBox span {
  color: #88272d;
}

.packageImg {
  margin: 30px 0;
}

.p-aboutFig3__img .p-aboutFig3__text2 {
  top: 24.7rem;
}

.p-aboutFig3__img .p-aboutFig3__text2 span:nth-of-type(1) {
  font-size: 24px;
  font-weight: bold;
  color: #88272d;
}

.p-aboutFig3__img .p-aboutFig3__text2 span:nth-of-type(2) {
  font-size: 18px;
  font-weight: bold;
  color: #000;
}

.p-aboutFig3__img .p-aboutFig3__text2 span:nth-of-type(3) {
  font-size: 14px;
  color: #000;
  font-weight: normal;
}

.p-aboutFig3__img .p-aboutFig3__text3 {
  top: 2.2rem;
  left: 58.9rem;
}

.p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(1) {
  font-size: 24px;
  font-weight: bold;
  color: #fff;
}

.p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(2) {
  font-size: 16px;
  font-weight: bold;
  color: #fff;
}

.p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(3) {
  font-size: 22px;
  font-weight: bold;
  color: #ffff00;
}

.p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(4) {
  font-size: 17px;
  font-weight: bold;
  color: #fff;
}

.areaBox {
  margin-top: 70px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.area {
  margin: 0 25px 28px;
  text-align: center;
  background-color: #e3e1e2;
  width: calc((100% / 3) - 17px);
  border-radius: 10px;
  position: relative;
}

.area-txt {
  position: absolute;
  font-size: 1.7rem;
  font-weight: bold;
  left: 5.8rem;
  bottom: 10.6rem;
  letter-spacing: 0.2rem;
}

.area-txt2 {
  position: absolute;
  font-size: 1.8rem;
  font-weight: bold;
  left: 9.9rem;
  bottom: 3rem;
  letter-spacing: 0.1rem;
  color: #88272d;
}

.area-txt3 {
  position: absolute;
  font-size: 1.7rem;
  font-weight: bold;
  left: 7.5rem;
  bottom: 10.6rem;
  letter-spacing: 0.2rem;
}

.area-txt4 {
  position: absolute;
  font-size: 1.8rem;
  font-weight: bold;
  left: 4.6rem;
  bottom: 3rem;
  letter-spacing: 0.04rem;
  color: #88272d;
}

.area-txt5 {
  position: absolute;
  font-size: 1.7rem;
  font-weight: bold;
  left: 6.3rem;
  bottom: 10.6rem;
  letter-spacing: 0.2rem;
}

.area-txt6 {
  position: absolute;
  font-size: 1.8rem;
  font-weight: bold;
  left: 6.5rem;
  bottom: 3rem;
  letter-spacing: 0.04rem;
  color: #88272d;
}

.area-txt7 {
  position: absolute;
  font-size: 1.7rem;
  font-weight: bold;
  left: 5.8rem;
  bottom: 10.7rem;
  letter-spacing: 0.2rem;
}

.area-txt8 {
  position: absolute;
  font-size: 1.8rem;
  font-weight: bold;
  left: 4.1rem;
  bottom: 3rem;
  letter-spacing: 0.12rem;
  color: #88272d;
}

.area-txt9 {
  position: absolute;
  font-size: 1.7rem;
  font-weight: bold;
  left: 6.3rem;
  bottom: 10.5rem;
  letter-spacing: 0.2rem;
}

.area-txt10 {
  position: absolute;
  font-size: 1.8rem;
  font-weight: bold;
  left: 10.8rem;
  bottom: 3rem;
  letter-spacing: 0.12rem;
  color: #88272d;
}

.area:first-of-type {
  margin: 0 0 28px;
}

.area:nth-of-type(3) {
  margin: 0 0 28px;
}

.area:nth-of-type(4) {
  margin: 0 0 28px;
}

@media screen and (max-width: 750px) {
  .l-pageTtl h1 {
    font-size: 4.5rem;
  }

  .strengths-hdg {
    margin-bottom: 10px;
  }

  .strengths-hdg p {
    font-size: 3rem;
    color: #444444;
  }

  .strengths-hdg2 h3 {
    font-size: 4.6rem;
    letter-spacing: 2px;
  }

  .l-about__item:not(:first-child) {
    padding-top: 7rem;
  }

  .strengths-container {
    flex-direction: column;
  }

  .strengths-container-txt {
    width: 100%;
    font-size: 2.6rem;
  }

  .strengths-container-img {
    width: 100%;
  }

  .strengths-imgbox {
    padding: 10px 0 40px;
  }

  .strengths-point {
    flex-direction: column;
    gap: 15px;
  }

  .strengths-point img {
    max-width: 175px;
  }

  .strengths-point p {
    font-size: 2.6rem;
  }

  .strengths-container2 h3 {
    font-size: 4.3rem;
    line-height: 30px;
  }

  .strengths-container2 img {
    padding: 0 20px;
  }

  .strengths-container3 {
    padding-top: 35px;
  }

  .strengths-container3 h3 {
    font-size: 4.3rem;
  }

  .strengths-container4 {
    padding: 15px 0 0;
    flex-direction: column;
    gap: 15px;
  }

  .strengths-merit {
    padding: 15px 18px;
    width: 100%;
    gap: 25px;
  }

  .strengths-merit img {
    width: 17%;
  }

  .strengths-merit p {
    font-size: 2.6rem;
  }

  .strengths-container5 {
    padding-top: 15px;
    flex-direction: column;
    gap: 20px;
  }

  .costimgbox2 {
    padding-bottom: 35px;
  }

  .strengths-point2 {
    flex-direction: column;
    gap: 15px;
  }

  .strengths-point2 img {
    width: 175px;
  }

  .strengths-point2 p {
    font-size: 4.3rem;
  }

  .aiContainer {
    padding-top: 20px;
    flex-direction: column;
  }

  .aiContainer dl:first-of-type {
    padding-right: 0;
    padding-bottom: 20px;
    border-right: none;
    border-bottom: 1px solid #000;
  }

  .aiContainer dl:last-of-type {
    padding-left: 0;
    padding-top: 20px;
  }

  .aiContainer dl dt {
    font-size: 3.5rem;
    margin-bottom: 10px;
  }

  .packageBox {
    padding: 10px 0;
    width: 100%;
  }

  .packageBox p {
    font-size: 3.1rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text2 {
    top: 93.7rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text3 {
    top: 55.5rem;
    left: 3.3rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(1) {
    font-size: 3.5rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(2) {
    font-size: 2.7rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(3) {
    font-size: 4.3rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text3 span:nth-of-type(4) {
    font-size: 3.2rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text2 span:nth-of-type(1) {
    font-size: 3.6rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text2 span:nth-of-type(2) {
    font-size: 3.3rem;
  }

  .p-aboutFig3__img .p-aboutFig3__text2 span:nth-of-type(3) {
    font-size: 2.45rem;
  }

  .areaBox {
    margin-top: 20px;
    flex-direction: column;
    gap: 25px;
  }

  .area {
    margin: 0;
    width: 100%;
  }

  .area-txt {
    left: auto;
    right: 6.3rem;
    bottom: auto;
    top: 5rem;
    font-size: 3rem;
  }

  .area-txt2 {
    left: auto;
    right: 13.6rem;
    bottom: auto;
    top: 17rem;
    font-size: 3.3rem;
  }

  .area-txt3 {
    left: auto;
    right: 8.3rem;
    bottom: auto;
    top: 2rem;
    font-size: 3rem;
  }

  .area-txt4 {
    left: auto;
    right: 3rem;
    bottom: auto;
    top: 19.7rem;
    font-size: 3.3rem;
  }

  .area-txt5 {
    left: auto;
    right: 7rem;
    bottom: auto;
    top: 5rem;
    font-size: 3rem;
  }

  .area-txt6 {
    left: auto;
    right: 6.3rem;
    bottom: auto;
    top: 16.9rem;
    font-size: 3.3rem;
  }

  .area-txt7 {
    left: auto;
    right: 4.5rem;
    bottom: auto;
    top: 2.4rem;
    font-size: 3rem;
  }

  .area-txt8 {
    left: auto;
    right: 2.5rem;
    bottom: auto;
    top: 19.9rem;
    font-size: 3.3rem;
  }

  .area-txt9 {
    left: auto;
    right: 7.1rem;
    bottom: auto;
    top: 4.7rem;
    font-size: 3rem;
  }

  .area-txt10 {
    left: auto;
    right: 15.1rem;
    bottom: auto;
    top: 17.2rem;
    font-size: 3.3rem;
  }
  .area:first-of-type {
    margin: 0;
  }

  .area:nth-of-type(3) {
    margin: 0;
  }

  .area:nth-of-type(4) {
    margin: 0;
  }
}

/*
    movie
*/

.movie-franchise {
  margin-bottom: 25px;
  padding: 10px 0;
  width: 100%;
  background-color: #296080;
  text-align: center;
}

.movie-franchise h3 {
  font-size: 19px;
  font-weight: bold;
  color: #fff;
}

.movie-media {
  margin-bottom: 25px;
  padding: 10px 0;
  width: 100%;
  background-color: #aa6329;
  text-align: center;
}

.movie-media h3 {
  font-size: 19px;
  font-weight: bold;
  color: #fff;
}

/* 
    news
*/

.l-info__ttl {
  text-align: start;
}

.l-info__content h2 {
  font-size: 2.2rem;
  font-weight: bold;
  color: #4d4d4d;
  margin-top: 3.5rem;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid #000;
}

.l-info__content h3 {
  font-size: 2.2rem;
  font-weight: bold;
  color: #4d4d4d;
  margin-top: 3.5rem;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid #000;
}

.l-info__content p {
  font-size: 1.5rem;
  margin-top: 1.8rem;
}

.l-info__content figure {
  width: 50rem;
  margin: 2rem auto 0;
}

.p-share2 {
  margin-top: 3rem;
}

.media {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin-top: 5rem;
}

.media__img {
  width: 46.5rem;
  margin-right: 3rem;
}

.media__text {
  width: calc(100% - 49.5rem);
}

.media.inverse .media__img {
  order: 2;
  margin-right: 0;
  margin-left: 3rem;
}

.media.inverse .media__text {
  order: 1;
}
@media screen and (max-width: 750px) {
  .l-pageTtl.newsTtl {
    border: none;
  }

  .info-column-container {
    display: flex;
    flex-direction: column-reverse;
  }

  .l-info__content .p-share2 {
    margin-top: 6rem;
    margin-bottom: 4rem;
  }
  .l-info__content figure {
    width: calc(100% + 8rem);
    transform: translateX(-4rem);
    margin-top: 4rem;
  }

  .media {
    flex-direction: column;
  }

  .media__img {
    margin-bottom: 20px;
    margin-right: 0;
    width: 100%;
  }

  .l-info__content h3 {
    font-size: 14px;
    border: none;
  }

  .l-info__content p {
    margin-top: 0;
    font-size: 13px;
  }

  .media__text {
    width: 100%;
  }
  .media.inverse .media__img {
    order: 1;
    margin-left: 0;
    margin-bottom: 20px;
  }

  .media.inverse .media__text {
    order: 2;
  }
}

/*
    support
*/

.p-supportPeriod__img {
  margin-top: 30px;
}
.p-supportPeriod__table__date > span {
  background-color: #d3d3d3;
}

.p-supportPeriod__table__date > span:nth-child(2n) {
  background-color: #e3e1e2;
}

.p-supportPeriod__table__date > span:nth-child(2n)::before {
  border-bottom: 8.6rem solid #e3e1e2;
}

.p-supportPeriod__table__date > span:nth-child(2n)::after {
  border-bottom: 8.6rem solid #d3d3d3;
}

.p-supportPeriod__table__foot span p {
  background-color: #296080;
  color: #fff;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  line-height: 36px;
  text-align: center;
  font-size: 2.2rem;
}

.p-supportPeriod__table__foot span:nth-of-type(1) {
  width: 10rem;
}

.p-supportPeriod__table__foot span:nth-of-type(2) {
  width: 57.5rem;
}

.p-supportPeriod__table__foot span:nth-of-type(3) {
  width: 8.2rem;
}

.p-supportPeriod__table__foot span:nth-of-type(4) {
  width: 24rem;
}

.p-supportPeriod__table__after {
  margin-top: 50px;
  display: flex;
  width: 100%;
}

.p-supportPeriod__table__after span {
  position: relative;
  font-size: 2.1rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  line-height: 1.5;
  color: #88272d;
}

.p-supportPeriod__table__after span::before {
  content: "";
  position: absolute;
  border-right: 14px solid transparent;
  border-left: 14px solid transparent;
  border-top: 18px solid #585a60;
  border-bottom: 0;
  top: -42%;
}

.p-supportPeriod__table__after span:nth-of-type(1) {
  width: 17rem;
}

.p-supportPeriod__table__after span:nth-of-type(1)::before {
  left: 12%;
}

.p-supportPeriod__table__after span:nth-of-type(2) {
  width: 44rem;
}

.p-supportPeriod__table__after span:nth-of-type(2)::before {
  left: 39.5%;
}

.p-supportPeriod__table__after span:nth-of-type(3) {
  width: 15rem;
}

.p-supportPeriod__table__after span:nth-of-type(3)::before {
  left: 35%;
}

.p-supportPeriod__table__after span:nth-of-type(4) {
  width: 19rem;
}

.p-supportPeriod__table__after span:nth-of-type(4)::before {
  left: 43%;
}

.training-voices {
}

.training-voices h3 {
  margin: 30px 0;
  text-align: center;
  font-size: 26px;
  font-weight: bold;
}

.training-voices-itembox {
  display: flex;
}

.training-voices-inr {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.training-voices-inr img {
  width: 47px;
  height: 54px;
}

.training-voices-inr h4 {
  font-size: 17px;
  font-weight: bold;
}

.training-voices-item {
  padding: 30px;
  width: calc(100% / 3);
  background-color: #e3e1e2;
  border-radius: 10px;
}

.training-voices-item:nth-of-type(2) {
  margin: 0 35px;
}

.training-voices-inr2 {
  font-size: 15px;
}

.supportOperation {
  margin: 0 auto;
  max-width: 750px;
  display: flex;
  justify-content: center;
  gap: 45px;
}

.supportOperation-hdg {
  padding: 15px 0;
  text-align: center;
  color: #296080;
  font-size: 21px;
  font-weight: bold;
}

.supportOperation-label {
  padding: 10px 0;
  text-align: center;
  background-color: #000;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}

.infobtn {
  margin: 50px auto 0;
  max-width: 380px;
  background-color: #000;
  text-align: center;
  border-bottom: 4px solid #aa6329;
}

.infobtn a {
  padding: 8px 0;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
}

.supportOnly {
  padding: 20px 0 50px;
}
.supportOnly-list {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
}

.supportOnly-item {
  padding: 25px;
  width: 170px;
  background-color: #e3e1e2;
  border-radius: 10px;
  text-align: center;
}

.supportOnly-img {
  margin: 0 auto 5px;
}

.supportOnly-img img {
  width: 55%;
  height: 50px;
  object-fit: contain;
}

.supportOnly-label {
  height: 50%;
  font-size: 17px;
  font-weight: bold;
  line-height: 25px;
}

.supportMember {
  padding: 20px 0 30px;
}

.supportMember-list {
  margin-top: 25px;
  display: flex;
  justify-content: space-between;
  gap: 33px;
}

.supportMember-img {
  margin-bottom: 10px;
}

.supportMember-name {
  margin-bottom: 10px;
  font-size: 15px;
  font-weight: bold;
}

.supportMember-txt {
  font-size: 15px;
}

@media screen and (max-width: 750px) {
  .p-supportPeriod__table__foot span {
    color: #9a272d;
    font-size: 2rem;
  }

  .p-supportPeriod__table__foot span:nth-of-type(1) {
    width: 100%;
    height: 8.4%;
  }

  .p-supportPeriod__table__foot span:nth-of-type(2) {
    width: 100%;
    height: 59%;
  }

  .p-supportPeriod__table__foot span:nth-of-type(3) {
    width: 100%;
    height: 7.7%;
  }

  .p-supportPeriod__table__foot span:nth-of-type(4) {
    width: 100%;
    height: 25%;
  }

  .p-supportPeriod__img {
    margin-top: 25px;
  }

  .p-supportPeriod__img img:nth-of-type(2) {
    margin-bottom: 15px;
  }

  .training-voices h3 {
    margin: 15px 0;
    font-size: 16px;
  }

  .training-voices-itembox {
    flex-direction: column;
    gap: 20px;
  }

  .training-voices-item {
    padding: 20px 25px;
    width: 100%;
  }

  .training-voices-item:nth-of-type(2) {
    margin: 0;
  }

  .training-voices-inr h4 {
    font-size: 16px;
    line-height: 25px;
  }

  .training-voices-inr2 {
    font-size: 2.6rem;
  }

  .supportOperation {
    gap: 5px;
    flex-direction: column;
  }

  .supportOperation-hdg {
    padding: 10px 0;
    font-size: 3.8rem;
  }

  .supportOnly-list {
    flex-direction: column;
    gap: 20px;
  }

  .supportOnly-item {
    padding: 25px 25px 25px 35px;
    display: flex;
    align-items: center;
    width: 100%;
    text-align: left;
  }

  .supportOnly-img {
    margin: 0;
    width: 42%;
  }

  .supportOnly-img img {
    width: 75%;
  }

  .supportMember {
    padding: 20px 0 0;
    position: relative;
  }

  .supportMember-list {
    text-align: center;
  }

  .supportMember-img img {
    width: 70%;
  }

  .supportMember-txt {
    font-size: 2.55rem;
  }
}

/*
    about
*/

.l-pageTtl h1 span:nth-of-type(2) {
  letter-spacing: 0.2rem;
}

.p-ttlNum__text {
  letter-spacing: 0.1rem;
}

.about-hdg {
}

.about-hdg p {
  font-size: 18px;
  font-weight: bold;
}

.about-description {
  padding: 45px 0;
}

.about-presidentImg {
  padding: 0 80px 60px 0;
  width: 29.5%;
  float: left;
}

.about-presidentImg img {
  margin-bottom: 30px;
}

.about-presidentImg p {
  font-size: 18px;
  font-weight: bold;
}

.about-presidentTxt p {
  margin-bottom: 30px;
  font-size: 18px;
}

.about-presidentTxt span {
  font-weight: bold;
  color: #88272d;
}

.about-vision-hdg {
  text-align: center;
  position: relative;
  inset-inline: 50%;
  width: 100vw;
  margin-inline: -50vw;
  padding-inline: calc((100vw - 100%) / 2);
  padding-block: 20px;
  background-color: #e3e1e2;
}

.about-vision-hdg h3 {
  font-size: 38px;
  font-weight: bold;
}

.about-vision-item {
  padding: 40px 0 70px;
  display: flex;
  justify-content: center;
  gap: 30px;
}

.about-vision-item dl {
  width: 50%;
  text-align: center;
}

.about-vision-item dt {
  padding: 15px 0;
  font-size: 29px;
  font-weight: bold;
  color: #fff;
  background-color: #296080;
  border-radius: 15px 15px 0 0;
}

.about-vision-item dd {
  padding: 40px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  background-color: #e3e1e2;
  border-radius: 0 0 15px 15px;
}

.about-concept-txt {
  margin: 40px 50px;
  text-align: center;
}

.about-concept-txt p {
  font-size: 29px;
  font-weight: bold;
  letter-spacing: 4px;
}

.about-concept-list {
  margin-bottom: 60px;
  display: flex;
  justify-content: space-between;
  gap: 30px;
}

.about-concept-list-item {
  background-color: #000;
  width: 50%;
  text-align: center;
  border-radius: 10px;
}

.about-concept-list-item p {
  padding: 20px 0;
  color: #fff;
  font-size: 23px;
  font-weight: bold;
  display: block;
}

.about-concept-shop {
  margin-bottom: 50px;
}

.about-concept-shop h3 {
  text-align: center;
  margin-bottom: 20px;
  font-size: 31px;
  font-weight: bold;
}

.about-concept-shop-txt {
  text-align: center;
  margin-bottom: 35px;
  font-size: 16px;
}

.shop-list {
  display: flex;
  gap: 35px;
}

.shop-list-item img {
  margin-bottom: 5px;
}

.shop-list-item-txt {
  margin-bottom: 35px;
  text-align: left;
  font-size: 16px;
  color: #000;
}

.about-concept-container:not(:last-of-type) {
  margin-bottom: 45px;
}

.about-concept-hdg {
  margin-bottom: 20px;
  text-align: center;
}

.about-concept-hdg h3 {
  font-size: 31px;
  font-weight: bold;
}

.about-group {
  margin: 30px 0;
}

.about-grocalImg {
  margin-top: 20px;
}

.about-jbaImg {
  margin: 30px 0;
  padding: 45px 65px;
  background-color: #e3e1e2;
}

.txt-hide {
  display: none;
}

button.more {
  position: relative;
  width: 50%;
  margin: 20px auto;
  display: block;
  background-color: #fff;
  padding: 20px 0;
  border-bottom: 1px solid #000;
  outline: 0;
  transition: 0.5s;
  -erbkit-transition: 0.5s;
}

button.more::before {
  content: "もっと見る";
  transition: 0.2s;
  -erbkit-transition: 0.2s;
  font-size: 4rem;
  position: absolute;
  right: 10%;
  top: -5%;
  color: #000;
}

button.more::after {
  content: "";
  width: 17px;
  height: 17px;
  border: 0;
  border-top: solid 1px #000;
  border-right: solid 1px #000;
  transform: rotate(-225deg);
  position: absolute;
  top: -43%;
  left: 8%;
  bottom: 0;
  margin: auto;
}

button.more.on-click::before {
  content: "閉じる";
  right: 25%;
  color: #000;
}

button.more.on-click::after {
  content: "×";
  width: 17px;
  height: 17px;
  position: absolute;
  top: -110%;
  left: 15%;
  border: none;
  transform: none;
  font-size: 6rem;
  font-weight: 100;
  color: #000;
}

@media screen and (max-width: 750px) {
  .about-hdg p {
    font-size: 3rem;
    color: #444444;
    padding-top: 25px;
    font-weight: bold;
  }

  .about-description {
    padding: 20px 0;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
  }

  .about-presidentImg {
    padding: 0;
    width: 50%;
    text-align: center;
  }

  .about-presidentImg img {
    margin-bottom: 10px;
  }

  .about-presidentImg p {
    font-size: 2.9rem;
  }

  .about-vision-hdg h3 {
    font-size: 4.4rem;
    line-height: 30px;
  }

  .about-vision-item {
    padding: 25px 0 40px;
    flex-direction: column;
    gap: 15px;
  }

  .about-vision-item dl {
    width: 100%;
  }

  .about-vision-item dt {
    padding: 10px 0;
    font-size: 3.8rem;
    letter-spacing: 0.3rem;
  }

  .about-vision-item dd {
    padding: 15px 0;
    font-size: 3.4rem;
    letter-spacing: 0.1rem;
  }

  .about-concept-txt {
    margin: 15px 0;
  }

  .about-concept-txt p {
    font-size: 2.9rem;
    letter-spacing: 1px;
  }

  .about-concept-list {
    align-items: stretch;
    gap: 10px;
    margin-bottom: 25px;
  }

  .about-concept-list-item {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
  }

  .about-concept-list-item p {
    padding: 15px 0;
    font-size: 2.8em;
    line-height: 20px;
  }

  .about-concept-shop h3 {
    margin-bottom: 10px;
    font-size: 3.6rem;
  }

  .about-concept-shop-txt {
    margin-bottom: 20px;
    font-size: 2.7rem;
    text-align: left;
  }

  .shop-list {
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0;
  }

  .shop-list-item {
    width: calc(50% - 12.5px);
  }

  .shop-list-item-txt {
    font-size: 2.8rem;
  }

  .about-concept-hdg h3 {
    font-size: 3.1rem;
  }

  .about-concept-container:not(:last-of-type) {
    margin-bottom: 20px;
  }

  .about-concept-img {
    position: relative;
    inset-inline: 50%;
    width: 100vw;
    margin-inline: -50vw;
  }

  .about-jbaImg {
    padding: 0;
    background-color: #fff;
  }
}

/*
    owners voice
*/

.l-pageTtl.archive-voiceTtl h1 span:nth-of-type(1) {
  margin-bottom: 10px;
  height: 22px;
}

.l-ownersvoice {
  padding-top: 2.8rem;
}

.l-ownersvoice__top {
  text-align: center;
  font-size: 1.9rem;
  font-weight: 700;
}

.ownersvoice-container {
  margin: 30px 0;
}

.ownersvoice-list {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
}

.ownersvoice-item {
  width: calc((100% / 3) - 43px);
  padding-bottom: 50px;
  position: relative;
}

.ownersvoice-item:nth-child(3n)::after {
  position: absolute;
  content: "";
  bottom: 0;
  background-color: #fff;
  border-top: 1px dashed #000;
  height: 1px;
  width: 343%;
  left: -240%;
}

.ownersvoice-item:nth-child(15)::after {
  border-top: none;
}

.ownersvoice-img {
  margin-bottom: 20px;
}

.ownersvoice-ttl {
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: bold;
}

.ownersvoice-ttl a {
  color: #000;
}

.ownersvoice-name {
  margin-bottom: 5px;
  font-size: 16px;
}

.ownersvoice-shop {
  margin-bottom: 10px;
  font-size: 16px;
}

.ownersvoice-tag a {
  margin-right: 10px;
  padding: 5px 10px;
  font-size: 16px;
  background-color: #bdbdbe;
  color: #000;
}

@media screen and (max-width: 750px) {
  .ownersvoice-list {
    gap: 40px;
  }

  .l-ownersvoice__top {
    font-size: 16px;
  }

  .about-presidentTxt p {
    font-size: 2.6rem;
  }

  .ownersvoice-container {
    margin: 20px 0;
  }

  .ownersvoice-item {
    padding-bottom: 0;
    width: 100%;
  }

  .ownersvoice-img a {
    width: 100%;
  }

  .ownersvoice-item:nth-child(3n)::after {
    display: none;
  }
}

/*
    owners-single
*/

.ownersSingle-img {
  margin: 0 auto 35px;
  width: 50rem;
}

.ownersSingle-ttl {
  margin-bottom: 20px;
  text-align: center;
}

.ownersSingle-ttl h1 {
  font-size: 22px;
  font-weight: bold;
}

.ownersSingle-name {
  margin-bottom: 30px;

  text-align: center;
}

.ownersSingle-name p {
  font-size: 19px;
}

.ownersSingle-tag {
  text-align: center;
}

.ownersSingle-tag a {
  margin-right: 10px;
  padding: 5px 15px;
  font-size: 16px;
  background-color: #bdbdbe;
  color: #000;
}

.ownersSingle-content h2 {
  font-size: 2.2rem;
  font-weight: bold;
  color: #4d4d4d;
  margin-top: 3.5rem;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid #000;
}

.ownersSingle-content p:not(:has(> img)) {
  font-size: 17px;
  width: 100%;
  margin-top: 30px;
}

.ownersSingle-content p:has(+ p > img) {
  font-size: 17px;
  display: inline-flex;
  width: 53.7%;
  margin-top: 30px;
}

.ownersSingle-content p:has(> img) {
  margin-top: 30px;
  margin-left: 60px;
  width: 40%;
  display: inline-block;
}

.ownersSingle-content2 h2 {
  font-size: 2.2rem;
  font-weight: bold;
  color: #4d4d4d;
  margin-top: 3.5rem;
  padding-bottom: 1.1rem;
  border-bottom: 1px solid #000;
}

.ownersSingle-content2 p {
  margin-top: 30px;
  font-size: 17px;
}

.ownersSingle-message {
  margin: 70px 0 0;
  padding: 60px 45px;
  background-color: #e3e1e2;
  border-radius: 10px;
}

.ownersSingle-message h3 {
  margin-bottom: 25px;
  padding: 10px 0;
  text-align: center;
  font-size: 17px;
  font-weight: bold;
  color: #fff;
  background-color: #aa6329;
}

.ownersSingle-message p {
  font-size: 17px;
}

.ownersSingle-interview {
  margin-top: 60px;
  padding-top: 50px;
  border-top: 1px dashed #000;
}

.ownersSingle-interview h3 {
  margin-bottom: 30px;
  text-align: center;
  font-size: 19px;
  font-weight: bold;
}

.ownersSingle-interview-list {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
}

.ownersSingle-interview-item {
  width: calc((100% / 3) - 43px);
  padding-bottom: 50px;
  position: relative;
}

.ownersSingle-interview-img {
  margin-bottom: 20px;
}

.ownersSingle-interview-ttl {
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: bold;
}

.ownersSingle-interview-ttl a {
  color: #000;
}

.ownersSingle-interview-name {
  margin-bottom: 5px;
  font-size: 16px;
}
.ownersSingle-interview-name a {
  color: #000;
}

.ownersSingle-interview-shop {
  margin-bottom: 10px;
  font-size: 16px;
}

.ownersSingle-interview-shop a {
  color: #000;
}

.ownersSingle-interview-tag a {
  margin-right: 10px;
  padding: 5px 10px;
  font-size: 16px;
  background-color: #bdbdbe;
  color: #000;
}

@media screen and (max-width: 750px) {
  .ownersSingle-img {
    margin: 25px auto 15px;
    width: 100%;
  }

  .ownersSingle-ttl {
    text-align: start;
  }

  .ownersSingle-ttl h1 {
    font-size: 18px;
  }

  .ownersSingle-name {
    text-align: start;
  }

  .ownersSingle-name p {
    font-size: 17px;
  }

  .ownersSingle-name {
    margin-bottom: 15px;
  }

  .ownersSingle-tag {
    text-align: start;
  }

  .ownersSingle-content-inr {
    flex-direction: column;
  }

  .ownersSingle-content h2 {
    padding-bottom: 15px;
    font-size: 3.1rem;
    color: #000;
  }

  .ownersSingle-content-inr {
    margin-top: 20px;
  }

  .ownersSingle-content p:has(+ p > img) {
    width: 100%;
  }

  .ownersSingle-content p:has(> img) {
    margin-left: 0;
    width: 100%;
  }

  .ownersSingle-content p:has(+ img) {
    margin-top: 15px;
    display: block;
    width: 100%;
    font-size: 2.6rem;
  }

  .ownersSingle-content img {
    margin-top: 0;
    margin-left: 0;
    display: block;
    width: 100%;
    height: 100%;
  }

  .ownersSingle-content2 h3 {
    padding-bottom: 15px;
    font-size: 18px;
  }

  .ownersSingle-content2 p {
    margin-top: 20px;
  }

  .ownersSingle-message {
    margin: 30px 0 35px;
    padding: 40px 4rem;
    width: calc(100% + 8rem);
    transform: translateX(-4rem);
    border-radius: 0;
  }

  .ownersSingle-message h3 {
    margin-bottom: 15px;
    font-size: 2.6rem;
  }

  .ownersSingle-message p {
    font-size: 2.6rem;
  }

  .ownersSingle-interview {
    padding-top: 25px;
    width: calc(100% + 8rem);
    transform: translateX(-4rem);
  }

  .ownersSingle-interview h3 {
    margin-bottom: 15px;
  }

  .ownersSingle-interview-list {
    padding: 0 4rem;
    gap: 0;
    flex-direction: column;
  }

  .ownersSingle-interview-item {
    padding-bottom: 35px;
    width: 100%;
  }

  .ownersSingle-interview-ttl {
    font-size: 2.9rem;
  }

  .ownersSingle-interview-name {
    font-size: 2.9rem;
  }

  .ownersSingle-interview-shop {
    font-size: 2.9rem;
  }

  .ownersSingle-interview-tag a {
    padding: 5px 20px;
    font-size: 2.9rem;
  }
}

/*
    information-archive
*/

.infoArchive {
  padding-top: 2.8rem;
}

.infoArchive-ttl {
  margin-bottom: 35px;
  text-align: center;
}

.infoArchive-ttl h2 {
  font-size: 19px;
  font-weight: bold;
  letter-spacing: 3px;
}

.infoArchive-list {
}

.infoArchive-list-item {
  position: relative;
  padding: 17px 0;
  display: flex;
  align-items: center;
  width: 100%;
  background-color: #dbdbdb;
}

.infoArchive-list-item::after {
  content: "";
  width: 11px;
  height: 11px;
  border: 0;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 2%;
  bottom: 0;
  margin: auto;
}

.infoArchive-list-item a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.infoArchive-list-item:nth-of-type(2n) {
  background-color: #fff;
}

.infoArchive-list-date {
  padding: 0 20px 0 40px;
  font-size: 13px;
}

.infoArchive-list-new {
  position: absolute;
  padding: 1px 20px;
  font-size: 9px;
  font-weight: bold;
  background-color: #000;
  color: #fff;
  left: 12.5%;
}

.infoArchive-list-ttl {
  padding: 0px 5% 0 7%;
  font-size: 15px;
  font-weight: bold;
}

@media screen and (max-width: 750px) {
  .l-pageTtl {
    border-bottom: 1px solid #808080;
  }

  .infoArchive-ttl {
    margin-bottom: 20px;
  }

  .infoArchive-ttl h2 {
    font-size: 15px;
    font-weight: bold;
    letter-spacing: 2px;
  }

  .infoArchive-list {
    width: calc(100% + 8rem);
    transform: translateX(-4rem);
  }

  .infoArchive-list-item {
    flex-direction: column;
    align-items: start;
  }

  .infoArchive-list-new {
    left: 28.5%;
    top: 23%;
  }

  .infoArchive-list-ttl {
    padding: 0px 5.5%;
    width: 93%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .infoArchive-list-date {
    padding: 0 5.5%;
  }

  .infoArchive-list-item::after {
    right: 6%;
  }
}

/*
    contents(colum記事ページ)
*/
.contents-tag {
  margin-bottom: 50px;
  width: 100%;
  padding: 20px;
  background-color: #dbdbdb;
}

.contents-tag-ttl {
  padding-bottom: 10px;
  margin-bottom: 10px;
  color: #4d4d4d;
  font-size: 19px;
  font-weight: bold;
  border-bottom: 1px solid #000;
}

.contents-tag-list {
  display: flex;
  flex-wrap: wrap;
  line-height: 30px;
}

.contents-tag-list-item {
  margin-right: 10px;
  color: #000;
  font-size: 14px;
}

/*
    TOPPage
*/

#js-index-thumbs.p-mv__inner {
  display: none;
}

#js-index-thumbs.p-mv__inner.swiper-initialized {
  display: block;
}

@media screen and (max-width: 768px) {
  #js-index-thumbs.p-mv__inner.swiper-initialized {
    display: none;
  }
}

.swiper-slide-thumb-active {
  padding-bottom: 7px;
}

.swiper-slide-thumb-active::after {
  content: "";
  position: absolute;
  border-bottom: 4px solid #aa6329;
  bottom: 0;
  left: 0;
  width: 100%;
}

#js-index-thumbs .p-mv__wrapper {
  margin-top: 30px;
  height: 55px;
  justify-content: center;
}

.top-strengths {
  padding: 60px 0 70px;
}

.top-strengths-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
}

.top-strengths-ttl-en {
  height: 4.7rem;
}

.top-strengths-ttl-en img {
  width: auto;
  height: 100%;
}
.top-strengths-ttl-ja {
  color: #585a60;
  font-weight: 700;
  font-size: 1.6rem;
}

.top-strengths-hdg {
  position: relative;
  text-align: center;
  background-color: #296080;
  color: #fff;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  margin-top: 3rem;
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  height: 9.7rem;
  line-height: 9.7rem;
}

.top-strengths-hdg::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
  border-top: 2.4rem solid #296080;
  border-left: 1.4rem solid transparent;
  border-right: 1.4rem solid transparent;
}

.top-strengths-contents {
  margin-top: 15px;
}

.top-strengths-item {
  padding: 45px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px dashed #bbb;
}

.top-strengths-item:nth-of-type(2n) {
  flex-direction: row-reverse;
}

.top-strengths-item:nth-of-type(3) {
  border-bottom: none;
}

.top-strengths-img {
  width: 46%;
}

.top-strengths-list {
  width: 50.5%;
}

.top-strengths-list h3 {
  margin-bottom: 9px;
  font-size: 28px;
  font-weight: bold;
}

.top-strengths-list h3 img {
  margin-right: 10px;
  width: 30px;
  height: 48px;
}

.top-strengths-list-item {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #585a60;
  height: 70px;
  border-radius: 5px;
  margin-bottom: 20px;
}

.top-strengths-list-item:last-of-type {
  margin: 0;
}

.top-strengths-list-item p {
  font-size: 17px;
  font-weight: bold;
  color: #fff;
}

.top-movie {
  background-color: #cdcac6;
  padding-top: 10rem;
  padding-bottom: 8.6rem;
}

.l-topMovie {
  padding: 45px 0;
}

.l-topMovie + .l-topMovie {
  padding: 0 0 45px 0;
}

.top-movie-franchise {
  margin-bottom: 25px;
  padding: 10px 0;
  width: 100%;
  background-color: #296080;
  text-align: center;
}

.top-movie-media {
  margin-bottom: 25px;
  padding: 10px 0;
  width: 100%;
  background-color: #aa6329;
  text-align: center;
}

.top-movie-list {
  display: flex;
  flex-wrap: wrap;
}

.top-movie-list-item {
  width: calc(100% / 3 - 1.5rem * 2 / 3);
  margin-right: 1.5rem;
}

.top-movie-list-item:nth-of-type(3n) {
  margin: 0;
}

.top-movie-list-item-inr {
  padding-bottom: 56.25%;
  position: relative;
}

.top-movie-list-item-inr > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top-movie-list-item-inr > * > iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.l-topNews__cont {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.top-ownersvoice-list {
  padding-top: 35px;
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
}

.top-ownersvoice-item {
  width: calc((100% / 3) - 43px);
  padding-bottom: 50px;
  position: relative;
}

.top-ownersvoice-img {
  margin-bottom: 20px;
}

.top-ownersvoice-ttl {
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: bold;
}

.p-topTitle__en.top-ownersVoiceTtl {
  height: 2.7rem;
}

.top-ownersvoice-ttl a {
  color: #000;
}

.top-ownersvoice-name {
  margin-bottom: 5px;
  font-size: 16px;
}

.top-ownersvoice-shop {
  margin-bottom: 10px;
  font-size: 16px;
}

.top-ownersvoice-tag a {
  margin-right: 10px;
  padding: 5px 10px;
  font-size: 16px;
  background-color: #bdbdbe;
  color: #000;
}

.p-topAboutMedia__text {
  width: 50%;
  padding-left: 5.3rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 3.2rem;
  margin-top: -0.8rem;
}

.l-topSupport__beforeAfter {
  margin-bottom: 3rem;
}

.top-support-img {
  padding-top: 50px;
  display: flex;
}

.top-support-img img {
  width: 50%;
  object-fit: cover;
}

.l-topAbout {
  margin-top: 10rem;
}

.top-link {
  margin: 60px auto 0;
  max-width: 100rem;
  display: flex;
  gap: 40px;
}

.top-link-item {
  padding: 25px 75px 25px 50px;
  width: 50%;
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
  background-color: #000;
  border-radius: 10px;
}

.top-link-item img {
  width: 90px;
  height: 90px;
}

.top-link-item a {
  color: #fff;
  font-size: 19px;
  font-weight: bold;
}

.top-link-item::after {
  content: "";
  width: 13px;
  height: 13px;
  border: 0;
  border-top: solid 2px #aa6329;
  border-right: solid 2px #aa6329;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 6%;
  bottom: 0;
  margin: auto;
}

.l-topFaq__cont {
  padding-bottom: 4rem;
}

.l-topColumn {
  padding-top: 8.5rem;
}

.l-topColumn__cont {
  padding-bottom: 4.5rem;
}

.top-achievement-ttl {
  padding: 15px 0;
  width: 100%;
  background-color: #296080;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}

.top-achievement-list {
  margin: 45px auto;
  max-width: 100rem;
  display: flex;
  gap: 50px;
}

.top-achievement-item {
  width: 210px;
}

.top-achievement-item img {
  margin-bottom: 15px;
}

.top-achievement-item-brand {
  font-size: 16px;
}

.top-achievement-item-name {
  font-size: 16px;
}

.top-achievement-item-price {
  font-size: 19px;
  font-weight: bold;
}

@media screen and (max-width: 750px) {
  .top-strengths {
    padding: 35px 0 40px;
  }

  .top-strengths-ttl {
    margin-bottom: 15px;
    justify-content: flex-start;
  }

  .top-strengths-ttl-en {
    height: 6.7rem;
  }

  .top-strengths-ttl-ja {
    font-size: 2.4rem;
  }

  .top-strengths-hdg {
    margin: 0;
    width: 100%;
  }

  .top-strengths-item {
    padding: 15px 0;
    flex-direction: column;
  }

  .top-strengths-item:nth-of-type(2n) {
    flex-direction: column;
  }

  .top-strengths-img {
    margin-bottom: 10px;
    width: 100%;
  }

  .top-strengths-list {
    width: 100%;
  }

  .top-strengths-list h3 {
    margin-bottom: 0;
    font-size: 4rem;
    display: flex;
    align-items: center;
  }

  .top-strengths-list h3 img {
    width: 25px;
  }

  .top-strengths-list-item {
    margin-bottom: 10px;
    height: 55px;
  }

  .top-strengths-list-item p {
    font-size: 2.6rem;
  }

  .p-topTitle__en {
    height: 7rem;
  }

  .p-topTitle__en.top-ownersVoiceTtl {
    height: 4.3rem;
  }

  .p-topTitle__ja {
    font-size: 2.7rem;
  }

  .movie-franchise {
    margin-bottom: 20px;
  }

  .movie-franchise h3 {
    font-size: 3rem;
  }

  .l-topMovie {
    position: relative;
    padding: 15px 0 35px;
  }

  .movie-media {
    margin-bottom: 20px;
  }

  .movie-media h3 {
    font-size: 3rem;
  }

  .top-movie-list {
    text-align: center;
  }

  .swiper-btn img {
    width: 25%;
  }

  .p-topAboutMedia__text {
    padding-left: 0;
    margin-top: 0;
    order: 3;
    font-size: 2.7rem;
    width: 100%;
    font-weight: 400;
    line-height: 1.4;
  }

  .top-support-img {
    padding-top: 20px;
  }

  .top-link {
    margin: 35px 25px 0;
    flex-direction: column;
    gap: 20px;
  }

  .top-link-item {
    padding: 10px 30px 10px 20px;
    width: 100%;
    gap: 10px;
  }

  .top-link-item img {
    width: 45px;
    height: 45px;
  }

  .top-link-item a {
    font-size: 2.65rem;
  }

  .l-topFaq {
    padding-top: 7.5rem;
  }

  .top-achievement {
    position: relative;
  }

  .top-achievement-ttl {
    padding: 7px 0;
    font-size: 3.2rem;
  }

  .top-ownersvoice-list {
    padding: 20px 0;
    flex-wrap: nowrap;
    gap: 0;
  }

  .top-achievement-list {
    margin: 45px auto 0;
    max-width: 70%;
    gap: 0;
  }

  .top-achievement-item-img {
    text-align: center;
  }

  .top-achievement-item-img img {
    width: 85%;
  }

  .top-ownersVoice {
    margin-bottom: 10px;
    position: relative;
  }

  .top-ownersvoice-img {
    text-align: center;
  }

  .swiper-container.top-ownersVoiceContainer {
    padding: 5px 30px;
  }
}

/*
    component
*/

.c-btn {
  text-align: center;
}

.c-btn a {
  padding: 10px 0;
  width: 380px;
  color: #000;
  font-size: 15px;
  font-weight: bold;
  background-color: #e3e1e2;
  border-bottom: 4px solid #aa6329;
}

.c-btn2 {
  margin-top: 5.7rem;
  text-align: center;
}

.c-btn2 a {
  padding: 10px 0;
  width: 78.5%;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  background-color: #000;
  border-bottom: 4px solid #aa6329;
}

.c-btn3 {
  text-align: center;
}

.c-btn3 a {
  padding: 10px 0;
  width: 23%;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  background-color: #000;
  border-bottom: 4px solid #aa6329;
}

.c-btn4 {
  text-align: center;
}

.c-btn4 a {
  padding: 10px 0;
  width: 23%;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  background-color: #000;
  border-bottom: 4px solid #aa6329;
}

.c-btn5 {
  text-align: center;
}

.c-btn5 a {
  padding: 10px 0;
  width: 30%;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  background-color: #000;
  border-bottom: 4px solid #aa6329;
}

@media screen and (max-width: 750px) {
  .c-btn a {
    padding: 7px 0;
    width: 90%;
  }

  .c-btn3 a {
    padding: 7px 0;
    width: 68%;
    font-size: 2.7rem;
  }

  .c-btn4 a {
    padding: 5px 0;
    width: 62%;
  }

  .c-btn5 a {
    padding: 5px 0;
    width: 67%;
    font-size: 2.7rem;
  }
}

/*
    Utility
*/

.pc {
  display: block;
}

.sp {
  display: none;
}

@media screen and (max-width: 750px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

/*
    swiper-button
*/
@media screen and (max-width: 750px) {
  .swiper-button-prev2 {
    position: absolute;
    top: 50%;
    bottom: auto;
    left: -6%;
    right: auto;
    z-index: 900;
  }

  .swiper-button-next2 {
    position: absolute;
    top: 50%;
    bottom: auto;
    right: -6%;
    left: auto;
    transform: translateX(78%);
    z-index: 900;
  }

  .swiper-button-prev3 {
    position: absolute;
    top: 50%;
    bottom: auto;
    left: -6%;
    right: auto;
    z-index: 900;
  }

  .swiper-button-next3 {
    position: absolute;
    top: 50%;
    bottom: auto;
    right: -6%;
    left: auto;
    transform: translateX(78%);
    z-index: 900;
  }

  .swiper-button-prev4 {
    position: absolute;
    top: 28%;
    bottom: auto;
    left: -6%;
    right: auto;
    z-index: 900;
  }

  .swiper-button-next4 {
    position: absolute;
    top: 28%;
    bottom: auto;
    right: -6%;
    left: auto;
    transform: translateX(75%);
    z-index: 900;
  }

  .swiper-button-prev5 {
    position: absolute;
    top: 40%;
    bottom: auto;
    left: 0%;
    right: auto;
    z-index: 900;
  }

  .swiper-button-next5 {
    position: absolute;
    top: 40%;
    bottom: auto;
    right: 0%;
    left: auto;
    transform: translateX(75%);
    z-index: 900;
  }

  .swiper-button-prev6 {
    position: absolute;
    top: 38%;
    bottom: auto;
    left: 0%;
    right: auto;
    z-index: 900;
  }

  .swiper-button-next6 {
    position: absolute;
    top: 38%;
    bottom: auto;
    right: 0%;
    left: auto;
    transform: translateX(78%);
    z-index: 900;
  }
}

/*
    sp header
*/
@media screen and (max-width: 750px) {
  .bg-scrolling-element-when-modal-active {
    touch-action: none;
    -webkit-overflow-scrolling: none;
    overflow: hidden;
    overscroll-behavior: none;
  }

  .l-header__menu {
    top: auto;
    background: #fff;
    overflow: hidden;
    overscroll-behavior-y: contain;
  }

  .sub-menu {
    display: block;
  }

  .p-headerMenu > li > .sub-menu > li:first-child {
    display: none;
  }

  .p-headerMenu > li > .sub-menu > li:nth-child(2) {
    border-top: 1px solid #808080;
    border-bottom: 1px solid #808080;
  }

  .p-headerMenu > li > .sub-menu > li:not(:last-child) {
    border-bottom: 1px solid #808080;
  }

  .p-headerMenu > li > .sub-menu > li > a {
    padding-left: 20px;
    position: relative;
    font-family: "Noto Sans JP", sans-serif;
    color: #000;
    line-height: 10rem;
    font-size: 3.3rem;
    width: 100%;
  }

  .p-headerMenu > li > .sub-menu > li > a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.4rem;
    transform: translateY(-50%);
    width: 1.8rem;
    height: 3.2rem;
    background-image: url(../../assets/images//common/ico-arrow-header.png);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
  }

  .p-headerLinks__item:nth-of-type(1),
  .p-headerLinks__item:nth-of-type(2) {
    width: 50%;
    height: 12rem;
  }

  .p-headerLinks__bottom {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .p-headerTel2 {
    display: block;
  }

  .p-headerLinks__item:last-child {
    padding: 10px 0;
    width: 100%;
    height: 14rem;
    text-align: center;
  }

  .p-headerTel2__ico {
    margin-right: 1.2em;
    margin-top: 0.4em;
    width: 5.4rem;
  }

  .p-headerTel2__num {
    margin-right: 0;
    font-size: 6.8rem;
    line-height: 0;
  }

  .p-headerTel2__text {
    font-size: 2.4rem;
    display: block;
  }
}

/* 
sp footer
*/

@media screen and (max-width: 750px) {
  .p-footerCta__item:nth-of-type(1) {
    width: 50%;
    height: 12rem;
  }

  .p-footerCta__item:nth-of-type(2) {
    width: 50%;
    height: 12rem;
  }

  .p-footerCta__item:nth-of-type(3) {
    padding: 10px 0;
    width: 100%;
    height: 14rem;
    background-color: #000;
    text-align: center;
  }

  .u-width45 {
    width: 4.5rem;
  }

  .u-fz28 {
    font-size: 2.8rem;
    letter-spacing: 0.2rem;
  }

  .p-footerTel2__num {
    margin-right: 0;
    font-size: 5.7rem;
    line-height: 0;
  }

  .p-footerCta__bottom {
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .p-footerTel2__ico {
    margin-right: 1.2em;
    margin-top: 0.3em;
    width: 5.4rem;
  }

  .p-footerTel2__text {
    font-size: 2.2rem;
    display: block;
  }

  .c-btnIco__ico {
    margin-right: 2rem;
  }

  .l-footer__nav {
    padding: 5rem 0 13rem;
  }
}

/*
faq
*/

@media screen and (max-width: 750px) {
  .faqTtl {
    border: none;
  }
}

/*==========================
テキスト調整
===========================*/

.strengths-text {
  margin-top: 3rem;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
}

@media screen and (max-width: 750px) {
  .strengths-text {
    font-size: 3rem;
  }
}

/* ==================================================
  開業前研修表の調整
================================================== */
.p-supportPeriod__table__date > span::before,
.p-supportPeriod__table__date > span::after {
  content: none !important;
  display: none !important;
}

.pc .p-supportPeriod__table__date {
  display: grid !important;
  grid-template-columns: repeat(14, minmax(0, 1fr));
  border-left: 1px solid #808080;
  border-right: 1px solid #808080;
}

.pc .p-supportPeriod__table__date > span {
  width: auto !important;
  min-width: 0;
  flex: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 8.6rem;
  background-color: #d3d3d3;
  border-right: 1px solid #b5b5b5;
  box-sizing: border-box;
}

.pc .p-supportPeriod__table__date > span:nth-child(2n) {
  background-color: #e3e1e2;
}

.pc .p-supportPeriod__table__date > span:last-child {
  border-right: none;
}

.pc .p-supportPeriod__table__date > span.is-off {
  background-color: #f5f5f5;
}

.pc .p-supportPeriod__table__date > span > span {
  font-size: 1.5rem;
  white-space: nowrap;
  text-align: center;
  right:;
}

.pc .p-supportPeriod__table__date > span.is-off > span {
  color: #585a60;
  font-size: 1.2rem;
  line-height: 1.3;
}

.pc .p-supportPeriod__table > .p-supportPeriod__table__foot {
  display: grid !important;
  grid-template-columns: repeat(14, minmax(0, 1fr));
  border-left: 1px solid #808080;
  border-right: 1px solid #808080;
  border-bottom: 1px solid #808080;
}

.pc .p-supportPeriod__table > .p-supportPeriod__table__foot > span {
  width: auto !important;
  min-width: 0;
  height: 8.2rem;
  flex: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #808080;
  box-sizing: border-box;
}

.pc
  .p-supportPeriod__table
  > .p-supportPeriod__table__foot
  > span:nth-child(1) {
  grid-column: 1 / 2;
}

.pc
  .p-supportPeriod__table
  > .p-supportPeriod__table__foot
  > span:nth-child(2) {
  grid-column: 2 / 10;
}

.pc
  .p-supportPeriod__table
  > .p-supportPeriod__table__foot
  > span:nth-child(3) {
  grid-column: 10 / 11;
}

.pc
  .p-supportPeriod__table
  > .p-supportPeriod__table__foot
  > span:nth-child(4) {
  grid-column: 11 / 15;
  border-right: none;
}

.pc .p-supportPeriod__table > .p-supportPeriod__table__foot span p {
  background-color: #296080;
  color: #fff;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  line-height: 36px;
  text-align: center;
  font-size: 2.2rem;
}

.pc > .p-supportPeriod__table + .p-supportPeriod__table__foot {
  margin-top: 25px;
  display: grid !important;
  grid-template-columns: repeat(14, minmax(0, 1fr));
  width: 100%;
}

.pc > .p-supportPeriod__table + .p-supportPeriod__table__foot > span {
  width: auto !important;
  min-width: 0;
  flex: none !important;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  text-align: center;
  color: #88272d;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.4;
  padding: 0 6px;
  box-sizing: border-box;
}

.pc
  > .p-supportPeriod__table
  + .p-supportPeriod__table__foot
  > span:nth-child(1) {
  grid-column: 1 / 2;
}

.pc
  > .p-supportPeriod__table
  + .p-supportPeriod__table__foot
  > span:nth-child(2) {
  grid-column: 2 / 10;
}

.pc
  > .p-supportPeriod__table
  + .p-supportPeriod__table__foot
  > span:nth-child(3) {
  grid-column: 10 / 11;
}

.pc
  > .p-supportPeriod__table
  + .p-supportPeriod__table__foot
  > span:nth-child(4) {
  grid-column: 12 / 15;
}

@media screen and (max-width: 750px) {
  .sp .p-supportPeriod__table__date {
    display: grid !important;
    grid-template-rows: repeat(14, minmax(0, 1fr));
  }

  .sp .p-supportPeriod__table__date > span {
    width: 100% !important;
    height: auto !important;
    min-height: 0;
    flex: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #d3d3d3;
    border-bottom: 1px solid #b5b5b5;
    box-sizing: border-box;
  }

  .sp .p-supportPeriod__table__date > span:nth-child(2n) {
    background-color: #e3e1e2;
  }

  .sp .p-supportPeriod__table__date > span.is-off {
    background-color: #f5f5f5;
  }

  .sp .p-supportPeriod__table__date > span > span {
    white-space: nowrap;
  }

  .sp .p-supportPeriod__table__date > span.is-off > span {
    color: #585a60;
    font-size: 1.6rem;
    line-height: 1.3;
  }

  .sp .p-supportPeriod__table__foot {
    display: grid !important;
    grid-template-rows: repeat(14, minmax(0, 1fr));
  }

  .sp .p-supportPeriod__table__foot > span {
    width: 100% !important;
    height: auto !important;
    min-height: 0;
    flex: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #9a272d;
    font-size: 1.4rem;
    line-height: 1.35;
    padding: 0 6px;
    box-sizing: border-box;
    border-bottom: 1px solid #b5b5b5;
  }

  .sp .p-supportPeriod__table__foot > span:nth-child(1) {
    grid-row: 1 / 2;
  }

  .sp .p-supportPeriod__table__foot > span:nth-child(2) {
    grid-row: 2 / 10;
  }

  .sp .p-supportPeriod__table__foot > span:nth-child(3) {
    grid-row: 10 / 11;
  }

  .sp .p-supportPeriod__table__foot > span:nth-child(4) {
    grid-row: 12 / 15;
  }
}

@media screen and (max-width: 750px) {
  .sp .p-supportPeriod__table {
    height: 88rem !important;
  }

  .sp .p-supportPeriod__table__head {
    width: 7.8rem !important;
    height: 88rem !important;
    line-height: 7.8rem !important;
  }

  .sp .p-supportPeriod__table__date {
    width: 9.8rem !important;
  }

  .sp .p-supportPeriod__table__date > span {
    font-size: 2.2rem !important;
  }

  .sp .p-supportPeriod__table__date > span.is-off > span {
    font-size: 1.45rem !important;
  }

  .sp .p-supportPeriod__table__foot {
    width: calc(100% - 7.8rem - 9.8rem) !important;
  }

  .sp .p-supportPeriod__table__foot span {
    font-size: 2.1rem !important;
    line-height: 1.45 !important;
    padding: 0 0.8rem !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
  }

  .sp .p-supportPeriod__table__foot span:nth-of-type(1) {
    font-size: 1.9rem !important;
  }

  .sp .p-supportPeriod__table__foot span:nth-of-type(2) {
    font-size: 2rem !important;
    line-height: 1.5 !important;
  }

  .sp .p-supportPeriod__table__foot span:nth-of-type(3),
  .sp .p-supportPeriod__table__foot span:nth-of-type(4) {
    font-size: 2.05rem !important;
  }
}

/* ==================================================
  業界未経験企業にも対応したパッケージ：画像差し替え
================================================== */
.royaltyImgList {
  margin-top: 30px;
  display: flex;
  gap: 30px;
}

.royaltyImgList__item {
  width: 100%;
}

.royaltyImgList__item img {
  display: block;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 750px) {
  .royaltyImgList {
    margin-top: 20px;
    flex-direction: column;
    gap: 20px;
  }
}

.p-flowAnchor {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 65px;
  row-gap: 0;
  margin-bottom: 50px;
}

/* header adjust */
@media screen and (min-width: 751px) {
  body {
    padding-top: 20.5rem !important;
  }

  .l-header {
    padding-top: 0 !important;
  }
}

/* 研修期間テーブル：日付テキスト中央寄せ */
.p-supportPeriod__table__date > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

.p-supportPeriod__table__date > span span {
  transform: none !important;
  display: inline-block !important;
  text-align: center !important;
}

/* ==================================================
  選ばれる理由ロイヤリティ小見出し
================================================== */

.royaltyTtl {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 45px 0 28px;
  color: #222;
  font-size: clamp(24px, 2.5vw, 34px);
  font-weight: 700;
  text-align: center;
}

.royaltyTtl::before,
.royaltyTtl::after {
  content: "";
  width: 60px;
  height: 2px;
  background: #a6232d;
}

.royaltyTtl__em {
  color: #a6232d;
}

.royaltyTtl__label {
  display: inline-block;
  padding: 6px 16px;
  border: 1px solid #a6232d;
  border-radius: 999px;
  color: #a6232d;
  background: #fff;
  font-size: 15px;
  white-space: nowrap;
}

@media screen and (max-width: 750px) {
  .royaltyTtl {
    display: block;
    margin: 32px 0 20px;
    font-size: 22px;
  }

  .royaltyTtl::before,
  .royaltyTtl::after {
    display: none;
  }

  .royaltyTtl__main {
    display: block;
  }

  .royaltyTtl__label {
    margin-top: 10px;
    font-size: 13px;
  }
}
