@charset "UTF-8";
/*メディアクエリ*/
.fadein {
  opacity: 0;
  transition: opacity 1s ease-in-out;
  position: relative;
}

.fadein.is-active {
  opacity: 1;
}

.fadein.fadeup {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out;
}

.fadein.fadeup.is-active {
  opacity: 1;
  transform: translateY(0);
}

.fadein {
  opacity: 0;
  transition: opacity 1s ease-in-out;
  position: relative;
}

.fadein.is-active {
  opacity: 1;
}

.fadein.fadeup {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out;
}

.fadein.fadeup.is-active {
  opacity: 1;
  transform: translateY(0);
}

.fadein-before {
  transition: opacity 1.5s ease-in-out;
  position: relative;
}

.fadein-before:before,
.fadein-before:after {
  opacity: 0;
  transition: opacity 3s ease-in-out;
}

.fadein-before:before.fadeup,
.fadein-before:after.fadeup {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out;
}

.fadein-before:before.fadeup.is-active,
.fadein-before:after.fadeup.is-active {
  opacity: 1;
  transform: translateY(0);
}

.fadein-before.is-active:before {
  opacity: 1;
}

.fadein-before.is-active:after {
  opacity: 1;
}

.fadein {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.fadein.is-active {
  opacity: 1;
}

.fadein.fadeup {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.5s ease-in-out, transform 1.5s ease-in-out;
  transition-delay: var(--delay, 0s);
}

.fadein.fadeup.is-active {
  opacity: 1;
  transform: translateY(0);
}

.indent {
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (min-width: 1025px) {
  .pc {
    display: block !important;
  }
  .smp {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  .pc {
    display: none !important;
  }
  .smp {
    display: block !important;
  }
}
/*30.診療メニュー*/
/*PC*/
@media screen and (min-width: 1025px) {
  #page30 {
    position: relative;
    width: 100%;
    padding-top: 210px;
    padding-bottom: 90px;
  }
  #page30 .menus {
    display: grid;
    grid-template-columns: repeat(3, 403px);
    gap: 30px;
    justify-content: center;
    margin-top: 90px;
  }
  #page30 .menus a.menu {
    width: 100%;
    padding: 30px 70px 30px 35px;
    box-sizing: border-box;
    border: solid 5px #fff;
    border-radius: 30px;
    box-shadow: 0 0 30px 0 rgba(0, 108, 165, 0.16);
    background-color: #fff;
    position: relative;
    transition: 0.4s ease;
  }
  #page30 .menus a.menu .texts {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  #page30 .menus a.menu .texts .headline {
    display: grid;
    grid-template-columns: 50px 1fr;
    -moz-column-gap: 10px;
         column-gap: 10px;
  }
  #page30 .menus a.menu .texts .headline img {
    width: 100%;
    margin-top: 3px;
  }
  #page30 .menus a.menu .texts .headline h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: 1.92px;
    text-align: left;
    color: #48aadd;
  }
  #page30 .menus a.menu .texts .headline h2 small {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 1.6px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
  }
  #page30 .menus a.menu .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30 .menus a.menu .btn {
    display: block;
    width: 35px;
    height: 35px;
    box-sizing: border-box;
    border: solid 1px #48aadd;
    border-radius: 50%;
    background-color: #48aadd;
    position: absolute;
    top: 113px;
    right: 20px;
    transition: 0.4s ease;
  }
  #page30 .menus a.menu .btn::before {
    content: "";
    display: block;
    width: 7.8px;
    height: 10px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30/right_white.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    opacity: 1;
    transition: 0.4s ease;
  }
  #page30 .menus a.menu .btn::after {
    content: "";
    display: block;
    width: 7.8px;
    height: 10px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30/right_blue.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    opacity: 0;
    transition: 0.4s ease;
  }
  #page30 .menus a.menu:hover {
    border: solid 5px #48aadd;
    box-shadow: 0 0 30px 0 rgba(0, 108, 165, 0.25);
    background-color: #f0f6f8;
    transform: scale(1.1, 1.1);
  }
  #page30 .menus a.menu:hover .btn {
    border: solid 1px #48aadd;
    background-color: #fff;
  }
  #page30 .menus a.menu:hover .btn::before {
    opacity: 0;
  }
  #page30 .menus a.menu:hover .btn::after {
    opacity: 1;
  }
}
/*SP*/
@media screen and (max-width: 1024px) {
  #page30 {
    position: relative;
    width: 100%;
    padding-top: 65px;
    padding-bottom: 60px;
  }
  #page30 .menus {
    display: grid;
    grid-template-columns: 358.5px;
    gap: 20px;
    justify-content: center;
    margin-top: 60px;
  }
  #page30 .menus a.menu {
    width: 100%;
    padding: 25px 55px 25px 22.5px;
    box-sizing: border-box;
    border-radius: 15px;
    box-shadow: 0 0 15px 0 rgba(0, 108, 165, 0.16);
    background-color: #fff;
    position: relative;
  }
  #page30 .menus a.menu .texts {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 15px;
  }
  #page30 .menus a.menu .texts .headline {
    display: grid;
    grid-template-columns: 55px 1fr;
    -moz-column-gap: 20px;
         column-gap: 20px;
  }
  #page30 .menus a.menu .texts .headline img {
    width: 100%;
    margin-top: 2px;
  }
  #page30 .menus a.menu .texts .headline h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.39;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
  }
  #page30 .menus a.menu .texts .headline h2 small {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 1.2px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
  }
  #page30 .menus a.menu .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30 .menus a.menu .btn {
    display: block;
    width: 32.5px;
    height: 32.5px;
    border-radius: 50%;
    background-color: #48aadd;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30 .menus a.menu .btn::before {
    content: "";
    display: block;
    width: 9.7px;
    height: 12.5px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30/right_white.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 13px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
}
/*30-1～30-11*/
/*PC*/
@media screen and (min-width: 1025px) {
  #page30_sub {
    position: relative;
    width: 100%;
    padding-top: 210px;
    padding-bottom: 90px;
  }
  #page30_sub .kv {
    width: 1100px;
    margin: 0 auto 90px;
    padding: 90px 0;
    position: relative;
  }
  #page30_sub .kv::before {
    content: "";
    display: block;
    width: 1000%;
    height: 100%;
    border-radius: 0 0 80px 0;
    background-image: linear-gradient(to top, #cceaf7, rgba(240, 246, 248, 0.2));
    position: absolute;
    top: 0;
    right: -90px;
    z-index: -1;
  }
  #page30_sub .kv .fadein {
    display: grid;
    grid-template-columns: 150px 1fr;
    -moz-column-gap: 80px;
         column-gap: 80px;
  }
  #page30_sub .kv .fadein .image {
    width: 100%;
    height: 150px;
    box-shadow: 0 0 30px 0 rgba(0, 108, 165, 0.16);
    background-color: #fff;
    border-radius: 50%;
    position: relative;
  }
  #page30_sub .kv .fadein .image img {
    display: block;
    width: 70px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
  #page30_sub .kv .fadein .texts h1 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    margin-bottom: 20px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 36px;
    font-weight: 500;
    line-height: 52px;
    letter-spacing: 2.88px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .kv .fadein .texts h1 small {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 35px;
    letter-spacing: 1.92px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .kv .fadein .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-1 {
    display: grid;
    grid-template-columns: 561px 410px;
    -moz-column-gap: 90px;
         column-gap: 90px;
    justify-content: center;
    margin-bottom: 90px;
  }
  #page30_sub .contents-1 .texts .headline {
    margin-bottom: 38px;
  }
  #page30_sub .contents-1 .texts .headline h2 {
    margin-bottom: 18px;
    display: inline-block;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 28px;
    font-weight: 500;
    line-height: 1.43;
    letter-spacing: 1.68px;
    text-align: left;
    color: #48aadd;
    position: relative;
  }
  #page30_sub .contents-1 .texts .headline h2::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -7px;
    left: 0;
  }
  #page30_sub .contents-1 .texts .headline h2:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-1 .texts p {
    margin-bottom: 20px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-1 .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-1 .images {
    width: 100%;
  }
  #page30_sub .contents-1 .images img {
    width: 100%;
    height: 307.5px;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-2 {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-2 h2 {
    display: grid;
    grid-template-columns: 41px min-content;
    -moz-column-gap: 10px;
         column-gap: 10px;
    justify-content: center;
    margin-bottom: 60px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 44px;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-2 h2 img {
    width: 100%;
    position: relative;
    top: 9px;
  }
  #page30_sub .contents-2 .wrapper {
    display: grid;
    grid-template-columns: 410px 561px;
    -moz-column-gap: 90px;
         column-gap: 90px;
    justify-content: center;
  }
  #page30_sub .contents-2 .wrapper .images {
    width: 100%;
  }
  #page30_sub .contents-2 .wrapper .images img {
    width: 100%;
    border-radius: 30px;
  }
  #page30_sub .contents-2 .wrapper .texts h3 {
    margin-top: 20px;
    margin-bottom: 10px;
    padding-left: 22px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.53;
    letter-spacing: 0.51px;
    text-align: left;
    color: #48aadd;
    position: relative;
  }
  #page30_sub .contents-2 .wrapper .texts h3:nth-of-type(1) {
    margin-top: 0;
  }
  #page30_sub .contents-2 .wrapper .texts h3::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-color: #48aadd;
    border-radius: 50%;
    position: absolute;
    top: 8.4px;
    left: 0;
  }
  #page30_sub .contents-2 .wrapper .texts p {
    margin-bottom: 10px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 24px;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-2 .wrapper .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-2 .wrapper .texts p.exc {
    margin-bottom: 10px !important;
  }
  #page30_sub .contents-2 .wrapper .texts .text {
    margin-bottom: 10px;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  #page30_sub .contents-2 .wrapper .texts .text p {
    display: grid;
    grid-template-columns: 19px 1fr;
    -moz-column-gap: 10px;
         column-gap: 10px;
    justify-content: center;
    margin-bottom: 0;
  }
  #page30_sub .contents-2 .wrapper .texts .text p img {
    position: relative;
    top: 4px;
  }
  #page30_sub .contents-2.reverse {
    padding: 0;
    background-color: #fff;
  }
  #page30_sub .contents-2.reverse .wrapper {
    display: grid;
    grid-template-columns: 561px 410px;
    -moz-column-gap: 90px;
         column-gap: 90px;
    justify-content: center;
  }
  #page30_sub .contents-2.reverse .wrapper .texts h3 {
    margin-top: 20px;
    margin-bottom: 10px;
    padding-left: 22px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.53;
    letter-spacing: 0.51px;
    text-align: left;
    color: #48aadd;
    position: relative;
  }
  #page30_sub .contents-2.reverse .wrapper .texts h3:nth-of-type(1) {
    margin-top: 0;
  }
  #page30_sub .contents-2.reverse .wrapper .texts h3::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    background-color: #48aadd;
    border-radius: 50%;
    position: absolute;
    top: 8.4px;
    left: 0;
  }
  #page30_sub .contents-2.exc .wrapper {
    display: grid;
    grid-template-columns: 300px 561px;
    -moz-column-gap: 60px;
         column-gap: 60px;
    justify-content: center;
  }
  #page30_sub .contents-2.exc-2 .wrapper {
    grid-template-columns: 265px 300px;
    -moz-column-gap: 90px;
         column-gap: 90px;
  }
  #page30_sub .contents-2.exc-2 .wrapper .images {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  #page30_sub .contents-2.exc-2 .wrapper .texts {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  #page30_sub .contents-2.exc-2 .wrapper .texts .text p {
    white-space: nowrap;
  }
  #page30_sub .contents-3 {
    width: 920px;
    margin: 0 auto 90px;
  }
  #page30_sub .contents-3 h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
    margin-bottom: 60px;
    position: relative;
  }
  #page30_sub .contents-3 h2::before {
    content: "";
    display: block;
    width: 223px;
    height: 20px;
    border-radius: 2px;
    background-color: #f0f0f0;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30_sub .contents-3 h2::after {
    content: "";
    display: block;
    width: 223px;
    height: 20px;
    border-radius: 2px;
    background-color: #f0f0f0;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30_sub .contents-3 .items {
    display: grid;
    grid-template-columns: repeat(2, 430px);
    -moz-column-gap: 60px;
         column-gap: 60px;
    row-gap: 40px;
  }
  #page30_sub .contents-3 .items .item {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 266.2px min-content;
    row-gap: 20px;
  }
  #page30_sub .contents-3 .items .item .images {
    width: 100%;
  }
  #page30_sub .contents-3 .items .item .images img {
    width: 100%;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-3 .items .item .texts {
    display: grid;
    grid-template-columns: 396px;
    row-gap: 20px;
    justify-content: center;
  }
  #page30_sub .contents-3 .items .item .texts h3 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 1.2px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .contents-3 .items .item .texts .text {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2px;
  }
  #page30_sub .contents-3 .items .item .texts .text p {
    display: grid;
    grid-template-columns: min-content 1fr;
    -moz-column-gap: 15px;
         column-gap: 15px;
    position: relative;
  }
  #page30_sub .contents-3 .items .item .texts .text p::after {
    content: "";
    display: block;
    width: 330px;
    height: 1px;
    border-bottom: dashed 1px #cbcbcb;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  #page30_sub .contents-3 .items .item .texts .text p strong {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 58px;
    height: 100%;
    padding: 0 12px;
    box-sizing: border-box;
    border-radius: 2px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 33px;
    letter-spacing: 0.8px;
    text-align: left;
    color: #fff;
    white-space: nowrap;
  }
  #page30_sub .contents-3 .items .item .texts .text p span {
    padding-top: 3px;
    padding-bottom: 6px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-3 .items .item .texts .text p span.is-multiline {
    padding-top: 3.2px;
    padding-bottom: 5.8px;
  }
  #page30_sub .contents-4 {
    width: 100%;
    margin-bottom: 90px;
    padding: 100px 0 80px;
    background-image: linear-gradient(136deg, #f0f6f8, #d4eef8 49%, #f0f6f8 100%);
    text-align: center;
  }
  #page30_sub .contents-4 h2 {
    display: inline-block;
    margin-bottom: 60px;
    position: relative;
  }
  #page30_sub .contents-4 h2::before {
    content: "";
    display: block;
    width: 2px;
    height: 56.35px;
    background: #48aadd;
    position: absolute;
    top: 50%;
    left: -55px;
    transform: translateY(-50%) rotate(31.7deg);
    -webkit-transform: translateY(-50%) rotate(31.7deg);
    -ms-transform: translateY(-50%) rotate(31.7deg);
  }
  #page30_sub .contents-4 h2::after {
    content: "";
    display: block;
    width: 2px;
    height: 56.35px;
    background: #48aadd;
    position: absolute;
    top: 50%;
    right: -55px;
    transform: translateY(-50%) rotate(31.7deg);
    -webkit-transform: translateY(-50%) rotate(31.7deg);
    -ms-transform: translateY(-50%) rotate(31.7deg);
  }
  #page30_sub .contents-4 h2 small {
    display: block;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 1.28px;
    text-align: center;
    color: #444;
    position: relative;
  }
  #page30_sub .contents-4 h2 small::after {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/king.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-4 h2 strong {
    display: block;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-4 h2.exc::before, #page30_sub .contents-4 h2.exc::after {
    content: none;
  }
  #page30_sub .contents-4 .items {
    display: grid;
    grid-template-columns: 1080.4px;
    row-gap: 30px;
    justify-content: center;
  }
  #page30_sub .contents-4 .items .item {
    display: grid;
    grid-template-columns: 562px 280px;
    -moz-column-gap: 109.4px;
         column-gap: 109.4px;
    justify-content: space-between;
    padding: 40px 40px 40px 60px;
    box-sizing: border-box;
    border-radius: 30px;
    background-color: #fff;
  }
  #page30_sub .contents-4 .items .item .texts {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: min-content;
  }
  #page30_sub .contents-4 .items .item .texts h3 {
    display: grid;
    grid-template-columns: repeat(2, min-content);
    -moz-column-gap: 24.3px;
         column-gap: 24.3px;
    margin-bottom: 33.5px;
  }
  #page30_sub .contents-4 .items .item .texts h3 strong.num {
    font-family: "Montserrat", sans-serif;
    font-size: 56px;
    font-weight: bold;
    line-height: 41px;
    letter-spacing: 2.24px;
    text-align: left;
    background-image: linear-gradient(180deg, rgb(180, 224, 242) 0%, rgb(240, 246, 248) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  #page30_sub .contents-4 .items .item .texts h3 span {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 35px;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-4 .items .item .texts h3 span::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -1.5px;
    left: 0;
  }
  #page30_sub .contents-4 .items .item .texts p {
    display: block;
    width: 561px;
    margin-bottom: 10px;
    box-sizing: border-box;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-4 .items .item .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-4 .items .item .images {
    width: 100%;
    height: 186.8px;
  }
  #page30_sub .contents-4 .items .item .images img {
    width: 100%;
    height: 100%;
    border-radius: 20px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-4.reverse {
    padding: 0;
    background-image: none;
  }
  #page30_sub .contents-4.reverse .items .item {
    background-color: #f5fafc;
  }
  #page30_sub .contents-5 {
    width: 100%;
    margin-bottom: 191.2px;
  }
  #page30_sub .contents-5 h2 {
    display: grid;
    grid-template-rows: repeat(2, min-content);
    row-gap: 10px;
    margin-bottom: 60px;
  }
  #page30_sub .contents-5 h2 strong {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-5 h2 small {
    font-family: "Montserrat", sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.11;
    letter-spacing: 1.8px;
    text-align: center;
    color: #89c7e8;
  }
  #page30_sub .contents-5 .items {
    display: grid;
    grid-template-columns: 966.1px;
    row-gap: 60px;
    justify-content: center;
  }
  #page30_sub .contents-5 .items .item h3 {
    margin-bottom: 35.1px;
    padding-left: 33px;
    box-sizing: border-box;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 35px;
    letter-spacing: 1.44px;
    text-align: left;
    color: #5c5c5c;
    position: relative;
  }
  #page30_sub .contents-5 .items .item h3::before {
    content: "";
    display: block;
    width: 13px;
    height: 40px;
    border-radius: 2px;
    background-color: #48aadd;
    position: absolute;
    top: 0;
    left: 0;
  }
  #page30_sub .contents-5 .items .item .bf_af {
    display: grid;
    grid-template-columns: repeat(2, 430px);
    justify-content: space-between;
    position: relative;
  }
  #page30_sub .contents-5 .items .item .bf_af::after {
    content: "";
    display: block;
    width: 31.1px;
    height: 40px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/sankaku.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 118px;
    left: 470px;
  }
  #page30_sub .contents-5 .items .item .bf_af .before,
  #page30_sub .contents-5 .items .item .bf_af .after {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    row-gap: 34.3px;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images,
  #page30_sub .contents-5 .items .item .bf_af .after .images {
    border-radius: 30px;
    position: relative;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images img,
  #page30_sub .contents-5 .items .item .bf_af .after .images img {
    width: calc(100% - 30px);
    height: 236.2px;
    border: solid 15px #f0f6f8;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images p,
  #page30_sub .contents-5 .items .item .bf_af .after .images p {
    width: 202px;
    height: 42px;
    border-radius: 21px;
    background-color: #5c5c5c;
    font-family: "Montserrat", sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 42px;
    letter-spacing: 0.9px;
    text-align: center;
    color: #fff;
    position: absolute;
    bottom: -14.3px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-5 .items .item .bf_af .before .texts,
  #page30_sub .contents-5 .items .item .bf_af .after .texts {
    display: grid;
    grid-template-columns: calc(100% - 38px);
    row-gap: 10px;
    justify-content: center;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .texts p,
  #page30_sub .contents-5 .items .item .bf_af .after .texts p {
    display: grid;
    grid-template-columns: 19px 1fr;
    -moz-column-gap: 10px;
         column-gap: 10px;
    justify-content: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .texts p img,
  #page30_sub .contents-5 .items .item .bf_af .after .texts p img {
    position: relative;
    top: 4px;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images p {
    background-color: #5c5c5c;
  }
  #page30_sub .contents-5 .items .item .bf_af .after .images p {
    background-color: #48aadd;
  }
  #page30_sub .contents-5 .items .item table {
    width: 924px;
    margin: 40px auto 0;
    border-collapse: separate;
    border-spacing: 5px;
    /* 左カラム */
    /* 右カラム */
  }
  #page30_sub .contents-5 .items .item table th {
    width: 107px;
    padding: 11.6px 11px 14.4px 12px;
    box-sizing: border-box;
    border-radius: 2px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 0.8px;
    text-align: center;
    color: #fff;
  }
  #page30_sub .contents-5 .items .item table td {
    width: 802px;
    padding: 12px 20px 14px;
    box-sizing: border-box;
    background-color: #f0f6f8;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5.exc {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-5.exc .items .item .bf_af {
    margin-bottom: 54.3px;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .before,
  #page30_sub .contents-5.exc .items .item .bf_af .after {
    grid-template-rows: min-content;
    row-gap: 0;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .before .images img,
  #page30_sub .contents-5.exc .items .item .bf_af .after .images img {
    border: solid 15px #fff;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .before .images p {
    background-color: #5c5c5c;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .after .images p {
    background-color: #48aadd;
  }
  #page30_sub .contents-5.exc .items .item table {
    width: 924px;
    margin: 0 auto 40px;
    border-collapse: separate;
    border-spacing: 5px;
    /* 左カラム */
    /* 右カラム */
  }
  #page30_sub .contents-5.exc .items .item table th {
    width: 107px;
    padding: 11.6px 11px 14.4px 12px;
    box-sizing: border-box;
    border-radius: 2px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: 0.8px;
    text-align: center;
    color: #fff;
  }
  #page30_sub .contents-5.exc .items .item table td {
    width: 802px;
    padding: 12px 20px 14px;
    box-sizing: border-box;
    background-color: #fff;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5.exc .items .item .comment {
    display: grid;
    grid-template-columns: 120px 726px;
    -moz-column-gap: 40px;
         column-gap: 40px;
    margin-left: 24px;
  }
  #page30_sub .contents-5.exc .items .item .comment .images {
    width: 100%;
  }
  #page30_sub .contents-5.exc .items .item .comment .images img {
    width: 100%;
    height: 120px;
    border-radius: 50%;
    border: solid 6px #fff;
    box-sizing: border-box;
  }
  #page30_sub .contents-5.exc .items .item .comment .texts h4 {
    display: grid;
    grid-template-columns: 26px min-content;
    -moz-column-gap: 9px;
         column-gap: 9px;
    align-items: center;
    margin-bottom: 22.5px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.67;
    letter-spacing: 0.9px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-5.exc .items .item .comment .texts h4::after {
    content: "";
    width: 165.5px;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -7px;
    left: 0;
  }
  #page30_sub .contents-5.exc .items .item .comment .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5.exc-2 {
    margin-bottom: 90px;
  }
  #page30_sub .contents-5.exc-3 {
    margin-bottom: 90px;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment {
    display: grid;
    grid-template-columns: 120px 726px;
    -moz-column-gap: 40px;
         column-gap: 40px;
    margin-top: 40px;
    margin-left: 24px;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .images {
    width: 100%;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .images img {
    width: 100%;
    height: 120px;
    border-radius: 50%;
    border: solid 6px #fff;
    box-sizing: border-box;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .texts h4 {
    display: grid;
    grid-template-columns: 26px min-content;
    -moz-column-gap: 9px;
         column-gap: 9px;
    align-items: center;
    margin-bottom: 22.5px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.67;
    letter-spacing: 0.9px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .texts h4::after {
    content: "";
    width: 165.5px;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -7px;
    left: 0;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-6 {
    width: 100%;
    margin-bottom: 90px;
    padding-bottom: 80px;
    background-image: linear-gradient(to bottom, #f0f6f8, #d4eef8);
    position: relative;
  }
  #page30_sub .contents-6::after {
    content: "";
    display: block;
    width: 535px;
    height: 324.2px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/ellipse_pc.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -123.3px;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-6 h2 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    justify-content: center;
    margin-bottom: 40px;
    position: relative;
  }
  #page30_sub .contents-6 h2::before {
    content: "";
    display: block;
    width: 67px;
    height: 55px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/icon_both.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -71.2px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-6 h2 small {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.55;
    letter-spacing: 2.2px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-6 h2 span {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 36px;
    font-weight: 500;
    line-height: 1.17;
    letter-spacing: 3.6px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-6 h2 span strong {
    margin-right: 7px;
    font-family: "Montserrat", sans-serif;
    font-size: 56px;
    font-weight: 600;
    line-height: 68px;
    letter-spacing: 2.8px;
    text-align: center;
    color: #48aadd;
    position: relative;
    top: 2.8px;
  }
  #page30_sub .contents-6 .items {
    display: grid;
    grid-template-columns: repeat(3, 417px);
    -moz-column-gap: 10px;
         column-gap: 10px;
    justify-content: center;
  }
  #page30_sub .contents-6 .items .images {
    margin-bottom: -28px;
    border-radius: 50%;
    position: relative;
    z-index: 1;
  }
  #page30_sub .contents-6 .items .images img {
    display: block;
    width: 280px;
    height: 280px;
    margin: 0 auto;
    border: solid 10px #fff;
    border-radius: 50%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-6 .items .texts {
    padding-bottom: 40px;
    position: relative;
  }
  #page30_sub .contents-6 .items .texts::before {
    content: "";
    display: block;
    width: 100%;
    height: 281.5px;
    border-radius: 10px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  #page30_sub .contents-6 .items .texts h3 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    row-gap: 30px;
    justify-content: center;
    margin-bottom: 25px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 1.15px;
    text-align: center;
    color: #48aadd;
    position: relative;
    z-index: 1;
  }
  #page30_sub .contents-6 .items .texts h3 strong {
    font-family: "Montserrat", sans-serif;
    font-size: 56px;
    font-weight: bold;
    line-height: 41px;
    letter-spacing: 2.24px;
    text-align: center;
    background-image: linear-gradient(180deg, rgb(180, 224, 242) 0%, rgb(240, 246, 248) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
  }
  #page30_sub .contents-6 .items .texts h3 strong::after {
    content: "";
    display: block;
    width: 58.5px;
    height: 1px;
    border-bottom: dashed 1px #69b9e3;
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-6 .items .texts p {
    width: 347px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
    position: relative;
    z-index: 1;
  }
  #page30_sub .contents-7 {
    width: 100%;
    padding: 90px 0;
    position: relative;
  }
  #page30_sub .contents-7::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/menu_mushiba_pc18.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  #page30_sub .contents-7 p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 2;
    letter-spacing: 0.48px;
    text-align: center;
    color: #5c5c5c;
  }
  #page30_sub .contents-8 {
    width: 1280px;
    margin: 103px auto 90px;
    border-radius: 5px;
    border: solid 20px #f5f5f5;
    box-sizing: border-box;
    position: relative;
  }
  #page30_sub .contents-8 h2 {
    display: block;
    width: 750.6px;
    background-color: #fff;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 44px;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
    position: absolute;
    top: -33px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-8 h2::before {
    content: "";
    display: block;
    width: 28.3px;
    height: 28.3px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-3/daiya.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    left: 150px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30_sub .contents-8 h2::after {
    content: "";
    display: block;
    width: 28.3px;
    height: 28.3px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-3/daiya.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 150px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30_sub .contents-8 .items {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 40px;
    justify-content: center;
    width: 1130px;
    margin: 0 auto;
    padding: 70px 0 50px;
  }
  #page30_sub .contents-8 .items .item {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 350px;
  }
  #page30_sub .contents-8 .items .item .images {
    width: 100%;
  }
  #page30_sub .contents-8 .items .item .images img {
    width: 100%;
    height: 216.6px;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-8 .items .item .texts h3 {
    margin-bottom: 20px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.42;
    letter-spacing: 1.2px;
    text-align: center;
    color: #48aadd;
  }
  #page30_sub .contents-8 .items .item .texts p {
    width: 330px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-8.exc {
    width: 1100px;
  }
  #page30_sub .contents-8.exc .items {
    width: 760px;
  }
  #page30_sub .contents-9 {
    width: 100%;
    margin-bottom: 90px;
  }
  #page30_sub .contents-9 h2 {
    margin-bottom: 60px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-9 .items {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 726px;
    margin: 0 auto 40px;
    position: relative;
  }
  #page30_sub .contents-9 .items::after {
    content: "";
    width: 1px;
    height: calc(100% - 65px);
    background-color: #b4e0f2;
    position: absolute;
    top: 31px;
    left: 165px;
  }
  #page30_sub .contents-9 .items .item {
    display: grid;
    grid-template-columns: 153px 1fr;
    align-items: center;
    padding: 13px 0 13px 46px;
    border-radius: 31.5px;
    background-color: #f0f6f8;
    position: relative;
  }
  #page30_sub .contents-9 .items .item::after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #48aadd;
    position: absolute;
    top: 26px;
    left: 162px;
    z-index: 1;
  }
  #page30_sub .contents-9 .items .item p.num {
    display: grid;
    grid-template-columns: repeat(2, min-content);
    -moz-column-gap: 6px;
         column-gap: 6px;
  }
  #page30_sub .contents-9 .items .item p.num small {
    font-family: "Montserrat", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 19px;
    letter-spacing: 0.64px;
    text-align: left;
    color: #69b9e3;
    position: relative;
    top: 11.2px;
  }
  #page30_sub .contents-9 .items .item p.num strong {
    font-family: "Montserrat", sans-serif;
    font-size: 30px;
    font-weight: 600;
    line-height: 37px;
    letter-spacing: 1.2px;
    text-align: left;
    color: #69b9e3;
  }
  #page30_sub .contents-9 .items .item h3 {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-9 p.bottom {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: center;
    color: #5c5c5c;
  }
  #page30_sub .contents-9.reverse {
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-9.reverse .items .item {
    background-color: #fff;
  }
  #page30_sub .contents-10 {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
    position: relative;
  }
  #page30_sub .contents-10 h2 {
    margin-bottom: 67.5px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-10 .items {
    display: grid;
    grid-template-columns: repeat(3, 380px);
    -moz-column-gap: 50px;
         column-gap: 50px;
    row-gap: 67.5px;
    justify-content: center;
  }
  #page30_sub .contents-10 .items .images {
    width: 100%;
    margin-bottom: 20px;
    position: relative;
  }
  #page30_sub .contents-10 .items .images img {
    width: 100%;
    height: 235.2px;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-10 .items .images p.num {
    font-family: "Montserrat", sans-serif;
    font-size: 56px;
    font-weight: bold;
    line-height: 41px;
    letter-spacing: 2.24px;
    text-align: left;
    background-image: linear-gradient(180deg, rgb(180, 224, 242) 0%, rgb(240, 246, 248) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: absolute;
    top: -27.5px;
    left: 24.8px;
  }
  #page30_sub .contents-10 .items .texts h3 {
    margin-bottom: 20px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 1.2px;
    text-align: center;
    color: #48aadd;
  }
  #page30_sub .contents-10 .items .texts p {
    width: 368px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-10.exc .items {
    display: grid;
    grid-template-columns: repeat(2, 380px);
    -moz-column-gap: 50px;
         column-gap: 50px;
    row-gap: 77.5px;
    justify-content: center;
  }
  #page30_sub .contents-10.reverse {
    padding: 0;
    background-color: #fff;
  }
  #page30_sub .contents-11 {
    width: 100%;
    margin-bottom: 90px;
    background-color: #fff;
  }
  #page30_sub .contents-11 h2 {
    display: grid;
    grid-template-columns: 80px min-content;
    -moz-column-gap: 12px;
         column-gap: 12px;
    justify-content: center;
    align-items: center;
    margin-bottom: 60px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 44px;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-11 h2 img {
    width: 100%;
  }
  #page30_sub .contents-11 .wrapper {
    display: grid;
    grid-template-columns: 562px 410px;
    -moz-column-gap: 90px;
         column-gap: 90px;
    justify-content: center;
  }
  #page30_sub .contents-11 .wrapper .images {
    width: 100%;
  }
  #page30_sub .contents-11 .wrapper .images img {
    width: 100%;
    border-radius: 30px;
  }
  #page30_sub .contents-11 .wrapper .texts h3 {
    display: inline-block;
    margin-bottom: 10px;
    padding: 0 20px;
    border-radius: 5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 37px;
    letter-spacing: 0.51px;
    text-align: left;
    color: #fff;
  }
  #page30_sub .contents-11 .wrapper .texts p {
    margin-bottom: 30px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-11 .wrapper .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-11 .wrapper .texts .text {
    margin-bottom: 30px;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  #page30_sub .contents-11 .wrapper .texts .text p {
    display: grid;
    grid-template-columns: 19px 1fr;
    -moz-column-gap: 10px;
         column-gap: 10px;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
  }
  #page30_sub .contents-11.reverse {
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-11.reverse .wrapper {
    grid-template-columns: 410px 562px;
  }
  #page30_sub .contents-11.reverse .wrapper .images {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  #page30_sub .contents-11.reverse .wrapper .texts {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  #page30_sub .contents-12 {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-12 h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
    margin-bottom: 60px;
    position: relative;
  }
  #page30_sub .contents-12 .items {
    display: grid;
    grid-template-columns: repeat(2, 430px);
    -moz-column-gap: 60px;
         column-gap: 60px;
    row-gap: 40px;
    justify-content: center;
  }
  #page30_sub .contents-12 .items .item {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 266.2px min-content;
    row-gap: 20px;
  }
  #page30_sub .contents-12 .items .item .images {
    width: 100%;
  }
  #page30_sub .contents-12 .items .item .images img {
    width: 100%;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-12 .items .item .texts {
    display: grid;
    grid-template-columns: 396px;
    row-gap: 40px;
    justify-content: center;
    position: relative;
  }
  #page30_sub .contents-12 .items .item .texts h3 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 34px;
    letter-spacing: 1.15px;
    text-align: left;
    color: #48aadd;
    position: relative;
  }
  #page30_sub .contents-12 .items .item .texts h3::after {
    content: "";
    display: block;
    width: 396px;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -19.5px;
    left: 0;
  }
  #page30_sub .contents-12 .items .item .texts .text {
    display: flex;
    -moz-column-gap: 5px;
         column-gap: 5px;
    position: absolute;
    top: -1px;
    right: 0;
  }
  #page30_sub .contents-12 .items .item .texts .text p {
    display: inline-block;
    padding: 0 10px;
    border-radius: 5px;
    background-color: #7daebe;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 37px;
    letter-spacing: 0.51px;
    text-align: right;
    color: #fff;
  }
  #page30_sub .contents-12 .items .item .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-13 {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-13 h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
    margin-bottom: 40px;
    position: relative;
  }
  #page30_sub .contents-13 p.description {
    margin-bottom: 40px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: center;
    color: #5c5c5c;
  }
  #page30_sub .contents-13 .items {
    display: grid;
    grid-template-columns: repeat(2, 430px);
    -moz-column-gap: 60px;
         column-gap: 60px;
    row-gap: 40px;
    justify-content: center;
  }
  #page30_sub .contents-13 .items .item {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 266.2px min-content;
    row-gap: 20px;
  }
  #page30_sub .contents-13 .items .item .images {
    width: 100%;
  }
  #page30_sub .contents-13 .items .item .images img {
    width: 100%;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-13 .items .item .texts {
    display: grid;
    grid-template-columns: 396px;
    row-gap: 20px;
    justify-content: center;
  }
  #page30_sub .contents-13 .items .item .texts h3 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 1.2px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .contents-13 .items .item .texts .text {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2px;
  }
  #page30_sub .contents-13 .items .item .texts .text p {
    display: grid;
    grid-template-columns: min-content 1fr;
    -moz-column-gap: 15px;
         column-gap: 15px;
    position: relative;
  }
  #page30_sub .contents-13 .items .item .texts .text p::after {
    content: "";
    display: block;
    width: 330px;
    height: 1px;
    border-bottom: dashed 1px #69b9e3;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  #page30_sub .contents-13 .items .item .texts .text p strong {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 58px;
    height: 100%;
    padding: 0 12px;
    box-sizing: border-box;
    border-radius: 2px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 33px;
    letter-spacing: 0.8px;
    text-align: left;
    color: #fff;
    white-space: nowrap;
  }
  #page30_sub .contents-13 .items .item .texts .text p span {
    padding-top: 3px;
    padding-bottom: 6px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-13 .items .item .texts .text p span.is-multiline {
    padding-top: 3.2px;
    padding-bottom: 5.8px;
  }
  #page30_sub .contents-14 {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-14 h2 {
    margin-bottom: 40px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-14 .image {
    width: 1197px;
    margin: 0 auto;
  }
  #page30_sub .contents-14 .image img {
    width: 100%;
  }
  #page30_sub .contents-15 {
    width: 100%;
    margin-bottom: 90px;
  }
  #page30_sub .contents-15 h2 {
    margin-bottom: 40px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-15 .image {
    width: 926px;
    margin: 0 auto;
  }
  #page30_sub .contents-15 .image img {
    width: 100%;
  }
  #page30_sub .contents-16 {
    width: 1130px;
    margin: 0 auto 90px;
    position: relative;
  }
  #page30_sub .contents-16 h2 {
    margin-bottom: 40px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-16 p.description {
    margin-bottom: 60px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: center;
    color: #5c5c5c;
  }
  #page30_sub .contents-16 h3 {
    display: grid;
    grid-template-columns: 28.3px 1fr;
    -moz-column-gap: 20px;
         column-gap: 20px;
    align-items: center;
    margin-bottom: 40px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.62;
    letter-spacing: 2.08px;
    text-align: left;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-16 h3:nth-last-of-type(1) {
    margin-top: 60px;
  }
  #page30_sub .contents-16 .items {
    display: grid;
    grid-template-columns: repeat(3, 350px);
    -moz-column-gap: 40px;
         column-gap: 40px;
    justify-content: center;
  }
  #page30_sub .contents-16 .items.exc {
    grid-template-columns: repeat(2, 350px);
    row-gap: 40px;
    justify-content: start;
  }
  #page30_sub .contents-16 .items .images {
    width: 100%;
    margin-bottom: 20px;
    position: relative;
  }
  #page30_sub .contents-16 .items .images img {
    width: 100%;
    height: 216.6px;
    border-radius: 30px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-16 .items .texts h3 {
    display: block;
    margin-bottom: 20px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.25;
    letter-spacing: 1.2px;
    text-align: center;
    color: #48aadd;
  }
  #page30_sub .contents-16 .items .texts h3:nth-last-of-type(1) {
    margin-top: 0;
  }
  #page30_sub .contents-16 .items .texts p {
    width: 368px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: 0.48px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-16 .items .texts p.exc {
    margin-top: 20px;
  }
  #page30_sub .contents-17 {
    width: 100%;
    margin-bottom: 90px;
    padding: 70px 0 80px;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-17 h2 {
    margin-bottom: 60px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 30px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 2.4px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-17 .items {
    display: grid;
    grid-template-columns: 1197px;
    row-gap: 60px;
    justify-content: center;
  }
  #page30_sub .contents-17 .items .item h3 {
    display: grid;
    grid-template-columns: 28.3px 1fr;
    -moz-column-gap: 20px;
         column-gap: 20px;
    align-items: center;
    margin-bottom: 20px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.62;
    letter-spacing: 2.08px;
    text-align: left;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-17 .items .item h4 {
    margin-bottom: 10px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.42;
    letter-spacing: 1.2px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .contents-17 .items .item h4:nth-last-of-type(1) {
    margin-top: 20.5px;
  }
  #page30_sub .contents-17 .items .item .image {
    width: 100%;
  }
  #page30_sub .contents-17 .items .item .image img {
    width: 100%;
  }
}
/*SP*/
@media screen and (max-width: 1024px) {
  #page30_sub {
    position: relative;
    width: 100%;
    padding-top: 65px;
    padding-bottom: 60px;
  }
  #page30_sub .kv {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    position: relative;
  }
  #page30_sub .kv::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 0 0 40px 0;
    background-image: linear-gradient(to top, #cceaf7, rgba(240, 246, 248, 0.2));
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
  }
  #page30_sub .kv .fadein {
    display: grid;
    grid-template-columns: 75px 201.5px;
    grid-template-rows: 75px auto;
    gap: 20px;
    justify-content: center;
    align-items: center;
  }
  #page30_sub .kv .fadein .image {
    grid-column: 1/2;
    grid-row: 1/2;
    width: 100%;
    height: 75px;
    box-shadow: 0 0 15px 0 rgba(0, 108, 165, 0.16);
    background-color: #fff;
    border-radius: 50%;
    position: relative;
  }
  #page30_sub .kv .fadein .image img {
    display: block;
    width: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
  #page30_sub .kv .fadein .texts {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  #page30_sub .kv .fadein .texts h1 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 33px;
    letter-spacing: 2.3px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
  }
  #page30_sub .kv .fadein .texts h1 small {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 24.5px;
    letter-spacing: 1.36px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .kv .fadein p {
    grid-column: 1/3;
    grid-row: 2/3;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-1 {
    display: grid;
    grid-template-columns: 328px;
    row-gap: 20px;
    justify-content: center;
    justify-items: center;
    margin-bottom: 60px;
  }
  #page30_sub .contents-1 .texts {
    width: 100%;
  }
  #page30_sub .contents-1 .texts .headline {
    margin-bottom: 24px;
  }
  #page30_sub .contents-1 .texts .headline h2 {
    margin-bottom: 9px;
    display: inline-block;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.56;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-1 .texts .headline h2::after {
    content: "";
    display: block;
    width: 100%;
    height: 0.5px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -3.5px;
    left: 0;
  }
  #page30_sub .contents-1 .texts .headline h2:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-1 .texts p {
    margin-bottom: 10px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-1 .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-1 .images {
    width: 255px;
  }
  #page30_sub .contents-1 .images img {
    width: 100%;
    height: 191.25px;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-2 {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-2 h2 {
    display: grid;
    grid-template-columns: 37.5px min-content;
    -moz-column-gap: 5px;
         column-gap: 5px;
    justify-content: center;
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 33px;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-2 h2 img {
    width: 100%;
    position: relative;
    top: 5px;
  }
  #page30_sub .contents-2 .wrapper {
    display: grid;
    grid-template-columns: 328px;
    row-gap: 20px;
    justify-content: center;
    justify-items: center;
  }
  #page30_sub .contents-2 .wrapper .images {
    width: 255px;
  }
  #page30_sub .contents-2 .wrapper .images img {
    width: 100%;
    border-radius: 15px;
  }
  #page30_sub .contents-2 .wrapper .texts h3 {
    margin-top: 20px;
    margin-bottom: 5px;
    padding-left: 14px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-2 .wrapper .texts h3:nth-of-type(1) {
    margin-top: 0;
  }
  #page30_sub .contents-2 .wrapper .texts h3::before {
    content: "";
    display: block;
    width: 9px;
    height: 9px;
    background-color: #48aadd;
    border-radius: 50%;
    position: absolute;
    top: 7.2px;
    left: 0;
  }
  #page30_sub .contents-2 .wrapper .texts p {
    margin-bottom: 10px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-2 .wrapper .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-2 .wrapper .texts p.exc {
    margin-bottom: 10px !important;
  }
  #page30_sub .contents-2 .wrapper .texts .text {
    margin-bottom: 10px;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  #page30_sub .contents-2 .wrapper .texts .text p {
    display: grid;
    grid-template-columns: 15px 1fr;
    -moz-column-gap: 5px;
         column-gap: 5px;
    justify-content: center;
    margin-bottom: 0;
  }
  #page30_sub .contents-2 .wrapper .texts .text p img {
    position: relative;
    top: 4.5px;
  }
  #page30_sub .contents-2.reverse {
    padding: 0;
    background-color: #fff;
  }
  #page30_sub .contents-2.reverse .wrapper .images {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  #page30_sub .contents-2.reverse .wrapper .texts {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  #page30_sub .contents-2.reverse .wrapper .texts h3 {
    margin-top: 20px;
    margin-bottom: 5px;
    padding-left: 14px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-2.reverse .wrapper .texts h3:nth-of-type(1) {
    margin-top: 0;
  }
  #page30_sub .contents-2.reverse .wrapper .texts h3::before {
    content: "";
    display: block;
    width: 9px;
    height: 9px;
    background-color: #48aadd;
    border-radius: 50%;
    position: absolute;
    top: 7.2px;
    left: 0;
  }
  #page30_sub .contents-3 {
    width: 350px;
    margin: 0 auto 60px;
  }
  #page30_sub .contents-3 h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
    margin-bottom: 30px;
  }
  #page30_sub .contents-3 .items {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 30px;
  }
  #page30_sub .contents-3 .items .item {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 164.05px auto;
    row-gap: 20px;
    justify-items: center;
  }
  #page30_sub .contents-3 .items .item .images {
    width: 265px;
  }
  #page30_sub .contents-3 .items .item .images img {
    width: 100%;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-3 .items .item .texts {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 15px;
  }
  #page30_sub .contents-3 .items .item .texts h3 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.56;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .contents-3 .items .item .texts .text {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2.5px;
  }
  #page30_sub .contents-3 .items .item .texts .text p {
    display: grid;
    grid-template-columns: min-content 1fr;
    -moz-column-gap: 7.5px;
         column-gap: 7.5px;
    position: relative;
  }
  #page30_sub .contents-3 .items .item .texts .text p::after {
    content: "";
    display: block;
    width: 301.5px;
    height: 1px;
    border-bottom: dashed 1px #cbcbcb;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  #page30_sub .contents-3 .items .item .texts .text p strong {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 100%;
    padding: 0 7px;
    box-sizing: border-box;
    border-radius: 1px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 31px;
    letter-spacing: 0.75px;
    text-align: left;
    color: #fff;
    white-space: nowrap;
  }
  #page30_sub .contents-3 .items .item .texts .text p span {
    padding-top: 5.1px;
    padding-bottom: 6.5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-3 .items .item .texts .text p span.is-multiline {
    padding-top: 3.3px;
    padding-bottom: 4.7px;
  }
  #page30_sub .contents-4 {
    width: 100%;
    margin-bottom: 60px;
    padding: 70px 0 45px;
    background-image: linear-gradient(136deg, #f0f6f8, #d4eef8 49%, #f0f6f8 100%);
    text-align: center;
  }
  #page30_sub .contents-4 h2 {
    display: inline-block;
    margin-bottom: 30px;
    position: relative;
  }
  #page30_sub .contents-4 h2::before {
    content: "";
    display: block;
    width: 1px;
    height: 28.175px;
    background: #48aadd;
    position: absolute;
    top: 50%;
    left: -27.5px;
    transform: translateY(-50%) rotate(31.7deg);
    -webkit-transform: translateY(-50%) rotate(31.7deg);
    -ms-transform: translateY(-50%) rotate(31.7deg);
  }
  #page30_sub .contents-4 h2::after {
    content: "";
    display: block;
    width: 1px;
    height: 28.175px;
    background: #48aadd;
    position: absolute;
    top: 50%;
    right: -27.5px;
    transform: translateY(-50%) rotate(31.7deg);
    -webkit-transform: translateY(-50%) rotate(31.7deg);
    -ms-transform: translateY(-50%) rotate(31.7deg);
  }
  #page30_sub .contents-4 h2 small {
    display: block;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 1.2px;
    text-align: center;
    color: #444;
    position: relative;
  }
  #page30_sub .contents-4 h2 small::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/king.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-4 h2 strong {
    display: block;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-4 h2.exc::before, #page30_sub .contents-4 h2.exc::after {
    content: none;
  }
  #page30_sub .contents-4 .items {
    display: grid;
    grid-template-columns: 367.5px;
    row-gap: 15px;
    justify-content: center;
  }
  #page30_sub .contents-4 .items .item .texts {
    display: grid;
    grid-template-columns: 1fr;
    padding: 20px 20px 20px 30px;
    box-sizing: border-box;
    border-radius: 15px;
    background-color: #fff;
    text-align: left;
  }
  #page30_sub .contents-4 .items .item .texts h3 {
    display: grid;
    grid-template-columns: repeat(2, min-content);
    -moz-column-gap: 12.2px;
         column-gap: 12.2px;
    margin-bottom: 15px;
  }
  #page30_sub .contents-4 .items .item .texts h3 strong.num {
    font-family: "Montserrat", sans-serif;
    font-size: 28px;
    font-weight: bold;
    line-height: 20.5px;
    letter-spacing: 1.12px;
    text-align: left;
    background-image: linear-gradient(180deg, rgb(180, 224, 242) 0%, rgb(240, 246, 248) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
    top: 3px;
  }
  #page30_sub .contents-4 .items .item .texts h3 span {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 24.5px;
    letter-spacing: 1.36px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    border-bottom: dashed 1px #48aadd;
  }
  #page30_sub .contents-4 .items .item .texts h3 .smp {
    position: relative;
    bottom: 5px;
  }
  #page30_sub .contents-4 .items .item .texts .images {
    width: 230px;
    height: 153.4px;
    margin-bottom: 15px;
  }
  #page30_sub .contents-4 .items .item .texts .images img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-4 .items .item .texts p {
    margin-bottom: 15px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-4 .items .item .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-4 .items .item .texts p span {
    display: grid;
    grid-template-columns: min-content 1fr;
    -moz-column-gap: 7.5px;
         column-gap: 7.5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-4 .items .item .texts p span::before {
    content: "―";
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-4.reverse {
    padding: 0;
    background-image: none;
  }
  #page30_sub .contents-4.reverse .items .item .texts {
    background-color: #f5fafc;
  }
  #page30_sub .contents-5 {
    width: 100%;
    margin-bottom: 142.5px;
  }
  #page30_sub .contents-5 h2 {
    display: grid;
    grid-template-rows: repeat(2, min-content);
    row-gap: 2.5px;
    margin-bottom: 30px;
  }
  #page30_sub .contents-5 h2 strong {
    margin-bottom: 2.5px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-5 h2 small {
    font-family: "Montserrat", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.43;
    letter-spacing: 1.4px;
    text-align: center;
    color: #89c7e8;
  }
  #page30_sub .contents-5 .items {
    display: grid;
    grid-template-columns: 350px;
    row-gap: 45px;
    justify-content: center;
  }
  #page30_sub .contents-5 .items .item h3 {
    margin-bottom: 21px;
    padding-left: 16.5px;
    box-sizing: border-box;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: 1.44px;
    text-align: left;
    color: #5c5c5c;
    position: relative;
  }
  #page30_sub .contents-5 .items .item h3::before {
    content: "";
    display: block;
    width: 8px;
    height: 26px;
    border-radius: 1px;
    background-color: #48aadd;
    position: absolute;
    top: 1;
    left: 0;
  }
  #page30_sub .contents-5 .items .item .bf_af {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 53.4px;
  }
  #page30_sub .contents-5 .items .item .bf_af .before,
  #page30_sub .contents-5 .items .item .bf_af .after {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    row-gap: 34.3px;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images,
  #page30_sub .contents-5 .items .item .bf_af .after .images {
    border-radius: 15px;
    position: relative;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images img,
  #page30_sub .contents-5 .items .item .bf_af .after .images img {
    display: block;
    width: 250px;
    height: 149.1px;
    margin: 0 auto;
    border: solid 7.5px #f0f6f8;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images p,
  #page30_sub .contents-5 .items .item .bf_af .after .images p {
    width: 128px;
    height: 28.5px;
    border-radius: 14.3px;
    background-color: #5c5c5c;
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
    font-weight: 600;
    line-height: 28.5px;
    letter-spacing: 0.75px;
    text-align: center;
    color: #fff;
    position: absolute;
    bottom: -9.2px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-5 .items .item .bf_af .before .texts,
  #page30_sub .contents-5 .items .item .bf_af .after .texts {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 5px;
    justify-content: center;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .texts p,
  #page30_sub .contents-5 .items .item .bf_af .after .texts p {
    display: grid;
    grid-template-columns: 15px 1fr;
    -moz-column-gap: 5px;
         column-gap: 5px;
    justify-content: center;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5 .items .item .bf_af .before .texts p img,
  #page30_sub .contents-5 .items .item .bf_af .after .texts p img {
    position: relative;
    top: 4.5px;
  }
  #page30_sub .contents-5 .items .item .bf_af .before {
    position: relative;
  }
  #page30_sub .contents-5 .items .item .bf_af .before::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 13px solid transparent;
    border-left: 13px solid transparent;
    border-top: 13.35px solid #69b9e3;
    border-bottom: 0;
    position: absolute;
    bottom: -33.35px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-5 .items .item .bf_af .before .images p {
    background-color: #5c5c5c;
  }
  #page30_sub .contents-5 .items .item .bf_af .after .images p {
    background-color: #48aadd;
  }
  #page30_sub .contents-5 .items .item table {
    width: 350px;
    margin: 30px auto 0;
    border-collapse: separate;
  }
  #page30_sub .contents-5 .items .item table tr {
    margin-bottom: 5px;
    /* 左カラム */
    /* 右カラム */
  }
  #page30_sub .contents-5 .items .item table tr th {
    display: block;
    width: 100%;
    margin-bottom: 2.5px;
    padding: 6px 0 7px 10px;
    box-sizing: border-box;
    border-radius: 1px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0.75px;
    text-align: left;
    color: #fff;
  }
  #page30_sub .contents-5 .items .item table tr td {
    display: block;
    width: 100%;
    margin-bottom: 5px;
    padding: 6px 10px 7px;
    box-sizing: border-box;
    background-color: #f0f6f8;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5 .items .item table tr:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-5 .items .item table tr:nth-last-of-type(1) td {
    white-space: nowrap;
  }
  #page30_sub .contents-5.exc {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-5.exc .items .item .bf_af {
    margin-bottom: 39.2px;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .before,
  #page30_sub .contents-5.exc .items .item .bf_af .after {
    grid-template-rows: min-content;
    row-gap: 0;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .before .images img,
  #page30_sub .contents-5.exc .items .item .bf_af .after .images img {
    border: solid 7.5px #fff;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .before .images p {
    background-color: #5c5c5c;
  }
  #page30_sub .contents-5.exc .items .item .bf_af .after .images p {
    background-color: #48aadd;
  }
  #page30_sub .contents-5.exc .items .item table {
    width: 350px;
    margin: 0 auto 30px;
    border-collapse: separate;
  }
  #page30_sub .contents-5.exc .items .item table tr {
    margin-bottom: 5px;
    /* 左カラム */
    /* 右カラム */
  }
  #page30_sub .contents-5.exc .items .item table tr th {
    display: block;
    width: 100%;
    margin-bottom: 2.5px;
    padding: 6px 0 7px 10px;
    box-sizing: border-box;
    border-radius: 1px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0.75px;
    text-align: left;
    color: #fff;
  }
  #page30_sub .contents-5.exc .items .item table tr td {
    display: block;
    width: 100%;
    margin-bottom: 5px;
    padding: 6px 10px 7px;
    box-sizing: border-box;
    background-color: #fff;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5.exc .items .item table tr:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-5.exc .items .item table tr:nth-last-of-type(1) td {
    white-space: nowrap;
  }
  #page30_sub .contents-5.exc .items .item .comment {
    display: grid;
    grid-template-columns: 75px 1fr;
    -moz-column-gap: 20px;
         column-gap: 20px;
  }
  #page30_sub .contents-5.exc .items .item .comment .images {
    width: 100%;
  }
  #page30_sub .contents-5.exc .items .item .comment .images img {
    width: 100%;
    height: 75x;
    border-radius: 50%;
    border: solid 4px #fff;
    box-sizing: border-box;
  }
  #page30_sub .contents-5.exc .items .item .comment .texts h4 {
    display: grid;
    grid-template-columns: 17.5px min-content;
    -moz-column-gap: 5px;
         column-gap: 5px;
    align-items: center;
    margin-bottom: 17.3px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0.75px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-5.exc .items .item .comment .texts h4::after {
    content: "";
    width: 132px;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -3.3px;
    left: 0;
  }
  #page30_sub .contents-5.exc .items .item .comment .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-5.exc-2 {
    margin-bottom: 60px;
  }
  #page30_sub .contents-5.exc-3 {
    margin-bottom: 60px;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment {
    display: grid;
    grid-template-columns: 75px 1fr;
    -moz-column-gap: 20px;
         column-gap: 20px;
    margin-top: 30px;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .images {
    width: 100%;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .images img {
    width: 100%;
    height: 75x;
    border-radius: 50%;
    border: solid 4px #fff;
    box-sizing: border-box;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .texts h4 {
    display: grid;
    grid-template-columns: 17.5px min-content;
    -moz-column-gap: 5px;
         column-gap: 5px;
    align-items: center;
    margin-bottom: 17.3px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0.75px;
    text-align: left;
    color: #48aadd;
    white-space: nowrap;
    position: relative;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .texts h4::after {
    content: "";
    width: 132px;
    height: 1px;
    border-bottom: dashed 1px #48aadd;
    position: absolute;
    bottom: -3.3px;
    left: 0;
  }
  #page30_sub .contents-5.exc-3 .items .item .comment .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-6 {
    width: 375px;
    margin: 0 auto 60px;
    padding-top: 11.7px;
    padding-bottom: 45px;
    background-image: linear-gradient(to bottom, #f0f6f8, #d4eef8);
    border-radius: 15px;
    position: relative;
  }
  #page30_sub .contents-6::after {
    content: "";
    display: block;
    width: 267.5px;
    height: 212.75px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/ellipse_smp.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -92.8px;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-6 h2 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    justify-content: center;
    margin-bottom: 20px;
    position: relative;
  }
  #page30_sub .contents-6 h2::before {
    content: "";
    display: block;
    width: 56px;
    height: 41.25px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/icon_both.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: -51.25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-6 h2 small {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.44;
    letter-spacing: 1.6px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-6 h2 span {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 33px;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-6 h2 span strong {
    margin-right: 3.5px;
    font-family: "Montserrat", sans-serif;
    font-size: 38px;
    font-weight: 600;
    line-height: 46.5px;
    letter-spacing: 1.9px;
    text-align: center;
    color: #48aadd;
    position: relative;
    top: 2.2px;
  }
  #page30_sub .contents-6 .items {
    display: grid;
    grid-template-columns: 310px;
    row-gap: 20px;
    justify-content: center;
  }
  #page30_sub .contents-6 .items .images {
    margin-bottom: -17.6px;
    border-radius: 50%;
    position: relative;
    z-index: 1;
  }
  #page30_sub .contents-6 .items .images img {
    display: block;
    width: 185px;
    height: 185px;
    margin: 0 auto;
    border: solid 7.5px #fff;
    border-radius: 50%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-6 .items .texts {
    padding-bottom: 21.5px;
    position: relative;
  }
  #page30_sub .contents-6 .items .texts::before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% + 26px + 21.5px);
    border-radius: 5px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  #page30_sub .contents-6 .items .texts h3 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, min-content);
    row-gap: 15px;
    justify-content: center;
    margin-bottom: 12.5px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.47;
    letter-spacing: 1.36px;
    text-align: center;
    color: #48aadd;
    position: relative;
    z-index: 1;
  }
  #page30_sub .contents-6 .items .texts h3 strong {
    font-family: "Montserrat", sans-serif;
    font-size: 33px;
    font-weight: bold;
    line-height: 23.9px;
    letter-spacing: 1.32px;
    text-align: center;
    background-image: linear-gradient(180deg, rgb(180, 224, 242) 0%, rgb(240, 246, 248) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
  }
  #page30_sub .contents-6 .items .texts h3 strong::after {
    content: "";
    display: block;
    width: 29.3px;
    height: 0.5px;
    border-bottom: dashed 1px #69b9e3;
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-6 .items .texts p {
    width: 250px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
    position: relative;
    z-index: 1;
  }
  #page30_sub .contents-7 {
    width: 100%;
    padding: 45px 0;
    position: relative;
  }
  #page30_sub .contents-7::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-1/menu_mushiba_smp18.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  #page30_sub .contents-7 p {
    width: 328px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-8 {
    width: 100%;
    max-width: 390px;
    margin: 74px auto 60px;
    border: solid 10px #f5f5f5;
    box-sizing: border-box;
    position: relative;
  }
  #page30_sub .contents-8 h2 {
    display: block;
    width: 358.45px;
    background-color: #fff;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 33px;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  #page30_sub .contents-8 h2::before {
    content: "";
    display: block;
    width: 21.2px;
    height: 21.2px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-3/daiya.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30_sub .contents-8 h2::after {
    content: "";
    display: block;
    width: 21.2px;
    height: 21.2px;
    background-image: url(/wp-content/themes/cf_originaltheme/images/page02/page30-3/daiya.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
  }
  #page30_sub .contents-8 .items {
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
    width: 296.5px;
    margin: 0 auto;
    padding: 40px 0 35px;
  }
  #page30_sub .contents-8 .items .item {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
  }
  #page30_sub .contents-8 .items .item .images {
    width: 260px;
    margin: 0 auto;
  }
  #page30_sub .contents-8 .items .item .images img {
    width: 100%;
    height: 160.95px;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-8 .items .item .texts h3 {
    margin-bottom: 10px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.29;
    letter-spacing: 1.36px;
    text-align: center;
    color: #48aadd;
  }
  #page30_sub .contents-8 .items .item .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-9 {
    width: 100%;
    margin-bottom: 60px;
  }
  #page30_sub .contents-9 h2 {
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-9 .items {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 375px;
    margin: 0 auto 20px;
    position: relative;
  }
  #page30_sub .contents-9 .items::after {
    content: "";
    width: 1px;
    height: calc(100% - 52px);
    background-color: #b4e0f2;
    position: absolute;
    top: 26px;
    left: 101px;
  }
  #page30_sub .contents-9 .items .item {
    display: grid;
    grid-template-columns: 92px 1fr;
    padding: 11.5px 18.5px 11.5px 23px;
    border-radius: 23.75px;
    background-color: #f0f6f8;
    position: relative;
  }
  #page30_sub .contents-9 .items .item::after {
    content: "";
    display: block;
    width: 6.5px;
    height: 6.5px;
    border-radius: 50%;
    background-color: #48aadd;
    position: absolute;
    top: 20.5px;
    left: 98px;
    z-index: 1;
  }
  #page30_sub .contents-9 .items .item p.num {
    display: grid;
    grid-template-columns: repeat(2, min-content);
    -moz-column-gap: 5px;
         column-gap: 5px;
  }
  #page30_sub .contents-9 .items .item p.num small {
    font-family: "Montserrat", sans-serif;
    font-size: 13px;
    font-weight: 500;
    line-height: 16px;
    letter-spacing: 0.52px;
    text-align: left;
    color: #69b9e3;
    position: relative;
    top: 4px;
  }
  #page30_sub .contents-9 .items .item p.num strong {
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 24.5px;
    letter-spacing: 0.8px;
    text-align: left;
    color: #69b9e3;
  }
  #page30_sub .contents-9 .items .item h3 {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.33;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
    position: relative;
    top: 2px;
  }
  #page30_sub .contents-9 p.bottom {
    width: 350px;
    margin: 0 auto;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-9.exc .items::after {
    height: calc(100% - 65px);
  }
  #page30_sub .contents-9.reverse {
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-9.reverse .items .item {
    background-color: #fff;
  }
  #page30_sub .contents-10 {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
    position: relative;
  }
  #page30_sub .contents-10 h2 {
    margin-bottom: 51px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-10 .items {
    display: grid;
    grid-template-columns: 310px;
    row-gap: 51px;
    justify-content: center;
  }
  #page30_sub .contents-10 .items .images {
    width: 260px;
    margin: 0 auto 10px;
    position: relative;
  }
  #page30_sub .contents-10 .items .images img {
    width: 100%;
    height: 160.95px;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-10 .items .images p.num {
    font-family: "Montserrat", sans-serif;
    font-size: 28px;
    font-weight: bold;
    line-height: 27.5px;
    letter-spacing: 1.12px;
    text-align: left;
    background-image: linear-gradient(180deg, rgb(180, 224, 242) 0%, rgb(240, 246, 248) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: absolute;
    top: -20.9px;
    left: 11.8px;
  }
  #page30_sub .contents-10 .items .texts h3 {
    margin-bottom: 10px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.56;
    letter-spacing: 1.44px;
    text-align: center;
    color: #48aadd;
  }
  #page30_sub .contents-10 .items .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-10.reverse {
    padding: 0;
    background-color: #fff;
  }
  #page30_sub .contents-11 {
    width: 100%;
    margin-bottom: 60px;
    background-color: #fff;
  }
  #page30_sub .contents-11 h2 {
    display: grid;
    grid-template-columns: 60px min-content;
    -moz-column-gap: 10px;
         column-gap: 10px;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-11 h2 img {
    width: 100%;
  }
  #page30_sub .contents-11 .wrapper {
    display: grid;
    grid-template-columns: 330px;
    row-gap: 30px;
    justify-content: center;
    justify-items: center;
  }
  #page30_sub .contents-11 .wrapper .images {
    grid-column: 1/2;
    grid-row: 1/2;
    width: 255px;
  }
  #page30_sub .contents-11 .wrapper .images img {
    width: 100%;
    border-radius: 15px;
  }
  #page30_sub .contents-11 .wrapper .texts {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  #page30_sub .contents-11 .wrapper .texts h3 {
    display: inline-block;
    margin-bottom: 10px;
    padding: 0 10px;
    border-radius: 2.5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 29px;
    letter-spacing: 0.48px;
    text-align: left;
    color: #fff;
  }
  #page30_sub .contents-11 .wrapper .texts p {
    margin-bottom: 15px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-11 .wrapper .texts p:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #page30_sub .contents-11 .wrapper .texts .text {
    margin-bottom: 15px;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  #page30_sub .contents-11 .wrapper .texts .text p {
    display: grid;
    grid-template-columns: 15px 1fr;
    -moz-column-gap: 5px;
         column-gap: 5px;
    justify-content: center;
    margin-bottom: 0;
  }
  #page30_sub .contents-11 .wrapper .texts .text p img {
    position: relative;
    top: 4.6px;
  }
  #page30_sub .contents-11.reverse {
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-12 {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-12 h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
    margin-bottom: 30px;
  }
  #page30_sub .contents-12 .items {
    display: grid;
    grid-template-columns: 328px;
    row-gap: 30px;
    justify-content: center;
  }
  #page30_sub .contents-12 .items .item {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 164.05px auto;
    row-gap: 20px;
    justify-items: center;
  }
  #page30_sub .contents-12 .items .item .images {
    width: 265px;
  }
  #page30_sub .contents-12 .items .item .images img {
    width: 100%;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-12 .items .item .texts {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 35px;
    position: relative;
  }
  #page30_sub .contents-12 .items .item .texts h3 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.56;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
    position: relative;
  }
  #page30_sub .contents-12 .items .item .texts h3::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: dashed 0.5px #48aadd;
    position: absolute;
    bottom: -14.75px;
    left: 0;
  }
  #page30_sub .contents-12 .items .item .texts .text {
    display: flex;
    -moz-column-gap: 5px;
         column-gap: 5px;
    position: absolute;
    top: 0;
    right: 0;
  }
  #page30_sub .contents-12 .items .item .texts .text p {
    display: inline-block;
    padding: 0 5px;
    border-radius: 2.5px;
    background-color: #7daebe;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: 0.45px;
    text-align: right;
    color: #fff;
  }
  #page30_sub .contents-12 .items .item .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-13 {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-13 h2 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
    margin-bottom: 20px;
  }
  #page30_sub .contents-13 p.description {
    width: 350px;
    margin: 0 auto 30px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-13 .items {
    display: grid;
    grid-template-columns: 350px;
    row-gap: 30px;
    justify-content: center;
  }
  #page30_sub .contents-13 .items .item {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 164.05px auto;
    row-gap: 20px;
    justify-items: center;
  }
  #page30_sub .contents-13 .items .item .images {
    width: 265px;
  }
  #page30_sub .contents-13 .items .item .images img {
    width: 100%;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-13 .items .item .texts {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 15px;
  }
  #page30_sub .contents-13 .items .item .texts h3 {
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.56;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .contents-13 .items .item .texts .text {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 2.5px;
  }
  #page30_sub .contents-13 .items .item .texts .text p {
    display: grid;
    grid-template-columns: min-content 1fr;
    -moz-column-gap: 7.5px;
         column-gap: 7.5px;
    position: relative;
  }
  #page30_sub .contents-13 .items .item .texts .text p::after {
    content: "";
    display: block;
    width: 301.5px;
    height: 1px;
    border-bottom: dashed 1px #69b9e3;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  #page30_sub .contents-13 .items .item .texts .text p strong {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 100%;
    padding: 0 7px;
    box-sizing: border-box;
    border-radius: 1px;
    background-color: #69b9e3;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 31px;
    letter-spacing: 0.75px;
    text-align: left;
    color: #fff;
    white-space: nowrap;
  }
  #page30_sub .contents-13 .items .item .texts .text p span {
    padding-top: 5.1px;
    padding-bottom: 6.5px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-13 .items .item .texts .text p span.is-multiline {
    padding-top: 3.3px;
    padding-bottom: 4.7px;
  }
  #page30_sub .contents-14 {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-14 h2 {
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-14 .image {
    width: 93.75%;
    margin: 0 0 0 auto;
    /* 見た目はSwiper scrollbarそのまま */
  }
  #page30_sub .contents-14 .image .scrollhint-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  #page30_sub .contents-14 .image .scrollhint-wrap::-webkit-scrollbar {
    display: none;
  }
  #page30_sub .contents-14 .image .scroll-inner {
    width: -moz-max-content;
    width: max-content; /* 中身幅分だけ伸ばす */
  }
  #page30_sub .contents-14 .image img {
    width: 939.475px;
    max-width: none;
    display: block;
  }
  #page30_sub .contents-14 .image .swiper-scrollbar {
    width: 245px;
    height: 6px;
    margin: 20px auto 0;
    border-radius: 3px;
    background: #cecece;
    position: relative;
  }
  #page30_sub .contents-14 .image .swiper-scrollbar-drag {
    height: 6px;
    border-radius: 3px;
    background-color: #48aadd;
    /* ここはJSで幅と位置を動かす */
    width: 40px;
    transform: translateX(0);
  }
  #page30_sub .contents-15 {
    width: 100%;
    margin-bottom: 60px;
  }
  #page30_sub .contents-15 h2 {
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-15 .image {
    width: 93.75%;
    margin: 0 0 0 auto;
    /* 見た目はSwiper scrollbarそのまま */
  }
  #page30_sub .contents-15 .image .scrollhint-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  #page30_sub .contents-15 .image .scrollhint-wrap::-webkit-scrollbar {
    display: none;
  }
  #page30_sub .contents-15 .image .scroll-inner {
    width: -moz-max-content;
    width: max-content; /* 中身幅分だけ伸ばす */
  }
  #page30_sub .contents-15 .image img {
    width: 702px;
    max-width: none;
    display: block;
  }
  #page30_sub .contents-15 .image .swiper-scrollbar {
    width: 245px;
    height: 6px;
    margin: 20px auto 0;
    border-radius: 3px;
    background: #cecece;
    position: relative;
  }
  #page30_sub .contents-15 .image .swiper-scrollbar-drag {
    height: 6px;
    border-radius: 3px;
    background-color: #48aadd;
    /* ここはJSで幅と位置を動かす */
    width: 40px;
    transform: translateX(0);
  }
  #page30_sub .contents-16 {
    width: 310px;
    margin: 0 auto 60px;
    position: relative;
  }
  #page30_sub .contents-16 h2 {
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-16 p.description {
    margin-bottom: 30px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-16 h3 {
    display: grid;
    grid-template-columns: 21.2px 1fr;
    -moz-column-gap: 6.5px;
         column-gap: 6.5px;
    align-items: center;
    margin-bottom: 20px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: 1.44px;
    text-align: left;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-16 h3:nth-last-of-type(1) {
    margin-top: 30px;
  }
  #page30_sub .contents-16 .items {
    display: grid;
    grid-template-columns: 310px;
    row-gap: 30px;
    justify-content: center;
  }
  #page30_sub .contents-16 .items .images {
    width: 260px;
    margin: 0 auto 10px;
    position: relative;
  }
  #page30_sub .contents-16 .items .images img {
    width: 100%;
    height: 160.95px;
    border-radius: 15px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #page30_sub .contents-16 .items .texts h3 {
    display: block;
    margin-bottom: 10px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.56;
    letter-spacing: 1.44px;
    text-align: center;
    color: #48aadd;
  }
  #page30_sub .contents-16 .items .texts h3:nth-last-of-type(1) {
    margin-top: 0;
  }
  #page30_sub .contents-16 .items .texts p {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.53;
    letter-spacing: 0.6px;
    text-align: left;
    color: #5c5c5c;
  }
  #page30_sub .contents-16 .items .texts p.exc {
    margin-top: 10px;
  }
  #page30_sub .contents-16.reverse {
    padding: 0;
    background-color: #fff;
  }
  #page30_sub .contents-17 {
    width: 100%;
    margin-bottom: 60px;
    padding: 45px 0;
    background-color: #f0f6f8;
  }
  #page30_sub .contents-17 h2 {
    margin-bottom: 30px;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 2.3px;
    text-align: center;
    color: #444;
  }
  #page30_sub .contents-17 h3 {
    display: grid;
    grid-template-columns: 21.2px 1fr;
    -moz-column-gap: 6.5px;
         column-gap: 6.5px;
    align-items: center;
    width: 93.75%;
    margin: 0 0 20px auto;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
    letter-spacing: 1.44px;
    text-align: left;
    color: #444;
    white-space: nowrap;
  }
  #page30_sub .contents-17 h3:nth-last-of-type(1) {
    margin: 0 0 10px auto;
  }
  #page30_sub .contents-17 h4 {
    width: 93.75%;
    margin: 0 0 10px auto;
    font-family: "Zen Maru Gothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 23px;
    letter-spacing: 1.44px;
    text-align: left;
    color: #48aadd;
  }
  #page30_sub .contents-17 h4:nth-last-of-type(1) {
    margin-top: 20px;
  }
  #page30_sub .contents-17 .image-1 {
    width: 93.75%;
    margin: 0 0 0 auto;
    /* 見た目はSwiper scrollbarそのまま */
  }
  #page30_sub .contents-17 .image-1 .scrollhint-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  #page30_sub .contents-17 .image-1 .scrollhint-wrap::-webkit-scrollbar {
    display: none;
  }
  #page30_sub .contents-17 .image-1 .scroll-inner {
    width: -moz-max-content;
    width: max-content; /* 中身幅分だけ伸ばす */
  }
  #page30_sub .contents-17 .image-1 img {
    width: 681.5px;
    max-width: none;
    display: block;
  }
  #page30_sub .contents-17 .image-1 .swiper-scrollbar {
    width: 245px;
    height: 6px;
    margin: 20px auto 0;
    border-radius: 3px;
    background: #cecece;
    position: relative;
  }
  #page30_sub .contents-17 .image-1 .swiper-scrollbar-drag {
    height: 6px;
    border-radius: 3px;
    background-color: #48aadd;
    /* ここはJSで幅と位置を動かす */
    width: 40px;
    transform: translateX(0);
  }
  #page30_sub .contents-17 .image-1 .scroll-hint-icon {
    top: 50%;
    transform: translateY(-50%) scale(0.8);
    -webkit-transform: translateY(-50%) scale(0.8);
    -ms-transform: translateY(-50%) scale(0.8);
  }
  #page30_sub .contents-17 .image-2 {
    width: 93.75%;
    margin: 0 0 0 auto;
    /* 見た目はSwiper scrollbarそのまま */
  }
  #page30_sub .contents-17 .image-2 .scrollhint-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  #page30_sub .contents-17 .image-2 .scrollhint-wrap::-webkit-scrollbar {
    display: none;
  }
  #page30_sub .contents-17 .image-2 .scroll-inner {
    width: -moz-max-content;
    width: max-content; /* 中身幅分だけ伸ばす */
  }
  #page30_sub .contents-17 .image-2 img {
    width: 871.5px;
    max-width: none;
    display: block;
  }
  #page30_sub .contents-17 .image-2 .swiper-scrollbar {
    width: 245px;
    height: 6px;
    margin: 20px auto 0;
    border-radius: 3px;
    background: #cecece;
    position: relative;
  }
  #page30_sub .contents-17 .image-2 .swiper-scrollbar-drag {
    height: 6px;
    border-radius: 3px;
    background-color: #48aadd;
    /* ここはJSで幅と位置を動かす */
    width: 40px;
    transform: translateX(0);
  }
  #page30_sub .contents-17 .image-2 .scroll-hint-icon {
    top: 50%;
    transform: translateY(-50%) scale(0.8);
    -webkit-transform: translateY(-50%) scale(0.8);
    -ms-transform: translateY(-50%) scale(0.8);
  }
  #page30_sub .contents-17 .image-3 {
    width: 93.75%;
    margin: 0 0 0 auto;
    /* 見た目はSwiper scrollbarそのまま */
  }
  #page30_sub .contents-17 .image-3 .scrollhint-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  #page30_sub .contents-17 .image-3 .scrollhint-wrap::-webkit-scrollbar {
    display: none;
  }
  #page30_sub .contents-17 .image-3 .scroll-inner {
    width: -moz-max-content;
    width: max-content; /* 中身幅分だけ伸ばす */
  }
  #page30_sub .contents-17 .image-3 img {
    width: 871.5px;
    max-width: none;
    display: block;
  }
  #page30_sub .contents-17 .image-3 .swiper-scrollbar {
    width: 245px;
    height: 6px;
    margin: 20px auto 0;
    border-radius: 3px;
    background: #cecece;
    position: relative;
  }
  #page30_sub .contents-17 .image-3 .swiper-scrollbar-drag {
    height: 6px;
    border-radius: 3px;
    background-color: #48aadd;
    /* ここはJSで幅と位置を動かす */
    width: 40px;
    transform: translateX(0);
  }
  #page30_sub .contents-17 .image-3 .scroll-hint-icon {
    top: 50%;
    transform: translateY(-50%) scale(0.8);
    -webkit-transform: translateY(-50%) scale(0.8);
    -ms-transform: translateY(-50%) scale(0.8);
  }
}/*# sourceMappingURL=page02.css.map */