<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
*:where(:not(iframe, canvas, img, svg, video):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

a, button {
  cursor: revert;
}

ol, ul, menu {
  list-style: none;
}

img {
  max-width: 100%;
}

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
       appearance: revert;
}

::-webkit-input-placeholder {
  color: unset;
}

::-moz-placeholder {
  color: unset;
}

:-ms-input-placeholder {
  color: unset;
}

::-ms-input-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

html {
  font-size: 62.5%;
}

body {
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1024px) {
  body {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 520px) {
  body {
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 520px) {
  h1 {
    margin-bottom: 18px;
  }
}

h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  font-size: 3.5rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.11em;
  position: relative;
  margin-bottom: 90px;
}
@media screen and (max-width: 1024px) {
  h2 {
    font-size: 3rem;
    margin-bottom: 70px;
  }
}
@media screen and (max-width: 767px) {
  h2 {
    font-size: 2.4rem;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 520px) {
  h2 {
    font-size: 2rem;
    margin-bottom: 37.5px;
  }
}
h2 span {
  display: block;
  font-size: 2rem;
  font-family: "Poppins", sans-serif;
  font-style: italic;
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #3C6AC4;
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  h2 span {
    font-size: 1.6rem;
    margin-bottom: 6px;
  }
}
h2::after {
  content: "";
  display: block;
  width: 31.5px;
  border-bottom: 2px solid #7174BE;
  position: absolute;
  left: 50%;
  bottom: -32px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  rotate: -50deg;
}
@media screen and (max-width: 1024px) {
  h2::after {
    bottom: -22px;
  }
}
@media screen and (max-width: 767px) {
  h2::after {
    width: 24px;
    bottom: -18px;
  }
}
@media screen and (max-width: 520px) {
  h2::after {
    bottom: -12px;
  }
}
@media screen and (max-width: 520px) {
  h2::after {
    width: 14.2px;
  }
}

p {
  line-height: 1.5;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  p {
    margin-bottom: 36px;
  }
}
@media screen and (max-width: 520px) {
  p {
    margin-bottom: 22px;
  }
}

img {
  max-width: 100%;
}

a {
  color: #333333;
}

.l-inner {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 40px;
}
@media screen and (max-width: 767px) {
  .l-inner {
    padding: 0 32px;
  }
}
@media screen and (max-width: 520px) {
  .l-inner {
    padding: 0 20px;
  }
}

.cv {
  display: block;
  font-size: 3.2rem;
  font-family: "Noto Serif JP", sans-serif;
  font-weight: bold;
  text-align: center;
  line-height: 92px;
  letter-spacing: 0.03em;
  color: #fff;
  width: 100%;
  max-width: 570px;
  background: -webkit-gradient(linear, left top, right top, from(#FEA005), color-stop(20%, #EBB000), color-stop(45%, #FF9F00), to(#F17500));
  background: linear-gradient(to right, #FEA005, #EBB000 20%, #FF9F00 45%, #F17500);
  border-radius: 400px;
  margin: 0 auto;
  -webkit-box-shadow: 0 6px 0 0 #9B5D00;
          box-shadow: 0 6px 0 0 #9B5D00;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .cv {
    max-width: 520px;
    font-size: 2.8rem;
    line-height: 72px;
  }
}
@media screen and (max-width: 767px) {
  .cv {
    font-size: 2.4rem;
    line-height: 64px;
    letter-spacing: 0.08em;
    max-width: 400px;
  }
}
@media screen and (max-width: 520px) {
  .cv {
    font-size: clamp(1.4rem, 5vw, 2.2rem);
    line-height: clamp(44px, 14vw, 64px);
    -webkit-box-shadow: 0 4px 0 0 #9B5D00;
            box-shadow: 0 4px 0 0 #9B5D00;
  }
}
.cv:hover {
  opacity: 0.5;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .cv:hover {
    opacity: 1;
  }
}
.cv::after {
  content: "";
  /*絶対配置で波紋位置を決める*/
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  /*波紋の形状*/
  background: radial-gradient(circle, #fff 10%, transparent 10%) no-repeat 50%;
  -webkit-transform: scale(10, 10);
          transform: scale(10, 10);
  /*はじめは透過0に*/
  opacity: 0;
  /*アニメーションの設定*/
  -webkit-transition: opacity 1s, -webkit-transform 0.3s;
  transition: opacity 1s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 1s;
  transition: transform 0.3s, opacity 1s, -webkit-transform 0.3s;
}
.cv:active::after {
  -webkit-transform: scale(0, 0);
          transform: scale(0, 0);
  -webkit-transition: 0s;
  transition: 0s;
  opacity: 0.7;
}

.red {
  color: #F90D0D;
}

.bold {
  font-weight: bold;
}

.number {
  font-size: 4.2rem;
  line-height: 50px;
  letter-spacing: 0.017em;
  font-family: din-2014, sans-serif;
  font-weight: 600;
  font-style: normal;
}
@media screen and (max-width: 1024px) {
  .number {
    font-size: 3.5rem;
  }
}

@media screen and (max-width: 767px) {
  .br-pc {
    display: none;
  }
}

.br-m {
  display: none;
}
@media screen and (max-width: 767px) {
  .br-m {
    display: block;
  }
}

.br-s {
  display: none;
}
@media screen and (max-width: 520px) {
  .br-s {
    display: block;
  }
}

section.block {
  margin-bottom: 47px;
}
@media screen and (max-width: 520px) {
  section.block {
    margin-bottom: 24px;
  }
}
section.block:last-of-type {
  margin-bottom: 70px;
}
@media screen and (max-width: 520px) {
  section.block:last-of-type {
    margin-bottom: 24px;
  }
}

section.block h3.primary-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-size: 3.5rem;
  font-weight: bold;
  letter-spacing: 0.053em;
  color: #fff;
  background-color: #3C6AC4;
  height: 117px;
}
@media screen and (max-width: 1024px) {
  section.block h3.primary-title {
    font-size: 2.6rem;
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  section.block h3.primary-title {
    font-size: 1.8rem;
    height: 70px;
  }
}
@media screen and (max-width: 520px) {
  section.block h3.primary-title {
    font-size: 1.5rem;
    height: 57px;
  }
}
section.block h3.primary-title .primary-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.5rem;
}
@media screen and (max-width: 1024px) {
  section.block h3.primary-title .primary-number {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  section.block h3.primary-title .primary-number {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 520px) {
  section.block h3.primary-title .primary-number {
    font-size: 1.4rem;
  }
}
section.block h3.primary-title .primary-number span {
  font-size: 8rem;
  letter-spacing: -0.039em;
  font-family: din-2014, sans-serif;
  font-weight: 600;
  font-style: normal;
  margin-top: 4px;
  margin-left: 41px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  section.block h3.primary-title .primary-number span {
    font-size: 6.2rem;
    margin-left: 38px;
  }
}
@media screen and (max-width: 767px) {
  section.block h3.primary-title .primary-number span {
    margin-left: 21px;
    margin-top: 2px;
  }
}
@media screen and (max-width: 520px) {
  section.block h3.primary-title .primary-number span {
    font-size: 4.4rem;
    margin-left: 16px;
  }
}
section.block h3.primary-title .primary-number span::before {
  content: "";
  display: block;
  border-top: 3px solid #fff;
  width: 21px;
  position: absolute;
  top: 50%;
  left: -27px;
}
@media screen and (max-width: 1024px) {
  section.block h3.primary-title .primary-number span::before {
    width: 16px;
  }
}
@media screen and (max-width: 767px) {
  section.block h3.primary-title .primary-number span::before {
    border-width: 2px;
    width: 7px;
    left: -13px;
  }
}

section.block .primary-block {
  background-color: #fff;
  padding: 41px 38px 47px;
}
@media screen and (max-width: 767px) {
  section.block .primary-block {
    padding: 30px 28px 36px;
  }
}
@media screen and (max-width: 520px) {
  section.block .primary-block {
    padding: 15px 17px 22px;
  }
}
section.block .primary-block p {
  max-width: 754px;
  margin: 0 auto;
  margin-bottom: 16px;
}
section.block .primary-block img {
  display: block;
  max-width: 520px;
  width: 100%;
  margin: 0 auto;
  display: block;
  -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.42);
          box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.42);
}
@media screen and (max-width: 767px) {
  section.block .primary-block img {
    min-width: 300px;
    max-width: 400px;
    width: 85%;
  }
}
@media screen and (max-width: 520px) {
  section.block .primary-block img {
    min-width: 200px;
  }
}

section.block .secondary-block {
  background-color: #fff;
  padding: 47px 38px;
}
@media screen and (max-width: 767px) {
  section.block .secondary-block {
    padding: 36px 38px;
  }
}
@media screen and (max-width: 520px) {
  section.block .secondary-block {
    padding: 19px 17px 24px;
  }
}
section.block .secondary-block .secondary-title {
  font-size: 3rem;
  font-weight: bold;
  margin-bottom: 16px;
}
@media screen and (max-width: 1024px) {
  section.block .secondary-block .secondary-title {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  section.block .secondary-block .secondary-title {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 520px) {
  section.block .secondary-block .secondary-title {
    font-size: 2rem;
    margin-bottom: 18px;
  }
}

section.block .title-banner {
  font-size: 3.5rem;
  font-weight: bold;
  letter-spacing: 0.053em;
  line-height: 97px;
  color: #fff;
  background-color: #3C6AC4;
}

.circle {
  width: 18px;
  height: 18px;
  background-color: #3C6AC4;
  border-radius: 50%;
  margin: 46px auto;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .circle {
    width: 14px;
    height: 14px;
  }
}
@media screen and (max-width: 767px) {
  .circle {
    width: 9px;
    height: 9px;
  }
}
@media screen and (max-width: 767px) {
  .circle {
    margin: 23px auto;
  }
}
.circle::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background-color: #3C6AC4;
  border-radius: 50%;
  position: absolute;
  bottom: 25px;
}
@media screen and (max-width: 1024px) {
  .circle::before {
    width: 14px;
    height: 14px;
  }
}
@media screen and (max-width: 767px) {
  .circle::before {
    width: 9px;
    height: 9px;
  }
}
@media screen and (max-width: 767px) {
  .circle::before {
    bottom: 13px;
  }
}
.circle::after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background-color: #3C6AC4;
  border-radius: 50%;
  position: absolute;
  top: 25px;
}
@media screen and (max-width: 1024px) {
  .circle::after {
    width: 14px;
    height: 14px;
  }
}
@media screen and (max-width: 767px) {
  .circle::after {
    width: 9px;
    height: 9px;
  }
}
@media screen and (max-width: 767px) {
  .circle::after {
    top: 13px;
  }
}

.low-title {
  font-size: 5rem;
  font-weight: bold;
  text-align: center;
  margin: 40px auto 62px;
}

.wrapper {
  overflow-x: hidden;
}

.fv {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .fv {
    margin-bottom: 42px;
  }
}

.fv .cv {
  margin-bottom: 70px;
}

.fv p {
  text-align: center;
}

@media screen and (max-width: 767px) {
  .fv .cv {
    margin-bottom: 30px;
  }
  .fv p {
    text-align: left;
  }
}



.about {
  padding-top: 125px;
  padding-bottom: 80px;
  background-color: #F5F9FF;
}
@media screen and (max-width: 1024px) {
  .about {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .about {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .about {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
@media screen and (max-width: 520px) {
  .about {
    padding-bottom: 48px;
  }
}

.about .l-inner p {
  max-width: 732px;
  margin: 0 auto 48px;
}
@media screen and (max-width: 767px) {
  .about .l-inner p {
    margin-bottom: 36px;
  }
}
.about .l-inner .youtube {
  position: relative;
  width: 100%; /* 横幅は100%にしておく(ここを変えたい場合は実装コード2の方法を確認してください) */
  height: 0; /* 高さは0にしておく(padding-topで高さを指定するため) */
  padding-top: 56.25%; /* 高さを指定(16:9) */
}
.about .l-inner .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.recommend {
  padding-bottom: 34px;
}

.recommend h2 {
  letter-spacing: 0.08em;
  color: #fff;
  background-color: #3C6AC4;
  padding: 60px 0;
  margin-bottom: 156px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .recommend h2 {
    padding: 42px 0;
  }
}
@media screen and (max-width: 767px) {
  .recommend h2 {
    font-size: 2.5rem;
    padding: 30px 0;
    margin-bottom: 70px;
  }
}
@media screen and (max-width: 520px) {
  .recommend h2 {
    font-size: 1.5rem;
    padding: 16px 10px;
    margin-bottom: 14px;
  }
}
.recommend h2::after {
  display: none;
}
.recommend h2::before {
  content: "";
  display: block;
  width: 110px;
  border-top: 40px solid #3C6AC4;
  border-right: 55px solid transparent;
  border-left: 55px solid transparent;
  position: absolute;
  left: 50%;
  bottom: 0.5px;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
}
@media screen and (max-width: 767px) {
  .recommend h2::before {
    width: 60px;
    border-top: 28px solid #3C6AC4;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
  }
}
@media screen and (max-width: 520px) {
  .recommend h2::before {
    width: 41px;
    border-top: 19px solid #3C6AC4;
    border-right: 20.5px solid transparent;
    border-left: 20.5px solid transparent;
  }
}
.recommend h2 span {
  font-family: "Noto Sans JP", serif;
  font-style: normal;
  display: block;
  font-size: 10rem;
  font-weight: 900;
  color: #3C6AC4;
  opacity: 0.2;
  text-align: left;
  letter-spacing: -0.041em;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  position: absolute;
  top: 144px;
  left: 17px;
  right: 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  white-space: nowrap;
}
@media screen and (max-width: 1024px) {
  .recommend h2 span {
    font-size: 7rem;
  }
}
@media screen and (max-width: 767px) {
  .recommend h2 span {
    font-size: 5rem;
    top: 60px;
  }
}
@media screen and (max-width: 520px) {
  .recommend h2 span {
    font-size: 2.5rem;
    top: 42px;
  }
}

.recommend .recommend-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: 17px;
}
@media screen and (max-width: 767px) {
  .recommend .recommend-list {
    margin-left: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.recommend .recommend-list .recommend-item {
  letter-spacing: normal;
  max-width: 300px;
  width: 25%;
  padding: 27px 12px 31px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .recommend .recommend-list .recommend-item {
    max-width: 315px;
    margin: 0 auto 18px;
    padding: 20px 18px 22px;
    width: 100%;
  }
}
@media screen and (max-width: 520px) {
  .recommend .recommend-list .recommend-item {
    max-width: 270px;
    margin-bottom: 0;
  }
}
.recommend .recommend-list .recommend-item img {
  display: block;
  max-width: 228px;
  width: 19vw;
  border: 4px solid #3C6AC4;
  border-radius: 50%;
  margin: 0 auto 29px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .recommend .recommend-list .recommend-item img {
    max-width: 240px;
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 520px) {
  .recommend .recommend-list .recommend-item img {
    max-width: 200px;
  }
}
.recommend .recommend-list .recommend-item h3 {
  font-size: min(3rem, 2.5vw);
  font-weight: bold;
  text-align: center;
  margin-bottom: 25px;
}
@media screen and (max-width: 767px) {
  .recommend .recommend-list .recommend-item h3 {
    font-size: 3rem;
    margin-bottom: 18px;
  }
}
@media screen and (max-width: 520px) {
  .recommend .recommend-list .recommend-item h3 {
    font-size: 2.1rem;
  }
}
.recommend .recommend-list .recommend-item ul li {
  font-size: min(1.6rem, 1.28vw);
  margin-left: 14px;
  margin-bottom: 12px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .recommend .recommend-list .recommend-item ul li {
    font-size: 1.6rem;
    margin-left: 20px;
  }
}
@media screen and (max-width: 520px) {
  .recommend .recommend-list .recommend-item ul li {
    font-size: 1.3rem;
  }
}
.recommend .recommend-list .recommend-item ul li:last-of-type {
  margin-bottom: 0;
}
.recommend .recommend-list .recommend-item ul li::before {
  content: "";
  display: block;
  border-left: 12px solid #3C6AC4;
  border-top: 11px solid transparent;
  border-bottom: 11px solid transparent;
  position: absolute;
  top: 50%;
  left: -19px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 520px) {
  .recommend .recommend-list .recommend-item ul li::before {
    border-left: 11px solid #3C6AC4;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    left: -17px;
  }
}

.merit {
  padding-top: 125px;
  padding-bottom: 80px;
  background-color: #F5F9FF;
}
@media screen and (max-width: 1024px) {
  .merit {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .merit {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .merit {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
@media screen and (max-width: 520px) {
  .merit {
    padding-bottom: 36px;
  }
}

.merit .l-inner &gt; p {
  text-align: center;
}
.merit .l-inner .cv-wrapper:last-of-type {
  margin-bottom: 0;
}

.cv-wrapper {
  margin-bottom: 53px;
}
@media screen and (max-width: 520px) {
  .cv-wrapper {
    margin-bottom: 36px;
  }
}

.merit section h3.primary-title .primary-number {
  margin-right: 12px;
}
@media screen and (max-width: 767px) {
  .merit section h3.primary-title .primary-number {
    margin-right: 12px;
  }
}

@media screen and (max-width: 520px) {
  .merit .l-inner section.project {
    margin-bottom: 32px;
  }
}
.merit .l-inner section.project .secondary-block .case div {
  max-width: 796px;
  margin: 0 auto;
}
.merit .l-inner section.project .secondary-block .case div:first-of-type {
  margin-bottom: 51px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.project .secondary-block .case div:first-of-type {
    margin-bottom: 24px;
  }
}
.merit .l-inner section.project .secondary-block .case div h4 {
  font-size: 2.5rem;
  margin-left: 24px;
  margin-bottom: 18px;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.project .secondary-block .case div h4 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.project .secondary-block .case div h4 {
    font-size: 1.8rem;
    margin-bottom: 12px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.project .secondary-block .case div h4 {
    font-size: 1.5rem;
  }
}
.merit .l-inner section.project .secondary-block .case div img {
  border: 3px solid #3C6AC4;
}

.merit .l-inner section.connection .secondary-block .secondary-title {
  margin-bottom: 41px;
}
.merit .l-inner section.connection .secondary-block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.connection .secondary-block ul {
    max-width: 580px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.connection .secondary-block ul {
    max-width: 278px;
    width: 100%;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul {
    max-width: 250px;
  }
}
.merit .l-inner section.connection .secondary-block ul.sp-slide .slick-list {
  padding: 2px 2px 4px;
  width: 100%;
  overflow: hidden;
}
.merit .l-inner section.connection .secondary-block ul.sp-slide .slide-arrow {
  width: 18px;
  height: 18px;
  background-color: #3C6AC4;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.merit .l-inner section.connection .secondary-block ul.sp-slide .prev-arrow {
  left: -10px;
}
.merit .l-inner section.connection .secondary-block ul.sp-slide .prev-arrow::before {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  position: absolute;
  top: 25%;
  left: -5%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  rotate: 135deg;
}
.merit .l-inner section.connection .secondary-block ul.sp-slide .next-arrow {
  right: -28px;
}
.merit .l-inner section.connection .secondary-block ul.sp-slide .next-arrow::before {
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-right: 3px solid #fff;
  border-bottom: 3px solid #fff;
  position: absolute;
  top: 25%;
  right: -5%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  rotate: -45deg;
}
.merit .l-inner section.connection .secondary-block ul li {
  font-size: 2rem;
  font-weight: bold;
  font-family: "Script MT", serif;
  text-align: center;
  max-width: 250px;
  width: 100%;
  padding: 23px 10px 27px;
  -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.28);
          box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.28);
  margin: 0 8px 49px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.connection .secondary-block ul li {
    max-width: 100%;
    width: 100%;
    height: 358px;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul li {
    padding: 28px 16px;
    height: 310px;
  }
}
.merit .l-inner section.connection .secondary-block ul li:nth-of-type(4), .merit .l-inner section.connection .secondary-block ul li:nth-of-type(5), .merit .l-inner section.connection .secondary-block ul li:nth-of-type(6) {
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.connection .secondary-block ul li:nth-of-type(4) {
    margin-bottom: 49px;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.connection .secondary-block ul li:nth-of-type(4) {
    margin-bottom: 0;
  }
}
.merit .l-inner section.connection .secondary-block ul li img {
  display: block;
  max-width: 160px;
  margin: 0 auto 48px;
  border-radius: 50%;
  border: 3px solid #3C6AC4;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul li img {
    max-width: 150px;
    margin-bottom: 33px;
  }
}
.merit .l-inner section.connection .secondary-block ul li h4 {
  letter-spacing: 0.053em;
  position: relative;
  margin-bottom: 22px;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul li h4 {
    font-size: 1.3rem;
    margin-bottom: 14.5px;
  }
}
.merit .l-inner section.connection .secondary-block ul li h4::before {
  content: "";
  display: block;
  width: 26.5px;
  border-bottom: 2px solid #3C6AC4;
  position: absolute;
  top: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  rotate: -40deg;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul li h4::before {
    width: 14.7px;
    top: -24px;
  }
}
.merit .l-inner section.connection .secondary-block ul li p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  letter-spacing: normal;
  margin-bottom: 0;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul li p {
    font-size: 1.3rem;
  }
}
.merit .l-inner section.connection .secondary-block ul li p span {
  font-size: 1.3rem;
  color: #3C6AC4;
  margin-bottom: 5px;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.connection .secondary-block ul li p span {
    font-size: 1rem;
  }
}

.merit .l-inner section.event .secondary-block {
  margin-bottom: 49px;
}
.merit .l-inner section.event .secondary-block p:last-of-type {
  margin-bottom: 0;
}

.merit .l-inner section.event section {
  border-top: 5px solid #3C6AC4;
  padding-top: 10px;
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section {
    border-width: 2px;
    padding-top: 2.5px;
  }
}
.merit .l-inner section.event section:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section:last-of-type h4 {
    font-size: clamp(1rem, 4vw, 2rem);
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section:last-of-type h4 span {
    font-size: clamp(1rem, 4.6vw, 2.4rem);
  }
}
.merit .l-inner section.event section h4 {
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.053em;
  color: #3C6AC4;
  margin-bottom: 11px;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.event section h4 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section h4 {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section h4 {
    font-size: 2rem;
  }
}
.merit .l-inner section.event section h4 span {
  font-size: 4.5rem;
  letter-spacing: -0.047em;
  font-family: din-2014, sans-serif;
  font-weight: 600;
  font-style: normal;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.event section h4 span {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section h4 span {
    font-size: 3.4rem;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section h4 span {
    font-size: 2.4rem;
  }
}
.merit .l-inner section.event section .event-content {
  background-color: #fff;
  padding: 48px 40px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section .event-content {
    padding: 36px 38px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section .event-content {
    padding: 19px 17px 24px;
  }
}
.merit .l-inner section.event section .event-content .event-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 43px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section .event-content .event-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section .event-content .event-block {
    margin-bottom: 23px;
  }
}
.merit .l-inner section.event section .event-content .event-block:last-of-type {
  margin-bottom: 0;
}
.merit .l-inner section.event section .event-content .event-block div {
  width: 53.7%;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.event section .event-content .event-block div {
    width: 58%;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section .event-content .event-block div {
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section .event-content .event-block div {
    margin-bottom: 13px;
  }
}
.merit .l-inner section.event section .event-content .event-block div h5 {
  font-size: 3rem;
  font-weight: bold;
  padding-bottom: 21px;
  margin-bottom: 19px;
  border-bottom: 0.5px solid #333;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.event section .event-content .event-block div h5 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section .event-content .event-block div h5 {
    font-size: 2rem;
    padding-bottom: 9px;
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section .event-content .event-block div h5 {
    font-size: 1.5rem;
  }
}
.merit .l-inner section.event section .event-content .event-block div p {
  margin-bottom: 0;
}
.merit .l-inner section.event section .event-content .event-block img {
  display: block;
  width: 34.8%;
  height: 100%;
  -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.42);
          box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.42);
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.event section .event-content .event-block img {
    width: 36%;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.event section .event-content .event-block img {
    min-width: 300px;
    max-width: 400px;
    width: 65%;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.event section .event-content .event-block img {
    min-width: 200px;
    max-width: 300px;
    width: 85%;
  }
}

.merit .l-inner section.course {
  text-align: center;
}
.merit .l-inner section.course h4 {
  font-size: 4rem;
  font-weight: bold;
  margin-bottom: 87px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.course h4 {
    font-size: 3.2rem;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course h4 {
    font-size: 2.6rem;
    margin-bottom: 52px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course h4 {
    font-size: 2rem;
    margin-bottom: 41px;
  }
}
.merit .l-inner section.course h4 span {
  display: block;
  font-size: 2.5rem;
  font-weight: normal;
  color: #3C6AC4;
  margin-top: 23px;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.course h4 span {
    font-size: 2.2rem;
    margin-top: 16px;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course h4 span {
    margin-top: 14px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course h4 span {
    font-size: 1.5rem;
    margin-top: 9px;
  }
}
.merit .l-inner section.course h4::after {
  content: "";
  display: block;
  width: 26.5px;
  border-bottom: 2px solid #3C6AC4;
  position: absolute;
  top: calc(100% + 28px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  rotate: -55deg;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course h4::after {
    width: 22px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course h4::after {
    width: 14.2px;
    top: calc(100% + 10px);
  }
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.course h4::after {
    top: calc(100% + 16px);
  }
}

.merit .l-inner section.course .update {
  max-width: 685px;
  margin: 0 auto;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update {
    margin-bottom: 21px;
  }
}
.merit .l-inner section.course .update:not(:last-of-type) {
  border-bottom: 1px solid #707070;
  margin-bottom: 51px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update:not(:last-of-type) {
    margin-bottom: 32px;
  }
}
.merit .l-inner section.course .update:not(:last-of-type) div {
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update:not(:last-of-type) div {
    margin-bottom: 34px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update:not(:last-of-type) div {
    margin-bottom: 24px;
  }
}
.merit .l-inner section.course .update img {
  display: block;
  max-width: 520px;
  width: 100%;
  margin: 0 auto;
  margin-bottom: 47px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update img {
    min-width: 300px;
    max-width: 400px;
    width: 85%;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update img {
    min-width: 200px;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update img {
    width: 90%;
    min-width: auto;
    margin-bottom: 34px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update img {
    margin-bottom: 20px;
  }
}
.merit .l-inner section.course .update div {
  font-size: 2rem;
  line-height: 51px;
  text-align: center;
  letter-spacing: 0.15em;
  max-width: 266px;
  color: #fff;
  background-color: #3C6AC4;
  border-radius: 10px;
  -webkit-box-shadow: 0 3px 0 rgba(0, 0, 57, 0.57);
          box-shadow: 0 3px 0 rgba(0, 0, 57, 0.57);
  margin: 0 auto;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update div {
    font-size: 1.8rem;
    line-height: 48px;
    max-width: 240px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update div {
    font-size: 1.6rem;
    line-height: 40px;
    max-width: 220px;
  }
}
.merit .l-inner section.course .update div:hover {
  opacity: 0.7;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update div:hover {
    opacity: 1;
  }
}
.merit .l-inner section.course .update ul.update-accordion {
  line-height: 0;
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.merit .l-inner section.course .update ul.update-accordion.is-open {
  line-height: 1;
  height: auto;
  opacity: 1;
  padding: 48px 0 0;
}
.merit .l-inner section.course .update ul.update-accordion.is-open &gt; li {
  margin-bottom: 20px;
}
.merit .l-inner section.course .update ul.update-accordion.is-open h5 {
  line-height: 45px;
  height: auto;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update ul.update-accordion.is-open h5 {
    line-height: 38px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update ul.update-accordion.is-open h5 {
    line-height: 28px;
  }
}
.merit .l-inner section.course .update ul.update-accordion:last-of-type {
  margin-bottom: 0;
}
.merit .l-inner section.course .update ul.update-accordion &gt; li {
  margin-bottom: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.merit .l-inner section.course .update ul.update-accordion &gt; li h5 {
  font-size: 2.3rem;
  font-weight: bold;
  text-align: left;
  height: 0;
  padding: 0 28px;
  overflow: hidden;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  color: #fff;
  background: #3C6AC4;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 {
    font-size: 1.4rem;
    padding: 0 15px;
  }
}
.merit .l-inner section.course .update ul.update-accordion &gt; li h5.is-active span::after {
  rotate: 270deg;
  top: calc(25% - 2px);
  left: 75%;
  opacity: 0;
}
.merit .l-inner section.course .update ul.update-accordion &gt; li h5 span {
  content: "";
  display: block;
  width: 35px;
  height: 35px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 28px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span {
    width: 25px;
    height: 25px;
    right: 18px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span {
    width: 18px;
    height: 18px;
    right: 11px;
  }
}
.merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::before, .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::after {
  content: "";
  display: block;
  width: 18px;
  height: 3px;
  background-color: #3C6AC4;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::before, .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::after {
    width: 14px;
    height: 2px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::before, .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::after {
    width: 10px;
    height: 1.5px;
  }
}
.merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::after {
  width: 3px;
  height: 18px;
  top: 50%;
  left: 50%;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::after {
    width: 2px;
    height: 14px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update ul.update-accordion &gt; li h5 span::after {
    width: 1.5px;
    height: 10px;
  }
}
.merit .l-inner section.course .update ul.update-list {
  background-color: #F5F9FF;
  line-height: 0;
  height: 0;
  padding: 0 25px;
  overflow: hidden;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.merit .l-inner section.course .update ul.update-list.is-open {
  line-height: 1;
  height: auto;
  opacity: 1;
  padding: 17px 25px 23px;
}
.merit .l-inner section.course .update ul.update-list li {
  font-size: 1.8rem;
  text-align: left;
  line-height: 1.4;
  color: #3C6AC4;
  padding: 16px 0;
  border-bottom: 1px solid #707070;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.course .update ul.update-list li {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.course .update ul.update-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 1.4rem;
    border-width: 0.5px;
    padding: 12px 0;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.course .update ul.update-list li {
    font-size: 1.2rem;
  }
}
.merit .l-inner section.course .update ul.update-list li:first-of-type {
  padding-top: 0;
}
.merit .l-inner section.course .update ul.update-list li span {
  white-space: nowrap;
  margin-right: 12px;
}

.merit .l-inner section.correction .secondary-block {
  text-align: center;
}
.merit .l-inner section.correction .secondary-block ul li {
  margin-bottom: 64px;
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.correction .secondary-block ul li {
    margin-bottom: 20px;
  }
}
.merit .l-inner section.correction .secondary-block ul li:last-of-type {
  margin-bottom: 0;
}
.merit .l-inner section.correction .secondary-block ul li h4 {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 25px;
}
@media screen and (max-width: 1024px) {
  .merit .l-inner section.correction .secondary-block ul li h4 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.correction .secondary-block ul li h4 {
    font-size: 1.6rem;
    margin-bottom: 14px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.correction .secondary-block ul li h4 {
    font-size: 1.3rem;
    margin-bottom: 8px;
  }
}
.merit .l-inner section.correction .secondary-block ul li h4 span {
  color: #3C6AC4;
}
.merit .l-inner section.correction .secondary-block ul li img {
  display: block;
  max-width: 520px;
  width: 100%;
  margin: 0 auto;
  -webkit-box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.42);
          box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.42);
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.correction .secondary-block ul li img {
    min-width: 300px;
    max-width: 400px;
    width: 85%;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.correction .secondary-block ul li img {
    min-width: 200px;
  }
}

@media screen and (max-width: 520px) {
  .merit .l-inner section.chance {
    margin-bottom: 32px;
  }
}
.merit .l-inner section.chance .primary-block p.red {
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .merit .l-inner section.chance .primary-block p.red {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 520px) {
  .merit .l-inner section.chance .primary-block p.red {
    margin-bottom: 24px;
  }
}

.content {
  padding-top: 125px;
  padding-bottom: 80px;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  .content {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .content {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .content {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
.content .l-inner &gt; p {
  margin-bottom: 151px;
}
@media screen and (max-width: 767px) {
  .content .l-inner &gt; p {
    margin-bottom: 109px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner &gt; p {
    margin-bottom: 68px;
  }
}
.content .l-inner &gt; p span u {
  text-decoration: underline;
}

.content .l-inner ol.contents {
  margin-bottom: 134px;
}
@media screen and (max-width: 1024px) {
  .content .l-inner ol.contents {
    max-width: 687px;
    margin: 0 auto 134px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents {
    margin-bottom: 56px;
  }
}
.content .l-inner ol.contents &gt; li {
  background-color: #F5F9FF;
  border: 3px solid #3C6AC4;
  border-radius: 20px;
  -webkit-box-shadow: 0 34px 0 #3C6AC4;
          box-shadow: 0 34px 0 #3C6AC4;
  margin-bottom: 231px;
  padding: 62px 38px 48px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li {
    padding: 44px 35px 55px;
    -webkit-box-shadow: 0 26px 0 #3C6AC4;
            box-shadow: 0 26px 0 #3C6AC4;
    margin-bottom: 174px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li {
    border-width: 2px;
    -webkit-box-shadow: 0 12px 0 #3C6AC4;
            box-shadow: 0 12px 0 #3C6AC4;
    margin-bottom: 100px;
  }
}
.content .l-inner ol.contents &gt; li:last-of-type {
  margin-bottom: 0;
}
.content .l-inner ol.contents &gt; li::before {
  content: "";
  display: block;
  width: 206px;
  height: 206px;
  background-color: #F5F9FF;
  border: 3px solid #3C6AC4;
  border-bottom: 0;
  border-radius: 50%;
  position: absolute;
  top: -0.5px;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li::before {
    width: 146px;
    height: 146px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li::before {
    width: 94px;
    height: 94px;
    border-width: 2px;
  }
}
.content .l-inner ol.contents &gt; li::after {
  content: "";
  display: block;
  width: 200px;
  border-bottom: 5px solid #F5F9FF;
  position: absolute;
  top: -4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li::after {
    width: 140px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li::after {
    width: 90px;
  }
}
.content .l-inner ol.contents &gt; li:nth-of-type(2) {
  background-color: #EBF3FF;
}
.content .l-inner ol.contents &gt; li:nth-of-type(2)::before {
  background-color: #EBF3FF;
}
.content .l-inner ol.contents &gt; li:nth-of-type(2)::after {
  border-color: #EBF3FF;
}
.content .l-inner ol.contents &gt; li:nth-of-type(2) ul::after {
  content: "";
  width: 100%;
}
.content .l-inner ol.contents &gt; li:nth-of-type(2) ul li:nth-of-type(n + 2) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.content .l-inner ol.contents &gt; li:nth-of-type(2) div::before {
  border-top: 52px solid #EBF3FF;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li:nth-of-type(2) div::before {
    border-top: 36px solid #EBF3FF;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li:nth-of-type(2) div::before {
    border-top: 21px solid #EBF3FF;
  }
}
.content .l-inner ol.contents &gt; li:nth-of-type(3) {
  background-color: #E4EEFE;
}
.content .l-inner ol.contents &gt; li:nth-of-type(3)::before {
  background-color: #E4EEFE;
}
.content .l-inner ol.contents &gt; li:nth-of-type(3)::after {
  border-color: #E4EEFE;
}
.content .l-inner ol.contents &gt; li:nth-of-type(3) ul::after {
  content: "";
  width: 100%;
}
.content .l-inner ol.contents &gt; li:nth-of-type(3) ul li:nth-of-type(n + 4) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.content .l-inner ol.contents &gt; li:nth-of-type(3) div::before {
  border-top: 52px solid #E4EEFE;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li:nth-of-type(3) div::before {
    border-top: 36px solid #E4EEFE;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li:nth-of-type(3) div::before {
    border-top: 21px solid #E4EEFE;
  }
}
.content .l-inner ol.contents &gt; li div {
  position: absolute;
  top: calc(100% - 0.5px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.content .l-inner ol.contents &gt; li div::before {
  content: "";
  display: block;
  border-top: 52px solid #F5F9FF;
  border-left: 44px solid transparent;
  border-right: 44px solid transparent;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li div::before {
    border-top: 36px solid #F5F9FF;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li div::before {
    border-top: 21px solid #F5F9FF;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
  }
}
.content .l-inner ol.contents &gt; li div::after {
  content: "";
  display: block;
  border-top: 52px solid #3C6AC4;
  border-left: 44px solid transparent;
  border-right: 44px solid transparent;
  margin-top: -18px;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
          transform: translate(-50%, 100%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li div::after {
    border-top: 36px solid #3C6AC4;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    margin-top: -7px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li div::after {
    border-top: 21px solid #3C6AC4;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
  }
}
.content .l-inner ol.contents &gt; li h3 {
  display: inline-block;
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 50px;
  letter-spacing: 0.088em;
  margin-bottom: 20px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .content .l-inner ol.contents &gt; li h3 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li h3 {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 9px;
  }
}
.content .l-inner ol.contents &gt; li h3::before, .content .l-inner ol.contents &gt; li h3::after {
  content: "";
  display: block;
  width: 28px;
  height: 44.5px;
  background-size: cover;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li h3::before, .content .l-inner ol.contents &gt; li h3::after {
    width: 22px;
    height: 35px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li h3::before, .content .l-inner ol.contents &gt; li h3::after {
    width: 12px;
    height: 20px;
  }
}
.content .l-inner ol.contents &gt; li h3::before {
  background-image: url(../images/title-effect01.svg);
  left: -18.5px;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li h3::before {
    left: -7px;
  }
}
.content .l-inner ol.contents &gt; li h3::after {
  background-image: url(../images/title-effect02.svg);
  right: 5px;
  -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%);
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li h3::after {
    right: 6px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li h3 .number {
    font-size: 2.3rem;
  }
}
.content .l-inner ol.contents &gt; li .content-number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 3.5rem;
  letter-spacing: 0.11em;
  position: absolute;
  bottom: calc(100% - 25px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li .content-number {
    font-size: 2.6rem;
    bottom: calc(100% - 28px);
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li .content-number {
    font-size: 2rem;
    bottom: calc(100% - 34px);
  }
}
.content .l-inner ol.contents &gt; li .content-number .number {
  font-size: 7.1rem;
  letter-spacing: 0.039em;
  font-family: din-2014, sans-serif;
  font-weight: 600;
  font-style: normal;
  margin-top: 5px;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li .content-number .number {
    font-size: 6.4rem;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li .content-number .number {
    font-size: 4.9rem;
    margin-top: -4px;
  }
}
.content .l-inner ol.contents &gt; li ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.content .l-inner ol.contents &gt; li ul li {
  width: 100%;
  max-width: 394px;
  margin: 0 auto 45px;
}
@media screen and (max-width: 1024px) {
  .content .l-inner ol.contents &gt; li ul li {
    max-width: 500px;
  }
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li ul li {
    max-width: 400px;
    margin-bottom: 34px;
  }
}
.content .l-inner ol.contents &gt; li ul li:nth-last-of-type(1), .content .l-inner ol.contents &gt; li ul li:nth-last-of-type(2) {
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .content .l-inner ol.contents &gt; li ul li:nth-last-of-type(2) {
    margin-bottom: 45px;
  }
}
.content .l-inner ol.contents &gt; li ul li h4 {
  font-size: 2.2rem;
  line-height: 1.82;
  letter-spacing: 0.088em;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .content .l-inner ol.contents &gt; li ul li h4 {
    font-size: 1.8rem;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 520px) {
  .content .l-inner ol.contents &gt; li ul li h4 {
    font-size: 1.5rem;
  }
}
.content .l-inner ol.contents &gt; li ul li h4 span {
  color: #3C6AC4;
}
.content .l-inner ol.contents &gt; li ul li img {
  border: 1px solid #fff;
  border-radius: 10px;
}

.content .goal {
  color: #fff;
  background-color: #3C6AC4;
  padding: 47px 0 38px;
  margin-bottom: 141px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .content .goal {
    padding: 36px 0 32px;
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 520px) {
  .content .goal {
    padding: 29px 0 25px;
    margin-bottom: 57px;
  }
}
.content .goal .l-inner p.goal-title {
  font-size: 4.5rem;
  font-weight: bold;
  line-height: 1.11;
  letter-spacing: 0.2em;
  margin-bottom: 19px;
}
@media screen and (max-width: 1024px) {
  .content .goal .l-inner p.goal-title {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 767px) {
  .content .goal .l-inner p.goal-title {
    font-size: 3rem;
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 520px) {
  .content .goal .l-inner p.goal-title {
    font-size: 2.5rem;
    margin-bottom: 10px;
  }
}
.content .goal .l-inner p {
  font-size: 2.5rem;
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .content .goal .l-inner p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .content .goal .l-inner p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 520px) {
  .content .goal .l-inner p {
    font-size: 1.3rem;
  }
}
.content .goal::after {
  content: "＋";
  display: block;
  font-size: 6.6rem;
  text-align: center;
  line-height: 1.197;
  color: #333;
  position: absolute;
  top: calc(100% + 34px);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 1024px) {
  .content .goal::after {
    font-size: 5.2rem;
  }
}
@media screen and (max-width: 767px) {
  .content .goal::after {
    font-size: 3.8rem;
    top: calc(100% + 28px);
  }
}
@media screen and (max-width: 520px) {
  .content .goal::after {
    font-size: 2rem;
    top: calc(100% + 16px);
  }
}

.content .extra {
  max-width: 1000px;
  background-color: #F3F4FF;
  border: 2px solid #3C6AC4;
  border-radius: 20px;
  padding: 35px 20px 47px;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  .content .extra {
    padding-bottom: 35px;
  }
}
@media screen and (max-width: 767px) {
  .content .extra {
    padding: 23px 5px 31px;
  }
}
.content .extra h3 {
  display: inline-block;
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 1.43;
  margin-bottom: 16px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .content .extra h3 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .content .extra h3 {
    font-size: 2.6rem;
    margin-bottom: 6px;
  }
}
@media screen and (max-width: 520px) {
  .content .extra h3 {
    font-size: 2.1rem;
  }
}
.content .extra h3::before, .content .extra h3::after {
  content: "";
  display: block;
  width: 28px;
  height: 44.5px;
  background-size: cover;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 767px) {
  .content .extra h3::before, .content .extra h3::after {
    width: 22px;
    height: 35px;
  }
}
@media screen and (max-width: 520px) {
  .content .extra h3::before, .content .extra h3::after {
    width: 12px;
    height: 20px;
  }
}
.content .extra h3::before {
  background-image: url(../images/title-effect01.svg);
  left: -18.5px;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
}
@media screen and (max-width: 520px) {
  .content .extra h3::before {
    left: -7px;
  }
}
.content .extra h3::after {
  background-image: url(../images/title-effect02.svg);
  right: 5px;
  -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%);
}
@media screen and (max-width: 520px) {
  .content .extra h3::after {
    right: 6px;
  }
}
@media screen and (max-width: 767px) {
  .content .extra h3 .number {
    font-size: 3rem;
  }
}
@media screen and (max-width: 520px) {
  .content .extra h3 .number {
    font-size: 2.6rem;
  }
}
.content .extra p {
  margin-bottom: 45px;
}
@media screen and (max-width: 767px) {
  .content .extra p {
    margin-bottom: 18px;
  }
}
.content .extra ul li h4 {
  font-size: 2.2rem;
  line-height: 1.82;
  letter-spacing: 0.088em;
  margin-bottom: 20px;
}
@media screen and (max-width: 1024px) {
  .content .extra ul li h4 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 520px) {
  .content .extra ul li h4 {
    font-size: 1.5rem;
    margin-bottom: 16px;
  }
}
.content .extra ul li h4 span {
  color: #3C6AC4;
}
.content .extra ul li img {
  width: 100%;
  max-width: 394px;
  display: block;
  margin: 0 auto;
  border: 1px solid #fff;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .content .extra ul li img {
    max-width: 400px;
  }
}
@media screen and (max-width: 520px) {
  .content .extra ul li img {
    max-width: 100%;
    width: 82%;
    border: 0px;
  }
}

.tecpoint {
  background-color: #F5F9FF;
  padding-top: 125px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1024px) {
  .tecpoint {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .tecpoint {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .tecpoint {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
.tecpoint .l-inner section.block h3.primary-title {
  font-size: 4.5rem;
}
@media screen and (max-width: 1024px) {
  .tecpoint .l-inner section.block h3.primary-title {
    font-size: 3.5rem;
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  .tecpoint .l-inner section.block h3.primary-title {
    font-size: 3rem;
    height: 70px;
  }
}
@media screen and (max-width: 520px) {
  .tecpoint .l-inner section.block h3.primary-title {
    font-size: 2.5rem;
    height: 57px;
  }
}
.tecpoint .l-inner section.block .primary-block {
  padding-left: 31px;
  padding-right: 31px;
}
@media screen and (max-width: 520px) {
  .tecpoint .l-inner section.block .primary-block {
    padding-left: 17px;
    padding-right: 17px;
  }
}
.tecpoint .l-inner section.block .primary-block p {
  max-width: 844px;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 520px) {
  .tecpoint .l-inner section.block .primary-block p {
    margin-bottom: 0;
  }
}
.tecpoint .l-inner section.block p.primary-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 3.4rem;
  font-weight: bold;
  letter-spacing: 0.138em;
  color: #fff;
  background-color: #3C6AC4;
  height: 117px;
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .tecpoint .l-inner section.block p.primary-title {
    font-size: 2.4rem;
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  .tecpoint .l-inner section.block p.primary-title {
    height: auto;
    padding: 5px 16px 7px;
    text-align: center;
  }
}
@media screen and (max-width: 520px) {
  .tecpoint .l-inner section.block p.primary-title {
    font-size: 2rem;
  }
}
.tecpoint .l-inner section.block p.primary-title .br {
  display: block;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  .tecpoint .l-inner section.block p.primary-title .br {
    font-size: 1.6rem;
    text-align: center;
  }
}
.tecpoint .l-inner section.block p.primary-title .br span {
  font-size: 1.6rem;
  font-weight: normal;
  letter-spacing: 0.034em;
}
@media screen and (max-width: 1024px) {
  .tecpoint .l-inner section.block p.primary-title .br span {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 767px) {
  .tecpoint .l-inner section.block p.primary-title .br span {
    display: block;
  }
}
@media screen and (max-width: 520px) {
  .tecpoint .l-inner section.block p.primary-title .br span {
    font-size: 1rem;
  }
}
.tecpoint .l-inner section.block .secondary-block img {
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.exchange {
  padding-top: 125px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1024px) {
  .exchange {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .exchange {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .exchange {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
.exchange .l-inner section {
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.35);
          box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.35);
}
.exchange .l-inner section:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .exchange .l-inner section h3 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 520px) {
  .exchange .l-inner section h3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-size: 2rem;
    height: 85px;
  }
}
.exchange .l-inner section h3 .primary-number {
  margin-right: 16px;
}
@media screen and (max-width: 520px) {
  .exchange .l-inner section h3 .primary-number {
    margin-right: 0;
    margin-top: -2px;
  }
}
.exchange .l-inner section p {
  max-width: 754px;
  margin: 0 auto;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .exchange .l-inner section p {
    margin-bottom: 36px;
  }
}
@media screen and (max-width: 520px) {
  .exchange .l-inner section p {
    margin-bottom: 22px;
  }
}
.exchange .l-inner section img {
  display: block;
  max-width: 520px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .exchange .l-inner section img {
    min-width: 300px;
    max-width: 400px;
    width: 85%;
  }
}
@media screen and (max-width: 520px) {
  .exchange .l-inner section img {
    min-width: 200px;
  }
}

.price {
  background-color: #F5F9FF;
  padding-top: 125px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1024px) {
  .price {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .price {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .price {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
.price .l-inner h2 {
  margin-bottom: 50px;
}

.price .l-inner .salon-price {
  font-size: 1.7rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.053em;
  margin-bottom: 7.5px;
}
@media screen and (max-width: 1024px) {
  .price .l-inner .salon-price {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .price .l-inner .salon-price {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 520px) {
  .price .l-inner .salon-price {
    font-size: 1rem;
  }
}
.price .l-inner .salon-price strong {
  font-size: 3.4rem;
}
@media screen and (max-width: 1024px) {
  .price .l-inner .salon-price strong {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  .price .l-inner .salon-price strong {
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 520px) {
  .price .l-inner .salon-price strong {
    font-size: 2.5rem;
  }
}
.price .l-inner .salon-price strong .text-blue {
  font-size: 13rem;
  font-family: din-2014, sans-serif;
  font-weight: 600;
  font-style: italic;
  line-height: 1.273;
  letter-spacing: -0.023em;
  color: #3C6AC4;
  margin-right: 20px;
}
@media screen and (max-width: 1024px) {
  .price .l-inner .salon-price strong .text-blue {
    font-size: 11rem;
  }
}
@media screen and (max-width: 767px) {
  .price .l-inner .salon-price strong .text-blue {
    font-size: 9rem;
    margin-right: 16px;
  }
}
@media screen and (max-width: 520px) {
  .price .l-inner .salon-price strong .text-blue {
    font-size: 7.5rem;
    margin-right: 16px;
  }
}
.price .l-inner .salon-price strong .text-blue span {
  font-family: "Noto Sans JP", serif;
  font-size: 9rem;
}
@media screen and (max-width: 767px) {
  .price .l-inner .salon-price strong .text-blue span {
    font-size: 6rem;
  }
}
@media screen and (max-width: 520px) {
  .price .l-inner .salon-price strong .text-blue span {
    font-size: 4rem;
  }
}

.price .l-inner .cv {
  margin-bottom: 47px;
}
@media screen and (max-width: 767px) {
  .price .l-inner .cv {
    margin-bottom: 36px;
  }
}

.price .l-inner p {
  text-align: center;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .price .l-inner p {
    text-align: left;
  }
}

.price .l-inner p:last-of-type {
  text-align: center;
}

.price .l-inner .price-desc {
  margin-bottom: 24px;
}

@media screen and (max-width: 767px) {
  .price .l-inner .price-desc {
    margin-bottom: 20px;
  }
}

.voice {
  padding-top: 125px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1024px) {
  .voice {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .voice {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .voice {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
.voice .l-inner {
  max-width: 1140px;
}

.voice .l-inner section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-radius: 30px;
  padding: 55px 26px 58px;
  margin-bottom: 50px;
  -webkit-box-shadow: 0 3px 20px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 20px rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 1024px) {
  .voice .l-inner section {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 687px;
    margin: 0 auto 50px;
  }
}
@media screen and (max-width: 767px) {
  .voice .l-inner section {
    max-width: 520px;
    padding: 36px 18px 38px;
    margin-bottom: 36px;
  }
}
@media screen and (max-width: 520px) {
  .voice .l-inner section {
    max-width: 400px;
    padding: 20px 17px 18px;
    margin-bottom: 21px;
  }
}
.voice .l-inner section:nth-of-type(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 1024px) {
  .voice .l-inner section:nth-of-type(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.voice .l-inner section:last-of-type {
  margin-bottom: 0;
}
.voice .l-inner section .voice-image {
  width: 28.1%;
}
@media screen and (max-width: 1024px) {
  .voice .l-inner section .voice-image {
    width: 100%;
    max-width: 320px;
  }
}
@media screen and (max-width: 767px) {
  .voice .l-inner section .voice-image {
    max-width: 260px;
  }
}
@media screen and (max-width: 520px) {
  .voice .l-inner section .voice-image {
    max-width: 204px;
  }
}
.voice .l-inner section .voice-image img {
  border-radius: 50%;
  margin-bottom: 31px;
}
@media screen and (max-width: 767px) {
  .voice .l-inner section .voice-image img {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 520px) {
  .voice .l-inner section .voice-image img {
    margin-bottom: 13px;
  }
}
.voice .l-inner section .voice-image p {
  font-size: 2.4rem;
  line-height: 57px;
  text-align: center;
  color: #fff;
  background-color: #3C6AC4;
}
@media screen and (max-width: 767px) {
  .voice .l-inner section .voice-image p {
    font-size: 2rem;
    line-height: 46px;
    margin-bottom: 24px;
  }
}
@media screen and (max-width: 520px) {
  .voice .l-inner section .voice-image p {
    font-size: 1.5rem;
    line-height: 31px;
    margin-bottom: 8.5px;
  }
}
.voice .l-inner section .voice-text {
  width: 68.8%;
}
@media screen and (max-width: 1024px) {
  .voice .l-inner section .voice-text {
    width: 100%;
  }
}
.voice .l-inner section .voice-text h3 {
  font-size: 2.65rem;
  font-weight: bold;
  letter-spacing: normal;
  border-bottom: 1px solid #707070;
  padding-bottom: 12px;
  margin-bottom: 33px;
}
@media screen and (max-width: 1024px) {
  .voice .l-inner section .voice-text h3 {
    font-size: 2.4rem;
    line-height: 1.8;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .voice .l-inner section .voice-text h3 {
    font-size: 2.2rem;
    padding-bottom: 8px;
    margin-bottom: 18px;
  }
}
@media screen and (max-width: 520px) {
  .voice .l-inner section .voice-text h3 {
    font-size: 1.7rem;
    margin-left: 10px;
    margin-right: 10px;
    padding-bottom: 5px;
    margin-bottom: 5px;
  }
}
.voice .l-inner section .voice-text p {
  font-size: 1.53rem;
  line-height: 2.5;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .voice .l-inner section .voice-text p {
    padding: 0 22px;
  }
}
@media screen and (max-width: 520px) {
  .voice .l-inner section .voice-text p {
    font-size: 1.2rem;
  }
}
.voice .l-inner section .voice-text p strong {
  font-weight: bold;
}
.voice .l-inner section .voice-text p strong mark {
  background: linear-gradient(transparent calc(100% - 8px), #FCE40C 8px);
}

.qaa {
  padding-top: 125px;
  padding-bottom: 80px;
  background-color: #F7F7F7;
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .qaa {
    padding-top: 100px;
    padding-bottom: 72px;
  }
}
@media screen and (max-width: 767px) {
  .qaa {
    padding-top: 70px;
    padding-bottom: 48px;
  }
}
@media screen and (max-width: 520px) {
  .qaa {
    padding-top: 42px;
    padding-bottom: 24px;
  }
}
@media screen and (max-width: 520px) {
  .qaa {
    padding-bottom: 36px;
  }
}

.qaa .l-inner ul {
  margin-bottom: 68px;
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul {
    margin-bottom: 32px;
  }
}
.qaa .l-inner ul li {
  border-radius: 3px;
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul li {
    margin-bottom: 18px;
  }
}
@media screen and (max-width: 520px) {
  .qaa .l-inner ul li {
    margin-bottom: 6.4px;
  }
}
.qaa .l-inner ul li:last-of-type {
  margin-bottom: 0;
}
.qaa .l-inner ul li h3 {
  font-weight: bold;
  color: #fff;
  background-color: #1F4382;
  padding: 22px 36px;
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .qaa .l-inner ul li h3 {
    font-size: 1.6rem;
    padding: 18px 30px;
  }
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul li h3 {
    font-size: 1.4rem;
    padding: 12px 20px;
  }
}
@media screen and (max-width: 520px) {
  .qaa .l-inner ul li h3 {
    font-size: 1rem;
    padding: 8px 11px;
  }
}
.qaa .l-inner ul li h3::after {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  border-right: 4px solid #fff;
  border-bottom: 4px solid #fff;
  position: absolute;
  top: 32%;
  right: 28px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  rotate: -45deg;
}
@media screen and (max-width: 1024px) {
  .qaa .l-inner ul li h3::after {
    width: 20px;
    height: 20px;
    border-width: 3px;
    right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul li h3::after {
    width: 16px;
    height: 16px;
    right: 16px;
  }
}
@media screen and (max-width: 520px) {
  .qaa .l-inner ul li h3::after {
    width: 10px;
    height: 10px;
    right: 12px;
    border-width: 2px;
  }
}
.qaa .l-inner ul li h3:hover, .qaa .l-inner ul li h3:active, .qaa .l-inner ul li h3.is-active {
  text-decoration: underline;
}
.qaa .l-inner ul li h3.is-active::after {
  top: 48%;
  right: 35px;
  rotate: 45deg;
}
@media screen and (max-width: 1024px) {
  .qaa .l-inner ul li h3.is-active::after {
    right: 28px;
  }
}
.qaa .l-inner ul li div {
  font-size: 2.1rem;
  line-height: 0;
  height: 0;
  border-bottom: 1px solid #707070;
  border-left: 1px solid #707070;
  border-right: 1px solid #707070;
  padding: 0 28px 0 35px;
  overflow: hidden;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
@media screen and (max-width: 1024px) {
  .qaa .l-inner ul li div {
    font-size: 1.8rem;
    padding: 0 30px;
  }
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul li div {
    font-size: 1.4rem;
    padding: 0 20px;
  }
}
@media screen and (max-width: 520px) {
  .qaa .l-inner ul li div {
    font-size: 1rem;
    padding: 0 11px;
  }
}
.qaa .l-inner ul li div p {
  font-size: 1.6rem;
  font-weight: normal;
  margin-top: 24px;
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .qaa .l-inner ul li div p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul li div p {
    margin-top: 12px;
  }
}
@media screen and (max-width: 520px) {
  .qaa .l-inner ul li div p {
    font-size: 1rem;
    margin-top: 0;
  }
}
.qaa .l-inner ul li div.is-open {
  padding: 17px 28px 30px 35px;
  line-height: 1.5;
  height: auto;
  opacity: 1;
}
@media screen and (max-width: 1024px) {
  .qaa .l-inner ul li div.is-open {
    padding: 18px 30px;
  }
}
@media screen and (max-width: 767px) {
  .qaa .l-inner ul li div.is-open {
    padding: 12px 20px;
  }
}
@media screen and (max-width: 520px) {
  .qaa .l-inner ul li div.is-open {
    padding: 8px 11px;
  }
}

.terms {
  padding: 51px 0;
}

.terms .l-inner ul {
  margin-bottom: 101px;
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul {
    margin-bottom: 61px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul {
    margin-bottom: 41px;
  }
}
.terms .l-inner ul li {
  border-radius: 3px;
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul li {
    margin-bottom: 18px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul li {
    margin-bottom: 6.4px;
  }
}
.terms .l-inner ul li:last-of-type {
  margin-bottom: 0;
}
.terms .l-inner ul li h3 {
  background-color: #F5F0DF;
  padding: 22px 36px;
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .terms .l-inner ul li h3 {
    font-size: 1.6rem;
    padding: 18px 30px;
  }
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul li h3 {
    font-size: 1.4rem;
    padding: 12px 20px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul li h3 {
    font-size: 1rem;
    padding: 8px 11px;
  }
}
.terms .l-inner ul li h3::after {
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  position: absolute;
  top: 32%;
  right: 28px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  rotate: -45deg;
}
@media screen and (max-width: 1024px) {
  .terms .l-inner ul li h3::after {
    width: 20px;
    height: 20px;
    border-width: 3px;
    right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul li h3::after {
    width: 16px;
    height: 16px;
    right: 16px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul li h3::after {
    width: 10px;
    height: 10px;
    right: 12px;
    border-width: 2px;
  }
}
.terms .l-inner ul li h3:hover, .terms .l-inner ul li h3:active, .terms .l-inner ul li h3.is-active {
  text-decoration: underline;
}
.terms .l-inner ul li h3.is-active::after {
  top: 48%;
  right: 35px;
  rotate: 45deg;
}
@media screen and (max-width: 1024px) {
  .terms .l-inner ul li h3.is-active::after {
    right: 28px;
  }
}
.terms .l-inner ul li div {
  font-size: 2.1rem;
  line-height: 0;
  height: 0;
  border-bottom: 1px solid #707070;
  border-left: 1px solid #707070;
  border-right: 1px solid #707070;
  padding: 0 28px 0 35px;
  overflow: hidden;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
@media screen and (max-width: 1024px) {
  .terms .l-inner ul li div {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul li div {
    font-size: 1.4rem;
    padding: 0 20px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul li div {
    font-size: 1rem;
    padding: 0 11px;
  }
}
.terms .l-inner ul li div p {
  font-size: 1.6rem;
  font-weight: normal;
  margin-top: 24px;
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  .terms .l-inner ul li div p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul li div p {
    margin-top: 12px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul li div p {
    font-size: 1rem;
    margin-top: 0;
  }
}
.terms .l-inner ul li div.is-open {
  padding: 17px 28px 30px 35px;
  line-height: 1.5;
  height: auto;
  opacity: 1;
}
@media screen and (max-width: 1024px) {
  .terms .l-inner ul li div.is-open {
    padding: 18px 30px;
  }
}
@media screen and (max-width: 767px) {
  .terms .l-inner ul li div.is-open {
    padding: 12px 20px;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner ul li div.is-open {
    padding: 8px 11px;
  }
}

.terms .l-inner .rule {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: normal;
  overflow: scroll;
  width: 100%;
  height: 216px;
  background-color: #F9F9F9;
  padding: 27px 20px;
}
@media screen and (max-width: 767px) {
  .terms .l-inner .rule {
    font-size: 1rem;
  }
}
@media screen and (max-width: 520px) {
  .terms .l-inner .rule {
    font-size: 0.8rem;
  }
}

footer {
  color: #fff;
  text-align: center;
  background-color: #3C6AC4;
  padding: 38px 0 70px;
}
@media screen and (max-width: 767px) {
  footer {
    padding: 28px 0 22px;
  }
}
@media screen and (max-width: 520px) {
  footer {
    padding-bottom: 42px;
  }
}
footer .l-inner img {
  width: auto;
  height: auto;
  max-width: 82px;
}
@media screen and (max-width: 767px) {
  footer .l-inner img {
    max-width: 65px;
  }
}
footer .l-inner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 20px auto 0;
}
@media screen and (max-width: 520px) {
  footer .l-inner ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
footer .l-inner ul li {
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  footer .l-inner ul li {
    font-size: 1rem;
  }
}
footer .l-inner ul li:first-of-type {
  border-right: 1px solid #fff;
}
@media screen and (max-width: 520px) {
  footer .l-inner ul li:first-of-type {
    border: none;
    margin-bottom: 12px;
  }
}
footer .l-inner ul li a {
  color: #fff;
  padding: 0 7px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
footer .l-inner ul li a:hover {
  opacity: 0.7;
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  footer .l-inner ul li a:hover {
    opacity: 1;
  }
}

.fz15 {
  font-size: 1.8rem;
}

@media screen and (max-width: 1024px) {
  .fz15 {
    font-size: 1.6rem;
  } 
}

@media screen and (max-width: 767px) {
  .fz15 {
    font-size: 1.4rem;
  } 
}

@media screen and (max-width: 520px) {
  .fz15 {
    font-size: 1.1rem;
  } 
}</pre></body></html>