/*====================================================================================
1. START COMMON ONLY CHILD PAGE.
====================================================================================*/
/*---------- START BREADCRUMB ----------*/
.c-breadcrumb {
  margin-bottom: 12rem;
  margin-top: -6.3rem;
}
.c-breadcrumb ul {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
}
.c-breadcrumb ul li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 1.9rem;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #8a8a8a;
  margin-right: 0.7rem;
}
.c-breadcrumb ul li:after {
  position: absolute;
  content: "";
  top: 2px;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 1rem;
  height: 0.1rem;
  display: inline-block;
  background: #d9d9d9;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.c-breadcrumb ul li:last-child {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  -webkit-box-orient: vertical;
  padding-right: 0;
}
.c-breadcrumb ul li:last-child:after {
  content: none;
}
.c-breadcrumb ul li:nth-child(2) {
  white-space: nowrap;
}
.c-breadcrumb ul li a {
  line-height: 1.2;
  color: #8a8a8a;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .c-breadcrumb {
    display: none;
  }
}

.main_mv {
  background: #000 url(../common_img/img_main.png) no-repeat right center;
  background-size: auto 100%;
}
@media only screen and (min-width: 768px) {
  .main_mv {
    height: 44rem;
    padding-top: 12.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .main_mv {
    height: 12rem;
    padding-top: 2.5rem;
    margin-bottom: 4rem;
  }
}
.main_mv .title {
  margin: 0;
}
.main_mv .title .en {
  font-family: var(--font-Noto_serif);
  letter-spacing: 0.5rem;
  line-height: 1.3333333333;
  font-weight: 400;
  display: block;
  text-transform: uppercase;
}
@media only screen and (min-width: 768px) {
  .main_mv .title .en {
    font-size: 9rem;
  }
}
@media only screen and (max-width: 767px) {
  .main_mv .title .en {
    font-size: 3rem;
  }
}
.main_mv .title .en:first-letter {
  color: var(--co-accent_color);
  font-weight: 500;
}
.main_mv .title .jp {
  font-family: var(--font-Noto_serif);
  letter-spacing: 0.5rem;
  font-weight: 500;
  display: block;
}
@media only screen and (min-width: 768px) {
  .main_mv .title .jp {
    font-size: 2.4rem;
    margin: 0.4rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .main_mv .title .jp {
    font-size: 1.6rem;
  }
}

@media only screen and (min-width: 768px) {
  .p-news .s-news {
    padding-bottom: 13rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .s-news {
    padding-bottom: 4rem;
  }
}
.p-news .s-news .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-news .s-news .item {
    gap: 6rem;
    margin-bottom: 6rem;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .s-news .item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
    margin-bottom: 3rem;
  }
  .p-news .s-news .item:last-child {
    margin-bottom: 0;
  }
}
.p-news .s-news .item:last-child {
  margin-bottom: 0;
}
.p-news .s-news .item img {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (min-width: 768px) {
  .p-news .s-news .item img {
    width: 40rem;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.p-news .s-news .item .ct {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .p-news .s-news .item .ct {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.p-news .s-news .item .title {
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  .p-news .s-news .item .title {
    font-size: 2.4rem;
    line-height: 2;
    margin: -0.3rem 0 2.9rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .s-news .item .title {
    font-size: 1.8rem;
    margin: 0 0 2rem;
  }
}
.p-news .s-news .item .title span {
  display: block;
  color: #8a8a8a;
}
@media only screen and (min-width: 768px) {
  .p-news .s-news .item .title span {
    font-size: 1.6rem;
    margin-bottom: -0.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .s-news .item .title span {
    font-size: 1.4rem;
  }
}
.p-news .s-news .item p {
  margin: 0;
  letter-spacing: 0;
}
.p-news .list_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (min-width: 768px) {
  .p-news .list_btn {
    margin-top: 10rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .list_btn {
    margin-top: 5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-news .list_btn a {
    width: 35rem;
    height: 8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .list_btn a {
    width: 15rem;
  }
}
.p-news .list_btn .prev .icon {
  right: auto;
  -webkit-transform: translateY(-50%) rotate(180deg) scaleY(-1);
          transform: translateY(-50%) rotate(180deg) scaleY(-1);
}
@media only screen and (min-width: 768px) {
  .p-news .list_btn .prev .icon {
    left: 3rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-news .list_btn .prev .icon {
    left: 0.5rem;
  }
}

.p-company .s-company01 .cm-title02 {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company01 .cm-title02 {
    margin: 0 0 5rem;
  }
}
.p-company .s-company01 table {
  border-top: 0.1rem solid #fff;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .p-company .s-company01 table {
    display: block;
  }
  .p-company .s-company01 table tbody {
    display: block;
    width: 100%;
  }
}
.p-company .s-company01 table tr {
  border-bottom: 0.1rem solid #fff;
}
@media only screen and (max-width: 767px) {
  .p-company .s-company01 table tr {
    display: block;
    width: 100%;
    padding: 1rem 0;
  }
}
.p-company .s-company01 table tr th {
  color: #8a8a8a;
  font-weight: 700;
  vertical-align: top;
  text-align: left;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company01 table tr th {
    padding: 3.2rem 1rem;
    width: 16rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company01 table tr th {
    display: block;
    width: 100%;
  }
}
.p-company .s-company01 table tr td {
  font-weight: 500;
  vertical-align: top;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company01 table tr td {
    padding: 3.2rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company01 table tr td {
    display: block;
    width: 100%;
  }
}
.p-company .s-company01 table tr td a {
  color: #fff;
}
.p-company .s-company01 table tr td .map {
  width: 100%;
  margin-top: 1.4rem;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company01 table tr td .map {
    height: 37rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company01 table tr td .map {
    height: 20rem;
  }
}
.p-company .s-company01 table tr td .map iframe {
  width: 100%;
  height: 100%;
  display: block;
}
.p-company .s-company02 {
  background: #1b1b1b;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 {
    padding: 11.7rem 0 12.4rem;
    margin-top: 13.1rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 {
    margin-top: 4rem;
    padding: 4rem 0;
  }
}
.p-company .s-company02 .cm-title03 {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .cm-title03 {
    margin: 0 0 3.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .cm-title03 {
    margin: 0 0 2rem;
  }
}
.p-company .s-company02 .list {
  position: relative;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 6rem;
  }
}
.p-company .s-company02 .list:before {
  content: "";
  background: #b9a665;
  position: absolute;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list:before {
    left: 0;
    top: 9.6rem;
    width: 100%;
    height: 0.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list:before {
    width: 0.2rem;
    height: 100%;
    left: 10.4rem;
    top: 0;
  }
}
.p-company .s-company02 .list:after {
  content: "";
  background: url(../company/images/car.png) no-repeat center center;
  background-size: 100% auto;
  width: 6.3rem;
  height: 6.3rem;
  top: 4.7rem;
  right: 0.3rem;
  position: absolute;
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list:after {
    content: none;
  }
}
.p-company .s-company02 .list dl {
  margin: 0;
  text-align: center;
  position: relative;
  z-index: 9;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list dl {
    width: 16.6666666667%;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list dl {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 2rem;
  }
  .p-company .s-company02 .list dl:last-child {
    margin-bottom: 0;
  }
}
.p-company .s-company02 .list dl dt {
  font-family: var(--font-Noto_serif);
  font-weight: 700;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list dl dt {
    font-size: 2.4rem;
    padding-bottom: 7.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list dl dt {
    font-size: 1.8rem;
    width: 12rem;
    text-align: left;
  }
}
.p-company .s-company02 .list dl dt:before {
  content: "";
  background: #fff;
  position: absolute;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list dl dt:before {
    width: 0.1rem;
    height: 3.5rem;
    bottom: 3.6rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list dl dt:before {
    width: 2rem;
    height: 0.1rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 2rem;
  }
}
.p-company .s-company02 .list dl dt:after {
  content: "";
  border: 0.2rem solid #b9a665;
  border-radius: 50%;
  position: absolute;
  background: #000;
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list dl dt:after {
    width: 1.4rem;
    height: 1.4rem;
    bottom: 1.7rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list dl dt:after {
    width: 1rem;
    height: 1rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 .list dl dt span {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list dl dt span {
    font-size: 1.6rem;
  }
}
.p-company .s-company02 .list dl dd {
  padding: 0;
  margin: 0;
  line-height: 2;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 .list dl dd {
    padding-left: 1rem;
  }
  .p-company .s-company02 .list dl dd br {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .p-company .s-company02 p {
    margin: 6.2rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-company .s-company02 p {
    margin: 2rem 0 0;
  }
}

@media only screen and (min-width: 768px) {
  .p-contact .s-contact01_in {
    border: 0.3rem solid #b9a665;
    padding: 1.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contact01_in {
    border: 0.2rem solid #b9a665;
    padding: 0.5rem;
  }
}
.p-contact .s-contact01_in .inner {
  border: 0.1rem solid #b9a665;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contact01_in .inner {
    padding: 4.7rem 0 5.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contact01_in .inner {
    padding: 2rem 1rem;
  }
}
.p-contact .s-contact01_in a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #b9a665;
  font-weight: 700;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contact01_in a {
    font-size: 3.2rem;
    margin: 2.8rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contact01_in a {
    font-size: 2.2rem;
    margin: 1.5rem 0 0;
  }
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contact01_in a img {
    width: 3.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contact01_in a img {
    width: 2.6rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contact01_in p {
    margin: 10px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contact01_in p {
    margin: 0;
    letter-spacing: 0;
    font-size: 1.3rem;
  }
}
.p-contact .s-contatc02 a {
  text-decoration: underline;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 {
    margin-top: 11.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 {
    margin-top: 4rem;
  }
}
.p-contact .s-contatc02 .cm-title03 {
  text-align: center;
}
.p-contact .s-contatc02 .text {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 .text {
    margin: 3.9rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 .text {
    margin: 2rem 0 0;
  }
}
.p-contact .s-contatc02 table {
  width: 100%;
  max-width: 99rem;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table {
    margin: 5.1rem auto 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 table {
    margin: 2rem 0 0;
    display: block;
    width: 100%;
  }
  .p-contact .s-contatc02 table tbody {
    width: 100%;
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 table tr {
    width: 100%;
    display: block;
  }
}
.p-contact .s-contatc02 table th {
  font-weight: 500;
  text-align: left;
  vertical-align: top;
  padding-top: 1rem;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table th {
    width: 26.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 table th {
    width: 100%;
    display: block;
  }
}
.p-contact .s-contatc02 table th span {
  margin-left: 2.6rem;
  padding: 0.3rem 0.9rem;
}
.p-contact .s-contatc02 table th span.hissu {
  background: var(--co-accent_color);
}
.p-contact .s-contatc02 table th span.ninni {
  background: #999999;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table td {
    padding-bottom: 3.7rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 table td {
    padding: 1.5rem 0;
    width: 100%;
    display: block;
  }
}
.p-contact .s-contatc02 table td input {
  border: 1px solid #fff;
  padding: 0.8rem 2rem;
  width: 100%;
  font-size: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table td .mb {
    margin-top: 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 table td .mb {
    margin-top: 1rem;
  }
}
.p-contact .s-contatc02 table td .zip {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
}
.p-contact .s-contatc02 table td .zip input {
  width: 22.6rem;
}
.p-contact .s-contatc02 table td .prefecture {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.2rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table td .prefecture {
    height: 5rem;
  }
}
.p-contact .s-contatc02 table td .prefecture select {
  border: 1px solid #fff;
  padding: 0.8rem 2rem;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table td .prefecture select {
    width: 39.6rem;
    height: 5rem;
  }
}
.p-contact .s-contatc02 table .checkbox-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc02 table .checkbox-list {
    gap: 4rem;
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc02 table .checkbox-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1rem 2rem;
    margin-bottom: 0.5rem;
  }
}
.p-contact .s-contatc02 table .checkbox-list:last-child {
  margin-bottom: 0;
}
.p-contact .s-contatc02 table .checkbox-list label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.7rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-contact .s-contatc02 table .checkbox-list label input {
  width: 1.8rem;
  height: 1.8rem;
  border: 1px solid #fff;
  background: #000;
}
.p-contact .s-contatc02 table .date-input {
  width: 100%;
  max-width: 43.8rem;
  height: 5rem;
  position: relative;
}
.p-contact .s-contatc02 table .date-input .calendar-icon {
  position: absolute;
  right: 0;
  top: 13px;
  right: 1.8rem;
  width: 2.4rem;
}
.p-contact .s-contatc02 table textarea {
  width: 100%;
  border: 1px solid #fff;
  padding: 0.8rem 2rem;
  height: 15.3rem;
}
@media only screen and (min-width: 768px) {
  .p-contact #formEnd {
    margin-top: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact #formEnd {
    margin-top: 1.5rem;
  }
}
.p-contact #formEnd p {
  margin: 0;
}
.p-contact .contact-group-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 768px) {
  .p-contact .contact-group-btn {
    margin-top: 4.2rem;
    gap: 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .contact-group-btn {
    margin-top: 2rem;
    gap: 1rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.p-contact .contact-group-btn input {
  width: 100%;
  height: 100%;
  border: none;
}
.p-contact .contact-group-btn .disabled .cm-btn01:hover {
  background: var(--co-accent_color);
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc03 {
    margin-top: 11.6rem;
    padding-bottom: 13rem;
  }
  .p-contact .s-contatc03 .cm-title03 {
    text-align: center;
    margin-bottom: 4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc03 {
    margin-top: 5rem;
    padding-bottom: 5rem;
  }
}
.p-contact .s-contatc03 h3 {
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc03 h3 {
    font-size: 2rem;
    margin: 3.9rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc03 h3 {
    font-size: 1.6rem;
    margin: 2rem 0 0;
  }
}
.p-contact .s-contatc03 p {
  margin: 0;
}
.p-contact .s-contatc03 ul {
  padding: 0;
}
@media only screen and (min-width: 768px) {
  .p-contact .s-contatc03 ul {
    margin: 3.2rem 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-contact .s-contatc03 ul {
    margin: 2rem 1rem;
  }
}
.p-contact .s-contatc03 ul li {
  list-style-type: none;
  padding-left: 1.4rem;
  position: relative;
}
.p-contact .s-contatc03 ul li:before {
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 1.6rem;
}

.p-price .s-price01 {
  text-align: center;
}
.p-price .s-price01 p {
  margin: 0;
}
.p-price .s-price01_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price01_list {
    gap: 3rem;
    margin-top: 5.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price01_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 2rem;
    gap: 2rem;
  }
}
.p-price .s-price01_list .item {
  border: 0.2rem solid #b9a665;
  text-align: center;
  text-decoration: none;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price01_list .item {
    width: calc(16.6666666667% - 2.5rem);
    padding: 0.7rem 0 2.5rem;
  }
  .p-price .s-price01_list .item:hover {
    background: #b9a665;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price01_list .item {
    width: calc(50% - 1rem);
    padding: 0 0 2rem;
  }
}
.p-price .s-price01_list .item p {
  margin: 0.1rem 0 0;
  font-weight: 700;
  letter-spacing: 0.05em;
}
.p-price .s-price_title {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price_title .en {
    font-size: 6.4rem;
    font-weight: 300;
  }
}
.p-price .s-price_title .en span {
  color: #b9a665;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02 {
    margin-top: 10.7rem;
  }
  .p-price .s-price02 .cm-title02 {
    margin: 3.7rem 0 3.9rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02 {
    margin-top: 4rem;
  }
  .p-price .s-price02 .cm-title02 {
    text-align: left;
  }
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list {
    margin-top: 4.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list {
    margin-top: 3rem;
  }
}
.p-price .s-price02-list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item {
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 2rem;
  }
}
.p-price .s-price02-list .item .it01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(0.86%, rgba(129, 129, 129, 0)), to(#1b1b1b));
  background: linear-gradient(90deg, rgba(129, 129, 129, 0) 0.86%, #1b1b1b 100%);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1rem 0;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it01 {
    width: 48rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it01 {
    width: 100%;
  }
}
.p-price .s-price02-list .item .it01 dt {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it01 dt {
    width: 14.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it01 dt {
    width: 12rem;
  }
}
.p-price .s-price02-list .item .it01 dt img {
  width: auto;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it01 dt img {
    height: 6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it01 dt img {
    height: 4.5rem;
  }
}
.p-price .s-price02-list .item .it01 dd {
  margin: 0;
  padding: 0;
}
.p-price .s-price02-list .item .it01 dd h4 {
  font-weight: 500;
  margin: 0;
  font-family: var(--font-Noto_serif);
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it01 dd h4 {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it01 dd h4 {
    font-size: 1.6rem;
  }
}
.p-price .s-price02-list .item .it01 dd p {
  margin: 0;
}
.p-price .s-price02-list .item .it02 {
  background: #1b1b1b;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it02 {
    width: 23rem;
    padding-top: 0.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it02 {
    width: calc(33.3333333333% - 0.6666666667rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.p-price .s-price02-list .item .it02 p {
  margin: 0;
  font-family: var(--font-Noto_serif);
}
.p-price .s-price02-list .item .it02 p.txt {
  font-weight: 500;
  margin-bottom: -0.3rem;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it02 p.txt {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it02 p.txt {
    font-size: 1.4rem;
  }
}
.p-price .s-price02-list .item .it02 p.price {
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02-list .item .it02 p.price {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02-list .item .it02 p.price {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02 .block02 {
    margin-top: 8.7rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02 .block02 {
    margin-top: 3rem;
  }
}
.p-price .s-price02 table {
  width: 100%;
  border-top: 0.1rem solid #b9a665;
  font-family: var(--font-Noto_serif);
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02 table {
    margin-top: 3.9rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02 table {
    margin-top: 2rem;
  }
}
.p-price .s-price02 table tr {
  border-bottom: 0.1rem solid #b9a665;
}
.p-price .s-price02 table th {
  text-align: center;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02 table th {
    font-size: 1.8rem;
    padding: 3rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02 table th {
    padding: 1rem 0;
  }
}
.p-price .s-price02 table td {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-price .s-price02 table td {
    font-size: 1.8rem;
    padding: 3rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02 table td {
    padding: 1rem 0;
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price02 .js-scrollable {
    overflow-x: auto;
  }
  .p-price .s-price02 .js-scrollable table {
    width: 800px;
  }
}
@media only screen and (min-width: 768px) {
  .p-price .s-price03 {
    padding-bottom: 13.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-price .s-price03 {
    padding-bottom: 5rem;
  }
}

.p-strength .s-strength01 {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength01 .cm-title02 {
    margin: 0 0 3.9rem;
  }
}
.p-strength .s-strength01 p {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 {
    margin-top: 11.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 {
    margin-top: 3rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02_block {
    margin-bottom: 11.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02_block {
    margin-bottom: 4rem;
  }
}
.p-strength .s-strength02_block:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1 {
    height: 62.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1 {
    padding-top: 15rem;
    background: none !important;
    position: relative;
  }
  .p-strength .s-strength02 .block1:before {
    width: 100%;
    height: 15rem;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
  }
}
.p-strength .s-strength02 .block1:after {
  content: "";
  clear: both;
  display: block;
}
.p-strength .s-strength02 .block1_ct {
  height: 100%;
  background: rgba(27, 27, 27, 0.9);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_ct {
    width: 50%;
    padding: 0 8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1_ct {
    width: 100%;
    padding: 2rem 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_ct .inner {
    width: 52rem;
  }
}
.p-strength .s-strength02 .block1_ct .strength {
  font-family: var(--font-Noto_serif);
  font-weight: 300;
  display: block;
  text-transform: uppercase;
  line-height: 1;
}
.p-strength .s-strength02 .block1_ct .strength:first-letter {
  color: var(--co-accent_color);
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_ct .strength {
    font-size: 6.4rem;
    letter-spacing: 0.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1_ct .strength {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_ct .cm-title02 {
    margin: 6.6rem 0 2.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1_ct .cm-title02 {
    margin: 1rem 0 1rem;
    text-align: left;
  }
}
.p-strength .s-strength02 .block1_ct p {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_bg1 {
    background: url(../strength/images/bg1.png) no-repeat center center;
    background-size: cover;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1_bg1:before {
    background: url(../strength/images/bg1.png) no-repeat center center;
    background-size: cover;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_bg2 {
    background: url(../strength/images/bg2.png) no-repeat center center;
    background-size: cover;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1_bg2:before {
    background: url(../strength/images/bg2.png) no-repeat center center;
    background-size: cover;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_bg3 {
    background: url(../strength/images/bg3.png) no-repeat center center;
    background-size: cover;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block1_bg3:before {
    background: url(../strength/images/bg3.png) no-repeat center center;
    background-size: cover;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block1_r .block1_ct {
    float: right;
  }
  .p-strength .s-strength02 .block1_l .block1_ct {
    float: left;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 {
    margin-top: 6.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 {
    margin-top: 3rem;
  }
}
.p-strength .s-strength02 .block2 .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 .item {
    margin: 0 0 4.9rem;
    padding: 0 11rem 0 11.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 .item {
    margin: 0 0 2rem;
    padding: 0;
  }
}
.p-strength .s-strength02 .block2 .item:last-child {
  margin-bottom: 0;
}
.p-strength .s-strength02 .block2 .item dt {
  margin: 0;
  padding: 0;
  font-family: var(--font-Noto_serif);
  text-align: center;
  font-weight: 300;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 .item dt {
    font-size: 2rem;
    width: 9rem;
    letter-spacing: 0.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 .item dt {
    font-size: 1.4rem;
    width: 5rem;
  }
}
.p-strength .s-strength02 .block2 .item dt span {
  display: block;
  line-height: 1;
  letter-spacing: 0;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 .item dt span {
    font-size: 8rem;
    margin-top: -1.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 .item dt span {
    font-size: 4rem;
  }
}
.p-strength .s-strength02 .block2 .item dd {
  margin: 0;
  width: 100%;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 .item dd {
    padding: 0.5rem 0 0 15.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 .item dd {
    padding: 0 0 0 4rem;
  }
}
.p-strength .s-strength02 .block2 .item dd:before {
  content: "";
  height: 0.1rem;
  background: #fff;
  position: absolute;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 .item dd:before {
    width: 5.7rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: 4.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 .item dd:before {
    width: 2rem;
    top: 1.3rem;
    left: 1rem;
  }
}
.p-strength .s-strength02 .block2 .item dd .ttl {
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength02 .block2 .item dd .ttl {
    font-size: 2.4rem;
    margin: 0 0 1.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength02 .block2 .item dd .ttl {
    font-size: 1.6rem;
    margin: 0 0 1rem;
  }
}
.p-strength .s-strength02 .block2 .item dd p {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 {
    margin-top: 11.7rem;
    padding-bottom: 12.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 {
    margin-top: 3rem;
    padding-bottom: 5rem;
  }
}
.p-strength .s-strength03 .img_bg {
  width: 100%;
  display: block;
}
.p-strength .s-strength03 .cm-title02 {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 .cm-title02 {
    margin: 7.1rem auto 5rem;
  }
}
.p-strength .s-strength03 table {
  width: 100%;
  border-top: 1px solid #b9a665;
  font-family: var(--font-Noto_serif);
}
.p-strength .s-strength03 table tr {
  border-bottom: 1px solid #b9a665;
}
.p-strength .s-strength03 table th {
  font-weight: 700;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 table th {
    font-size: 1.8rem;
    padding: 2.7rem 1rem 3.3rem;
  }
  .p-strength .s-strength03 table th:first-child {
    width: 40rem;
  }
  .p-strength .s-strength03 table th:last-child {
    width: 40rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 table th {
    padding: 1rem;
  }
  .p-strength .s-strength03 table th:first-child {
    width: 15rem;
  }
}
.p-strength .s-strength03 table td {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 table td {
    font-size: 1.8rem;
    padding: 3.1rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 table td {
    padding: 1rem 0;
  }
}
.p-strength .s-strength03 table .icon1 {
  height: auto;
  display: block;
  margin: auto;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 table .icon1 {
    width: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 table .icon1 {
    width: 1.5rem;
  }
}
.p-strength .s-strength03 table .icon2 {
  height: auto;
  display: block;
  margin: auto;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 table .icon2 {
    width: 2.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 table .icon2 {
    width: 1.5rem;
  }
}
.p-strength .s-strength03 table .icon3 {
  height: auto;
  display: block;
  margin: auto;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 table .icon3 {
    width: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 table .icon3 {
    width: 1.5rem;
  }
}
.p-strength .s-strength03 .txt {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-strength .s-strength03 .txt {
    margin: 5.1rem auto 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-strength .s-strength03 .txt {
    margin: 2rem auto 0;
  }
}

.p-service .s-service01 {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service01 .cm-title02 {
    margin: 0 0 4rem;
  }
}
.p-service .s-service01 p {
  margin: 0;
}
.p-service .s-service01_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service01_list {
    gap: 3rem;
    margin-top: 3.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service01_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 2rem;
    gap: 2rem;
  }
}
.p-service .s-service01_list .item {
  border: 0.2rem solid #b9a665;
  text-align: center;
  text-decoration: none;
  -webkit-transition: 0.3s all;
  transition: 0.3s all;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service01_list .item {
    width: calc(16.6666666667% - 2.5rem);
    padding: 0.7rem 0 2.5rem;
  }
  .p-service .s-service01_list .item:hover {
    background: #b9a665;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service01_list .item {
    width: calc(50% - 1rem);
    padding: 0 0 2rem;
  }
}
.p-service .s-service01_list .item p {
  margin: 0.1rem 0 0;
  font-weight: 700;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 {
    margin-top: 13.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 {
    margin-top: 5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02_mt {
    margin-top: 8.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02_mt {
    margin-top: 3rem;
  }
}
.p-service .s-service02 .block01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block01 {
    height: 43.5rem;
    padding: 10.8rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block01 {
    height: 14rem;
    padding: 3rem 0;
  }
}
.p-service .s-service02 .block01_bg1 {
  background: url(../service/images/bg01.png) no-repeat center center;
  background-size: cover;
}
.p-service .s-service02 .block01_bg2 {
  background: url(../service/images/bg02.png) no-repeat center center;
  background-size: cover;
}
.p-service .s-service02 .block01_bg3 {
  background: url(../service/images/bg03.png) no-repeat center center;
  background-size: cover;
}
.p-service .s-service02 .block01_bg4 {
  background: url(../service/images/bg04.png) no-repeat center center;
  background-size: cover;
}
.p-service .s-service02 .block01_bg5 {
  background: url(../service/images/bg05.png) no-repeat center center;
  background-size: cover;
}
.p-service .s-service02 .block01_bg6 {
  background: url(../service/images/bg6.png) no-repeat center center;
  background-size: cover;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block01_bg6 {
    padding: 7.2rem 0;
  }
  .p-service .s-service02 .block01_bg6 .title {
    height: 26.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block01_bg6 {
    padding: 1.5rem 0;
  }
}
.p-service .s-service02 .block01 .title {
  margin: 0 auto;
  text-align: center;
  background: rgba(27, 27, 27, 0.95);
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block01 .title {
    width: 46rem;
    padding-top: 5.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block01 .title {
    width: 30rem;
    padding-top: 1.2rem;
  }
}
.p-service .s-service02 .block01 .title span {
  display: block;
  font-family: var(--font-Noto_serif);
}
.p-service .s-service02 .block01 .title span.en {
  font-weight: 300;
  display: block;
  margin-bottom: 0.2rem;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block01 .title span.en {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block01 .title span.en {
    font-size: 1.6rem;
  }
}
.p-service .s-service02 .block01 .title span.en:first-letter {
  color: var(--co-accent_color);
}
.p-service .s-service02 .block01 .title span.jp {
  font-weight: 500;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block01 .title span.jp {
    font-size: 4.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block01 .title span.jp {
    font-size: 2rem;
  }
}
.p-service .s-service02 .block01 .title span.jp span {
  line-height: 1;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block01 .title span.jp span {
    font-size: 4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block01 .title span.jp span {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block02 .cm-title02 {
    margin: 0 0 3.9rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block02 .cm-title02 {
    text-align: left;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block03 .cm-title02 {
    margin: 0 0 4.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block03 .cm-title02 {
    text-align: left;
  }
}
.p-service .s-service02 .block03 .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block03 .inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 5.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block03 .inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block03 .inner img {
    width: 50rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block03 .inner img {
    width: 100%;
  }
}
.p-service .s-service02 .block03 .inner .ct {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block03 .inner .ct div {
    margin-bottom: 3.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block03 .inner .ct div {
    margin-bottom: 2rem;
  }
}
.p-service .s-service02 .block03 .inner .ct div:last-child {
  margin-bottom: 0;
}
.p-service .s-service02 .block03 .inner .ct h4 {
  margin: 0;
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block03 .inner .ct h4 {
    font-size: 2.4rem;
    margin: -0.6rem 0px 1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block03 .inner .ct h4 {
    font-size: 1.6rem;
    margin: -0.6rem 0px 1rem;
  }
}
.p-service .s-service02 .block03 .inner .ct p {
  margin: 0;
}
.p-service .s-service02 .block04 .list_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block04 .list_item {
    gap: 3.3rem;
    margin-top: 4.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block04 .list_item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block04 .list_item .item {
    width: calc(25% - 2.475rem);
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block04 .list_item .item {
    width: calc(50% - 0.5rem);
  }
}
.p-service .s-service02 .block04 .list_item .ttl {
  font-weight: 400;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block04 .list_item .ttl {
    font-size: 2.4rem;
    margin: 0 0 2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block04 .list_item .ttl {
    font-size: 1.6rem;
    margin: 0 0 1rem;
  }
}
.p-service .s-service02 .block04 .list_item .ttl span {
  font-family: var(--font-Noto_serif);
  color: var(--co-accent_color);
  display: block;
  line-height: 1;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block04 .list_item .ttl span {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block04 .list_item .ttl span {
    font-size: 1.4rem;
  }
}
.p-service .s-service02 .block04 .list_item img {
  width: 100%;
}
.p-service .s-service02 .block04 .list_item p {
  margin: 0.9rem 0 0;
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block04 .cm-title02 {
    text-align: left;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02 .block05 .cm-title02 {
    margin-bottom: 3.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02 .block05 .cm-title02 {
    text-align: left;
  }
}
@media only screen and (min-width: 768px) {
  .p-service .s-service02_last {
    padding-bottom: 12rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-service .s-service02_last {
    padding-bottom: 5rem;
  }
}