@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
:root {
  --swl-font_family: "Zen Kaku Gothic New", sans-serif;
  --swl-font_weight: 500;
}

.f_ot {
  font-family: "Otomanopee One", sans-serif;
}

.f_in {
  font-family: "Inter", sans-serif;
}

.f_he {
  font-family: Helvetica, Arial, sans-serif;
}

.f_yb {
  font-family: "Yuji Boku", serif;
}

.focusIn .char {
  display: inline-block;
  white-space: pre;
  opacity: 0;
}
.focusIn.animated .char {
  animation-name: focusInText;
  animation-duration: 0.8s;
  animation-fill-mode: forwards;
  animation-delay: calc(var(--char-index) * 0.04s);
}

@keyframes focusInText {
  0% {
    filter: blur(12px);
    transform: scale(1.3);
    opacity: 0;
  }
  100% {
    filter: blur(0);
    transform: scale(1);
    opacity: 1;
  }
}
.fadeRight {
  opacity: 0;
  transform: translateX(-16px);
  transition: opacity 0.3s cubic-bezier(0, 0.25, 1, 1), transform 0.3s cubic-bezier(0, 0.25, 1, 1);
  will-change: opacity, transform;
}
.fadeRight.animated {
  opacity: 1;
  transform: translateX(0);
}

.fadeLeft {
  opacity: 0;
  transform: translateX(16px);
  transition: opacity 0.3s cubic-bezier(0, 0.25, 1, 1), transform 0.3s cubic-bezier(0, 0.25, 1, 1);
  will-change: opacity, transform;
}
.fadeLeft.animated {
  opacity: 1;
  transform: translateX(0);
}

.fadeUp {
  transform: translateY(15px);
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  opacity: 0;
  transition: 0.6s;
}
.fadeUp.animated {
  opacity: 1;
  transform: translateY(0);
}

html, button, input, select, textarea {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
}

body {
  color: #232121;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 0.04em;
  background-color: #f8f3f0;
}

.wrap {
  width: 1140px;
  margin: 0 auto;
}

.wrap02 {
  width: 1240px;
  margin: 0 auto;
}

.wrap03 {
  width: 1340px;
  margin: 0 auto;
}
@media (min-width: 751px) and (max-width: 1379px) {
  .wrap03 {
    width: auto;
    max-width: 1340px;
    padding: 0 20px;
  }
}

/* ヘッダー */
#main_header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
  width: 100%;
  height: 111px;
  background-color: #fff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
#main_header .wrap03 {
  width: auto;
  max-width: none;
  height: 100%;
  margin: 0;
  padding: 0 0 0 calc(50vw - 670px);
}
@media (max-width: 1379px) {
  #main_header .wrap03 {
    padding-left: 20px;
  }
}
#main_header .cont {
  display: flex;
  align-items: center;
  height: 100%;
}
#main_header .cont .logo {
  display: block;
  flex-shrink: 0;
  width: 184px;
  line-height: 1;
}
#main_header .cont .logo img {
  width: 100%;
}
#main_header .cont .nav {
  margin-left: 148px;
}
@media (max-width: 1379px) {
  #main_header .cont .nav {
    margin-left: 60px;
  }
}
@media (max-width: 1199px) {
  #main_header .cont .nav {
    margin-left: 30px;
  }
}
#main_header .cont .nav > ul {
  display: flex;
  gap: 0 40px;
}
@media (max-width: 1279px) {
  #main_header .cont .nav > ul {
    gap: 0 24px;
  }
}
#main_header .cont .nav > ul > li {
  position: relative;
}
#main_header .cont .nav > ul > li > a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0 10px;
  padding: 10px 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
  transition: color 0.3s;
}
#main_header .cont .nav > ul > li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: #b63030;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s;
}
#main_header .cont .nav > ul > li > a .tri {
  display: block;
  width: 10px;
  height: 9px;
  background-color: #e25353;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
#main_header .cont .nav > ul > li > a:hover {
  color: #b63030;
}
#main_header .cont .nav > ul > li > a:hover::after {
  transform: scaleX(1);
}
#main_header .cont .nav > ul > li.current > a {
  color: #b63030;
}
#main_header .cont .nav > ul > li.current > a::after {
  transform: scaleX(1);
}
#main_header .cont .nav > ul > li .sub_list {
  position: absolute;
  top: 77px;
  left: -53px;
  z-index: 1;
  width: 260px;
  padding: 30px 30px 15px;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
#main_header .cont .nav > ul > li .sub_list::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -42px;
  height: 42px;
}
#main_header .cont .nav > ul > li .sub_list ul li a {
  display: flex;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px dashed #fe8286;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: #333333;
  transition: color 0.3s;
}
#main_header .cont .nav > ul > li .sub_list ul li a .label {
  flex-grow: 1;
}
#main_header .cont .nav > ul > li .sub_list ul li a .arrow {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  margin-right: 3px;
  border-top: 1px solid #333333;
  border-right: 1px solid #333333;
  transform: rotate(45deg);
  transition: border-color 0.3s;
}
#main_header .cont .nav > ul > li .sub_list ul li a:hover {
  color: #b63030;
}
#main_header .cont .nav > ul > li .sub_list ul li a:hover .arrow {
  border-color: #b63030;
}
#main_header .cont .nav > ul > li:hover .sub_list {
  opacity: 1;
  visibility: visible;
}
#main_header .btn_list {
  flex-shrink: 0;
  display: flex;
  width: max(200px, 50vw - 670px + 150px);
  margin-left: auto;
}
#main_header .btn_list a {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 111px;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
#main_header .btn_list a .icon {
  line-height: 1;
}
#main_header .btn_list a .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
#main_header .btn_list a .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: 0.04em;
  text-align: center;
}
#main_header .btn_list .line_btn {
  background-color: #21ad3f;
}
#main_header .btn_list .line_btn .icon {
  width: 31px;
  margin: 18px 0 7px;
}
#main_header .btn_list .line_btn .icon svg .bg {
  fill: #06c755;
}
#main_header .btn_list .line_btn .icon svg .balloon {
  fill: #fff;
}
#main_header .btn_list .line_btn .icon svg .letter {
  fill: #06c755;
}
#main_header .btn_list .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}
#main_header .btn_list .reserve_btn {
  background-color: #b63030;
}
#main_header .btn_list .reserve_btn .icon {
  width: 24px;
  margin: 21px 0 11px;
}
#main_header .btn_list .reserve_btn .icon svg .fill {
  fill: #fff;
  transition: fill 0.3s;
}
#main_header .btn_list .reserve_btn:hover {
  background-color: #fff;
  color: #b63030;
  box-shadow: inset 0 0 0 2px #b63030;
}
#main_header .btn_list .reserve_btn:hover .icon svg .fill {
  fill: #b63030;
}

/* CTA */
.common_cta_sec {
  position: relative;
  overflow-x: clip;
  margin-top: 18px;
}
main + .common_cta_sec {
  margin-top: 0;
}
.common_cta_sec {
  padding: 62px 0 66px;
  background-color: #ffd8d6;
}
.common_cta_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/cta_sec_back.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: color-burn;
  pointer-events: none;
}
.common_cta_sec .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
.common_cta_sec .deco img {
  width: 100%;
}
.common_cta_sec .deco1 {
  left: calc(50% - 720px + 53px);
  top: -18px;
  width: 322px;
}
.common_cta_sec .deco2 {
  right: calc(50% - 720px + 89px);
  bottom: -1px;
  width: 219px;
}
.common_cta_sec .deco3 {
  left: calc(50% - 720px + 151px);
  bottom: 0;
  width: 173px;
}
.common_cta_sec .deco4 {
  right: calc(50% - 720px + 10px);
  bottom: 0;
  width: 151px;
}
.common_cta_sec .flower1 {
  left: calc(50% - 720px + 1033px);
  top: 37px;
  width: 92px;
}
.common_cta_sec .flower2 {
  left: calc(50% - 720px + 1114px);
  top: 121px;
  width: 46px;
}
.common_cta_sec .flower3 {
  left: calc(50% - 720px + 294px);
  top: 204px;
  width: 75px;
}
.common_cta_sec .flower4 {
  left: calc(50% - 720px + 263px);
  top: 175px;
  width: 46px;
}
.common_cta_sec .cont {
  text-align: center;
}
.common_cta_sec .cont .ttl {
  font-size: 60px;
  font-weight: 900;
  line-height: 1.23;
  letter-spacing: 0.04em;
  color: #cc3131;
  -webkit-text-stroke: 10px #fff;
  paint-order: stroke fill;
  margin-bottom: 20px;
}
.common_cta_sec .cont .text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  margin-bottom: 34px;
}
.common_cta_sec .cont .btn_list {
  display: flex;
  gap: 0 40px;
  width: 760px;
  margin: 0 auto;
}
.common_cta_sec .cont .btn_list a {
  display: flex;
  align-items: center;
  height: 80px;
  border-radius: 100vmax;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
.common_cta_sec .cont .btn_list a .icon {
  flex-shrink: 0;
  line-height: 1;
}
.common_cta_sec .cont .btn_list a .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
.common_cta_sec .cont .btn_list a .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
.common_cta_sec .cont .btn_list .reserve_btn {
  width: 400px;
  padding-left: 36px;
  background-color: #b63030;
}
.common_cta_sec .cont .btn_list .reserve_btn .icon {
  width: 25px;
  margin-right: 22px;
}
.common_cta_sec .cont .btn_list .reserve_btn .icon svg .fill {
  fill: #fff;
  transition: fill 0.3s;
}
.common_cta_sec .cont .btn_list .reserve_btn:hover {
  background-color: #fff;
  color: #b63030;
  box-shadow: inset 0 0 0 2px #b63030;
}
.common_cta_sec .cont .btn_list .reserve_btn:hover .icon svg .fill {
  fill: #b63030;
}
.common_cta_sec .cont .btn_list .line_btn {
  width: 320px;
  padding-left: 61px;
  background-color: #21ad3f;
}
.common_cta_sec .cont .btn_list .line_btn .icon {
  width: 31px;
  margin-right: 24px;
}
.common_cta_sec .cont .btn_list .line_btn .icon svg .bg {
  fill: #06c755;
}
.common_cta_sec .cont .btn_list .line_btn .icon svg .balloon {
  fill: #fff;
}
.common_cta_sec .cont .btn_list .line_btn .icon svg .letter {
  fill: #06c755;
}
.common_cta_sec .cont .btn_list .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}

.common_cta_sec.is_bottom {
  padding-top: 82px;
}
.common_cta_sec.is_bottom .deco1 {
  left: calc(50% - 720px + 38px);
}
.common_cta_sec.is_bottom .flower1 {
  top: 31px;
}
.common_cta_sec.is_bottom .flower2 {
  top: 115px;
}
.common_cta_sec.is_bottom .cont .ttl {
  font-size: 60.417px;
  margin-bottom: 9px;
}
.common_cta_sec.is_bottom .cont .text {
  margin-bottom: 25px;
}
.common_cta_sec.is_bottom .cont .btn_list .line_btn {
  padding-left: 37px;
}

.common_cta_sec.is_top {
  padding-top: 69px;
}
.common_cta_sec.is_top .deco1 {
  left: calc(50% - 720px + 31px);
  top: -11px;
  width: 311px;
}
.common_cta_sec.is_top .deco2 {
  right: calc(50% - 720px + 100px);
  width: 218px;
}
.common_cta_sec.is_top .deco3 {
  left: calc(50% - 720px + 150px);
}
.common_cta_sec.is_top .flower1 {
  left: calc(50% - 720px + 1051px);
  top: 27px;
}
.common_cta_sec.is_top .flower2 {
  left: calc(50% - 720px + 1132px);
  top: 111px;
}
.common_cta_sec.is_top .flower3 {
  left: calc(50% - 720px + 302px);
  top: 191px;
}
.common_cta_sec.is_top .flower4 {
  left: calc(50% - 720px + 271px);
  top: 162px;
}
.common_cta_sec.is_top .cont .ttl {
  font-size: 58.5px;
  margin-bottom: 17px;
}
.common_cta_sec.is_top .cont .text {
  margin-bottom: 34px;
}
.common_cta_sec.is_top .cont .btn_list .line_btn {
  padding-left: 61px;
}

/* フッター */
#main_footer {
  position: relative;
  overflow: hidden;
  padding-top: 80px;
  background-color: #c55946;
  color: #fff;
}
#main_footer a {
  color: #fff;
}
#main_footer .link_cont {
  display: flex;
  gap: 0 67px;
  margin-bottom: 89px;
}
#main_footer .link_cont .link_group {
  flex-shrink: 0;
  width: 150px;
}
#main_footer .link_cont .link_group.contents {
  width: 144px;
}
#main_footer .link_cont .link_group.contact {
  width: 162px;
}
#main_footer .link_cont .link_group .en {
  font-size: 16px;
  line-height: 1.4375;
  letter-spacing: 0;
  margin-bottom: 12px;
}
#main_footer .link_cont .link_group ul li {
  line-height: 1.4375;
}
#main_footer .link_cont .link_group ul li + li {
  margin-top: 12px;
}
#main_footer .link_cont .link_group ul li a {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4375;
  letter-spacing: 0;
  background-image: linear-gradient(#fff, #fff);
  background-repeat: no-repeat;
  background-position: 100% 100%;
  background-size: 0 1px;
  transition: background-size 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#main_footer .link_cont .link_group ul li a:hover {
  background-position: 0 100%;
  background-size: 100% 1px;
}
#main_footer .bottom_cont {
  position: relative;
  color: #232121;
}
#main_footer .bottom_cont a {
  color: #232121;
}
#main_footer .bottom_cont::before {
  content: "";
  position: absolute;
  left: calc(50% - 20px);
  top: 0;
  width: max(1940px, 100% + 60px);
  height: 403px;
  transform: translateX(-50%);
  background-color: #fff;
  border-radius: 50%;
}
#main_footer .bottom_cont::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 201px;
  bottom: 0;
  background-color: #fff;
}
#main_footer .bottom_cont .cont {
  position: relative;
  z-index: 1;
  padding: 49px 0 49px;
}
#main_footer .bottom_cont .cont .logo {
  display: block;
  width: 306px;
  margin: 0 auto 15px;
  line-height: 1;
}
#main_footer .bottom_cont .cont .logo img {
  width: 100%;
}
#main_footer .bottom_cont .cont .info {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 30px;
  margin-bottom: 65px;
}
#main_footer .bottom_cont .cont .info .address {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0.04em;
}
#main_footer .bottom_cont .cont .info .tel {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0.04em;
}
#main_footer .bottom_cont .cont .sub_cont {
  display: flex;
  align-items: center;
}
#main_footer .bottom_cont .cont .sub_cont .sub_link ul {
  display: flex;
}
#main_footer .bottom_cont .cont .sub_cont .sub_link ul li {
  font-size: 12px;
  line-height: 1.46;
  letter-spacing: 0.04em;
}
#main_footer .bottom_cont .cont .sub_cont .sub_link ul li + li::before {
  content: "｜";
  margin: 0 1em;
}
#main_footer .bottom_cont .cont .sub_cont .sub_link ul li a {
  display: inline-block;
  padding-bottom: 1px;
  background-image: linear-gradient(#232121, #232121);
  background-repeat: no-repeat;
  background-position: 100% 100%;
  background-size: 0 1px;
  transition: background-size 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#main_footer .bottom_cont .cont .sub_cont .sub_link ul li a:hover {
  background-position: 0 100%;
  background-size: 100% 1px;
}
#main_footer .bottom_cont .cont .sub_cont .copy {
  margin-left: auto;
  font-size: 12px;
  line-height: 1.46;
  letter-spacing: 0.04em;
}

.common_ttl_box .en {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
.common_ttl_box .ttl {
  font-size: 45px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #232121;
  margin-top: 14px;
}
.common_ttl_box.center {
  text-align: center;
}

.common_btn a {
  display: flex;
  align-items: center;
  width: 340px;
  height: 60px;
  padding: 0 30px;
  border-radius: 100vmax;
  background-color: #e25353;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
.common_btn a .label {
  flex-grow: 1;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: left;
  padding-bottom: 4px;
}
.common_btn a .dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  margin-left: 20px;
  border-radius: 50%;
  background-color: #fff;
  transition: background-color 0.3s;
}
.common_btn a:hover {
  background-color: #fff;
  color: #e25353;
  box-shadow: inset 0 0 0 2px #e25353;
}
.common_btn a:hover .dot {
  background-color: #e25353;
}

.common_slider_arrow, .common_case_sec .case_list .slider_arrow, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow, .common_voice_sec .cont .common_voice_list .slider_arrow {
  width: 80px;
  height: 80px;
  border: 1px solid #e25353;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
  transition: background-color 0.3s;
}
.common_slider_arrow::before, .common_case_sec .case_list .slider_arrow::before, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow::before, .common_voice_sec .cont .common_voice_list .slider_arrow::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  margin: 31px 0 0 34px;
  border-top: 2px solid #e25353;
  border-right: 2px solid #e25353;
  transform: rotate(45deg);
  transition: border-color 0.3s;
}
.common_slider_arrow.prev::before, .common_case_sec .case_list .prev.slider_arrow::before, .common_instructor_sec .cont .lead_block .slider_nav .prev.slider_arrow::before, .common_voice_sec .cont .common_voice_list .prev.slider_arrow::before {
  margin-left: 30px;
  transform: rotate(-135deg);
}
.common_slider_arrow:hover, .common_case_sec .case_list .slider_arrow:hover, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow:hover, .common_voice_sec .cont .common_voice_list .slider_arrow:hover {
  background-color: #e25353;
}
.common_slider_arrow:hover::before, .common_case_sec .case_list .slider_arrow:hover::before, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow:hover::before, .common_voice_sec .cont .common_voice_list .slider_arrow:hover::before {
  border-color: #fff;
}

.not_found {
  text-align: center;
}

/* トップページ */
#main {
  overflow-x: clip;
}

@keyframes copyRevealMask {
  0% {
    transform: scaleX(0);
    transform-origin: left;
  }
  49.99% {
    transform: scaleX(1);
    transform-origin: left;
  }
  50% {
    transform: scaleX(1);
    transform-origin: right;
  }
  100% {
    transform: scaleX(0);
    transform-origin: right;
  }
}
@keyframes copyRevealText {
  0%, 49.99% {
    opacity: 0;
  }
  50%, 100% {
    opacity: 1;
  }
}
#top_fv_sec {
  position: relative;
  z-index: 3;
  padding-bottom: 179px;
  margin-top: 111px;
  background-color: #a04944;
}
#top_fv_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/fv_back_img.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: overlay;
  pointer-events: none;
}
#top_fv_sec .deco {
  position: absolute;
  z-index: 2;
  line-height: 1;
  pointer-events: none;
}
#top_fv_sec .deco img {
  width: 100%;
}
#top_fv_sec .ring1 {
  left: calc(50% - 720px + 751px);
  top: 0;
  z-index: 0;
  width: 670px;
}
#top_fv_sec .flower, #top_fv_sec .petal2, #top_fv_sec .petal4, #top_fv_sec .sparkle3, #top_fv_sec .sparkle6 {
  z-index: 4;
}
#top_fv_sec .ring2 {
  left: calc(50% - 720px - 168px);
  top: 156px;
  width: 764px;
  opacity: 0.5;
  transform: scaleX(-1);
}
#top_fv_sec .ring2 img {
  height: 708px;
}
#top_fv_sec .astronaut {
  left: calc(50% - 720px + 363px);
  top: 34px;
  width: 268px;
}
#top_fv_sec .flower1 {
  left: calc(50% - 720px + 26px);
  top: 71px;
  width: 90px;
}
#top_fv_sec .flower2 {
  left: calc(50% - 720px + 116px);
  top: 71px;
  width: 34px;
}
#top_fv_sec .flower3 {
  left: calc(50% - 720px + 94px);
  top: 46px;
  width: 24px;
}
#top_fv_sec .flower4 {
  left: calc(50% - 720px + 621px);
  top: 466px;
  width: 91px;
}
#top_fv_sec .flower5 {
  left: calc(50% - 720px + 612px);
  top: 438px;
  width: 45px;
}
#top_fv_sec .flower6 {
  left: calc(50% - 720px + 1318px);
  top: 48px;
  width: 91px;
}
#top_fv_sec .flower7 {
  left: calc(50% - 720px + 1309px);
  top: 24px;
  width: 45px;
}
#top_fv_sec .petal1 {
  left: calc(50% - 720px + 127px);
  top: 128px;
  width: 35px;
}
#top_fv_sec .petal2 {
  left: calc(50% - 720px + 72px);
  top: 417px;
  width: 35px;
  transform: scaleY(-1) rotate(-23.86deg);
}
#top_fv_sec .petal3 {
  left: calc(50% - 720px + 627px);
  top: 183px;
  width: 35px;
  transform: rotate(156.14deg);
}
#top_fv_sec .petal4 {
  left: calc(50% - 720px + 530px);
  top: 352px;
  width: 35px;
  transform: rotate(27deg);
}
#top_fv_sec .petal5 {
  display: none;
}
#top_fv_sec .sparkle1 {
  left: calc(50% - 720px + 119px);
  top: 113px;
  width: 13px;
}
#top_fv_sec .sparkle2 {
  left: calc(50% - 720px + 83px);
  top: 396px;
  width: 13px;
  transform: scaleX(-1);
}
#top_fv_sec .sparkle3 {
  left: calc(50% - 720px + 564.5px);
  top: 379.5px;
  width: 13px;
  transform: rotate(51deg);
}
#top_fv_sec .sparkle4 {
  display: none;
}
#top_fv_sec .sparkle5 {
  left: calc(50% - 720px + 613px);
  top: 214px;
  width: 20px;
}
#top_fv_sec .sparkle6 {
  left: calc(50% - 720px + 631px);
  top: 428px;
  width: 38px;
}
#top_fv_sec .sparkle7 {
  left: calc(50% - 720px + 1328px);
  top: 10px;
  width: 38px;
}
#top_fv_sec .photo_list {
  position: absolute;
  inset: 0;
  z-index: 1;
}
#top_fv_sec .photo_list .img {
  position: absolute;
  overflow: hidden;
  border-radius: 20px;
  opacity: 0;
  transition-duration: 0.6s;
  transition-timing-function: ease-out;
}
#top_fv_sec .photo_list .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top_fv_sec .photo_list .img.animated {
  transform: translate(0, 0);
  opacity: 1;
}
#top_fv_sec .photo_list .img1 {
  left: calc(50% - 720px + 916px);
  top: 40px;
  width: 425px;
  height: 302px;
  transform: translate(20px, -20px);
  transition-delay: 0.1s;
}
#top_fv_sec .photo_list .img2 {
  left: calc(50% - 720px + 750px);
  top: 81px;
  width: 136px;
  height: 174px;
  transform: translate(20px, 0);
  transition-delay: 0.2s;
}
#top_fv_sec .photo_list .img3 {
  left: calc(50% - 720px + 671px);
  top: 295px;
  width: 165px;
  height: 230px;
  transform: translate(20px, -20px);
  transition-delay: 0.3s;
}
#top_fv_sec .photo_list .img4 {
  left: calc(50% - 720px + 876px);
  top: 395px;
  width: 274px;
  height: 195px;
  transform: translate(0, -20px);
  transition-delay: 0.4s;
}
#top_fv_sec .photo_list .img5 {
  left: calc(50% - 720px + 1190px);
  top: 362px;
  width: 250px;
  height: 195px;
  transform: translate(-20px, 20px);
  transition-delay: 0.5s;
}
#top_fv_sec .wrap03 {
  position: relative;
  z-index: 3;
}
#top_fv_sec .cont {
  padding: 160px 0 0 39px;
}
#top_fv_sec .cont .text_block .label {
  position: relative;
  display: table;
  padding: 20px 0 0 11px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  color: #cc4141;
  -webkit-text-stroke: 8px #fff;
  paint-order: stroke fill;
  margin-bottom: 13px;
}
#top_fv_sec .cont .text_block .label .ruby_unit {
  display: inline-block;
}
#top_fv_sec .cont .text_block .label .ruby_wrap {
  position: relative;
  display: inline-block;
}
#top_fv_sec .cont .text_block .label .ruby {
  position: absolute;
  left: 50%;
  top: -16px;
  transform: translateX(-50%);
  font-size: 13px;
  line-height: 1.54;
  letter-spacing: 0.3em;
  white-space: nowrap; /* ルビ 5 文字。親の幅より広いため(例外) */
}
#top_fv_sec .cont .text_block .copy {
  display: table;
  padding: 0 11px;
  background-color: #fff;
  border-radius: 4px;
  font-weight: 900;
  color: #463b3b;
}
#top_fv_sec .cont .text_block .copy1 {
  font-size: 35px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.11em;
  margin-bottom: 8px;
}
#top_fv_sec .cont .text_block .copy2 {
  font-size: 55px;
  line-height: 1.3;
  letter-spacing: 0.09em;
  margin-bottom: 8px;
}
#top_fv_sec .cont .text_block .copy3 {
  font-size: 55px;
  line-height: 1.3;
  letter-spacing: 0.09em;
}
#top_fv_sec .cont .text_block .copy3 .grad {
  background-image: linear-gradient(90deg, #ec3e3e, #ffb700);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
#top_fv_sec .cont .text_block .copy3 .small {
  font-size: 45px;
}
#top_fv_sec .cont .text_block .blockReveal {
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}
#top_fv_sec .cont .text_block .blockRevealText {
  display: inline-block;
}
#top_fv_sec .cont .text_block .blockReveal::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #fff;
  transform: scaleX(0);
  transform-origin: left;
  pointer-events: none;
  z-index: 1;
}
#top_fv_sec .cont .text_block .blockReveal.animated::after {
  animation: copyRevealMask 1s cubic-bezier(0.86, 0, 0.07, 1) forwards;
}
#top_fv_sec .cont .text_block .blockReveal.animated .blockRevealText {
  opacity: 1;
  animation: copyRevealText 1s linear both;
}
#top_fv_sec .scroll {
  position: absolute;
  left: max(20px, 50% - 720px + 101px);
  top: 480px;
  z-index: 3;
  display: flex;
  align-items: flex-end;
  gap: 0 17px;
}
#top_fv_sec .scroll .bar {
  position: relative;
  flex-shrink: 0;
  width: 5px;
  height: 110px;
  overflow: hidden;
  border-radius: 100vmax;
  background-color: #fec3c3;
}
#top_fv_sec .scroll .bar::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 24px;
  border-radius: 100vmax;
  background-color: #d2413c;
  animation: fvScroll 2s ease-in-out infinite;
}
#top_fv_sec .scroll .text {
  font-size: 13px;
  line-height: 1;
  color: #fff;
}

@keyframes fvScroll {
  0% {
    transform: translateY(-24px);
  }
  100% {
    transform: translateY(110px);
  }
}
#top_news_sec {
  position: relative;
  z-index: 2;
  padding-bottom: 181px;
  padding-top: 125px;
  background-image: url(image/news_sec_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#top_news_sec .cont {
  display: flex;
  padding: 58px 85px 58px 81px;
  background-color: #fff;
  border-radius: 20px;
}
#top_news_sec .cont .ttl_block {
  flex-shrink: 0;
  width: 284px;
  padding-top: 59px;
}
#top_news_sec .cont .ttl_block .common_ttl_box {
  margin-bottom: 34px;
}
#top_news_sec .cont .ttl_block .common_ttl_box .en {
  font-size: 24px;
}
#top_news_sec .cont .ttl_block .common_ttl_box .ttl {
  font-size: 40px;
  margin-top: 3px;
}
#top_news_sec .cont .ttl_block .common_btn a {
  width: 220px;
}
#top_news_sec .cont .common_news_list {
  flex-grow: 1;
}
#top_news_sec .cont .common_news_list ul li {
  padding: 23px 0 11px;
  border-bottom: 1px dashed #dbdbdb;
}
#top_news_sec .cont .common_news_list ul li:first-child {
  padding-top: 0;
}
#top_news_sec .cont .common_news_list ul li a {
  display: flex;
  align-items: center;
  color: #232121;
}
#top_news_sec .cont .common_news_list ul li a .text_box {
  flex-grow: 1;
  min-width: 0;
}
#top_news_sec .cont .common_news_list ul li a .text_box .ttl_box {
  display: flex;
  align-items: center;
  gap: 0 30px;
}
#top_news_sec .cont .common_news_list ul li a .text_box .ttl_box .date {
  flex-shrink: 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #cbcbcb;
}
#top_news_sec .cont .common_news_list ul li a .text_box .ttl_box .ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
#top_news_sec .cont .common_news_list ul li a .text_box .text {
  width: 570px;
  margin-top: 12px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.47;
  letter-spacing: 0.04em;
}
#top_news_sec .cont .common_news_list ul li a .arrow {
  position: relative;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  margin-left: 20px;
  border-radius: 50%;
  background-color: #ffeaea;
  transition: transform 0.3s;
}
#top_news_sec .cont .common_news_list ul li a .arrow::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 14px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #e6575c;
  border-right: 2px solid #e6575c;
  transform: rotate(45deg);
}
#top_news_sec .cont .common_news_list ul li a:hover .text_box .ttl_box .ttl {
  color: #e25353;
}
#top_news_sec .cont .common_news_list ul li a:hover .arrow {
  transform: translateX(4px);
}

#top_about_sec {
  position: relative;
  z-index: 1;
  padding-bottom: 72px;
  padding-top: 104px;
}
#top_about_sec .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
  z-index: 2;
}
#top_about_sec .deco img {
  width: 100%;
}
#top_about_sec .deco1 {
  left: calc(50% - 720px + 661px);
  top: 162px;
  width: 136px;
}
#top_about_sec .deco2 {
  left: calc(50% - 720px + 1290px);
  top: 468px;
  width: 92px;
}
#top_about_sec .deco3 {
  left: calc(50% - 720px + 92px);
  top: 76px;
  z-index: 0;
  width: 94px;
}
#top_about_sec .deco4 {
  left: calc(50% - 720px + 951px);
  top: 90px;
  width: 60px;
}
#top_about_sec .deco5 {
  left: calc(50% - 720px + 921px);
  top: 101px;
  width: 71px;
}
#top_about_sec .deco6 {
  left: calc(50% - 720px + 970px);
  top: 556px;
  width: 71px;
}
#top_about_sec .deco7 {
  left: calc(50% - 720px + 631px);
  top: 154px;
  z-index: 0;
  width: 52px;
}
#top_about_sec .deco8 {
  left: calc(50% - 720px + 967px);
  top: 613px;
  width: 49px;
}
#top_about_sec .deco9 {
  left: calc(50% - 720px + 831px);
  top: 278px;
  width: 43px;
}
#top_about_sec .deco10 {
  left: calc(50% - 720px + 818px);
  top: 253px;
  width: 37px;
}
#top_about_sec .deco11, #top_about_sec .deco12 {
  display: none;
}
#top_about_sec .photo_list {
  position: absolute;
  inset: 0;
}
#top_about_sec .photo_list .img {
  position: absolute;
  width: 460px;
  height: 290px;
  overflow: hidden;
  border-radius: 20px;
}
#top_about_sec .photo_list .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top_about_sec .photo_list .img1 {
  left: calc(50% - 720px + 980px);
  top: -121px;
  transform: rotate(6deg);
}
#top_about_sec .photo_list .img2 {
  left: calc(50% - 720px + 866px);
  top: 257px;
  z-index: 1;
  transform: rotate(-6deg);
  animation-delay: 0.1s;
}
#top_about_sec .photo_list .img3 {
  left: calc(50% - 720px + 980px);
  top: 629px;
  transform: rotate(6deg);
  animation-delay: 0.2s;
}
#top_about_sec .wrap {
  position: relative;
  z-index: 1;
}
#top_about_sec .cont .text_block {
  width: 610px;
}
#top_about_sec .cont .text_block .common_ttl_box .en {
  font-size: 16px;
}
#top_about_sec .cont .text_block .common_ttl_box .ttl {
  font-size: 46px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-top: 34px;
}
#top_about_sec .cont .text_block .text {
  margin-top: 32px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
}
#top_about_sec .cont .text_block .common_btn {
  margin-top: 40px;
}

#top_first_sec {
  position: relative;
  padding-bottom: 149px;
  padding-top: 163px;
  background-image: url(image/first_sec_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#top_first_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.4;
  -webkit-mask-image: url(image/first_sec_back.svg);
  mask-image: url(image/first_sec_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#top_first_sec .wrap {
  position: relative;
  z-index: 1;
}
#top_first_sec .cont .intro_block {
  display: flex;
  margin-top: 40px;
}
#top_first_sec .cont .intro_block .photo_block {
  position: relative;
  flex-shrink: 0;
  width: 620px;
  height: 450px;
}
#top_first_sec .cont .intro_block .photo_block::before, #top_first_sec .cont .intro_block .photo_block::after {
  content: "";
  position: absolute;
  left: 11px;
  top: 50px;
  width: 500px;
  height: 350px;
  border-radius: 20px;
}
#top_first_sec .cont .intro_block .photo_block::before {
  background-color: #ffd1c5;
  transform: rotate(-12deg);
}
#top_first_sec .cont .intro_block .photo_block::after {
  background-color: #ffe1c6;
  transform: rotate(6deg);
}
#top_first_sec .cont .intro_block .photo_block .img {
  position: absolute;
  z-index: 1;
  left: 16px;
  top: 46px;
  width: 500px;
  height: 350px;
  overflow: hidden;
  border-radius: 20px;
  transform: rotate(-3deg);
}
#top_first_sec .cont .intro_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top_first_sec .cont .intro_block .photo_block .deco {
  position: absolute;
  z-index: 2;
  line-height: 1;
  pointer-events: none;
}
#top_first_sec .cont .intro_block .photo_block .deco img {
  width: 100%;
}
#top_first_sec .cont .intro_block .photo_block .lotus {
  left: 462px;
  top: 337px;
  width: 100px;
}
#top_first_sec .cont .intro_block .text_block {
  flex-grow: 1;
  min-width: 0;
  padding-top: 14px;
}
#top_first_sec .cont .intro_block .text_block .copy {
  font-size: 34px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #333333;
}
#top_first_sec .cont .intro_block .text_block .text {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
#top_first_sec .cont .intro_block .text_block .common_btn {
  margin-top: 34px;
}
#top_first_sec .cont .intro_block .text_block .common_btn a {
  width: 280px;
}
#top_first_sec .cont .course_block {
  margin-top: 89px;
  padding-bottom: 55px;
  background-color: #fff;
  border: 4px solid transparent;
  -o-border-image: url(image/first_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/first_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
  text-align: center;
}
#top_first_sec .cont .course_block .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#top_first_sec .cont .course_block .deco img {
  width: 100%;
}
#top_first_sec .cont .course_block .stars {
  left: -18px;
  top: -37px;
  width: 99px;
  transform: rotate(-9.4deg);
}
#top_first_sec .cont .course_block .girl {
  z-index: 2;
  left: 1003px;
  top: 254px;
  width: 149px;
}
#top_first_sec .cont .course_block .photo {
  position: absolute;
  z-index: 1;
  top: 77px;
  width: 200px;
  height: 250px;
  overflow: hidden;
  border-radius: 20px;
}
#top_first_sec .cont .course_block .photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top_first_sec .cont .course_block .photo1 {
  left: -179px;
  top: 94px;
  transform: rotate(-5deg);
}
#top_first_sec .cont .course_block .photo2 {
  left: 58px;
  transform: rotate(5deg);
}
#top_first_sec .cont .course_block .photo3 {
  left: 882px;
  top: 94px;
  transform: rotate(-5deg);
}
#top_first_sec .cont .course_block .photo4 {
  left: 1118px;
  transform: rotate(5deg);
}
#top_first_sec .cont .course_block .band {
  display: table;
  width: 370px;
  height: 60px;
  margin: -33px auto 0;
  border-radius: 100vmax;
  background-color: #e97e7e;
  font-size: 30px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.04em;
  color: #fff;
}
#top_first_sec .cont .course_block .copy {
  margin-top: 41px;
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#top_first_sec .cont .course_block .copy .em {
  position: relative;
  display: inline-block;
  line-height: 1;
}
#top_first_sec .cont .course_block .copy .em::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -11px;
  height: 6px;
  background-image: radial-gradient(circle, #e97e7e 3px, transparent 3.5px);
  background-size: 37.5px 6px;
  background-position: -1px 0;
  background-repeat: repeat-x;
}
#top_first_sec .cont .course_block .text {
  margin-top: 29px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.12em;
}
#top_first_sec .cont .course_block .common_btn {
  margin-top: 42px;
}
#top_first_sec .cont .course_block .common_btn a {
  margin: 0 auto;
}

.common_voice_sec {
  position: relative;
  padding-top: 158px;
}
.common_voice_sec.is_top .cont .ttl_block .text {
  margin-top: 23px;
}
.common_voice_sec.is_top .cont .common_voice_list {
  margin-top: 18px;
}
.common_voice_sec.is_top .cont .common_voice_list .slider_arrow {
  top: calc(50% - 7px);
}
.common_voice_sec.is_top .cont .common_btn {
  margin-top: 40px;
}
.common_voice_sec .cont .ttl_block {
  text-align: center;
}
.common_voice_sec .cont .ttl_block .deco {
  position: absolute;
  top: -22px;
  width: 78px;
  line-height: 1;
  pointer-events: none;
}
.common_voice_sec .cont .ttl_block .deco img {
  width: 100%;
}
.common_voice_sec .cont .ttl_block .leaf1 {
  left: 180px;
}
.common_voice_sec .cont .ttl_block .leaf2 {
  left: 885px;
}
.common_voice_sec .cont .ttl_block .text {
  margin-top: 28px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.common_voice_sec .cont .common_voice_list {
  width: 1050px;
  margin: 25px auto 0;
  clip-path: inset(0 -195px);
}
.common_voice_sec .cont .common_voice_list .slider_arrow {
  position: absolute;
  top: calc(50% - 19px);
  z-index: 1;
  transform: translateY(-50%);
}
.common_voice_sec .cont .common_voice_list .slider_arrow.prev {
  left: -95px;
}
.common_voice_sec .cont .common_voice_list .slider_arrow.next {
  right: -95px;
}
.common_voice_sec .cont .common_voice_list .slick-list {
  overflow: hidden;
  margin: 0 -15px;
  padding: 0 15px 15px;
}
.common_voice_sec .cont .common_voice_list ul li {
  position: relative;
  width: 320px;
  margin: 0 15px;
  padding-top: 26px;
}
.common_voice_sec .cont .common_voice_list ul li a {
  display: block;
  color: #232121;
}
.common_voice_sec .cont .common_voice_list ul li a .clip {
  position: absolute;
  left: 50%;
  top: 0;
  z-index: 1;
  width: 44px;
  margin-left: -22px;
  line-height: 1;
}
.common_voice_sec .cont .common_voice_list ul li a .clip img {
  width: 100%;
}
.common_voice_sec .cont .common_voice_list ul li a .card {
  padding: 20px 20px 32px;
  background-color: #fff;
  border-radius: 30px 6px 30px 6px;
}
.common_voice_sec .cont .common_voice_list ul li a .card .img {
  height: 170px;
  overflow: hidden;
  border-radius: 20px;
}
.common_voice_sec .cont .common_voice_list ul li a .card .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
.common_voice_sec .cont .common_voice_list ul li a .card .ttl {
  min-height: 50px;
  margin-top: 18px;
  padding-bottom: 17px;
  box-sizing: content-box;
  border-bottom: 1px dashed #c8c8c8;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.56;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
.common_voice_sec .cont .common_voice_list ul li a .card .bottom_box {
  display: flex;
  align-items: center;
  margin-top: 17px;
}
.common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .name {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}
.common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .arrow {
  position: relative;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-left: auto;
  border-radius: 50%;
  background-color: #fee6e6;
  transition: transform 0.3s;
}
.common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .arrow::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 11.5px;
  width: 10px;
  height: 1px;
  background-color: #e25353;
}
.common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .arrow::after {
  content: "";
  position: absolute;
  left: 11px;
  top: 9px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #e25353;
  border-right: 1px solid #e25353;
  transform: rotate(45deg);
}
.common_voice_sec .cont .common_voice_list ul li a:hover .card .img img {
  transform: scale(1.08);
}
.common_voice_sec .cont .common_voice_list ul li a:hover .card .ttl {
  color: #e25353;
}
.common_voice_sec .cont .common_voice_list ul li a:hover .card .bottom_box .arrow {
  transform: translateX(4px);
}
.common_voice_sec .cont .not_found {
  margin-top: 18px;
}
.common_voice_sec .cont .common_btn {
  margin-top: 30px;
}
.common_voice_sec .cont .common_btn a {
  margin: 0 auto;
}

.common_line_sec {
  position: relative;
  margin-top: 114px;
}
.common_line_sec .cont {
  display: block;
  position: relative;
  padding: 13px;
  overflow: hidden;
  background-color: #fff;
  border: 2px solid #d5693b;
  border-radius: 20px 20px 0 20px;
  color: #232121;
}
.common_line_sec .cont::before {
  content: "";
  position: absolute;
  inset: 13px;
  z-index: 0;
  border-radius: 20px;
  background-image: radial-gradient(circle, rgba(255, 255, 255, 0.2) 2.5px, transparent 3px), url(image/line_sec_bg.png);
  background-repeat: repeat, no-repeat;
  background-size: 24px 24px, 100% 100%;
  background-position: 4px 4px, center;
  transition: inset 0.3s;
}
.common_line_sec .cont:hover::before {
  inset: -3px;
}
.common_line_sec .cont .inner {
  position: relative;
  z-index: 1;
  padding: 53px 0 70px 371px;
  overflow: hidden;
  border-radius: 20px;
  color: #fff;
}
.common_line_sec .cont .inner .circle {
  position: absolute;
  border-radius: 50%;
  filter: blur(22px);
  pointer-events: none;
}
.common_line_sec .cont .inner .circle1 {
  left: 18px;
  top: 24px;
  width: 246px;
  height: 246px;
  background-color: rgba(255, 255, 255, 0.9);
}
.common_line_sec .cont .inner .circle2 {
  left: 168px;
  top: 99px;
  width: 192px;
  height: 192px;
  background-color: rgba(255, 211, 197, 0.9);
}
.common_line_sec .cont .inner .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
.common_line_sec .cont .inner .deco img {
  width: 100%;
}
.common_line_sec .cont .inner .girl {
  left: 72px;
  top: -9px;
  width: 264px;
}
.common_line_sec .cont .inner .bear {
  left: 44px;
  top: 148px;
  width: 87px;
}
.common_line_sec .cont .inner .phone {
  left: 992px;
  top: 32px;
  width: 71px;
}
.common_line_sec .cont .inner .text_block {
  position: relative;
}
.common_line_sec .cont .inner .text_block .copy {
  font-size: 50px;
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: 0.04em;
}
.common_line_sec .cont .inner .text_block .copy .num {
  position: relative;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 73px;
  line-height: 0.63;
}
.common_line_sec .cont .inner .text_block .copy .num::after {
  content: "";
  position: absolute;
  left: 35px;
  top: -8px;
  width: 22px;
  height: 22px;
  background-image: url(image/line_sec_sparkle.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.common_line_sec .cont .inner .text_block .copy .under {
  display: inline-block;
  line-height: 0.92;
  padding-bottom: 15px;
  margin-bottom: -15px;
  background-image: url(image/line_sec_underline.svg);
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 211px 23px;
}
.common_line_sec .cont .inner .text_block .copy .line {
  font-size: 74px;
  font-weight: 700;
  line-height: 0.6;
  color: #05d45a;
  -webkit-text-stroke: 8px #fff;
  paint-order: stroke fill;
}
.common_line_sec .cont .inner .text_block .text {
  margin-top: 32px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.common_line_sec .cont .link_btn {
  position: relative;
  z-index: 1;
  display: flex;
  margin: -49px -15px -15px auto;
  align-items: center;
  width: 301px;
  height: 49px;
  padding: 0 14px 0 36px;
  background-color: #d74928;
  clip-path: polygon(19.6px 0, 100% 0, 100% 100%, 0 100%);
  color: #fff;
  transition: background-color 0.3s;
}
.common_line_sec .cont .link_btn .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
.common_line_sec .cont .link_btn .arrow {
  position: relative;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-left: auto;
  border: 1px solid #e25353;
  border-radius: 50%;
  background-color: #fff;
  transition: transform 0.3s;
}
.common_line_sec .cont .link_btn .arrow::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 8px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #e25353;
  border-right: 1px solid #e25353;
  transform: rotate(45deg);
}
.common_line_sec .cont .link_btn:hover {
  background-color: #b63030;
}
.common_line_sec .cont .link_btn:hover .arrow {
  transform: translateX(4px);
}

.common_course_box {
  margin-top: 35px;
  padding: 48px 46px 44px;
  background-color: #fff;
  border: 4px solid transparent;
  -o-border-image: url(image/course_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/course_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
}
.common_course_box .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
  z-index: 1;
}
.common_course_box .deco img {
  width: 100%;
}
.common_course_box .plane {
  left: 815px;
  top: 967px;
  width: 342px;
}
.common_course_box .joinus {
  left: 649px;
  top: 970px;
  width: 239px;
}
.common_course_box .circles {
  left: 774px;
  top: 1055px;
  width: 138px;
}
.common_course_box .copy {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
}
.common_course_box .text {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
}
.common_course_box .step_list {
  margin-top: 32px;
}
.common_course_box .step_list ul li {
  position: relative;
}
.common_course_box .step_list ul li + li {
  margin-top: 40px;
}
.common_course_box .step_list ul li + li::before {
  content: "";
  position: absolute;
  left: 69px;
  top: -37px;
  width: 2px;
  height: 33px;
  background-color: #fb6a6a;
}
.common_course_box .step_list ul li + li .head::before {
  content: "";
  position: absolute;
  left: 65px;
  top: -5px;
  width: 10px;
  height: 10px;
  border: 1px solid #fb6a6a;
  border-radius: 50%;
  background-color: #fff;
}
.common_course_box .step_list ul li a {
  display: flex;
  align-items: stretch;
  background-color: #f8f8f8;
  border-radius: 20px;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1);
  color: #232121;
  transition: box-shadow 0.3s;
}
.common_course_box .step_list ul li a .head {
  position: relative;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  width: 340px;
  padding-left: 41px;
  border-radius: 20px 0 0 20px;
  color: #fff;
}
.common_course_box .step_list ul li a .head::after {
  content: "";
  position: absolute;
  left: 65px;
  bottom: -5px;
  width: 10px;
  height: 10px;
  border: 1px solid #fb6a6a;
  border-radius: 50%;
  background-color: #fff;
}
.common_course_box .step_list ul li a .head .name {
  flex-shrink: 0;
  width: 93px;
  padding: 3px 0;
  border-right: 1px solid #fff;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: 0.1em;
  text-align: left;
}
.common_course_box .step_list ul li a .head .target {
  flex: 1;
  align-self: flex-start;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 21px;
  text-align: center;
}
.common_course_box .step_list ul li a .head .target .tag {
  width: 120px;
  border-radius: 100vmax;
  background-color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4445;
  letter-spacing: 0.1em;
}
.common_course_box .step_list ul li a .head .target .who {
  margin-top: 9px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}
.common_course_box .step_list ul li a .text {
  flex-grow: 1;
  margin-top: 0;
  padding: 33px 0 35px 50px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.78;
  letter-spacing: 0.1em;
  text-align: left;
}
.common_course_box .step_list ul li a:hover {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
.common_course_box .step_list ul li.step1 a .head {
  background-color: #fb6a6a;
}
.common_course_box .step_list ul li.step1 a .head .target .tag {
  color: #fb6a6a;
}
.common_course_box .step_list ul li.step2 a .head {
  background-color: #e24545;
}
.common_course_box .step_list ul li.step2 a .head .target .tag {
  color: #e24545;
}
.common_course_box .step_list ul li.step3 a .head {
  background-color: #b73030;
}
.common_course_box .step_list ul li.step3 a .head .target .tag {
  color: #b73030;
}
.common_course_box .step_list ul li.step3 a .head::after {
  left: 515px;
}
.common_course_box .branch {
  display: flex;
  align-items: flex-start;
  padding: 36px 0 16px;
}
.common_course_box .branch::before {
  content: "";
  position: absolute;
  left: 519px;
  top: 5px;
  width: 2px;
  height: 14px;
  background-color: #fb6a6a;
}
.common_course_box .branch::after {
  content: "";
  position: absolute;
  left: 249px;
  top: 18px;
  width: 542px;
  height: 50px;
  border: 2px solid #fb6a6a;
  border-bottom: 0;
}
.common_course_box .branch .note {
  position: relative;
  font-size: 14px;
  color: #000;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.1em;
}
.common_course_box .branch .note1 {
  margin-left: 267px;
}
.common_course_box .branch .note2 {
  margin-left: 327px;
}
.common_course_box .advanced_list ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px 40px;
}
.common_course_box .advanced_list ul li {
  position: relative;
  display: flex;
}
.common_course_box .advanced_list ul li a {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.1);
  color: #232121;
  transition: box-shadow 0.3s;
}
.common_course_box .advanced_list ul li a .head {
  position: relative;
  padding: 18px 0 20px;
  border-radius: 20px 20px 0 0;
  color: #fff;
  text-align: center;
}
.common_course_box .advanced_list ul li a .head::before {
  content: "";
  position: absolute;
  left: 245px;
  top: -5px;
  width: 10px;
  height: 10px;
  border: 1px solid #fb6a6a;
  border-radius: 50%;
  background-color: #fff;
}
.common_course_box .advanced_list ul li a .head .name {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.14;
  letter-spacing: 0.1em;
}
.common_course_box .advanced_list ul li a .head .target {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 20px;
  margin-top: 14px;
}
.common_course_box .advanced_list ul li a .head .target .tag {
  width: 120px;
  border-radius: 100vmax;
  background-color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4445;
  letter-spacing: 0.1em;
}
.common_course_box .advanced_list ul li a .head .target .who {
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}
.common_course_box .advanced_list ul li a .text {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 27px 0;
  margin-top: 0;
  background-color: #f8f8f8;
  border-radius: 0 0 20px 20px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.56;
  letter-spacing: 0.1em;
  text-align: center;
}
.common_course_box .advanced_list ul li a:hover {
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}
.common_course_box .advanced_list ul li.creative a .head {
  background-color: #be3e17;
}
.common_course_box .advanced_list ul li.creative a .head .target .tag {
  color: #be3e17;
}
.common_course_box .advanced_list ul li.creative::after {
  content: "";
  position: absolute;
  left: 245px;
  bottom: -5px;
  z-index: 1;
  width: 10px;
  height: 10px;
  border: 1px solid #fb6a6a;
  border-radius: 50%;
  background-color: #fff;
}
.common_course_box .advanced_list ul li.instructor a .head {
  background-color: #b44d28;
}
.common_course_box .advanced_list ul li.instructor a .head .target .tag {
  color: #b44d28;
}
.common_course_box .advanced_list ul li.instructor a .text {
  padding: 22px 0 32px;
}
.common_course_box .advanced_list ul li.continuation::before {
  content: "";
  position: absolute;
  left: 249px;
  top: -37px;
  width: 2px;
  height: 33px;
  background-color: #fb6a6a;
}
.common_course_box .advanced_list ul li.continuation a .head {
  background-color: #902f11;
}
.common_course_box .advanced_list ul li.continuation a .head .target .tag {
  color: #902f11;
}

#top_course_sec {
  position: relative;
  margin-top: 92px;
  padding-bottom: 295px;
  padding-top: 192px;
  background-image: url(image/course_sec_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#top_course_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/course_sec_back.svg);
  mask-image: url(image/course_sec_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#top_course_sec .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#top_course_sec .deco img {
  width: 100%;
}
#top_course_sec .deco1 {
  left: calc(50% - 720px + 100px);
  top: 274px;
  z-index: 2;
  width: 123px;
}
#top_course_sec .wrap {
  position: relative;
  z-index: 1;
}
#top_course_sec .cont .common_btn {
  margin-top: 50px;
}
#top_course_sec .cont .common_btn a {
  width: 300px;
  margin: 0 auto;
}

.common_instructor_sec {
  position: relative;
  z-index: 1;
  margin-top: -121px;
  padding-bottom: 130px;
}
.common_instructor_sec.is_top .cont .lead_block .flowers2 {
  left: -48px;
  top: 562px;
}
.common_instructor_sec .cont .ttl_block {
  display: flex;
  align-items: flex-start;
}
.common_instructor_sec .cont .ttl_block .common_btn {
  margin-top: 28px;
  margin-left: auto;
}
.common_instructor_sec .cont .lead_block {
  display: flex;
  margin-top: 41px;
}
.common_instructor_sec .cont .lead_block .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
.common_instructor_sec .cont .lead_block .deco img {
  width: 100%;
}
.common_instructor_sec .cont .lead_block .flowers {
  left: 1151px;
  top: 69px;
  width: 96px;
}
.common_instructor_sec .cont .lead_block .flowers2 {
  left: -32px;
  top: 551px;
  z-index: 1;
  width: 96px;
}
.common_instructor_sec .cont .lead_block .text_box {
  flex-grow: 1;
}
.common_instructor_sec .cont .lead_block .text_box .copy {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
.common_instructor_sec .cont .lead_block .text_box .text {
  margin-top: 21px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
}
.common_instructor_sec .cont .lead_block .slider_nav {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin: 26px 0 0 auto;
}
.common_instructor_sec .cont .lead_block .slider_nav .progress {
  position: relative;
  width: 150px;
  height: 4px;
  margin: 0 16px;
  border-radius: 2px;
  background-color: #d9d0ca;
}
.common_instructor_sec .cont .lead_block .slider_nav .progress .fill {
  position: absolute;
  left: 0;
  top: 0;
  width: 11px;
  height: 100%;
  border-radius: 2px;
  background-color: #e25353;
  transition: width 0.3s;
}
.common_instructor_sec .cont .common_instructor_list {
  width: 1160px;
  margin-top: 40px;
}
.common_instructor_sec .cont .common_instructor_list .slick-list {
  overflow: visible;
}
.common_instructor_sec .cont .common_instructor_list .slick-track {
  display: flex;
}
.common_instructor_sec .cont .common_instructor_list ul li {
  width: 270px;
  margin-right: 20px;
}
.common_instructor_sec .cont .common_instructor_list ul li.slick-slide {
  display: flex;
  height: auto;
}
.common_instructor_sec .cont .common_instructor_list ul li.slick-slide a {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.common_instructor_sec .cont .common_instructor_list ul li a {
  display: block;
  padding: 28px 28px 19px;
  background-color: #fff;
  border: 2px solid #e25353;
  border-radius: 175px 175px 0 0;
  color: #232121;
  text-align: center;
}
.common_instructor_sec .cont .common_instructor_list ul li a .img {
  height: 250px;
  overflow: hidden;
  border-radius: 110px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
}
.common_instructor_sec .cont .common_instructor_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
.common_instructor_sec .cont .common_instructor_list ul li a .badge {
  position: relative;
  display: table;
  width: 140px;
  margin: -30px auto 0;
  border-radius: 100vmax;
  background-color: #fb6a6a;
  font-size: 14px;
  font-weight: 700;
  line-height: 2.1429;
  letter-spacing: 0.04em;
  color: #fff;
}
.common_instructor_sec .cont .common_instructor_list ul li a .name {
  margin-top: 12px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
.common_instructor_sec .cont .common_instructor_list ul li a .name .accent {
  color: #e25353;
}
.common_instructor_sec .cont .common_instructor_list ul li a .en {
  font-size: 12px;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #cecece;
}
.common_instructor_sec .cont .common_instructor_list ul li a .area_label {
  display: flex;
  align-items: center;
  gap: 0 10px;
  margin-top: 11px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.common_instructor_sec .cont .common_instructor_list ul li a .area_label::before, .common_instructor_sec .cont .common_instructor_list ul li a .area_label::after {
  content: "";
  flex-grow: 1;
  height: 0;
  border-top: 1px dashed #bababa;
}
.common_instructor_sec .cont .common_instructor_list ul li a .area {
  margin-top: 5px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.54;
  letter-spacing: 0.04em;
}
.common_instructor_sec .cont .common_instructor_list ul li a:hover .img img {
  transform: scale(1.08);
}
.common_instructor_sec .cont .common_instructor_list ul li a:hover .name {
  color: #e25353;
}
.common_instructor_sec .cont .not_found {
  margin-top: 41px;
}

#top_shop_sec {
  position: relative;
  padding: 185px 0 233px;
  background-image: url(image/shop_sec_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#top_shop_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, #e6e6e6 1px, transparent 1.6px);
  background-size: 20px 20px;
  -webkit-mask-image: url(image/shop_sec_back.svg);
  mask-image: url(image/shop_sec_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#top_shop_sec .deco_text {
  position: absolute;
  left: calc(50% - 720px - 8px);
  top: 82px;
  font-size: 106px;
  line-height: 1;
  letter-spacing: 0;
  color: rgba(255, 178, 178, 0.7);
  pointer-events: none;
}
#top_shop_sec .wrap {
  position: relative;
  z-index: 1;
}
#top_shop_sec .cont {
  display: flex;
}
#top_shop_sec .cont .text_block {
  flex-shrink: 0;
  width: 440px;
}
#top_shop_sec .cont .text_block .ttl {
  font-size: 50px;
  font-weight: 700;
  line-height: 1.24;
  letter-spacing: 0.08em;
  color: #232121;
}
#top_shop_sec .cont .text_block .text {
  margin-top: 23px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
#top_shop_sec .cont .text_block .common_btn {
  margin-top: 40px;
}
#top_shop_sec .cont .photo_block {
  width: 465px;
  height: 400px;
  margin: -66px 0 0 auto;
}
#top_shop_sec .cont .photo_block::before {
  content: "";
  position: absolute;
  left: -9px;
  top: -2px;
  width: 440px;
  height: 400px;
  border-radius: 20px;
  background-color: #ff7f7f;
  transform: rotate(11deg);
}
#top_shop_sec .cont .photo_block .img {
  position: relative;
  width: 440px;
  height: 400px;
  overflow: hidden;
  border: 3px solid #fe9192;
  border-radius: 20px;
}
#top_shop_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top_shop_sec .cont .photo_block .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#top_shop_sec .cont .photo_block .deco img {
  width: 100%;
}
#top_shop_sec .cont .photo_block .girl {
  left: -55px;
  top: 232px;
  width: 185px;
}

#top_business_sec {
  position: relative;
  margin-top: 62px;
}
#top_business_sec .box {
  position: relative;
  padding: 96px 0 90px;
  background-color: #f1e8e1;
  border-radius: 30px;
  overflow: hidden;
}
#top_business_sec .box::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.3;
  pointer-events: none;
}
#top_business_sec .box .wrap {
  position: relative;
  z-index: 1;
}
#top_business_sec .box .cont .copy {
  margin-top: 22px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: 0.04em;
  text-align: center;
}
#top_business_sec .box .cont .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
}
#top_business_sec .box .cont .common_service_list {
  margin-top: 30px;
}
#top_business_sec .box .cont .common_service_list ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 20px;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(2) {
  animation-delay: 0.1s;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(3) {
  animation-delay: 0.2s;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(4) {
  animation-delay: 0.3s;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) {
  margin-top: 30px;
}
#top_business_sec .box .cont .common_service_list ul li a {
  display: block;
  color: #232121;
}
#top_business_sec .box .cont .common_service_list ul li a .img {
  position: relative;
  height: 180px;
  border-radius: 20px;
}
#top_business_sec .box .cont .common_service_list ul li a .img::before {
  content: "";
  position: absolute;
  z-index: 1;
  left: -7px;
  top: -7px;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  background-image: url(image/business_img_frame1.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border-radius: 24px;
}
#top_business_sec .box .cont .common_service_list ul li a .img img {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
}
#top_business_sec .box .cont .common_service_list ul li a .ttl {
  display: flex;
  align-items: center;
  gap: 0 16px;
  margin-top: 22px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
#top_business_sec .box .cont .common_service_list ul li a .ttl::before {
  content: "";
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #fe8286;
}
#top_business_sec .box .cont .common_service_list ul li a .text {
  margin-top: 22px;
  font-size: 15px;
  line-height: 1.47;
  text-align: left;
}
#top_business_sec .box .cont .common_service_list ul li a .more {
  display: flex;
  align-items: center;
  margin-top: 16px;
  padding-bottom: 10px;
  border-bottom: 3px dashed #fe8286;
}
#top_business_sec .box .cont .common_service_list ul li a .more .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#top_business_sec .box .cont .common_service_list ul li a .more .arrow {
  position: relative;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-left: auto;
  border-radius: 50%;
  background-color: #fff;
  transition: transform 0.3s;
}
#top_business_sec .box .cont .common_service_list ul li a .more .arrow::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 11.5px;
  width: 10px;
  height: 1px;
  background-color: #e25353;
}
#top_business_sec .box .cont .common_service_list ul li a .more .arrow::after {
  content: "";
  position: absolute;
  left: 11px;
  top: 9px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #e25353;
  border-right: 1px solid #e25353;
  transform: rotate(45deg);
}
#top_business_sec .box .cont .common_service_list ul li a:hover .ttl {
  color: #e25353;
}
#top_business_sec .box .cont .common_service_list ul li a:hover .more .arrow {
  transform: translateX(4px);
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) a .img::before {
  border-color: #ffae97;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) a .img::before {
  background-image: url(image/business_img_frame2.png);
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) a .ttl::before {
  background-color: #ffae97;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) a .more {
  border-color: #ffae97;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) a .more .arrow::before {
  background-color: #ffae97;
}
#top_business_sec .box .cont .common_service_list ul li:nth-child(even) a .more .arrow::after {
  border-color: #ffae97;
}
#top_business_sec .box .cont .btn_list {
  display: flex;
  justify-content: center;
  gap: 0 40px;
  margin-top: 59px;
}
#top_business_sec .box .cont .btn_list .common_btn a {
  width: 360px;
}
#top_business_sec .box .cont .btn_list .common_btn a .icon {
  flex-shrink: 0;
  width: 23px;
  margin-right: 15px;
  line-height: 1;
}
#top_business_sec .box .cont .btn_list .common_btn a .icon img {
  width: 100%;
}
#top_business_sec .box .cont .btn_list .estimate_btn a {
  width: 380px;
  padding-left: 32px;
}

#top_report_sec {
  position: relative;
  margin-top: 168px;
}
#top_report_sec .cont {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 40px;
}
#top_report_sec .cont .box {
  padding: 25px 40px 53px;
  background-color: #fff;
  border: 4px solid transparent;
  -o-border-image: url(image/report_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/report_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
}
#top_report_sec .cont .box .common_ttl_box .ttl {
  font-size: 32px;
  margin-top: 4px;
}
#top_report_sec .cont .box .text {
  margin-top: 26px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.04em;
}
#top_report_sec .cont .box .common_post_list {
  margin-top: 21px;
}
#top_report_sec .cont .box .common_post_list ul li {
  padding: 30px 0;
  border-bottom: 1px dashed #d2d2d2;
}
#top_report_sec .cont .box .common_post_list ul li:first-child {
  padding-top: 0;
}
#top_report_sec .cont .box .common_post_list ul li a {
  display: flex;
  color: #232121;
}
#top_report_sec .cont .box .common_post_list ul li a .img {
  flex-shrink: 0;
  width: 140px;
  height: 100px;
  overflow: hidden;
  border-radius: 10px;
}
#top_report_sec .cont .box .common_post_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
#top_report_sec .cont .box .common_post_list ul li a .text_box {
  flex-grow: 1;
  min-width: 0;
  margin-left: 20px;
  padding-top: 4px;
}
#top_report_sec .cont .box .common_post_list ul li a .text_box .date {
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #bebebe;
}
#top_report_sec .cont .box .common_post_list ul li a .text_box .ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-top: 12px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  color: #333333;
  transition: color 0.3s;
}
#top_report_sec .cont .box .common_post_list ul li a .text_box .cat {
  display: table;
  min-width: 80px;
  line-height: 1.5;
  margin-top: 6px;
  padding: 0 12px;
  border: 1px solid #fe8286;
  border-radius: 100vmax;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: center;
  color: #fe8286;
}
#top_report_sec .cont .box .common_post_list ul li a:hover .img img {
  transform: scale(1.08);
}
#top_report_sec .cont .box .common_post_list ul li a:hover .text_box .ttl {
  color: #e25353;
}
#top_report_sec .cont .box .not_found {
  margin-top: 16px;
}
#top_report_sec .cont .box .common_btn {
  margin-top: 40px;
}
#top_report_sec .cont .box .common_btn a {
  width: 220px;
  margin: 0 auto;
}
#top_report_sec .cont .blog_box {
  border-image-source: url(image/blog_box_frame.png);
}
#top_report_sec .cont .blog_box .common_ttl_box .en {
  color: #ff7654;
}
#top_report_sec .cont .blog_box .common_post_list ul li a .text_box .cat {
  border-color: #ff7654;
  color: #ff7654;
}

.common_faq_sec {
  position: relative;
  margin-top: 112px;
  padding: 128px 0 109px;
  background-image: url(image/faq_sec_back.svg), linear-gradient(#faefe8, #faefe8);
  background-repeat: no-repeat;
  background-position: center top, center 79px;
  background-size: 100% 1786px, 100% calc(100% - 79px);
}
.common_faq_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.4;
  -webkit-mask-image: url(image/faq_sec_back.svg), linear-gradient(#000, #000);
  mask-image: url(image/faq_sec_back.svg), linear-gradient(#000, #000);
  -webkit-mask-size: 100% 1786px, 100% calc(100% - 79px);
  mask-size: 100% 1786px, 100% calc(100% - 79px);
  -webkit-mask-position: center top, center 79px;
  mask-position: center top, center 79px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
.common_faq_sec .wrap {
  position: relative;
  z-index: 1;
}
.common_faq_sec .cont .lead {
  margin-top: 34px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
}
.common_faq_sec .cont .lead a {
  font-weight: 700;
  color: #232121;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: color 0.3s;
}
.common_faq_sec .cont .lead a:hover {
  color: #e25353;
}
.common_faq_sec .cont .common_btn {
  margin-top: 50px;
}
.common_faq_sec .cont .common_btn a {
  width: 320px;
  margin: 0 auto;
}

.common_faq_list {
  margin-top: 30px;
}
.common_faq_list ul li {
  padding: 22px 20px 37px;
  background-color: #fff;
  border-radius: 10px;
}
.common_faq_list ul li + li {
  margin-top: 30px;
}
.common_faq_list ul li:not(.open) {
  padding-bottom: 22px;
}
.common_faq_list ul li:not(.open) .q_box {
  padding-bottom: 0;
  border-bottom: 0;
}
.common_faq_list ul li:not(.open) .q_box .toggle::before {
  transform: rotate(0);
}
.common_faq_list ul li:not(.open) .q_box .toggle::after {
  transform: rotate(90deg);
}
.common_faq_list ul li:not(.open) .a_box {
  display: none;
}
.common_faq_list ul li .q_box {
  display: flex;
  align-items: center;
  cursor: pointer;
  padding-bottom: 21px;
  border-bottom: 1px dashed #e0e0e0;
}
.common_faq_list ul li .q_box .mark {
  flex-shrink: 0;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #fe8286;
  font-size: 20px;
  line-height: 2.25;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fff;
}
.common_faq_list ul li .q_box .ttl {
  flex-grow: 1;
  margin-left: 40px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.04em;
  color: #000;
}
.common_faq_list ul li .q_box .toggle {
  position: relative;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin: 0 5px 0 20px;
}
.common_faq_list ul li .q_box .toggle::before, .common_faq_list ul li .q_box .toggle::after {
  content: "";
  position: absolute;
  left: 0;
  top: 9.5px;
  width: 20px;
  height: 1px;
  background-color: #000;
  transition: transform 0.3s;
}
.common_faq_list ul li .q_box .toggle::before {
  transform: rotate(45deg);
}
.common_faq_list ul li .q_box .toggle::after {
  transform: rotate(-45deg);
}
.common_faq_list ul li .a_box {
  display: flex;
  padding-top: 21px;
}
.common_faq_list ul li .a_box .mark {
  flex-shrink: 0;
  width: 45px;
  height: 45px;
  border: 1px solid #fe8286;
  border-radius: 50%;
  background-color: #fff;
  font-size: 20px;
  line-height: 2.15;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fe8286;
}
.common_faq_list ul li .a_box .text {
  flex-grow: 1;
  margin-left: 40px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #333333;
}
.common_faq_list ul li .a_box .text a {
  font-weight: 700;
  color: #333333;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: color 0.3s;
}
.common_faq_list ul li .a_box .text a:hover {
  color: #e25353;
}

/* 下層共通 */
/* 一覧ページ */
#archive_page .common_page_wrap {
  padding: 86px 0 150px;
}
#archive_page .cat_nav {
  margin-bottom: 50px;
}
#archive_page .cat_nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 10px;
}
#archive_page .cat_nav ul li a {
  display: block;
  padding: 0 22px;
  border: 1px solid #fe8286;
  border-radius: 100vmax;
  background-color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0.04em;
  color: #fe8286;
  transition: background-color 0.3s, color 0.3s;
}
#archive_page .cat_nav ul li a:hover {
  background-color: #fe8286;
  color: #fff;
}
#archive_page .cat_nav ul li.current a {
  background-color: #fe8286;
  color: #fff;
}
#archive_page .common_news_list {
  padding: 58px 85px 40px 81px;
  background-color: #fff;
  border-radius: 20px;
}
#archive_page .common_news_list ul li {
  padding: 23px 0 11px;
  border-bottom: 1px dashed #dbdbdb;
}
#archive_page .common_news_list ul li:first-child {
  padding-top: 0;
}
#archive_page .common_news_list ul li a {
  display: flex;
  align-items: center;
  color: #232121;
}
#archive_page .common_news_list ul li a .text_box {
  flex-grow: 1;
  min-width: 0;
}
#archive_page .common_news_list ul li a .text_box .ttl_box {
  display: flex;
  align-items: center;
  gap: 0 30px;
}
#archive_page .common_news_list ul li a .text_box .ttl_box .date {
  flex-shrink: 0;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #cbcbcb;
}
#archive_page .common_news_list ul li a .text_box .ttl_box .ttl {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
#archive_page .common_news_list ul li a .text_box .text {
  margin-top: 12px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.47;
  letter-spacing: 0.04em;
}
#archive_page .common_news_list ul li a .arrow {
  position: relative;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  margin-left: 20px;
  border-radius: 50%;
  background-color: #ffeaea;
  transition: transform 0.3s;
}
#archive_page .common_news_list ul li a .arrow::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 14px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #e6575c;
  border-right: 2px solid #e6575c;
  transform: rotate(45deg);
}
#archive_page .common_news_list ul li a:hover .text_box .ttl_box .ttl {
  color: #e25353;
}
#archive_page .common_news_list ul li a:hover .arrow {
  transform: translateX(4px);
}
#archive_page .common_post_list ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 40px;
}
#archive_page .common_post_list ul li {
  padding: 30px 0;
  border-bottom: 1px dashed #d2d2d2;
}
#archive_page .common_post_list ul li:nth-child(-n+2) {
  padding-top: 0;
}
#archive_page .common_post_list ul li a {
  display: flex;
  color: #232121;
}
#archive_page .common_post_list ul li a .img {
  flex-shrink: 0;
  width: 180px;
  height: 128px;
  overflow: hidden;
  border-radius: 10px;
}
#archive_page .common_post_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
#archive_page .common_post_list ul li a .text_box {
  flex-grow: 1;
  min-width: 0;
  margin-left: 20px;
  padding-top: 4px;
}
#archive_page .common_post_list ul li a .text_box .date {
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #bebebe;
}
#archive_page .common_post_list ul li a .text_box .ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-top: 12px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
  color: #333333;
  transition: color 0.3s;
}
#archive_page .common_post_list ul li a .text_box .cat {
  display: table;
  min-width: 80px;
  margin-top: 6px;
  padding: 0 12px;
  border: 1px solid #fe8286;
  border-radius: 100vmax;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: center;
  color: #fe8286;
}
#archive_page .common_post_list ul li a:hover .img img {
  transform: scale(1.08);
}
#archive_page .common_post_list ul li a:hover .text_box .ttl {
  color: #e25353;
}
#archive_page .common_voice_list ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px 20px;
}
#archive_page .common_voice_list ul li {
  position: relative;
  padding-top: 26px;
}
#archive_page .common_voice_list ul li a {
  display: block;
  color: #232121;
}
#archive_page .common_voice_list ul li a .clip {
  position: absolute;
  left: 50%;
  top: 0;
  z-index: 1;
  width: 44px;
  margin-left: -22px;
  line-height: 1;
}
#archive_page .common_voice_list ul li a .clip img {
  width: 100%;
}
#archive_page .common_voice_list ul li a .card {
  padding: 20px 20px 32px;
  background-color: #fff;
  border-radius: 30px 6px 30px 6px;
}
#archive_page .common_voice_list ul li a .card .img {
  height: 170px;
  overflow: hidden;
  border-radius: 20px;
}
#archive_page .common_voice_list ul li a .card .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
#archive_page .common_voice_list ul li a .card .ttl {
  min-height: 50px;
  margin-top: 18px;
  padding-bottom: 17px;
  box-sizing: content-box;
  border-bottom: 1px dashed #c8c8c8;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.56;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
#archive_page .common_voice_list ul li a .card .bottom_box {
  display: flex;
  align-items: center;
  margin-top: 17px;
}
#archive_page .common_voice_list ul li a .card .bottom_box .name {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}
#archive_page .common_voice_list ul li a .card .bottom_box .arrow {
  position: relative;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-left: auto;
  border-radius: 50%;
  background-color: #fee6e6;
  transition: transform 0.3s;
}
#archive_page .common_voice_list ul li a .card .bottom_box .arrow::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 11.5px;
  width: 10px;
  height: 1px;
  background-color: #e25353;
}
#archive_page .common_voice_list ul li a .card .bottom_box .arrow::after {
  content: "";
  position: absolute;
  left: 11px;
  top: 9px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #e25353;
  border-right: 1px solid #e25353;
  transform: rotate(45deg);
}
#archive_page .common_voice_list ul li a:hover .card .img img {
  transform: scale(1.08);
}
#archive_page .common_voice_list ul li a:hover .card .ttl {
  color: #e25353;
}
#archive_page .common_voice_list ul li a:hover .card .bottom_box .arrow {
  transform: translateX(4px);
}
#archive_page .common_instructor_list ul {
  display: grid;
  grid-template-columns: repeat(4, 270px);
  justify-content: space-between;
  gap: 40px 0;
}
#archive_page .common_instructor_list ul li a {
  display: block;
  height: 100%;
  padding: 28px 28px 19px;
  background-color: #fff;
  border: 2px solid #e25353;
  border-radius: 175px 175px 0 0;
  color: #232121;
  text-align: center;
}
#archive_page .common_instructor_list ul li a .img {
  height: 250px;
  overflow: hidden;
  border-radius: 110px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
}
#archive_page .common_instructor_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
#archive_page .common_instructor_list ul li a .badge {
  position: relative;
  display: table;
  width: 140px;
  margin: -30px auto 0;
  border-radius: 100vmax;
  background-color: #fb6a6a;
  font-size: 14px;
  font-weight: 700;
  line-height: 2.1429;
  letter-spacing: 0.04em;
  color: #fff;
}
#archive_page .common_instructor_list ul li a .name {
  margin-top: 12px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.04em;
  transition: color 0.3s;
}
#archive_page .common_instructor_list ul li a .name .accent {
  color: #e25353;
}
#archive_page .common_instructor_list ul li a .en {
  font-size: 12px;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #cecece;
}
#archive_page .common_instructor_list ul li a .area_label {
  display: flex;
  align-items: center;
  gap: 0 10px;
  margin-top: 11px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
#archive_page .common_instructor_list ul li a .area_label::before, #archive_page .common_instructor_list ul li a .area_label::after {
  content: "";
  flex-grow: 1;
  height: 0;
  border-top: 1px dashed #bababa;
}
#archive_page .common_instructor_list ul li a .area {
  margin-top: 5px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.54;
  letter-spacing: 0.04em;
}
#archive_page .common_instructor_list ul li a:hover .img img {
  transform: scale(1.08);
}
#archive_page .common_instructor_list ul li a:hover .name {
  color: #e25353;
}
#archive_page .archive_navi {
  margin-top: 60px;
}
#archive_page .archive_navi .wp-pagenavi {
  display: flex;
  justify-content: center;
  gap: 0 8px;
  border: 0;
}
#archive_page .archive_navi .wp-pagenavi a, #archive_page .archive_navi .wp-pagenavi span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  margin: 0;
  padding: 0 8px;
  border: 1px solid #fe8286;
  border-radius: 50%;
  background-color: #fff;
  font-size: 14px;
  color: #fe8286;
}
#archive_page .archive_navi .wp-pagenavi .current, #archive_page .archive_navi .wp-pagenavi a:hover {
  background-color: #fe8286;
  color: #fff;
}
#archive_page .archive_navi .wp-pagenavi .pages, #archive_page .archive_navi .wp-pagenavi .extend {
  display: none;
}
#archive_page .not_found {
  margin-top: 0;
}

.common_page_main {
  position: relative;
  margin-top: 111px;
  overflow: hidden;
}
.common_page_main .bg {
  position: absolute;
  left: 50%;
  top: -381px;
  width: max(1780px, 123.6vw);
  height: 646px;
  overflow: hidden;
  border-radius: 50%;
  background-color: #ffe3e6;
  transform: translateX(-50%);
  pointer-events: none;
}
.common_page_main .bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.3;
}
.common_page_main .wrap {
  position: relative;
  z-index: 1;
}
.common_page_main .cont .breadcrumb {
  padding-top: 17px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  text-align: right;
  color: #232121;
}
.common_page_main .cont .breadcrumb a {
  color: #e25353;
}
.common_page_main .cont .breadcrumb .sep {
  margin: 0 4px;
  color: #e25353;
}
.common_page_main .cont .illust {
  width: 383px;
  margin: -14px 0 0 356px;
  line-height: 1;
}
.common_page_main .cont .illust img {
  width: 100%;
}
.common_page_main .cont .ttl_box {
  text-align: center;
}
.common_page_main .cont .ttl_box.w260 {
  --ttl_w: 260px;
}
.common_page_main .cont .ttl_box.w290 {
  --ttl_w: 290px;
}
.common_page_main .cont .ttl_box.w370 {
  --ttl_w: 370px;
}
.common_page_main .cont .ttl_box.w460 {
  --ttl_w: 460px;
}
.common_page_main .cont .ttl_box.w520 {
  --ttl_w: 520px;
}
.common_page_main .cont .ttl_box.w560 {
  --ttl_w: 560px;
}
.common_page_main .cont .ttl_box.w590 {
  --ttl_w: 590px;
}
.common_page_main .cont .ttl_box.w680 {
  --ttl_w: 680px;
}
.common_page_main .cont .ttl_box.w750 {
  --ttl_w: 750px;
}
.common_page_main .cont .ttl_box .en {
  margin-top: 9px;
  font-size: 18px;
  line-height: 1.44;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  color: #000;
}
.common_page_main .cont .ttl_box .ttl {
  width: -moz-fit-content;
  width: fit-content;
  min-width: var(--ttl_w, 360px);
  margin: 5px auto 0;
  padding: 0 13px 8px;
  border-radius: 10px;
  background-color: #e25353;
  font-size: 48px;
  font-weight: 900;
  line-height: 1.375;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  color: #fff;
}

.common_course_cta_sec {
  position: relative;
  z-index: 1;
  overflow-x: clip;
  padding-bottom: 69px;
  padding-top: 54px;
  background-color: #e7b598;
}
.common_course_cta_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/course_cta_sec_back.jpg);
  background-repeat: no-repeat;
  background-position: 50% 31.5%;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.7;
  pointer-events: none;
}
.common_course_cta_sec .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
.common_course_cta_sec .deco img {
  width: 100%;
}
.common_course_cta_sec .astro1 {
  left: calc(50% - 720px + 360px);
  top: 39px;
  width: 127px;
}
.common_course_cta_sec .astro2 {
  left: calc(50% - 720px + 945px);
  top: 39px;
  width: 127px;
}
.common_course_cta_sec .lotus1 {
  left: calc(50% - 720px + 56px);
  bottom: 0;
  width: 200px;
}
.common_course_cta_sec .lotus2 {
  left: calc(50% - 720px + 1203px);
  bottom: 0;
  width: 189px;
}
.common_course_cta_sec .lotus3 {
  left: calc(50% - 720px + 1170px);
  bottom: 0;
  width: 113px;
}
.common_course_cta_sec .flower1 {
  left: calc(50% - 720px + 1031px);
  top: 26px;
  width: 92px;
}
.common_course_cta_sec .flower2 {
  left: calc(50% - 720px + 1112px);
  top: 110px;
  width: 46px;
}
.common_course_cta_sec .flower3 {
  left: calc(50% - 720px + 344px);
  top: 138px;
  width: 75px;
}
.common_course_cta_sec .flower4 {
  left: calc(50% - 720px + 313px);
  top: 109px;
  width: 46px;
}
.common_course_cta_sec .wrap {
  position: relative;
  z-index: 1;
}
.common_course_cta_sec .cont {
  text-align: center;
}
.common_course_cta_sec .cont .ttl {
  font-size: 48px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #cc3131;
  -webkit-text-stroke: 10px #fff;
  paint-order: stroke fill;
}
.common_course_cta_sec .cont .text {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.04em;
  color: #000;
}
.common_course_cta_sec .cont .btn_list {
  display: flex;
  gap: 0 40px;
  width: 760px;
  margin: 37px auto 0;
}
.common_course_cta_sec .cont .btn_list a {
  display: flex;
  align-items: center;
  height: 80px;
  border-radius: 100vmax;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
.common_course_cta_sec .cont .btn_list a .icon {
  flex-shrink: 0;
  line-height: 1;
}
.common_course_cta_sec .cont .btn_list a .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
.common_course_cta_sec .cont .btn_list a .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
.common_course_cta_sec .cont .btn_list .reserve_btn {
  width: 400px;
  padding-left: 36px;
  background-color: #b63030;
}
.common_course_cta_sec .cont .btn_list .reserve_btn .icon {
  width: 25px;
  margin-right: 22px;
}
.common_course_cta_sec .cont .btn_list .reserve_btn .icon svg .fill {
  fill: #fff;
  transition: fill 0.3s;
}
.common_course_cta_sec .cont .btn_list .reserve_btn:hover {
  background-color: #fff;
  color: #b63030;
  box-shadow: inset 0 0 0 2px #b63030;
}
.common_course_cta_sec .cont .btn_list .reserve_btn:hover .icon svg .fill {
  fill: #b63030;
}
.common_course_cta_sec .cont .btn_list .line_btn {
  width: 320px;
  padding-left: 37px;
  background-color: #21ad3f;
}
.common_course_cta_sec .cont .btn_list .line_btn .icon {
  width: 31px;
  margin-right: 24px;
}
.common_course_cta_sec .cont .btn_list .line_btn .icon svg .bg {
  fill: #06c755;
}
.common_course_cta_sec .cont .btn_list .line_btn .icon svg .balloon {
  fill: #fff;
}
.common_course_cta_sec .cont .btn_list .line_btn .icon svg .letter {
  fill: #06c755;
}
.common_course_cta_sec .cont .btn_list .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}

/* 初めての方へ */
.common_feature_sec .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
.common_feature_sec .deco img {
  width: 100%;
}
.common_feature_sec {
  padding: 125px 0 105px;
}
.common_feature_sec .cont .circles {
  left: 803px;
  top: 5px;
  width: 110px;
}
.common_feature_sec .cont .plane {
  left: 861px;
  top: -59px;
  width: 279px;
}
.common_feature_sec .cont .common_ttl_box .ttl {
  margin-top: -2px;
  font-size: 40px;
}
.common_feature_sec .cont .copy {
  margin-top: 37px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #232121;
}
.common_feature_sec .cont .text {
  margin-top: 13px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
.common_feature_sec .cont .point_list {
  margin-top: 43px;
}
.common_feature_sec .cont .point_list ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 60px;
}
.common_feature_sec .cont .point_list ul li {
  position: relative;
}
.common_feature_sec .cont .point_list ul li + li::before {
  content: "";
  position: absolute;
  left: -30px;
  top: 0;
  bottom: 0;
  width: 1px;
  background-color: #d6c9c2;
}
.common_feature_sec .cont .point_list ul li .mark {
  position: relative;
  z-index: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 180px;
  height: 180px;
  margin: 0 auto;
  padding-top: 21px;
}
.common_feature_sec .cont .point_list ul li .mark .circle {
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 50%;
  background-color: #ef9592;
  filter: blur(3px);
}
.common_feature_sec .cont .point_list ul li .mark .point {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
}
.common_feature_sec .cont .point_list ul li .mark .icon {
  margin-top: 13px;
  width: 71px;
  line-height: 1;
}
.common_feature_sec .cont .point_list ul li .mark .icon img {
  width: 100%;
}
.common_feature_sec .cont .point_list ul li:nth-child(2) .mark .icon {
  margin-top: 20px;
  width: 77px;
}
.common_feature_sec .cont .point_list ul li:nth-child(3) .mark .icon {
  margin-top: 18px;
  width: 78px;
}
.common_feature_sec .cont .point_list ul li .ttl {
  display: flex;
  gap: 0 14px;
  margin-top: 17px;
}
.common_feature_sec .cont .point_list ul li .ttl .check {
  flex-shrink: 0;
  width: 48px;
  line-height: 1;
}
.common_feature_sec .cont .point_list ul li .ttl .check img {
  width: 100%;
}
.common_feature_sec .cont .point_list ul li .ttl .label {
  padding-top: 4px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #e25353;
}
.common_feature_sec .cont .point_list ul li .text {
  margin-top: 13px;
  font-size: 15px;
  line-height: 1.33;
  letter-spacing: 0.07em;
}
.common_feature_sec .cont .point_list ul li .text + .text {
  margin-top: 0;
}

.common_philosophy_sec .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
.common_philosophy_sec .deco img {
  width: 100%;
}
.common_philosophy_sec.has_line {
  padding-bottom: 140px;
}
.common_philosophy_sec {
  padding: 96px 0 124px;
  background-color: #fff;
}
.common_philosophy_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, #e6e6e6 1px, transparent 1.6px);
  background-size: 20px 20px;
  pointer-events: none;
}
.common_philosophy_sec > .wrap {
  position: relative;
  z-index: 1;
}
.common_philosophy_sec > .wrap > .cont {
  display: flex;
}
.common_philosophy_sec > .wrap > .cont .deco_text {
  position: absolute;
  left: 0;
  top: -2px;
  width: 562px;
  font-size: 83px;
  line-height: 1;
  text-align: center;
  color: #ececec;
  pointer-events: none;
}
.common_philosophy_sec > .wrap > .cont .text_block {
  position: relative;
  flex-grow: 1;
  min-width: 0;
  padding-top: 34px;
}
.common_philosophy_sec > .wrap > .cont .text_block > .label {
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #e25353;
}
.common_philosophy_sec > .wrap > .cont .text_block .ttl {
  margin-top: 46px;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0.08em;
  color: #232121;
}
.common_philosophy_sec > .wrap > .cont .text_block .text {
  margin-top: 18px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.08em;
  color: #000;
}
.common_philosophy_sec > .wrap > .cont .text_block .btn_list {
  display: flex;
  gap: 0 21px;
  margin-top: 40px;
}
.common_philosophy_sec > .wrap > .cont .text_block .btn_list .common_btn a {
  width: 330px;
}
.common_philosophy_sec > .wrap > .cont .text_block .btn_list .common_btn a .label {
  font-size: 17px;
}
.common_philosophy_sec > .wrap > .cont .text_block .btn_list .common_btn + .common_btn a {
  width: 280px;
}
.common_philosophy_sec > .wrap > .cont .photo_block {
  flex-shrink: 0;
  width: 478px;
  height: 469px;
  margin-left: 31px;
}
.common_philosophy_sec > .wrap > .cont .photo_block::before {
  content: "";
  position: absolute;
  left: 46px;
  top: 34px;
  width: 400px;
  height: 400px;
  border-radius: 20px;
  background-color: #ff7f7f;
  transform: rotate(11deg);
}
.common_philosophy_sec > .wrap > .cont .photo_block .img {
  position: relative;
  width: 400px;
  height: 400px;
  margin: 40px 0 0 55px;
  overflow: hidden;
  border: 3px solid #fe9192;
  border-radius: 20px;
}
.common_philosophy_sec > .wrap > .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.common_philosophy_sec > .wrap > .cont .photo_block .girl {
  left: -1px;
  top: 304px;
  width: 160px;
}
.common_philosophy_sec .common_line_sec {
  margin-top: 137px;
}

#page_beginners .common_page_wrap {
  padding: 86px 0 0;
}
#page_beginners .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_beginners .deco img {
  width: 100%;
}
#page_beginners .lead_sec {
  padding-bottom: 68px;
}
#page_beginners .lead_sec .deco1 {
  left: calc(50% - 720px + 434px);
  top: -54px;
  width: 77px;
}
#page_beginners .lead_sec .deco2 {
  left: calc(50% - 720px + 1014px);
  top: 56px;
  width: 45px;
}
#page_beginners .lead_sec .cont {
  text-align: center;
}
#page_beginners .lead_sec .cont .copy {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_beginners .lead_sec .cont .text {
  margin-top: 27px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_beginners .about_sec {
  margin-top: -76px;
  padding: 174px 0 146px;
  background-image: url(image/beginners_about_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_beginners .about_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/beginners_about_back.svg);
  mask-image: url(image/beginners_about_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_beginners .about_sec .deco1 {
  left: calc(50% - 720px + 993px);
  top: 160px;
  width: 60px;
}
#page_beginners .about_sec .deco2 {
  left: calc(50% - 720px + 395px);
  top: 213px;
  width: 60px;
}
#page_beginners .about_sec .deco3 {
  left: calc(50% - 720px + 975px);
  top: 560px;
  width: 71px;
}
#page_beginners .about_sec .deco4 {
  left: calc(50% - 720px + 377px);
  top: 657px;
  width: 42px;
}
#page_beginners .about_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_beginners .about_sec .cont {
  text-align: center;
}
#page_beginners .about_sec .cont .common_ttl_box .ttl {
  margin-top: 3px;
  font-size: 40px;
}
#page_beginners .about_sec .cont .sub {
  margin-top: 31px;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_beginners .about_sec .cont .text {
  margin-top: 19px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_beginners .about_sec .cont .divider {
  display: flex;
  align-items: center;
  gap: 0 25px;
  margin-top: 38px;
  font-size: 22px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_beginners .about_sec .cont .divider::before, #page_beginners .about_sec .cont .divider::after {
  content: "";
  flex-grow: 1;
  height: 0;
  border-top: 3px dashed #fe8286;
}
#page_beginners .about_sec .cont .work_list {
  margin-top: 54px;
}
#page_beginners .about_sec .cont .work_list ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 30px;
  text-align: left;
}
#page_beginners .about_sec .cont .work_list ul li {
  padding: 30px 26px 19px;
  background-color: #fff;
  border: 4px solid transparent;
  -o-border-image: url(image/report_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/report_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
}
#page_beginners .about_sec .cont .work_list ul li .num {
  position: relative;
  z-index: 1;
  display: block;
  width: 50px;
  height: 50px;
  margin: -55px auto 5px;
  border-radius: 50%;
  background-color: #fe8286;
  font-size: 22px;
  font-weight: 700;
  line-height: 2.27;
  text-align: center;
  color: #fff;
}
#page_beginners .about_sec .cont .work_list ul li .img {
  height: 180px;
  overflow: hidden;
  border-radius: 10px;
}
#page_beginners .about_sec .cont .work_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_beginners .about_sec .cont .work_list ul li .ttl {
  margin-top: 20px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.44;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_beginners .about_sec .cont .work_list ul li .ttl .accent {
  color: #e25353;
}
#page_beginners .about_sec .cont .work_list ul li .text {
  margin-top: 5px;
  font-size: 15px;
  line-height: 1.47;
  letter-spacing: 0.04em;
  color: #000;
}
#page_beginners .about_sec .cont .work_list ul li .text + .text {
  margin-top: 0;
}
#page_beginners .course_sec {
  padding: 108px 0 114px;
}
#page_beginners .course_sec .cont {
  text-align: center;
}
#page_beginners .course_sec .cont .common_ttl_box .label {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#page_beginners .course_sec .cont .common_ttl_box .ttl {
  margin-top: 12px;
}
#page_beginners .course_sec .cont .copy {
  margin-top: 26px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: 0.04em;
  color: #333333;
}
#page_beginners .course_sec .cont .text {
  margin-top: 11px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #000;
}
#page_beginners .course_sec .cont .sub_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 14px;
  margin-top: 36px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_beginners .course_sec .cont .sub_ttl .lotus {
  width: 47px;
  line-height: 1;
}
#page_beginners .course_sec .cont .sub_ttl .lotus img {
  width: 100%;
}
#page_beginners .course_sec .cont .sub_ttl .lotus + .label + .lotus {
  transform: scaleX(-1);
}
#page_beginners .course_sec .cont .work_list {
  margin-top: 26px;
}
#page_beginners .course_sec .cont .work_list ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 30px;
}
#page_beginners .course_sec .cont .work_list ul li {
  position: relative;
  padding: 30px 30px 42px;
  background-color: #fff;
  border-radius: 20px;
}
#page_beginners .course_sec .cont .work_list ul li::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 20px;
  background-color: #deccbc;
  transform: rotate(-5deg);
}
#page_beginners .course_sec .cont .work_list ul li .img {
  height: 180px;
  overflow: hidden;
  border-radius: 20px;
}
#page_beginners .course_sec .cont .work_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_beginners .course_sec .cont .work_list ul li .ttl {
  margin-top: 17px;
  font-size: 20px;
  font-weight: 700;
  line-height: 2.05;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_beginners .course_sec .cont .work_list ul li .text {
  margin-top: 2px;
  font-size: 15px;
  line-height: 1.47;
  text-align: left;
}
#page_beginners .course_sec .cont .common_btn {
  margin-top: 63px;
}
#page_beginners .course_sec .cont .common_btn a {
  width: 330px;
  margin: 0 auto;
  padding-right: 21px;
}
#page_beginners .flow_sec {
  padding: 126px 0 119px;
  background-image: url(image/beginners_flow_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_beginners .flow_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.5;
  -webkit-mask-image: url(image/beginners_flow_back.svg);
  mask-image: url(image/beginners_flow_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_beginners .flow_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_beginners .flow_sec .cont .deco1 {
  left: -45px;
  top: 417px;
  width: 83px;
}
#page_beginners .flow_sec .cont .deco2 {
  left: 1094px;
  top: 725px;
  width: 92px;
}
#page_beginners .flow_sec .cont .deco3 {
  left: -46px;
  top: 1065px;
  width: 92px;
  transform: scaleX(-1);
}
#page_beginners .flow_sec .cont .deco4 {
  left: 1094px;
  top: 1401px;
  width: 92px;
}
#page_beginners .flow_sec .cont .common_ttl_box {
  text-align: center;
}
#page_beginners .flow_sec .cont .common_ttl_box .ttl {
  margin-top: 15px;
}
#page_beginners .flow_sec .cont .lead {
  margin-top: 27px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_beginners .flow_sec .cont .common_flow_list {
  margin-top: 31px;
}
#page_beginners .flow_sec .cont .common_flow_list ul li {
  position: relative;
  display: flex;
  align-items: center;
  padding: 37px 47px;
  background-color: #fff;
  border: 3px solid #fe8286;
  border-radius: 20px;
}
#page_beginners .flow_sec .cont .common_flow_list ul li + li {
  margin-top: 30px;
}
#page_beginners .flow_sec .cont .common_flow_list ul li + li::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -45px;
  z-index: 1;
  width: 200px;
  height: 60px;
  margin-left: -100px;
  background-color: #fe8286;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box {
  flex-grow: 1;
  min-width: 0;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .ttl {
  display: flex;
  align-items: center;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .ttl .step {
  flex-shrink: 0;
  width: 106px;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .ttl .label {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .text {
  margin-top: 19px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #000;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list {
  display: flex;
  gap: 0 20px;
  margin-top: 21px;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn {
  display: flex;
  align-items: center;
  width: 300px;
  height: 50px;
  padding: 0 20px;
  border-radius: 100vmax;
  background-color: #e25353;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .icon {
  flex-shrink: 0;
  width: 24px;
  margin-right: 15px;
  line-height: 1;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .icon svg .bg {
  fill: #06c755;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .icon svg .balloon {
  fill: #fff;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .icon svg .letter {
  fill: #06c755;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .label {
  flex-grow: 1;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #fff;
  transition: background-color 0.3s;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn:hover {
  background-color: #fff;
  color: #e25353;
  box-shadow: inset 0 0 0 2px #e25353;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn:hover .dot {
  background-color: #e25353;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .line_btn {
  width: 290px;
  padding-left: 30px;
  background-color: #21ad3f;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .line_btn:hover {
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .line_btn:hover .dot {
  background-color: #21ad3f;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .img {
  flex-shrink: 0;
  width: 330px;
  height: 220px;
  margin-left: 50px;
  overflow: hidden;
  border-radius: 20px;
}
#page_beginners .flow_sec .cont .common_flow_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_beginners .common_voice_sec {
  padding-top: 140px;
}
#page_beginners .common_faq_sec {
  margin-top: 74px;
}

#page_about .common_page_wrap {
  padding: 86px 0 0;
}
#page_about .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_about .deco img {
  width: 100%;
}
#page_about .lead_sec {
  padding-bottom: 73px;
}
#page_about .lead_sec .deco1 {
  left: calc(50% - 720px + 451px);
  top: -50px;
  width: 77px;
}
#page_about .lead_sec .deco2 {
  left: calc(50% - 720px + 994px);
  top: 83px;
  width: 45px;
}
#page_about .lead_sec .cont {
  text-align: center;
}
#page_about .lead_sec .cont .copy {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about .lead_sec .cont .text {
  margin-top: 26px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about .what_sec {
  padding: 137px 0 168px;
  background-image: url(image/about_what_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_about .what_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/about_what_back.svg);
  mask-image: url(image/about_what_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_about .what_sec .deco1 {
  left: calc(50% - 720px + 163px);
  top: 256px;
  width: 94px;
}
#page_about .what_sec .deco2 {
  left: calc(50% - 720px + 134px);
  top: 327px;
  width: 60px;
}
#page_about .what_sec .deco3 {
  left: calc(50% - 720px + 175px);
  top: 338px;
  width: 71px;
}
#page_about .what_sec .deco4 {
  left: calc(50% - 720px + 13px);
  top: 488px;
  width: 37px;
}
#page_about .what_sec .deco5 {
  left: calc(50% - 720px + 57px);
  top: 513px;
  width: 43px;
}
#page_about .what_sec .deco6 {
  left: calc(50% - 720px + 473px);
  top: 705px;
  width: 92px;
}
#page_about .what_sec .girl {
  left: calc(50% - 720px + 1222px);
  top: 174px;
  width: 193px;
}
#page_about .what_sec .photo_list {
  position: absolute;
  inset: 0;
}
#page_about .what_sec .photo_list .img {
  position: absolute;
  width: 460px;
  height: 290px;
  overflow: hidden;
  border-radius: 20px;
}
#page_about .what_sec .photo_list .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_about .what_sec .photo_list .img1 {
  left: calc(50% - 720px + 163px);
  top: 114px;
  transform: rotate(6deg);
}
#page_about .what_sec .photo_list .img2 {
  left: calc(50% - 720px + 49px);
  top: 492px;
  transform: rotate(-6deg);
  animation-delay: 0.1s;
}
#page_about .what_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_about .what_sec .cont .text_block {
  width: 610px;
  margin-left: 544px;
}
#page_about .what_sec .cont .text_block .common_ttl_box .en {
  font-size: 16px;
}
#page_about .what_sec .cont .text_block .common_ttl_box .ttl {
  margin-top: 47px;
  font-size: 46px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
#page_about .what_sec .cont .text_block .text {
  margin-top: 39px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about .what_sec .cont .text_block .common_btn {
  margin-top: 40px;
}
#page_about .classroom_sec {
  padding: 167px 0 170px;
}
#page_about .classroom_sec .ring {
  left: calc(50% - 382px);
  top: 45px;
  width: 764px;
}
#page_about .classroom_sec .deco1 {
  left: calc(50% - 720px + 160px);
  top: 133px;
  width: 78px;
}
#page_about .classroom_sec .deco2 {
  left: calc(50% - 720px + 1295px);
  top: 503px;
  width: 78px;
}
#page_about .classroom_sec .deco3 {
  left: calc(50% - 720px + 1136px);
  top: 41px;
  width: 86px;
}
#page_about .classroom_sec .deco4 {
  left: calc(50% - 720px + 257px);
  top: 595px;
  width: 86px;
}
#page_about .classroom_sec .photo_list {
  position: absolute;
  inset: 0;
}
#page_about .classroom_sec .photo_list .img {
  position: absolute;
  width: 220px;
  height: 260px;
  overflow: hidden;
  border-radius: 20px;
}
#page_about .classroom_sec .photo_list .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_about .classroom_sec .photo_list .img1 {
  left: calc(50% - 720px + 1160px);
  top: 96px;
  transform: rotate(6deg);
}
#page_about .classroom_sec .photo_list .img2 {
  left: calc(50% - 720px + 190px);
  top: 186px;
  height: 170px;
  transform: rotate(6deg);
  animation-delay: 0.1s;
}
#page_about .classroom_sec .photo_list .img3 {
  left: calc(50% - 720px + 1030px);
  top: 386px;
  height: 170px;
  transform: rotate(-6deg);
  animation-delay: 0.2s;
}
#page_about .classroom_sec .photo_list .img4 {
  left: calc(50% - 720px + 63px);
  top: 386px;
  transform: rotate(-6deg);
  animation-delay: 0.3s;
}
#page_about .classroom_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_about .classroom_sec .cont {
  text-align: center;
}
#page_about .classroom_sec .cont .common_ttl_box .ttl {
  margin-top: 16px;
}
#page_about .classroom_sec .cont .copy {
  margin-top: 34px;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.47;
  letter-spacing: 0.16em;
  color: #000;
}
#page_about .classroom_sec .cont .text {
  margin-top: 22px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about .classroom_sec .cont .common_btn {
  margin-top: 44px;
}
#page_about .classroom_sec .cont .common_btn a {
  width: 280px;
  margin: 0 auto;
}

#page_hanasaki .common_page_wrap {
  padding: 86px 0 0;
}
#page_hanasaki .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_hanasaki .deco img {
  width: 100%;
}
#page_hanasaki .profile_block {
  display: flex;
  align-items: flex-start;
}
#page_hanasaki .profile_block .text_block {
  width: 570px;
  padding-top: 39px;
}
#page_hanasaki .profile_block .text_block > .label {
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #e25353;
}
#page_hanasaki .profile_block .text_block .name {
  display: flex;
  align-items: flex-start;
  margin-top: 10px;
}
#page_hanasaki .profile_block .text_block .name .ja {
  font-size: 32px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #232121;
}
#page_hanasaki .profile_block .text_block .name .en {
  margin: 4px 0 0 40px;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0;
  color: #fdacb5;
}
#page_hanasaki .profile_block .text_block .position {
  margin-top: 25px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .profile_block .text_block .text {
  margin-top: 21px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .profile_block .photo_block {
  flex-shrink: 0;
}
#page_hanasaki .profile_block .photo_block::before {
  content: "";
  position: absolute;
  border-radius: 20px;
  background-color: #ff7f7f;
}
#page_hanasaki .profile_block .photo_block .img {
  position: relative;
  overflow: hidden;
  border: 3px solid #fe9192;
  border-radius: 20px;
}
#page_hanasaki .profile_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .lead_sec {
  z-index: 2;
}
#page_hanasaki .lead_sec .cont .copy {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
#page_hanasaki .lead_sec .cont .profile_block {
  margin-top: 39px;
}
#page_hanasaki .lead_sec .cont .profile_block .photo_block {
  width: 520px;
  height: 480px;
  margin-left: 50px;
}
#page_hanasaki .lead_sec .cont .profile_block .photo_block::before {
  left: 88px;
  top: 0;
  width: 440px;
  height: 400px;
  transform: rotate(11deg);
  transform-origin: 0 0;
}
#page_hanasaki .lead_sec .cont .profile_block .photo_block .img {
  width: 440px;
  height: 400px;
  margin: 40px 0 0 55px;
}
#page_hanasaki .lead_sec .cont .profile_block .photo_block .girl {
  left: 0;
  top: 272px;
  width: 185px;
  z-index: 1;
}
#page_hanasaki .story_sec {
  z-index: 1;
  margin-top: -208px;
  padding: 340px 0 132px;
  background-image: url(image/hanasaki_story_wave.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_hanasaki .story_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.5;
  -webkit-mask-image: url(image/hanasaki_story_wave.svg);
  mask-image: url(image/hanasaki_story_wave.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_hanasaki .story_sec .wrap, #page_hanasaki .story_sec .wrap02 {
  position: relative;
  z-index: 1;
}
#page_hanasaki .story_sec .common_ttl_box .ttl {
  margin-top: 10px;
  font-size: 40px;
  font-weight: 900;
}
#page_hanasaki .story_sec .story_list {
  margin-top: 59px;
}
#page_hanasaki .story_sec .story_list ul li {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding-left: 50px;
}
#page_hanasaki .story_sec .story_list ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 223px;
  width: 1090px;
  height: 280px;
  border-radius: 20px;
  background-color: #fffbf1;
}
#page_hanasaki .story_sec .story_list ul li.reverse {
  flex-direction: row-reverse;
  padding: 0 50px 0 0;
}
#page_hanasaki .story_sec .story_list ul li.reverse::before {
  left: 150px;
  height: 228px;
}
#page_hanasaki .story_sec .story_list ul li.reverse .img {
  height: 400px;
}
#page_hanasaki .story_sec .story_list ul li.reverse .circles {
  left: 1190px;
  top: 406px;
}
#page_hanasaki .story_sec .story_list ul li.reverse .circles img {
  transform: scaleX(-1);
}
#page_hanasaki .story_sec .story_list ul li:nth-child(2) {
  margin-top: 111px;
}
#page_hanasaki .story_sec .story_list ul li:nth-child(3) {
  margin-top: 128px;
}
#page_hanasaki .story_sec .story_list ul li:nth-child(4) {
  margin-top: 117px;
}
#page_hanasaki .story_sec .story_list ul li .circles {
  left: -33px;
  top: 447px;
  width: 83px;
  z-index: 1;
}
#page_hanasaki .story_sec .story_list ul li .text_box {
  position: relative;
  z-index: 1;
  width: 781px;
  padding-top: 12px;
}
#page_hanasaki .story_sec .story_list ul li .text_box .num {
  width: 110px;
  border-radius: 12px;
  background-color: #e25353;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fff;
}
#page_hanasaki .story_sec .story_list ul li .text_box .ttl {
  margin-top: 10px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_hanasaki .story_sec .story_list ul li .text_box .text {
  margin-top: 17px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .story_sec .story_list ul li .img {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  width: 330px;
  height: 452px;
  overflow: hidden;
  border-radius: 20px;
}
#page_hanasaki .story_sec .story_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .story_sec .common_btn {
  margin-top: 101px;
}
#page_hanasaki .story_sec .common_btn a {
  width: 400px;
  margin: 0 auto;
}
#page_hanasaki .philosophy_sec {
  padding-top: 211px;
}
#page_hanasaki .philosophy_sec .branch {
  left: calc(50% - 720px);
  top: 1006px;
  width: 455px;
}
#page_hanasaki .philosophy_sec .wrap, #page_hanasaki .philosophy_sec .wrap02 {
  position: relative;
  z-index: 1;
}
#page_hanasaki .philosophy_sec .cont .plane {
  left: 803px;
  top: -93px;
  width: 337px;
}
#page_hanasaki .philosophy_sec .cont .common_ttl_box .ttl {
  margin-top: 4px;
  font-size: 40px;
  font-weight: 900;
}
#page_hanasaki .philosophy_sec .cont .lead {
  margin-top: 28px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_hanasaki .philosophy_sec .cont .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_hanasaki .philosophy_sec .box {
  margin-top: 32px;
  padding: 63px 20px 60px;
  border-radius: 20px;
  background-color: #fff;
}
#page_hanasaki .philosophy_sec .box .flower1 {
  left: 1106px;
  top: 673px;
  width: 173px;
}
#page_hanasaki .philosophy_sec .box .flower2 {
  left: -37px;
  top: 698px;
  width: 156px;
}
#page_hanasaki .philosophy_sec .box .circle1 {
  left: 325px;
  top: 27px;
  width: 65px;
}
#page_hanasaki .philosophy_sec .box .circle2 {
  left: 853px;
  top: 78px;
  width: 45px;
}
#page_hanasaki .philosophy_sec .box .circle2 img {
  transform: scaleY(-1);
}
#page_hanasaki .philosophy_sec .box .box_ttl {
  font-size: 28px;
  font-weight: 900;
  line-height: 1.2143;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
#page_hanasaki .philosophy_sec .box .box_ttl .num {
  font-size: 48px;
  line-height: 0;
  color: #e25353;
}
#page_hanasaki .philosophy_sec .box .box_ttl .accent {
  color: #e25353;
}
#page_hanasaki .philosophy_sec .box .point_list {
  margin-top: 40px;
}
#page_hanasaki .philosophy_sec .box .point_list ul {
  display: flex;
}
#page_hanasaki .philosophy_sec .box .point_list ul li {
  width: 400px;
  padding: 0 30px 38px;
}
#page_hanasaki .philosophy_sec .box .point_list ul li + li {
  border-left: 1px solid #d6c9c2;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark {
  position: relative;
  width: 180px;
  height: 180px;
  margin: 0 auto;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .circle {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background-color: #ef9592;
  filter: blur(3px);
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .point {
  position: absolute;
  left: 0;
  right: 0;
  top: 13px;
  font-size: 14px;
  font-weight: 700;
  line-height: 2.4286;
  text-align: center;
  color: #fff;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon {
  position: absolute;
  line-height: 1;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon img {
  width: 100%;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon1 {
  left: 54px;
  top: 48px;
  width: 71px;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon2 {
  left: 52px;
  top: 54px;
  width: 77px;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon3 {
  left: 51px;
  top: 56px;
  width: 78px;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .ttl {
  display: flex;
  align-items: flex-start;
  margin-top: 24px;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .ttl .check {
  flex-shrink: 0;
  margin-top: 3px;
  width: 48px;
  margin-right: 14px;
  line-height: 1;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .ttl .check img {
  width: 100%;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .ttl .label {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1818;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_hanasaki .philosophy_sec .box .point_list ul li .text {
  margin-top: 17px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3333;
  letter-spacing: 0.07em;
  color: #232121;
}
#page_hanasaki .philosophy_sec .box .copy {
  margin-top: 29px;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.0625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
#page_hanasaki .philosophy_sec .box .bottom_text {
  margin-top: 19px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
#page_hanasaki .learning_sec {
  padding: 169px 0 96px;
}
#page_hanasaki .learning_sec .common_ttl_box .en {
  font-size: 20px;
}
#page_hanasaki .learning_sec .common_ttl_box .ttl {
  margin-top: 16px;
  font-size: 38px;
  font-weight: 900;
}
#page_hanasaki .learning_sec .card_list {
  margin-top: 41px;
}
#page_hanasaki .learning_sec .card_list ul {
  display: flex;
  gap: 0 30px;
}
#page_hanasaki .learning_sec .card_list ul li {
  position: relative;
  z-index: 0;
  width: 360px;
  padding: 30px;
}
#page_hanasaki .learning_sec .card_list ul li::before, #page_hanasaki .learning_sec .card_list ul li::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 20px;
}
#page_hanasaki .learning_sec .card_list ul li::before {
  background-color: #deccbc;
  transform: rotate(-3deg);
}
#page_hanasaki .learning_sec .card_list ul li::after {
  background-color: #fff;
}
#page_hanasaki .learning_sec .card_list ul li .img {
  width: 300px;
  height: 180px;
  overflow: hidden;
  border-radius: 20px;
}
#page_hanasaki .learning_sec .card_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .learning_sec .card_list ul li .ttl {
  margin-top: 21px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #e25353;
}
#page_hanasaki .learning_sec .card_list ul li .text {
  margin-top: 12px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.467;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .instructor_sec {
  padding: 137px 0 126px;
  background-color: #f8f3f0;
}
#page_hanasaki .instructor_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.4;
  -webkit-mask-image: url(image/hanasaki_instructor_back.svg);
  mask-image: url(image/hanasaki_instructor_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_hanasaki .instructor_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_hanasaki .instructor_sec .common_ttl_box .ttl {
  margin-top: 11px;
  font-weight: 900;
}
#page_hanasaki .instructor_sec .intro_block {
  display: flex;
  align-items: flex-start;
  margin-top: 39px;
}
#page_hanasaki .instructor_sec .intro_block .photo_block {
  flex-shrink: 0;
  width: 430px;
  height: 370px;
  margin-top: 44px;
}
#page_hanasaki .instructor_sec .intro_block .photo_block::before, #page_hanasaki .instructor_sec .intro_block .photo_block::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 20px;
}
#page_hanasaki .instructor_sec .intro_block .photo_block::before {
  background-color: #ffe1c6;
  transform: rotate(6deg);
}
#page_hanasaki .instructor_sec .intro_block .photo_block::after {
  background-color: #ffd1c5;
  transform: rotate(-12deg);
}
#page_hanasaki .instructor_sec .intro_block .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
}
#page_hanasaki .instructor_sec .intro_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .instructor_sec .intro_block .text_block {
  width: 640px;
  margin: 11px 0 0 70px;
}
#page_hanasaki .instructor_sec .intro_block .text_block .ttl {
  font-size: 34px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #333333;
}
#page_hanasaki .instructor_sec .intro_block .text_block .text {
  margin-top: 17px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .instructor_sec .sub_ttl {
  width: 510px;
  margin: 53px auto 0 calc(50% - 265px);
  padding: 11px 0 17px;
  border-top: 2px solid #92711c;
  border-bottom: 2px solid #92711c;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #92711c;
}
#page_hanasaki .instructor_sec .goal_list {
  margin-top: 24px;
}
#page_hanasaki .instructor_sec .goal_list ul {
  display: flex;
  gap: 0 40px;
}
#page_hanasaki .instructor_sec .goal_list ul li {
  width: 550px;
  padding-bottom: 28px;
  border-radius: 20px;
  background-color: #fffbf0;
}
#page_hanasaki .instructor_sec .goal_list ul li .ttl {
  padding: 14px 0;
  border-radius: 20px 20px 0 0;
  background-color: #8c8573;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fff;
}
#page_hanasaki .instructor_sec .goal_list ul li .text {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_hanasaki .instructor_sec .bottom_text {
  margin-top: 24px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7778;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_hanasaki .instructor_sec .bottom_text .accent {
  font-weight: 700;
  color: #e25353;
}
#page_hanasaki .instructor_sec .common_btn {
  margin-top: 40px;
}
#page_hanasaki .instructor_sec .common_btn a {
  width: 440px;
  margin: 0 auto;
}
#page_hanasaki .activity_sec {
  padding-top: 126px;
}
#page_hanasaki .activity_sec .box {
  padding: 76px 0 73px;
  border-radius: 30px;
  background-color: #f1e8e1;
}
#page_hanasaki .activity_sec .box::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 30px;
  background-image: url(image/hanasaki_activity_texture.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.3;
  pointer-events: none;
}
#page_hanasaki .activity_sec .box > * {
  position: relative;
  z-index: 1;
}
#page_hanasaki .activity_sec .box .common_ttl_box .ttl {
  margin-top: 14px;
  font-weight: 900;
}
#page_hanasaki .activity_sec .box .lead {
  margin-top: 25px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3334;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
#page_hanasaki .activity_sec .box > .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
#page_hanasaki .activity_sec .box .activity_list {
  width: 1140px;
  margin: 29px auto 0;
}
#page_hanasaki .activity_sec .box .activity_list ul {
  display: flex;
  gap: 0 20px;
}
#page_hanasaki .activity_sec .box .activity_list ul li {
  width: 270px;
}
#page_hanasaki .activity_sec .box .activity_list ul li:nth-child(even) {
  margin-top: 30px;
}
#page_hanasaki .activity_sec .box .activity_list ul li:nth-child(even) .img::before {
  border-color: #ffae97;
}
#page_hanasaki .activity_sec .box .activity_list ul li:nth-child(even) .ttl .dot {
  background-color: #ffae97;
}
#page_hanasaki .activity_sec .box .activity_list ul li:nth-child(4) .ttl {
  margin-top: 8px;
}
#page_hanasaki .activity_sec .box .activity_list ul li:nth-child(4) .text {
  margin-top: 9px;
}
#page_hanasaki .activity_sec .box .activity_list ul li .img {
  width: 270px;
  height: 180px;
}
#page_hanasaki .activity_sec .box .activity_list ul li .img::before {
  content: "";
  position: absolute;
  left: -7px;
  top: -7px;
  width: 270px;
  height: 180px;
  border: 3px solid #fe8286;
  border-radius: 24px;
  z-index: 1;
}
#page_hanasaki .activity_sec .box .activity_list ul li .img img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .activity_sec .box .activity_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 20px;
}
#page_hanasaki .activity_sec .box .activity_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_hanasaki .activity_sec .box .activity_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .activity_sec .box .activity_list ul li .text {
  margin-top: 19px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .profile_sec {
  z-index: 1;
  padding: 147px 0 119px;
}
#page_hanasaki .profile_sec::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 197px;
  bottom: 0;
  background-image: url(image/hanasaki_profile_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
  pointer-events: none;
}
#page_hanasaki .profile_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_hanasaki .profile_sec .common_ttl_box .ttl {
  margin-top: 4px;
  font-size: 38px;
  font-weight: 900;
}
#page_hanasaki .profile_sec .profile_block {
  margin-top: 16px;
}
#page_hanasaki .profile_sec .profile_block .text_block .name {
  margin-top: 20px;
}
#page_hanasaki .profile_sec .profile_block .photo_block {
  width: 440px;
  height: 280px;
  margin: 49px 0 0 105px;
}
#page_hanasaki .profile_sec .profile_block .photo_block::before {
  inset: 0;
  transform: rotate(11deg);
}
#page_hanasaki .profile_sec .profile_block .photo_block .img {
  width: 100%;
  height: 100%;
}
#page_hanasaki .profile_sec .history_ttl {
  margin-top: 83px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.0834;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .profile_sec .history_table {
  margin-top: 17px;
}
#page_hanasaki .profile_sec .history_table table {
  width: calc(100% + 8px);
  margin: 0 -4px;
  border-collapse: separate;
  border-spacing: 4px 0;
}
#page_hanasaki .profile_sec .history_table table th, #page_hanasaki .profile_sec .history_table table td {
  padding: 22px 20px;
  border-bottom: 1px solid #cfc3af;
  font-size: 16px;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: left;
  vertical-align: top;
}
#page_hanasaki .profile_sec .history_table table th {
  width: 190px;
  background-color: #a7a095;
  vertical-align: middle;
  font-weight: 500;
  color: #fff;
}
#page_hanasaki .profile_sec .history_table table td {
  font-weight: 500;
  color: #333333;
}
#page_hanasaki .profile_sec .history_table table thead th {
  padding: 12px 20px 11px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
}
#page_hanasaki .profile_sec .history_table table thead th.year {
  border-radius: 6px 6px 0 0;
}
#page_hanasaki .profile_sec .history_table table thead th.event {
  width: auto;
  border-bottom: 0;
  border-radius: 6px;
}
#page_hanasaki .profile_sec .history_table table tbody tr:first-child th, #page_hanasaki .profile_sec .history_table table tbody tr:first-child td {
  padding-top: 26px;
}
#page_hanasaki .profile_sec .history_table table tbody tr:last-child th {
  border-bottom: 0;
  border-radius: 0 0 6px 6px;
}
#page_hanasaki .message_sec {
  padding: 121px 0 74px;
}
#page_hanasaki .message_sec::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -138px;
  bottom: 0;
  background-color: #fff;
  background-image: radial-gradient(circle, #ebebeb 2px, transparent 2.5px);
  background-position: 12px 2px;
  background-size: 24px 24px;
  pointer-events: none;
}
#page_hanasaki .message_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_hanasaki .message_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_hanasaki .message_sec .cont .deco_text {
  position: absolute;
  left: 0;
  top: -30px;
  font-size: 85px;
  line-height: 1;
  color: #ececec;
  pointer-events: none;
}
#page_hanasaki .message_sec .cont .text_block {
  position: relative;
  width: 631px;
}
#page_hanasaki .message_sec .cont .text_block > .label {
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #e25353;
}
#page_hanasaki .message_sec .cont .text_block .ttl {
  margin-top: 50px;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0.08em;
  color: #232121;
}
#page_hanasaki .message_sec .cont .text_block .text {
  margin-top: 20px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: #000;
}
#page_hanasaki .message_sec .cont .text_block .sign {
  margin-top: 29px;
  color: #232121;
}
#page_hanasaki .message_sec .cont .text_block .sign .company {
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4286;
  letter-spacing: 0.08em;
}
#page_hanasaki .message_sec .cont .text_block .sign .name {
  display: block;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
#page_hanasaki .message_sec .cont .photo_block {
  flex-shrink: 0;
  width: 400px;
  height: 596px;
  margin: -25px 0 0 109px;
}
#page_hanasaki .message_sec .cont .photo_block::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background-color: #ff7f7f;
  transform: rotate(11deg);
}
#page_hanasaki .message_sec .cont .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 3px solid #fe9192;
  border-radius: 20px;
}
#page_hanasaki .message_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .message_sec .cont .photo_block .flower1 {
  left: -69px;
  top: -53px;
  width: 109px;
  z-index: 2;
}
#page_hanasaki .message_sec .cont .photo_block .flower2 {
  left: 330px;
  top: 504px;
  width: 109px;
  z-index: 2;
}
#page_hanasaki .lesson_sec {
  padding: 217px 0 196px;
}
#page_hanasaki .lesson_sec .ring {
  left: calc(50% - 720px + 258px);
  top: 44px;
  width: 925px;
}
#page_hanasaki .lesson_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_hanasaki .lesson_sec .common_ttl_box .ttl {
  margin-top: 17px;
  font-size: 38px;
  font-weight: 900;
}
#page_hanasaki .lesson_sec .lesson_list {
  margin-top: 39px;
}
#page_hanasaki .lesson_sec .lesson_list ul {
  display: flex;
  gap: 0 30px;
}
#page_hanasaki .lesson_sec .lesson_list ul li {
  width: 360px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco {
  z-index: 2;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco1 {
  left: -33px;
  top: -18px;
  width: 66px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco2 {
  left: 316px;
  top: -20px;
  width: 54px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco3 {
  left: -21px;
  top: -32px;
  width: 79px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco4 {
  left: 323px;
  top: 168px;
  width: 45px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco5 {
  left: -20px;
  top: 168px;
  width: 45px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco5 img {
  transform: scaleX(-1);
}
#page_hanasaki .lesson_sec .lesson_list ul li .deco6 {
  left: 343px;
  top: 168px;
  width: 45px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .img {
  width: 360px;
  height: 200px;
  overflow: hidden;
  border-radius: 20px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_hanasaki .lesson_sec .lesson_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 22px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_hanasaki .lesson_sec .lesson_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .lesson_sec .lesson_list ul li .text {
  margin-top: 15px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}
#page_hanasaki .lesson_sec .lesson_list ul li .common_btn {
  margin-top: 22px;
}
#page_hanasaki .lesson_sec .lesson_list ul li .common_btn a {
  width: 100%;
}
#page_hanasaki .lesson_sec .lesson_list ul li .common_btn a .label {
  font-size: 16px;
  line-height: 1.25;
}

#page_group .common_page_wrap {
  padding: 93px 0 0;
}
#page_group .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_group .deco img {
  width: 100%;
}
#page_group .lead_sec {
  padding-bottom: 73px;
}
#page_group .lead_sec .cont .text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_group .business_sec {
  padding: 61px 0 134px;
  background-color: #f5efea;
}
#page_group .business_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/hanasaki_activity_texture.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.3;
  pointer-events: none;
}
#page_group .business_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_group .business_sec .common_ttl_box .ttl {
  font-weight: 900;
}
#page_group .business_sec .business_list {
  margin-top: 43px;
}
#page_group .business_sec .business_list ul {
  display: grid;
  grid-template-columns: repeat(2, 545px);
  gap: 70px 50px;
}
#page_group .business_sec .business_list ul li {
  display: flex;
  flex-direction: column;
}
#page_group .business_sec .business_list ul li:nth-child(2) .img::before, #page_group .business_sec .business_list ul li:nth-child(3) .img::before {
  border-color: #ffae97;
}
#page_group .business_sec .business_list ul li:nth-child(2) .ttl .dot, #page_group .business_sec .business_list ul li:nth-child(3) .ttl .dot {
  background-color: #ffae97;
}
#page_group .business_sec .business_list ul li:nth-child(2) .link_list .link_btn, #page_group .business_sec .business_list ul li:nth-child(3) .link_list .link_btn {
  background-image: linear-gradient(to right, #ffae97 50%, transparent 50%);
}
#page_group .business_sec .business_list ul li .img {
  width: 545px;
  height: 260px;
}
#page_group .business_sec .business_list ul li .img::before {
  content: "";
  position: absolute;
  left: -10px;
  top: -10px;
  width: 545px;
  height: 253px;
  border: 3px solid #fe8286;
  border-radius: 24px;
  z-index: 1;
}
#page_group .business_sec .business_list ul li .img img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_group .business_sec .business_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 24px;
}
#page_group .business_sec .business_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_group .business_sec .business_list ul li .ttl .label {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000;
}
#page_group .business_sec .business_list ul li .ttl .address {
  margin: 2px 0 0 33px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.538;
  letter-spacing: 0.04em;
  color: #000;
}
#page_group .business_sec .business_list ul li .text {
  margin-top: 19px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.467;
  letter-spacing: 0.04em;
  color: #000;
}
#page_group .business_sec .business_list ul li .link_list {
  display: flex;
  gap: 0 45px;
  margin-top: auto;
  padding-top: 20px;
}
#page_group .business_sec .business_list ul li .link_list .link_btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 250px;
  padding-bottom: 10px;
  background-image: linear-gradient(to right, #fe8286 50%, transparent 50%);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: 8px 3px;
  color: #000;
}
#page_group .business_sec .business_list ul li .link_list .link_btn .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.333;
  letter-spacing: 0.04em;
}
#page_group .business_sec .business_list ul li .link_list .link_btn .arrow {
  flex-shrink: 0;
  width: 24px;
  line-height: 1;
  transition: transform 0.3s;
}
#page_group .business_sec .business_list ul li .link_list .link_btn .arrow img {
  width: 100%;
}
#page_group .business_sec .business_list ul li .link_list .link_btn:hover .arrow {
  transform: translateX(4px);
}
#page_group .business_sec .business_list ul li .shop_list {
  display: flex;
  flex-grow: 1;
  gap: 0 45px;
  margin-top: 20px;
}
#page_group .business_sec .business_list ul li .shop_list .shop {
  display: flex;
  flex-direction: column;
  width: 250px;
}
#page_group .business_sec .business_list ul li .shop_list .shop .shop_name {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.333;
  letter-spacing: 0.04em;
  color: #000;
}
#page_group .business_sec .business_list ul li .shop_list .shop .text {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.692;
}
#page_group .business_sec .business_list ul li .shop_list .shop .link_list {
  padding-top: 17px;
}
#page_group .company_sec {
  padding: 224px 0 251px;
}
#page_group .company_sec .ring {
  left: calc(50% - 342px);
  top: 42px;
  width: 684px;
}
#page_group .company_sec .photo {
  overflow: hidden;
  border-radius: 20px;
}
#page_group .company_sec .photo img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_group .company_sec .photo1 {
  left: calc(50% - 720px + 240px);
  top: 112px;
  width: 220px;
  height: 170px;
  transform: rotate(6deg);
}
#page_group .company_sec .photo2 {
  left: calc(50% - 720px + 1107px);
  top: 182px;
  width: 220px;
  height: 260px;
  transform: rotate(6deg);
}
#page_group .company_sec .photo3 {
  left: calc(50% - 720px + 113px);
  top: 312px;
  width: 220px;
  height: 260px;
  transform: rotate(-6deg);
}
#page_group .company_sec .photo4 {
  left: calc(50% - 720px + 977px);
  top: 472px;
  width: 220px;
  height: 170px;
  transform: rotate(-6deg);
}
#page_group .company_sec .circle1 {
  left: calc(50% - 720px + 1164px);
  top: 589px;
  width: 78px;
}
#page_group .company_sec .circle2 {
  left: calc(50% - 720px + 210px);
  top: 59px;
  width: 78px;
}
#page_group .company_sec .deco1 {
  left: calc(50% - 720px + 1083px);
  top: 127px;
  width: 86px;
}
#page_group .company_sec .deco2 {
  left: calc(50% - 720px + 307px);
  top: 521px;
  width: 86px;
}
#page_group .company_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_group .company_sec .common_ttl_box .ttl {
  margin-top: 11px;
  font-weight: 900;
}
#page_group .company_sec .cont .text {
  margin-top: 35px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_group .company_sec .cont .common_btn {
  margin-top: 39px;
}
#page_group .company_sec .cont .common_btn a {
  width: 280px;
  margin: 0 auto;
}

#page_atelier .common_page_wrap {
  padding: 87px 0 0;
}
#page_atelier .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_atelier .deco img {
  width: 100%;
}
#page_atelier .lead_sec {
  padding-bottom: 54px;
}
#page_atelier .lead_sec .cont {
  text-align: center;
}
#page_atelier .lead_sec .cont .circle1 {
  left: 301px;
  top: -35px;
  width: 77px;
}
#page_atelier .lead_sec .cont .circle2 {
  left: 785px;
  top: 70px;
  width: 45px;
}
#page_atelier .lead_sec .cont .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_atelier .lead_sec .cont .text {
  margin-top: 26px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_atelier .atelier_sec {
  padding: 112px 0 274px;
  background-image: url(image/atelier_main_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_atelier .atelier_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/atelier_main_back.svg);
  mask-image: url(image/atelier_main_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_atelier .atelier_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_atelier .atelier_sec .common_ttl_box .ttl {
  margin-top: 13px;
  font-weight: 900;
}
#page_atelier .atelier_sec .info_block {
  display: flex;
  align-items: flex-start;
  margin-top: 67px;
}
#page_atelier .atelier_sec .info_block .text_block {
  width: 520px;
}
#page_atelier .atelier_sec .info_block .text_block .ttl {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.412;
  letter-spacing: 0.04em;
  color: #333333;
}
#page_atelier .atelier_sec .info_block .text_block .text {
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_atelier .atelier_sec .info_block .text_block .info_list {
  width: 530px;
  margin-top: 23px;
  padding: 23px 30px 23px;
  border-radius: 20px;
  background-color: #fff;
}
#page_atelier .atelier_sec .info_block .text_block .info_list .row {
  display: flex;
  align-items: center;
  padding: 12px 0 10px;
}
#page_atelier .atelier_sec .info_block .text_block .info_list .row:first-child {
  padding-top: 0;
}
#page_atelier .atelier_sec .info_block .text_block .info_list .row:last-child {
  padding-bottom: 0;
}
#page_atelier .atelier_sec .info_block .text_block .info_list .row + .row {
  background-image: linear-gradient(to right, #e5e5e5 50%, transparent 50%);
  background-size: 4px 1px;
  background-repeat: repeat-x;
  background-position: -1px 0;
}
#page_atelier .atelier_sec .info_block .text_block .info_list .row dt {
  flex-shrink: 0;
  width: 111px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3334;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_atelier .atelier_sec .info_block .text_block .info_list .row dd {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3334;
  letter-spacing: 0.04em;
  color: #000;
}
#page_atelier .atelier_sec .info_block .text_block .common_btn {
  margin-top: 30px;
}
#page_atelier .atelier_sec .info_block .text_block .common_btn a {
  width: 310px;
}
#page_atelier .atelier_sec .info_block .photo_block {
  flex-shrink: 0;
  width: 480px;
  height: 420px;
  margin: 16px 0 0 100px;
}
#page_atelier .atelier_sec .info_block .photo_block::before, #page_atelier .atelier_sec .info_block .photo_block::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
#page_atelier .atelier_sec .info_block .photo_block::before {
  left: -10px;
  top: 3px;
  background-color: #ffe1c6;
  transform: rotate(6deg);
}
#page_atelier .atelier_sec .info_block .photo_block::after {
  left: 1px;
  top: 5px;
  background-color: #ffd1c5;
  transform: rotate(-12deg);
}
#page_atelier .atelier_sec .info_block .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
  transform: rotate(-3deg);
}
#page_atelier .atelier_sec .info_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_atelier .common_instructor_sec {
  margin-top: -118px;
  padding-bottom: 133px;
}
#page_atelier .online_sec {
  padding: 131px 0 89px;
  background-color: #fff;
}
#page_atelier .online_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(#ebebeb 2px, transparent 2.5px);
  background-size: 24px 24px;
  background-position: 12px 10px;
  pointer-events: none;
}
#page_atelier .online_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_atelier .online_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_atelier .online_sec .cont .photo_block {
  flex-shrink: 0;
  width: 440px;
  height: 370px;
  margin-left: 37px;
}
#page_atelier .online_sec .cont .photo_block::before {
  content: "";
  position: absolute;
  left: -6px;
  top: -2px;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-color: #fba798;
  transform: rotate(11deg);
}
#page_atelier .online_sec .cont .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 3px solid #fba798;
  border-radius: 20px;
}
#page_atelier .online_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_atelier .online_sec .cont .photo_block .flowers {
  left: -30px;
  top: -30px;
  width: 96px;
  z-index: 2;
}
#page_atelier .online_sec .cont .photo_block .girl {
  left: 304px;
  top: 174px;
  width: 182px;
  z-index: 2;
}
#page_atelier .online_sec .cont .text_block {
  width: 549px;
  margin: 16px 0 0 114px;
}
#page_atelier .online_sec .cont .text_block .circles {
  left: 281px;
  top: 87px;
  width: 77px;
}
#page_atelier .online_sec .cont .text_block .common_ttl_box .en {
  color: #eb9384;
}
#page_atelier .online_sec .cont .text_block .common_ttl_box .ttl {
  margin-top: 7px;
  font-size: 38px;
  font-weight: 900;
}
#page_atelier .online_sec .cont .text_block .copy {
  position: relative;
  margin-top: 28px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3077;
  letter-spacing: 0.04em;
  color: #000;
}
#page_atelier .online_sec .cont .text_block .text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.02em;
  color: #000;
}
#page_atelier .online_sec .cont .text_block .line_btn {
  display: flex;
  align-items: center;
  width: 320px;
  height: 70px;
  margin-top: 50px;
  padding-left: 37px;
  border-radius: 100vmax;
  background-color: #21ad3f;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
#page_atelier .online_sec .cont .text_block .line_btn .icon {
  flex-shrink: 0;
  width: 31px;
  margin-right: 24px;
  line-height: 1;
}
#page_atelier .online_sec .cont .text_block .line_btn .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
#page_atelier .online_sec .cont .text_block .line_btn .icon svg .bg {
  fill: #06c755;
}
#page_atelier .online_sec .cont .text_block .line_btn .icon svg .balloon {
  fill: #fff;
}
#page_atelier .online_sec .cont .text_block .line_btn .icon svg .letter {
  fill: #06c755;
}
#page_atelier .online_sec .cont .text_block .line_btn .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#page_atelier .online_sec .cont .text_block .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}

#page_company .common_page_wrap {
  padding: 96px 0 0;
}
#page_company .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_company .deco img {
  width: 100%;
}
#page_company .philosophy_sec {
  z-index: 1;
}
#page_company .philosophy_sec .common_ttl_box .ttl {
  margin-top: 4px;
  font-size: 38px;
  font-weight: 900;
}
#page_company .philosophy_sec .philosophy_list {
  margin-top: 31px;
}
#page_company .philosophy_sec .philosophy_list ul {
  display: flex;
  justify-content: space-between;
}
#page_company .philosophy_sec .philosophy_list ul li {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 210px;
  padding-top: 11px;
}
#page_company .philosophy_sec .philosophy_list ul li .num {
  position: absolute;
  left: 67px;
  top: 0;
  width: 76px;
  padding: 3px 0;
  border-radius: 12px;
  background-color: #fe8286;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #fff;
  z-index: 1;
}
#page_company .philosophy_sec .philosophy_list ul li .box {
  flex-grow: 1;
  padding: 33px 0 22px;
  border: 2px solid #fe8286;
  border-radius: 20px;
  background-color: #fff;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
  text-align: center;
}
#page_company .philosophy_sec .philosophy_list ul li .box .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  margin: 0 auto;
  border-radius: 50%;
  background-color: #f4f4f4;
}
#page_company .philosophy_sec .philosophy_list ul li .box .icon img {
  width: auto;
  height: auto;
}
#page_company .philosophy_sec .philosophy_list ul li .box .text {
  margin-top: 15px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: #000;
}
#page_company .philosophy_sec .philosophy_list ul li .box .text .accent {
  color: #e25353;
}
#page_company .info_sec {
  margin-top: -125px;
  padding: 273px 0 89px;
  background-image: url(image/company_info_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_company .info_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.4;
  -webkit-mask-image: url(image/company_info_back.svg);
  mask-image: url(image/company_info_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_company .info_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_company .info_sec .common_ttl_box .ttl {
  margin-top: 4px;
  font-size: 38px;
  font-weight: 900;
}
#page_company .info_sec .info_box {
  margin-top: 36px;
  padding: 46px 100px 51px;
  border-radius: 20px;
  background-color: #fff;
}
#page_company .info_sec .info_box .info_table {
  width: 100%;
  border-collapse: collapse;
}
#page_company .info_sec .info_box .info_table th, #page_company .info_sec .info_box .info_table td {
  padding: 16px 0;
  border-bottom: 1px dashed #c3c2c2;
  font-size: 16px;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: left;
  vertical-align: top;
  color: #000;
}
#page_company .info_sec .info_box .info_table th {
  width: 190px;
  font-weight: 700;
}
#page_company .info_sec .info_box .info_table td {
  font-weight: 500;
}
#page_company .info_sec .info_box .info_table td a {
  color: #000;
}
#page_company .info_sec .info_box .info_table td a:hover {
  text-decoration: underline;
}
#page_company .info_sec .info_box .info_table tr:last-child th, #page_company .info_sec .info_box .info_table tr:last-child td {
  padding-bottom: 20px;
  border-bottom: 0;
}
#page_company .info_sec .common_btn {
  margin-top: 50px;
}
#page_company .info_sec .common_btn a {
  width: 330px;
  margin: 0 auto;
  padding-right: 15px;
}
#page_company .representative_sec {
  padding: 145px 0 104px;
  background-color: #fff;
}
#page_company .representative_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(#ebebeb 2px, transparent 2.5px);
  background-size: 24px 24px;
  background-position: center 1px;
  pointer-events: none;
}
#page_company .representative_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_company .representative_sec .cont .deco_text {
  position: absolute;
  left: -150px;
  top: -37px;
  width: 765px;
  font-size: 85px;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  color: #ececec;
  pointer-events: none;
}
#page_company .representative_sec .cont .profile_block {
  display: flex;
  align-items: flex-start;
}
#page_company .representative_sec .cont .profile_block .text_block {
  position: relative;
  width: 570px;
}
#page_company .representative_sec .cont .profile_block .text_block > .label {
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #e25353;
}
#page_company .representative_sec .cont .profile_block .text_block .name {
  display: flex;
  align-items: flex-start;
  margin-top: 42px;
}
#page_company .representative_sec .cont .profile_block .text_block .name .ja {
  font-size: 32px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #232121;
}
#page_company .representative_sec .cont .profile_block .text_block .name .en {
  margin: 4px 0 0 40px;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0;
  color: #fdacb5;
}
#page_company .representative_sec .cont .profile_block .text_block .text {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_company .representative_sec .cont .profile_block .text_block .common_btn {
  margin-top: 44px;
}
#page_company .representative_sec .cont .profile_block .text_block .common_btn a {
  width: 300px;
}
#page_company .representative_sec .cont .profile_block .photo_block {
  flex-shrink: 0;
  width: 520px;
  height: 480px;
  margin: -79px 0 0 50px;
}
#page_company .representative_sec .cont .profile_block .photo_block::before {
  content: "";
  position: absolute;
  left: 88px;
  top: 0;
  width: 440px;
  height: 400px;
  border-radius: 20px;
  background-color: #ff7f7f;
  transform: rotate(11deg);
  transform-origin: 0 0;
}
#page_company .representative_sec .cont .profile_block .photo_block .img {
  position: relative;
  width: 440px;
  height: 400px;
  margin: 40px 0 0 55px;
  overflow: hidden;
  border: 3px solid #fe9192;
  border-radius: 20px;
}
#page_company .representative_sec .cont .profile_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_company .representative_sec .cont .profile_block .photo_block .girl {
  left: 0;
  top: 272px;
  width: 185px;
  z-index: 1;
}

#page_course .common_page_wrap {
  padding: 87px 0 0;
}
#page_course .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_course .deco img {
  width: 100%;
}
#page_course .lead_sec {
  padding-bottom: 90px;
}
#page_course .lead_sec .cont {
  text-align: center;
}
#page_course .lead_sec .cont .circle1 {
  left: 185px;
  top: -35px;
  width: 77px;
}
#page_course .lead_sec .cont .circle2 {
  left: 891px;
  top: 70px;
  width: 45px;
}
#page_course .lead_sec .cont .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.5295;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_course .lead_sec .cont .text {
  margin-top: 26px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_course .find_sec {
  padding: 131px 0 149px;
  background-image: url(image/course_find_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_course .find_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/course_find_back.svg);
  mask-image: url(image/course_find_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_course .find_sec .find_circles {
  left: calc(50% - 720px + 100px);
  top: 214px;
  width: 123px;
  z-index: 2;
}
#page_course .find_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_course .find_sec .common_ttl_box .ttl {
  margin-top: 17px;
  font-weight: 900;
}
#page_course .find_sec .common_course_box {
  margin-top: 41px;
}
#page_course .find_sec .common_course_box .plane {
  left: 811px;
  top: 955px;
}
#page_course .find_sec .common_course_box .joinus {
  left: 632px;
  top: 945px;
}
#page_course .find_sec .common_course_box .circles {
  left: 770px;
  top: 1043px;
}
#page_course .about_sec {
  padding: 108px 0 0;
}
#page_course .about_sec .ttl_block .flower1 {
  left: 236px;
  top: 48px;
  width: 77px;
}
#page_course .about_sec .ttl_block .flower2 {
  left: 821px;
  top: 93px;
  width: 86px;
}
#page_course .about_sec .ttl_block .common_ttl_box .ttl {
  margin-top: 3px;
  font-size: 38px;
  font-weight: 900;
  line-height: 1.4211;
}
#page_course .about_sec .ttl_block .common_ttl_box .ttl .small {
  font-size: 32px;
  line-height: 1.6875;
}
#page_course .about_sec .work_list {
  margin-top: 40px;
}
#page_course .about_sec .work_list ul {
  display: flex;
  gap: 0 30px;
}
#page_course .about_sec .work_list ul li {
  position: relative;
  width: 360px;
  padding-top: 25px;
}
#page_course .about_sec .work_list ul li .num {
  position: absolute;
  left: 155px;
  top: 0;
  width: 50px;
  padding: 14px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  z-index: 1;
}
#page_course .about_sec .work_list ul li .num::before {
  content: "";
  position: absolute;
  inset: -4px;
  z-index: -1;
  background: url(image/service_num_circle.png) center/100% no-repeat;
}
#page_course .about_sec .work_list ul li .box {
  padding: 26px 26px 36px;
  background-color: #fff;
  border: 4px solid transparent;
  -o-border-image: url(image/first_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/first_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
}
#page_course .about_sec .work_list ul li .box .img {
  width: 300px;
  height: 180px;
  overflow: hidden;
  border-radius: 10px;
}
#page_course .about_sec .work_list ul li .box .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_course .about_sec .work_list ul li .box .ttl {
  margin-top: 21px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4445;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course .about_sec .work_list ul li .box .ttl .accent {
  color: #e25353;
}
#page_course .about_sec .work_list ul li .box .text {
  margin-top: 7px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course .support_sec {
  margin-top: 120px;
  padding: 142px 0 123px;
  background-image: url(image/course_support_back_white.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_course .support_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.4;
  -webkit-mask-image: url(image/course_support_back_white.svg);
  mask-image: url(image/course_support_back_white.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_course .support_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_course .support_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_course .support_sec .cont .photo_block {
  flex-shrink: 0;
  width: 460px;
  height: 420px;
}
#page_course .support_sec .cont .photo_block::before, #page_course .support_sec .cont .photo_block::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 20px;
}
#page_course .support_sec .cont .photo_block::before {
  left: -8px;
  right: 8px;
  background-color: #ffe1c6;
  transform: rotate(8deg);
}
#page_course .support_sec .cont .photo_block::after {
  left: -11px;
  right: 11px;
  background-color: #ffd1c5;
  transform: rotate(-8deg);
}
#page_course .support_sec .cont .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
}
#page_course .support_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_course .support_sec .cont .photo_block .circle1 {
  left: -29px;
  top: -46px;
  width: 92px;
  z-index: 2;
}
#page_course .support_sec .cont .photo_block .circle2 {
  left: 412px;
  top: 371px;
  width: 67px;
  z-index: 2;
}
#page_course .support_sec .cont .text_block {
  width: 595px;
  margin: 37px 0 0 85px;
}
#page_course .support_sec .cont .text_block .girl {
  left: 418px;
  top: -12px;
  width: 193px;
}
#page_course .support_sec .cont .text_block .common_ttl_box .en {
  font-size: 16px;
}
#page_course .support_sec .cont .text_block .common_ttl_box .ttl {
  margin-top: 20px;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
#page_course .support_sec .cont .text_block .text {
  margin-top: 29px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course .support_sec .cont .text_block .line_btn {
  display: flex;
  align-items: center;
  width: 320px;
  height: 60px;
  margin-top: 46px;
  padding-left: 40px;
  border-radius: 100vmax;
  background-color: #21ad3f;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
#page_course .support_sec .cont .text_block .line_btn .icon {
  flex-shrink: 0;
  width: 24px;
  margin-right: 24px;
  line-height: 1;
}
#page_course .support_sec .cont .text_block .line_btn .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
#page_course .support_sec .cont .text_block .line_btn .icon svg .bg {
  fill: #06c755;
}
#page_course .support_sec .cont .text_block .line_btn .icon svg .balloon {
  fill: #fff;
}
#page_course .support_sec .cont .text_block .line_btn .icon svg .letter {
  fill: #06c755;
}
#page_course .support_sec .cont .text_block .line_btn .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#page_course .support_sec .cont .text_block .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}
#page_course .common_voice_sec {
  padding: 112px 0 119px;
}

#page_course_single .common_page_wrap {
  padding: 86px 0 0;
}
#page_course_single .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_course_single .deco img {
  width: 100%;
}
#page_course_single .lead_sec {
  padding-bottom: 80px;
}
#page_course_single .lead_sec .cont {
  text-align: center;
}
#page_course_single .lead_sec .cont .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_course_single .lead_sec .cont .copy .line {
  position: relative;
  z-index: 0;
  display: inline-block;
}
#page_course_single .lead_sec .cont .copy .circle1 {
  left: -58px;
  top: -34px;
  z-index: -1;
  width: 77px;
}
#page_course_single .lead_sec .cont .copy .circle2 {
  right: -19px;
  top: 19px;
  z-index: -1;
  width: 45px;
}
#page_course_single .lead_sec .cont .copy .num {
  font-size: 38px;
  line-height: 1;
}
#page_course_single .lead_sec .cont .text {
  margin-top: 27px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_course_single .common_course_cta_sec {
  margin-top: 0;
}
#page_course_single .recommend_sec {
  padding: 147px 0 107px;
}
#page_course_single .recommend_sec .common_ttl_box .en {
  font-size: 20px;
}
#page_course_single .recommend_sec .common_ttl_box .ttl {
  margin-top: 15px;
  font-size: 40px;
  font-weight: 900;
}
#page_course_single .recommend_sec .sub {
  margin-top: 46px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3333;
  letter-spacing: 0.04em;
  text-align: center;
  color: #333333;
}
#page_course_single .recommend_sec .check_list {
  margin-top: 33px;
}
#page_course_single .recommend_sec .check_list ul {
  display: grid;
  grid-template-columns: repeat(2, 550px);
  gap: 20px 40px;
}
#page_course_single .recommend_sec .check_list ul li {
  display: flex;
  align-items: center;
  padding: 11px 20px;
  border-radius: 10px;
  background-color: #fff;
}
#page_course_single .recommend_sec .check_list ul li .check {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  margin: 4px 19px 4px 0;
  border-radius: 50%;
  background-color: #f3f3f3;
}
#page_course_single .recommend_sec .check_list ul li .check img {
  width: 38px;
}
#page_course_single .recommend_sec .check_list ul li .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .recommend_sec .check_list ul li .label .accent {
  color: #e25353;
}
#page_course_single .recommend_sec .bottom_block {
  z-index: 0;
  width: -moz-fit-content;
  width: fit-content;
  margin: 44px auto 0;
  text-align: center;
}
#page_course_single .recommend_sec .bottom_block .circle3 {
  left: -62px;
  top: -13px;
  z-index: -1;
  width: 77px;
}
#page_course_single .recommend_sec .bottom_block .text {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7778;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .recommend_sec .bottom_block .copy {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5455;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .recommend_sec .bottom_block .copy .under {
  position: relative;
  z-index: 0;
  display: inline-block;
  padding-bottom: 1px;
  border-bottom: 5px solid #fe8286;
}
#page_course_single .recommend_sec .bottom_block .copy .circle4 {
  right: -52px;
  top: -3px;
  z-index: -1;
  width: 77px;
  transform: rotate(180deg);
}
#page_course_single .content_sec {
  z-index: 2;
}
#page_course_single .content_sec .box {
  padding: 75px 0 110px;
  border-radius: 30px;
  background-color: #f1e8e1;
}
#page_course_single .content_sec .box::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 30px;
  background-image: url(image/hanasaki_activity_texture.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.3;
  pointer-events: none;
}
#page_course_single .content_sec .box > * {
  position: relative;
  z-index: 1;
}
#page_course_single .content_sec .box .common_ttl_box .ttl {
  margin-top: 16px;
  font-weight: 900;
}
#page_course_single .content_sec .box .copy {
  margin-top: 24px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3333;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .content_sec .box .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .content_sec .box .lesson_list {
  width: 1140px;
  margin: 23px auto 0;
}
#page_course_single .content_sec .box .lesson_list ul {
  display: flex;
  gap: 0 30px;
}
#page_course_single .content_sec .box .lesson_list ul li {
  flex: 1;
  min-width: 0;
}
#page_course_single .content_sec .box .lesson_list ul li:nth-child(even) {
  margin-top: 30px;
}
#page_course_single .content_sec .box .lesson_list ul li:nth-child(even) .img::before {
  border-color: #ffae97;
}
#page_course_single .content_sec .box .lesson_list ul li:nth-child(even) .ttl .dot {
  background-color: #ffae97;
}
#page_course_single .content_sec .box .lesson_list ul li:nth-child(3) .text {
  padding-right: 2px;
}
#page_course_single .content_sec .box .lesson_list ul li .img {
  width: 100%;
  height: auto;
  aspect-ratio: 2/1;
}
#page_course_single .content_sec .box .lesson_list ul li .img::before {
  content: "";
  position: absolute;
  left: -7px;
  top: -7px;
  width: 100%;
  height: 100%;
  border: 3px solid #fe8286;
  border-radius: 24px;
  z-index: 1;
}
#page_course_single .content_sec .box .lesson_list ul li .img img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_course_single .content_sec .box .lesson_list ul li .ttl {
  display: flex;
  align-items: flex-start;
  margin-top: 20px;
}
#page_course_single .content_sec .box .lesson_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin: 4px 16px 0 0;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_course_single .content_sec .box .lesson_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .content_sec .box .lesson_list ul li .text {
  margin-top: 14px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
  line-break: strict;
}
#page_course_single .content_sec .box .works_block {
  margin-top: 113px;
}
#page_course_single .content_sec .box .works_block .common_ttl_box .en {
  font-size: 20px;
}
#page_course_single .content_sec .box .works_block .common_ttl_box .ttl {
  margin-top: 13px;
}
#page_course_single .content_sec .box .works_block .copy {
  margin-top: 23px;
  color: #333333;
}
#page_course_single .content_sec .box .works_block .text {
  margin-top: 19px;
}
#page_course_single .content_sec .box .works_block .sub_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 14px;
  margin-top: 29px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_course_single .content_sec .box .works_block .sub_ttl .lotus {
  width: 48px;
  line-height: 1;
}
#page_course_single .content_sec .box .works_block .sub_ttl .lotus img {
  width: 100%;
}
#page_course_single .content_sec .box .works_block .sub_ttl .lotus + .label + .lotus {
  transform: scaleX(-1);
}
#page_course_single .content_sec .box .works_block .note {
  margin-top: 50px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .content_sec .box .works_block .work_list {
  width: 1140px;
  margin: 30px auto 0;
}
#page_course_single .content_sec .box .works_block .work_list ul {
  display: flex;
  justify-content: center;
  gap: 0 30px;
}
#page_course_single .content_sec .box .works_block .work_list ul li {
  display: flex;
  flex-direction: column;
  width: 360px;
}
#page_course_single .content_sec .box .works_block .work_list ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-color: #deccbc;
  transform: rotate(-5deg);
}
#page_course_single .content_sec .box .works_block .work_list ul li .card {
  position: relative;
  flex-grow: 1;
  padding: 30px 30px 48px;
  border-radius: 20px;
  background-color: #fff;
  text-align: center;
}
#page_course_single .content_sec .box .works_block .work_list ul li .card .img {
  width: 300px;
  height: 180px;
  overflow: hidden;
  border-radius: 10px;
}
#page_course_single .content_sec .box .works_block .work_list ul li .card .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_course_single .content_sec .box .works_block .work_list ul li .card .ttl {
  margin-top: 22px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_course_single .content_sec .box .works_block .work_list ul li .card .text {
  margin-top: 6px;
  font-size: 15px;
  line-height: 1.466;
  text-align: left;
  line-break: strict;
}
#page_course_single .movie_sec {
  margin-top: -73px;
  padding: 225px 0 166px;
  background-color: #fff;
}
#page_course_single .movie_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Crect x='20' y='20' width='4' height='4' fill='%23ebebeb'/%3E%3C/svg%3E");
  background-position: 2px 13px;
  background-size: 24px 24px;
  pointer-events: none;
}
#page_course_single .movie_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_course_single .movie_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_course_single .movie_sec .cont .deco_text {
  position: absolute;
  left: -154px;
  top: -42px;
  width: 666px;
  font-size: 85px;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  color: #ececec;
  pointer-events: none;
}
#page_course_single .movie_sec .cont .text_block {
  position: relative;
  width: 520px;
}
#page_course_single .movie_sec .cont .text_block > .label {
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #e25353;
}
#page_course_single .movie_sec .cont .text_block .ttl {
  margin-top: 55px;
  font-size: 30px;
  font-weight: 900;
  line-height: 1.37;
  letter-spacing: 0.08em;
  color: #232121;
}
#page_course_single .movie_sec .cont .text_block .text {
  max-width: 483px;
  margin-top: 12px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .movie_sec .cont .text_block .common_btn {
  margin-top: 46px;
}
#page_course_single .movie_sec .cont .text_block .common_btn a {
  width: 300px;
}
#page_course_single .movie_sec .cont .thumb_block {
  flex-shrink: 0;
  width: 570px;
  height: 321px;
  margin: 49px 0 0 50px;
}
#page_course_single .movie_sec .cont .thumb_block::before, #page_course_single .movie_sec .cont .thumb_block::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
#page_course_single .movie_sec .cont .thumb_block::before {
  background-color: #ffe1c6;
  transform: rotate(-6deg);
}
#page_course_single .movie_sec .cont .thumb_block::after {
  background-color: #ffd1c5;
  transform: rotate(6deg);
}
#page_course_single .movie_sec .cont .thumb_block .img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
}
#page_course_single .movie_sec .cont .thumb_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
#page_course_single .movie_sec .cont .thumb_block .img:hover img {
  transform: scale(1.05);
}
#page_course_single .flow_sec {
  margin-top: -78px;
  padding: 147px 0 152px;
  background-image: url(image/beginner_flow_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_course_single .flow_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/beginner_flow_back.svg);
  mask-image: url(image/beginner_flow_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_course_single .flow_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_course_single .flow_sec .cont > .common_ttl_box .en {
  font-size: 20px;
}
#page_course_single .flow_sec .cont > .common_ttl_box .ttl {
  margin-top: 12px;
  font-weight: 900;
}
#page_course_single .flow_sec .cont > .copy {
  margin-top: 34px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3333;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .flow_sec .cont > .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .flow_sec .cont .info_block {
  margin-top: 46px;
  padding-top: 49px;
  background: linear-gradient(to right, #b2ac9c 6px, transparent 6px) -3px 0/10px 2px repeat-x;
}
#page_course_single .flow_sec .cont .info_block .circle1 {
  left: -39px;
  top: 159px;
  width: 77px;
  z-index: 1;
}
#page_course_single .flow_sec .cont .info_block .circle2 {
  left: 1113px;
  bottom: 88px;
  width: 77px;
  z-index: 1;
}
#page_course_single .flow_sec .cont .info_block .info_head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
#page_course_single .flow_sec .cont .info_block .info_head .common_ttl_box {
  margin-top: 5px;
}
#page_course_single .flow_sec .cont .info_block .info_head .common_ttl_box .en {
  font-size: 20px;
}
#page_course_single .flow_sec .cont .info_block .info_head .common_ttl_box .ttl {
  margin-top: 20px;
  font-weight: 900;
}
#page_course_single .flow_sec .cont .info_block .info_head .note {
  width: 699px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .flow_sec .cont .info_block .info_table {
  margin-top: 39px;
  padding-bottom: 10px;
  border: 2px solid #fe8286;
  border-radius: 20px;
  overflow: hidden;
  background-color: #fff;
}
#page_course_single .flow_sec .cont .info_block .info_table table {
  width: 100%;
  border-collapse: collapse;
}
#page_course_single .flow_sec .cont .info_block .info_table table th, #page_course_single .flow_sec .cont .info_block .info_table table td {
  padding: 18px 40px 17px;
  border-top: 1px solid #ddd;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: left;
  vertical-align: middle;
  color: #333333;
}
#page_course_single .flow_sec .cont .info_block .info_table table th {
  width: 190px;
  font-weight: 700;
  border-right: 1px solid #ddd;
}
#page_course_single .flow_sec .cont .info_block .info_table table td {
  font-weight: 500;
}
#page_course_single .flow_sec .cont .info_block .info_table table tbody tr:first-child > * {
  border-top: 0;
}
#page_course_single .flow_sec .cont .info_block .info_table table thead th {
  padding: 23px 40px;
  border-top: 0;
  border-right-color: #fff;
  background-color: #fe8286;
  font-size: 18px;
  line-height: 1.3333;
  color: #fff;
}
#page_course_single .flow_sec .cont .info_block .info_table table thead th:last-child {
  width: auto;
  border-right: 0;
}
#page_course_single .flow_sec .cont .info_block .common_btn {
  margin-top: 50px;
}
#page_course_single .flow_sec .cont .info_block .common_btn a {
  width: 320px;
  margin: 0 auto;
}
#page_course_single .extra_sec {
  padding: 100px 0 0;
}
#page_course_single .extra_sec .common_ttl_box .en {
  font-size: 20px;
}
#page_course_single .extra_sec .common_ttl_box .ttl {
  margin-top: 11px;
  font-size: 40px;
  font-weight: 900;
}
#page_course_single .extra_sec .copy {
  margin-top: 30px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3333;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .extra_sec .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_course_single .common_voice_sec {
  padding: 104px 0 98px;
}
#page_course_single .common_faq_sec {
  margin-top: 0;
  padding-bottom: 140px;
}
#page_course_single .next_sec {
  padding: 131px 0 115px;
  background-color: #fff;
}
#page_course_single .next_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Crect x='20' y='20' width='4' height='4' fill='%23ebebeb'/%3E%3C/svg%3E");
  background-position: 2px 0;
  background-size: 24px 24px;
  pointer-events: none;
}
#page_course_single .next_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_course_single .next_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_course_single .next_sec .cont .photo_block {
  flex-shrink: 0;
  width: 440px;
  height: 370px;
  margin-left: 37px;
}
#page_course_single .next_sec .cont .photo_block::before {
  content: "";
  position: absolute;
  left: -6px;
  top: -2px;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-color: #fba798;
  transform: rotate(11deg);
}
#page_course_single .next_sec .cont .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 3px solid #fba798;
  border-radius: 20px;
}
#page_course_single .next_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_course_single .next_sec .cont .photo_block .flowers {
  left: -30px;
  top: -30px;
  width: 96px;
  z-index: 2;
}
#page_course_single .next_sec .cont .photo_block .girl {
  left: 304px;
  top: 174px;
  width: 182px;
  z-index: 2;
}
#page_course_single .next_sec .cont .text_block {
  z-index: 0;
  flex-shrink: 0;
  width: 550px;
  margin: 17px 0 0 114px;
}
#page_course_single .next_sec .cont .text_block .circles {
  left: 469px;
  top: 50px;
  z-index: -1;
  width: 77px;
}
#page_course_single .next_sec .cont .text_block .common_ttl_box .ttl {
  margin-top: 6px;
  font-size: 38px;
  font-weight: 900;
}
#page_course_single .next_sec .cont .text_block .copy {
  position: relative;
  margin-top: 27px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .next_sec .cont .text_block .text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .next_sec .cont .text_block .common_btn {
  margin-top: 32px;
}
#page_course_single .next_sec .cont .text_block .common_btn a {
  width: -moz-fit-content;
  width: fit-content;
  min-width: 360px;
}
#page_course_single .next_sec .next_list {
  display: flex;
  gap: 0 60px;
  margin-top: 60px;
  padding-top: 50px;
  background: linear-gradient(to right, #b2ac9c 6px, transparent 6px) -3px 0/10px 2px repeat-x;
}
#page_course_single .next_sec .next_list .item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
  min-width: 0;
}
#page_course_single .next_sec .next_list .item .tag {
  display: inline-block;
  padding: 0 20px;
  border: 1px solid #e25353;
  border-radius: 15px;
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_course_single .next_sec .next_list .item .name {
  margin-top: 12px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .next_sec .next_list .item .text {
  margin-top: 10px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_course_single .next_sec .next_list .item .common_btn {
  margin-top: auto;
  padding-top: 24px;
}
#page_course_single .next_sec .next_list .item .common_btn a {
  width: 480px;
}
#page_course_single .next_sec .next_list .item .common_btn a .label {
  font-size: 17px;
}

#page_training .common_page_wrap {
  padding: 87px 0 0;
}
#page_training .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_training .deco img {
  width: 100%;
}
#page_training .lead_sec {
  padding-bottom: 80px;
}
#page_training .lead_sec .cont {
  text-align: center;
}
#page_training .lead_sec .cont .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_training .lead_sec .cont .copy .line {
  position: relative;
  z-index: 0;
  display: inline-block;
}
#page_training .lead_sec .cont .copy .circle1 {
  left: -58px;
  top: -34px;
  z-index: -1;
  width: 77px;
}
#page_training .lead_sec .cont .copy .circle2 {
  right: -19px;
  top: 19px;
  z-index: -1;
  width: 45px;
}
#page_training .lead_sec .cont .copy .num {
  font-size: 38px;
  line-height: 1;
}
#page_training .lead_sec .cont .text {
  margin-top: 27px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_training .common_course_cta_sec {
  margin-top: 0;
}
#page_training .philosophy_sec {
  margin-top: 49px;
  padding: 136px 0 114px;
  background-image: url(image/training_philosophy_wave.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_training .philosophy_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/training_philosophy_wave.svg);
  mask-image: url(image/training_philosophy_wave.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_training .philosophy_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_training .philosophy_sec .common_ttl_box .ttl {
  margin-top: 16px;
  font-size: 40px;
  font-weight: 900;
}
#page_training .philosophy_sec .intro_block {
  display: flex;
  align-items: flex-start;
  margin-top: 52px;
}
#page_training .philosophy_sec .intro_block .photo_block {
  flex-shrink: 0;
  width: 430px;
  height: 370px;
  margin-top: 33px;
}
#page_training .philosophy_sec .intro_block .photo_block::before, #page_training .philosophy_sec .intro_block .photo_block::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 20px;
}
#page_training .philosophy_sec .intro_block .photo_block::before {
  background-color: #ffe1c6;
  transform: rotate(6deg);
}
#page_training .philosophy_sec .intro_block .photo_block::after {
  background-color: #ffd1c5;
  transform: rotate(-12deg);
}
#page_training .philosophy_sec .intro_block .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 20px;
}
#page_training .philosophy_sec .intro_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_training .philosophy_sec .intro_block .text_block {
  width: 640px;
  margin-left: 70px;
}
#page_training .philosophy_sec .intro_block .text_block .ttl {
  font-size: 34px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #333333;
}
#page_training .philosophy_sec .intro_block .text_block .text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_training .philosophy_sec .goal_list {
  margin-top: 111px;
}
#page_training .philosophy_sec .goal_list ul {
  display: flex;
  gap: 0 40px;
}
#page_training .philosophy_sec .goal_list ul li {
  width: 550px;
  padding-bottom: 27px;
  border-radius: 20px;
  background-color: #fffbf0;
}
#page_training .philosophy_sec .goal_list ul li .ttl {
  padding: 14px 0;
  border-radius: 20px 20px 0 0;
  background-color: #8c8573;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fff;
}
#page_training .philosophy_sec .goal_list ul li .sub {
  margin-top: 26px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2223;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .philosophy_sec .goal_list ul li .text {
  margin: 13px 30px 0;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .philosophy_sec .copy {
  margin-top: 69px;
  font-size: 28px;
  font-weight: 700;
  line-height: 0.7858;
  letter-spacing: 0.04em;
  text-align: center;
  color: #e25353;
}
#page_training .philosophy_sec .copy .under {
  position: relative;
  display: inline-block;
  padding-bottom: 16px;
}
#page_training .philosophy_sec .copy .under::after {
  content: "";
  position: absolute;
  left: 11px;
  right: 11px;
  bottom: 0;
  height: 6px;
  background-color: #ffc9c9;
}
#page_training .philosophy_sec .bottom_text {
  margin-top: 25px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7778;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .recommend_sec {
  padding: 147px 0 107px;
}
#page_training .recommend_sec .common_ttl_box .en {
  font-size: 20px;
}
#page_training .recommend_sec .common_ttl_box .ttl {
  margin-top: 15px;
  font-size: 40px;
  font-weight: 900;
}
#page_training .recommend_sec .sub {
  margin-top: 46px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3333;
  letter-spacing: 0.04em;
  text-align: center;
  color: #333333;
}
#page_training .recommend_sec .check_list {
  margin-top: 33px;
}
#page_training .recommend_sec .check_list ul {
  display: grid;
  grid-template-columns: repeat(2, 550px);
  gap: 20px 40px;
}
#page_training .recommend_sec .check_list ul li {
  display: flex;
  align-items: center;
  padding: 11px 20px;
  border-radius: 10px;
  background-color: #fff;
}
#page_training .recommend_sec .check_list ul li .check {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  margin: 4px 19px 4px 0;
  border-radius: 50%;
  background-color: #f3f3f3;
}
#page_training .recommend_sec .check_list ul li .check img {
  width: 38px;
}
#page_training .recommend_sec .check_list ul li .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .recommend_sec .check_list ul li .label .accent {
  color: #e25353;
}
#page_training .recommend_sec .bottom_block {
  z-index: 0;
  width: -moz-fit-content;
  width: fit-content;
  margin: 44px auto 0;
  text-align: center;
}
#page_training .recommend_sec .bottom_block .circle3 {
  left: -62px;
  top: -13px;
  z-index: -1;
  width: 77px;
}
#page_training .recommend_sec .bottom_block .text {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.7778;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .recommend_sec .bottom_block .copy {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5455;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .recommend_sec .bottom_block .copy .under {
  position: relative;
  z-index: 0;
  display: inline-block;
  padding-bottom: 1px;
  border-bottom: 5px solid #fe8286;
}
#page_training .recommend_sec .bottom_block .copy .circle4 {
  right: -52px;
  top: -3px;
  z-index: -1;
  width: 77px;
  transform: rotate(180deg);
}
#page_training .content_sec {
  z-index: 2;
}
#page_training .content_sec .box {
  padding: 75px 0 110px;
  border-radius: 30px;
  background-color: #f1e8e1;
}
#page_training .content_sec .box::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 30px;
  background-image: url(image/hanasaki_activity_texture.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.3;
  pointer-events: none;
}
#page_training .content_sec .box > * {
  position: relative;
  z-index: 1;
}
#page_training .content_sec .box .common_ttl_box .ttl {
  margin-top: 16px;
  font-weight: 900;
}
#page_training .content_sec .box .copy {
  margin-top: 24px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3333;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .content_sec .box .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .content_sec .box .lesson_list {
  width: 1140px;
  margin: 23px auto 0;
}
#page_training .content_sec .box .lesson_list ul {
  display: grid;
  grid-template-columns: repeat(3, 360px);
  gap: 0 30px;
}
#page_training .content_sec .box .lesson_list ul li {
  width: 360px;
}
#page_training .content_sec .box .lesson_list ul li:nth-child(2), #page_training .content_sec .box .lesson_list ul li:nth-child(5) {
  margin-top: 30px;
}
#page_training .content_sec .box .lesson_list ul li:nth-child(2) .img::before, #page_training .content_sec .box .lesson_list ul li:nth-child(5) .img::before {
  border-color: #ffae97;
}
#page_training .content_sec .box .lesson_list ul li:nth-child(2) .ttl .dot, #page_training .content_sec .box .lesson_list ul li:nth-child(5) .ttl .dot {
  background-color: #ffae97;
}
#page_training .content_sec .box .lesson_list ul li:nth-child(n+4) {
  margin-top: 37px;
}
#page_training .content_sec .box .lesson_list ul li:nth-child(5) {
  margin-top: 67px;
}
#page_training .content_sec .box .lesson_list ul li:nth-child(3n) .text {
  max-width: 358px;
}
#page_training .content_sec .box .lesson_list ul li .img {
  width: 360px;
  height: 180px;
}
#page_training .content_sec .box .lesson_list ul li .img::before {
  content: "";
  position: absolute;
  left: -7px;
  top: -7px;
  width: 360px;
  height: 180px;
  border: 3px solid #fe8286;
  border-radius: 24px;
  z-index: 1;
}
#page_training .content_sec .box .lesson_list ul li .img img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_training .content_sec .box .lesson_list ul li .ttl {
  display: flex;
  align-items: flex-start;
  margin-top: 20px;
}
#page_training .content_sec .box .lesson_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin: 4px 16px 0 0;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_training .content_sec .box .lesson_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .content_sec .box .lesson_list ul li .text {
  margin-top: 14px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
  line-break: strict;
}
#page_training .flow_sec {
  margin-top: 68px;
  padding: 145px 0 122px;
  background-image: url(image/training_flow_wave.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_training .flow_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/training_flow_wave.svg);
  mask-image: url(image/training_flow_wave.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_training .flow_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_training .flow_sec .common_ttl_box .ttl {
  margin-top: 17px;
  font-weight: 900;
}
#page_training .flow_sec .copy {
  margin-top: 30px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .flow_sec .text {
  margin-top: 11px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .flow_sec .step_list {
  margin-top: 36px;
}
#page_training .flow_sec .step_list > ul > li {
  display: flex;
  align-items: center;
  padding: 30px 50px 30px 48px;
  border: 2px solid #fe8286;
  border-radius: 20px;
  background-color: #fff;
}
#page_training .flow_sec .step_list > ul > li + li {
  margin-top: 30px;
}
#page_training .flow_sec .step_list > ul > li + li::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -32px;
  width: 178px;
  height: 46px;
  margin-left: -89px;
  background-color: #fe8286;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
#page_training .flow_sec .step_list > ul > li .circles {
  width: 83px;
}
#page_training .flow_sec .step_list > ul > li .circles1 {
  left: -45px;
  top: 243px;
}
#page_training .flow_sec .step_list > ul > li .circles2 {
  left: 1094px;
  top: 221px;
  width: 92px;
}
#page_training .flow_sec .step_list > ul > li .circles3 {
  left: -46px;
  top: 231px;
  width: 92px;
}
#page_training .flow_sec .step_list > ul > li .text_box {
  flex-grow: 1;
  padding-right: 100px;
}
#page_training .flow_sec .step_list > ul > li .text_box .ttl {
  display: flex;
  align-items: center;
}
#page_training .flow_sec .step_list > ul > li .text_box .ttl .step {
  flex-shrink: 0;
  width: 106px;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_training .flow_sec .step_list > ul > li .text_box .ttl .label {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .flow_sec .step_list > ul > li .text_box .text {
  margin-top: 15px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
}
#page_training .flow_sec .step_list > ul > li .text_box .text + .text {
  margin-top: 0;
}
#page_training .flow_sec .step_list > ul > li .text_box .dot_list li {
  padding-left: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .flow_sec .step_list > ul > li .text_box .dot_list li::before {
  content: "・";
  margin-left: -20px;
  margin-right: 4px;
}
#page_training .flow_sec .step_list > ul > li .text_box .dot_list + .text {
  margin-top: 0;
}
#page_training .flow_sec .step_list > ul > li .img {
  flex-shrink: 0;
  width: 330px;
  height: 220px;
  margin: 8px 0;
  overflow: hidden;
  border-radius: 10px;
}
#page_training .flow_sec .step_list > ul > li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_training .info_sec {
  padding: 154px 0 110px;
}
#page_training .info_sec .cont .circle5 {
  left: -39px;
  top: 108px;
  width: 77px;
}
#page_training .info_sec .cont .circle1 {
  left: -46px;
  top: 148px;
  width: 92px;
}
#page_training .info_sec .cont .circle2 {
  left: 1104px;
  top: -232px;
  width: 92px;
}
#page_training .info_sec .cont .circle3 {
  left: 1094px;
  top: 891px;
  width: 92px;
}
#page_training .info_sec .cont .circle4 {
  left: 1113px;
  top: 591px;
  width: 77px;
}
#page_training .info_sec .cont .info_head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
#page_training .info_sec .cont .info_head .common_ttl_box {
  margin-top: 5px;
}
#page_training .info_sec .cont .info_head .common_ttl_box .en {
  font-size: 20px;
}
#page_training .info_sec .cont .info_head .common_ttl_box .ttl {
  margin-top: 20px;
  font-weight: 900;
}
#page_training .info_sec .cont .info_head .note {
  width: 749px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .info_sec .cont .info_table {
  margin-top: 39px;
  padding-bottom: 10px;
  border: 2px solid #fe8286;
  border-radius: 20px;
  overflow: hidden;
  background-color: #fff;
}
#page_training .info_sec .cont .info_table table {
  width: 100%;
  border-collapse: collapse;
}
#page_training .info_sec .cont .info_table table th, #page_training .info_sec .cont .info_table table td {
  padding: 18px 40px 17px;
  border-top: 1px solid #ddd;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: left;
  vertical-align: middle;
  color: #333333;
}
#page_training .info_sec .cont .info_table table th {
  width: 190px;
  font-weight: 700;
  border-right: 1px solid #ddd;
}
#page_training .info_sec .cont .info_table table td {
  font-weight: 500;
}
#page_training .info_sec .cont .info_table table tbody tr:first-child > * {
  border-top: 0;
}
#page_training .info_sec .cont .info_table table thead th {
  padding: 23px 40px;
  border-top: 0;
  border-right-color: #fff;
  background-color: #fe8286;
  font-size: 18px;
  line-height: 1.3333;
  color: #fff;
}
#page_training .info_sec .cont .info_table table thead th:last-child {
  width: auto;
  border-right: 0;
}
#page_training .info_sec .cont .common_btn {
  margin-top: 50px;
}
#page_training .info_sec .cont .common_btn a {
  width: 320px;
  margin: 0 auto;
}
#page_training .info_sec .cont .note_block {
  margin-top: 57px;
  padding-top: 44px;
  background: linear-gradient(to right, #b2ac9c 5px, transparent 5px) -1px 0/10px 2px repeat-x;
  text-align: center;
}
#page_training .info_sec .cont .note_block .ttl {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3334;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .info_sec .cont .note_block .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .after_sec {
  z-index: 2;
}
#page_training .after_sec .box {
  padding: 75px 0 67px;
  border-radius: 30px;
  background-color: #fff3e9;
}
#page_training .after_sec .box::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 30px;
  background-image: url(image/hanasaki_activity_texture.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.3;
  pointer-events: none;
}
#page_training .after_sec .box > * {
  position: relative;
  z-index: 1;
}
#page_training .after_sec .box .common_ttl_box .ttl {
  margin-top: 17px;
  font-weight: 900;
}
#page_training .after_sec .box .copy {
  margin-top: 22px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3334;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .after_sec .box .text {
  margin-top: 14px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_training .after_sec .box .after_list {
  width: 1140px;
  margin: 29px auto 0;
}
#page_training .after_sec .box .after_list ul {
  display: flex;
  gap: 0 20px;
}
#page_training .after_sec .box .after_list ul li {
  width: 270px;
}
#page_training .after_sec .box .after_list ul li:nth-child(even) {
  margin-top: 30px;
}
#page_training .after_sec .box .after_list ul li:nth-child(even) .img::before {
  border-color: #ffae97;
}
#page_training .after_sec .box .after_list ul li:nth-child(even) .ttl .dot {
  background-color: #ffae97;
}
#page_training .after_sec .box .after_list ul li .img {
  width: 270px;
  height: 180px;
}
#page_training .after_sec .box .after_list ul li .img::before {
  content: "";
  position: absolute;
  left: -7px;
  top: -7px;
  width: 270px;
  height: 180px;
  border: 3px solid #fe8286;
  border-radius: 24px;
  z-index: 1;
}
#page_training .after_sec .box .after_list ul li .img img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_training .after_sec .box .after_list ul li .ttl {
  display: flex;
  align-items: flex-start;
  margin-top: 18px;
}
#page_training .after_sec .box .after_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin: 5px 16px 0 0;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_training .after_sec .box .after_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.34;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .after_sec .box .after_list ul li .text {
  margin-top: 15px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  text-align: left;
  color: #000;
  line-break: strict;
}
#page_training .instructor_sec {
  margin-top: -52px;
  padding: 198px 0 81px;
  background-color: #fff;
}
#page_training .instructor_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Crect x='20' y='20' width='4' height='4' fill='%23ebebeb'/%3E%3C/svg%3E");
  background-position: 2px 9px;
  background-size: 24px 24px;
  pointer-events: none;
}
#page_training .instructor_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_training .instructor_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_training .instructor_sec .cont .photo_block {
  flex-shrink: 0;
  width: 440px;
  height: 370px;
  margin: 3px 0 0 37px;
}
#page_training .instructor_sec .cont .photo_block::before {
  content: "";
  position: absolute;
  left: -6px;
  top: -2px;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  background-color: #fba798;
  transform: rotate(11deg);
}
#page_training .instructor_sec .cont .photo_block .img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: 3px solid #fba798;
  border-radius: 20px;
}
#page_training .instructor_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_training .instructor_sec .cont .photo_block .flowers {
  left: -30px;
  top: -30px;
  width: 96px;
  z-index: 2;
}
#page_training .instructor_sec .cont .photo_block .girl {
  left: 304px;
  top: 174px;
  width: 182px;
  z-index: 2;
}
#page_training .instructor_sec .cont .text_block {
  width: 550px;
  margin: 0 0 0 113px;
}
#page_training .instructor_sec .cont .text_block .circles {
  left: 473px;
  top: 45px;
  width: 77px;
}
#page_training .instructor_sec .cont .text_block .common_ttl_box {
  position: relative;
}
#page_training .instructor_sec .cont .text_block .common_ttl_box .ttl {
  margin-top: 7px;
  font-size: 38px;
  font-weight: 900;
}
#page_training .instructor_sec .cont .text_block .copy {
  position: relative;
  margin-top: 29px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3077;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .instructor_sec .cont .text_block .text {
  margin-top: 17px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .instructor_sec .cont .text_block .common_btn {
  margin-top: 29px;
}
#page_training .instructor_sec .cont .text_block .common_btn a {
  width: 360px;
}
#page_training .common_voice_sec {
  padding: 104px 0 98px;
}
#page_training .common_faq_sec {
  margin-top: 0;
  padding-bottom: 77px;
}
#page_training .related_sec {
  padding: 194px 0 128px;
}
#page_training .related_sec .ring {
  left: calc(50% - 720px + 258px);
  top: 62px;
  width: 925px;
}
#page_training .related_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_training .related_sec .common_ttl_box .ttl {
  margin-top: 17px;
  font-size: 38px;
  font-weight: 900;
}
#page_training .related_sec .related_list {
  margin-top: 39px;
}
#page_training .related_sec .related_list ul {
  display: flex;
  gap: 0 60px;
}
#page_training .related_sec .related_list ul li {
  width: 540px;
}
#page_training .related_sec .related_list ul li .deco {
  z-index: 2;
}
#page_training .related_sec .related_list ul li .deco1 {
  left: -33px;
  top: -18px;
  width: 66px;
}
#page_training .related_sec .related_list ul li .deco2 {
  left: 487px;
  top: -19px;
  width: 54px;
}
#page_training .related_sec .related_list ul li .deco3 {
  left: 323px;
  top: 168px;
  width: 45px;
}
#page_training .related_sec .related_list ul li .deco4 {
  left: -13px;
  top: 220px;
  width: 45px;
  transform: scaleX(-1);
}
#page_training .related_sec .related_list ul li .img {
  width: 540px;
  height: 240px;
  overflow: hidden;
  border-radius: 20px;
}
#page_training .related_sec .related_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_training .related_sec .related_list ul li .tag {
  display: inline-block;
  margin-top: 28px;
  padding: 0 18px;
  border: 1px solid #e25353;
  border-radius: 15px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_training .related_sec .related_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 14px;
}
#page_training .related_sec .related_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_training .related_sec .related_list ul li .ttl .label {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .related_sec .related_list ul li .text {
  margin-top: 13px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}
#page_training .related_sec .related_list ul li .common_btn {
  margin-top: 31px;
}
#page_training .related_sec .related_list ul li .common_btn a {
  width: 360px;
}
#page_training .related_sec .related_list ul li .common_btn a .label {
  font-size: 16px;
}
#page_training .related_sec .related_list ul li:nth-child(2) .common_btn a {
  width: 410px;
}

#single_instructor .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#single_instructor .deco img {
  width: 100%;
}
#single_instructor .common_page_wrap {
  padding: 110px 0 0;
}
#single_instructor .head_sec {
  z-index: 2;
  padding: 0;
}
#single_instructor .head_sec .cont {
  display: flex;
  align-items: flex-start;
}
#single_instructor .head_sec .cont .photo_block {
  flex-shrink: 0;
  width: 508px;
  height: 455px;
  margin-right: 63px;
}
#single_instructor .head_sec .cont .photo_block .back {
  position: absolute;
  left: 34px;
  top: 16px;
  width: 440px;
  height: 400px;
  border-radius: 20px;
  background-color: #ff7f7f;
  transform: rotate(11deg);
}
#single_instructor .head_sec .cont .photo_block .img {
  position: absolute;
  left: 43px;
  top: 18px;
  width: 440px;
  height: 400px;
  overflow: hidden;
  border: 3px solid #fe9192;
  border-radius: 20px;
  background-color: #fff;
}
#single_instructor .head_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#single_instructor .head_sec .cont .text_block {
  flex: 1;
  min-width: 0;
  padding-top: 17px;
}
#single_instructor .head_sec .cont .text_block .en {
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #e97e7e;
}
#single_instructor .head_sec .cont .text_block .name {
  display: flex;
  align-items: flex-start;
  margin-top: 12px;
}
#single_instructor .head_sec .cont .text_block .name .ja {
  font-size: 32px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  color: #232121;
}
#single_instructor .head_sec .cont .text_block .name .roman {
  margin: 7px 0 0 25px;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0;
  color: #fdacb5;
}
#single_instructor .head_sec .cont .text_block .info_list {
  margin-top: 33px;
}
#single_instructor .head_sec .cont .text_block .info_list .row {
  display: flex;
  align-items: flex-start;
}
#single_instructor .head_sec .cont .text_block .info_list .row + .row {
  margin-top: 14px;
}
#single_instructor .head_sec .cont .text_block .info_list .row dt {
  flex-shrink: 0;
  width: 140px;
  margin-right: 20px;
  border: 1px solid #e25353;
  border-radius: 15px;
  background-color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.04em;
  text-align: center;
  color: #e25353;
}
#single_instructor .head_sec .cont .text_block .info_list .row dd {
  flex: 1;
  min-width: 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#single_instructor .head_sec .cont .text_block .common_btn {
  margin-top: 77px;
}
#single_instructor .head_sec .cont .text_block .common_btn a {
  width: 250px;
  justify-content: flex-start;
}
#single_instructor .profile_sec {
  margin-top: -116px;
  padding: 250px 0 110px;
  background-image: url(image/instructor_single_profile_back.svg), linear-gradient(#fcf7f4, #fcf7f4);
  background-repeat: no-repeat;
  background-position: center top, center bottom;
  background-size: 100% auto, 100% calc(100% - 100px);
}
#single_instructor .profile_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.5;
  -webkit-mask-image: url(image/instructor_single_profile_back.svg), linear-gradient(#000, #000);
  mask-image: url(image/instructor_single_profile_back.svg), linear-gradient(#000, #000);
  -webkit-mask-size: 100% auto, 100% calc(100% - 100px);
  mask-size: 100% auto, 100% calc(100% - 100px);
  -webkit-mask-position: center top, center bottom;
  mask-position: center top, center bottom;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#single_instructor .profile_sec .wrap {
  position: relative;
  z-index: 1;
}
#single_instructor .profile_sec .common_ttl_box .ttl {
  margin-top: 12px;
  font-size: 40px;
  font-weight: 900;
}
#single_instructor .profile_sec .profile_content {
  margin-top: 44px;
  min-height: 300px;
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.04em;
  color: #000;
}
#single_instructor .course_sec {
  padding: 173px 0 177px;
}
#single_instructor .course_sec .ring {
  left: calc(50% - 720px + 258px);
  top: 62px;
  width: 925px;
}
#single_instructor .course_sec .wrap {
  position: relative;
  z-index: 1;
}
#single_instructor .course_sec .common_ttl_box .ttl {
  margin-top: 16px;
  font-size: 38px;
  font-weight: 900;
}
#single_instructor .course_sec .course_list {
  margin-top: 40px;
}
#single_instructor .course_sec .course_list ul {
  display: grid;
  grid-template-columns: repeat(3, 360px);
  justify-content: start;
  gap: 60px 30px;
}
#single_instructor .course_sec .course_list ul li {
  width: 360px;
}
#single_instructor .course_sec .course_list ul li .deco {
  z-index: 2;
}
#single_instructor .course_sec .course_list ul li .deco1 {
  left: -33px;
  top: -18px;
  width: 66px;
}
#single_instructor .course_sec .course_list ul li .deco2 {
  left: 316px;
  top: -20px;
  width: 54px;
}
#single_instructor .course_sec .course_list ul li .deco3 {
  left: -21px;
  top: -32px;
  width: 79px;
}
#single_instructor .course_sec .course_list ul li .img {
  width: 360px;
  height: 200px;
  overflow: hidden;
  border-radius: 20px;
}
#single_instructor .course_sec .course_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#single_instructor .course_sec .course_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 22px;
}
#single_instructor .course_sec .course_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#single_instructor .course_sec .course_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000;
}
#single_instructor .course_sec .course_list ul li .text {
  margin-top: 10px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.78;
  letter-spacing: 0.1em;
  color: #000;
}
#single_instructor .course_sec .course_list ul li .common_btn {
  margin-top: 30px;
}
#single_instructor .course_sec .course_list ul li .common_btn a {
  width: 100%;
  background-color: #ec736d;
}
#single_instructor .course_sec .course_list ul li .common_btn a:hover {
  background-color: #fff;
}
#single_instructor .course_sec .course_list ul li .common_btn a .label {
  font-size: 16px;
  line-height: 1.25;
}
#single_instructor .course_sec .center_btn {
  margin-top: 50px;
}
#single_instructor .course_sec .center_btn a {
  width: 290px;
  margin: 0 auto;
}
#single_instructor .course_sec .center_btn a .label {
  font-size: 16px;
  line-height: 1.25;
}
#single_instructor .activity_sec {
  padding: 0 0 122px;
}
#single_instructor .activity_sec .ttl_box {
  display: flex;
  align-items: center;
}
#single_instructor .activity_sec .ttl_box .ttl {
  font-size: 38px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
}
#single_instructor .activity_sec .ttl_box .en {
  margin-left: 30px;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#single_instructor .activity_sec .activity_slider_wrap {
  margin-top: 40px;
  overflow: hidden;
  clip-path: inset(0 0 0 calc(50% - 585px));
}
#single_instructor .activity_sec .activity_slider_wrap .wrap {
  overflow: visible;
}
#single_instructor .activity_sec .activity_slider_wrap .activity_slider {
  display: flex;
  margin-left: -10px;
}
#single_instructor .activity_sec .activity_slider_wrap .activity_slider .slick-list {
  overflow: visible;
}
#single_instructor .activity_sec .activity_slider_wrap .activity_slider li {
  width: 410px;
  padding: 15px 25px;
}
#single_instructor .activity_sec .activity_slider_wrap .activity_slider li .img {
  width: 360px;
  height: 360px;
  overflow: hidden;
  border-radius: 20px;
  background-color: #fff;
  transform: rotate(-5deg);
}
#single_instructor .activity_sec .activity_slider_wrap .activity_slider li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#single_instructor .activity_sec .activity_slider_wrap .activity_slider li.even .img {
  transform: rotate(5deg);
}
#single_instructor .contact_sec {
  padding: 0 0 150px;
}
#single_instructor .contact_sec .box {
  overflow: hidden;
  padding: 53px 0 69px;
  border-radius: 20px;
  background-color: #ffe8c9;
}
#single_instructor .contact_sec .box::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/instructor_contact_back.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  pointer-events: none;
}
#single_instructor .contact_sec .box .deco {
  z-index: 1;
}
#single_instructor .contact_sec .box .tree1 {
  left: 6px;
  bottom: 0;
  width: 200px;
  transform: scaleX(-1);
}
#single_instructor .contact_sec .box .tree2 {
  left: 1139px;
  bottom: 0;
  width: 189px;
}
#single_instructor .contact_sec .box .girl {
  left: 1067px;
  bottom: 2px;
  width: 174px;
}
#single_instructor .contact_sec .box .flower1 {
  left: 992px;
  top: 33px;
  width: 92px;
}
#single_instructor .contact_sec .box .flower2 {
  left: 1073px;
  top: 117px;
  width: 46px;
}
#single_instructor .contact_sec .box .flower3 {
  left: 235px;
  top: 143px;
  width: 75px;
}
#single_instructor .contact_sec .box .flower4 {
  left: 204px;
  top: 114px;
  width: 46px;
}
#single_instructor .contact_sec .box .cont {
  position: relative;
  z-index: 2;
  text-align: center;
}
#single_instructor .contact_sec .box .cont .ttl {
  font-size: 48px;
  font-weight: 900;
  line-height: 1.32;
  letter-spacing: 0.04em;
  color: #cc3131;
  -webkit-text-stroke: 8px #fff;
  paint-order: stroke fill;
}
#single_instructor .contact_sec .box .cont .text {
  margin-top: 23px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #000;
}
#single_instructor .contact_sec .box .cont .btn_list {
  display: flex;
  justify-content: center;
  gap: 0 40px;
  margin-top: 28px;
}
#single_instructor .contact_sec .box .cont .btn_list a {
  display: flex;
  align-items: center;
  height: 80px;
  border-radius: 100vmax;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
#single_instructor .contact_sec .box .cont .btn_list a .icon {
  flex-shrink: 0;
  line-height: 1;
}
#single_instructor .contact_sec .box .cont .btn_list a .icon img, #single_instructor .contact_sec .box .cont .btn_list a .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
#single_instructor .contact_sec .box .cont .btn_list a .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#single_instructor .contact_sec .box .cont .btn_list .insta_btn {
  width: 349px;
  padding-left: 56px;
  background-color: #fff;
  box-shadow: inset 0 0 0 3px #e25353;
  color: #e25353;
}
#single_instructor .contact_sec .box .cont .btn_list .insta_btn .icon {
  width: 35px;
  margin-right: 27px;
}
#single_instructor .contact_sec .box .cont .btn_list .insta_btn:hover {
  background-color: #e25353;
  color: #fff;
}
#single_instructor .contact_sec .box .cont .btn_list .line_btn {
  width: 320px;
  padding-left: 37px;
  background-color: #21ad3f;
  color: #fff;
}
#single_instructor .contact_sec .box .cont .btn_list .line_btn .icon {
  width: 31px;
  margin-right: 24px;
}
#single_instructor .contact_sec .box .cont .btn_list .line_btn .icon svg .bg {
  fill: #06c755;
}
#single_instructor .contact_sec .box .cont .btn_list .line_btn .icon svg .balloon {
  fill: #fff;
}
#single_instructor .contact_sec .box .cont .btn_list .line_btn .icon svg .letter {
  fill: #06c755;
}
#single_instructor .contact_sec .box .cont .btn_list .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}
#single_instructor .common_instructor_sec {
  margin-top: 0;
  padding-bottom: 151px;
}

.common_case_sec {
  padding: 84px 0 114px;
}
.common_case_sec .cont {
  text-align: center;
}
.common_case_sec .cont .common_ttl_box .en {
  font-size: 20px;
}
.common_case_sec .cont .common_ttl_box .ttl {
  margin-top: 11px;
  font-weight: 900;
}
.common_case_sec .cont .sub {
  margin-top: 25px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #333333;
}
.common_case_sec .cont .text {
  margin-top: 11px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
.common_case_sec .case_list {
  width: 1140px;
  margin: 29px 0 0;
}
.common_case_sec .case_list .slider_arrow {
  position: absolute;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
}
.common_case_sec .case_list .slider_arrow.pc {
  display: block;
}
.common_case_sec .case_list .slider_arrow.prev {
  left: -100px;
}
.common_case_sec .case_list .slider_arrow.next {
  right: -100px;
}
.common_case_sec .case_list .slick-list {
  margin: 0 -15px;
  padding: 16px 0;
}
.common_case_sec .case_list .slick-slide {
  margin: 0 15px;
}
.common_case_sec .case_list li a {
  display: block;
  isolation: isolate;
  color: #232121;
}
.common_case_sec .case_list li a .card {
  position: relative;
  padding: 30px;
  border-radius: 20px;
  background-color: #fff;
}
.common_case_sec .case_list li a .card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 20px;
  background-color: #deccbc;
  transform: rotate(-5deg);
}
.common_case_sec .case_list li a .card .img {
  width: 100%;
  height: 180px;
  overflow: hidden;
  border-radius: 20px;
}
.common_case_sec .case_list li a .card .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}
.common_case_sec .case_list li a .card .ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-top: 22px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #e25353;
}
.common_case_sec .case_list li a .card .cat {
  display: table;
  min-width: 80px;
  margin-top: 22px;
  padding: 0 16px;
  border: 1px solid #fe8286;
  border-radius: 100vmax;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.572;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fe8286;
}
.common_case_sec .case_list li a .card .date {
  margin-top: 12px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03em;
  color: #9d9d9d;
}
.common_case_sec .case_list li a:hover .card .img img {
  transform: scale(1.08);
}
.common_case_sec .case_list .slider_nav {
  display: none;
}
.common_case_sec .not_found {
  margin-top: 40px;
  text-align: center;
}
.common_case_sec .common_btn {
  margin-top: 54px;
}
.common_case_sec .common_btn a {
  width: -moz-fit-content;
  width: fit-content;
  min-width: 270px;
  margin: 0 auto;
}

.common_cta_sec.is_service {
  margin-top: 0;
  padding: 81px 0 64px;
}
.common_cta_sec.is_service .deco1 {
  left: calc(50% - 720px + 38px);
  top: -14px;
}
.common_cta_sec.is_service .deco2 {
  z-index: 1;
  right: calc(50% - 720px + 140px);
  bottom: 0;
  width: 254px;
}
.common_cta_sec.is_service .deco4 {
  right: calc(50% - 720px + 48px);
  width: 175px;
}
.common_cta_sec.is_service .flower1 {
  top: 31px;
}
.common_cta_sec.is_service .flower2 {
  top: 115px;
}
.common_cta_sec.is_service .flower3 {
  left: calc(50% - 720px + 264px);
}
.common_cta_sec.is_service .flower4 {
  left: calc(50% - 720px + 233px);
}
.common_cta_sec.is_service .cont .ttl {
  line-height: 1.25;
  margin-bottom: 0;
}
.common_cta_sec.is_service .cont .text {
  margin-top: 20px;
  line-height: 1.875;
  color: #000;
  margin-bottom: 0;
}
.common_cta_sec.is_service .cont .single_btn {
  margin-top: 35px;
}
.common_cta_sec.is_service .cont .single_btn a {
  width: 450px;
  height: 80px;
  margin: 0 auto;
  background-color: #b63030;
}
.common_cta_sec.is_service .cont .single_btn a .label {
  text-align: left;
}
.common_cta_sec.is_service .cont .single_btn a:hover {
  background-color: #fff;
  color: #b63030;
  box-shadow: inset 0 0 0 2px #b63030;
}
.common_cta_sec.is_service .cont .single_btn a:hover .dot {
  background-color: #b63030;
}

#page_service .common_page_wrap {
  padding: 87px 0 0;
}
#page_service .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_service .deco img {
  width: 100%;
}
#page_service .lead_sec {
  padding-bottom: 87px;
}
#page_service .lead_sec .cont {
  text-align: center;
}
#page_service .lead_sec .cont .circle1 {
  left: 257px;
  top: -35px;
  width: 77px;
}
#page_service .lead_sec .cont .circle2 {
  left: 801px;
  top: 18px;
  width: 45px;
}
#page_service .lead_sec .cont .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_service .lead_sec .cont .text {
  margin-top: 18px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_service .lead_sec .cont .common_btn {
  margin-top: 48px;
}
#page_service .lead_sec .cont .common_btn a {
  width: 440px;
  margin: 0 auto;
}
#page_service .lead_sec .cont .common_btn a .label {
  text-align: left;
}
#page_service .activity_sec {
  padding: 132px 0 119px;
  background-image: url(image/course_sec_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_service .activity_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/course_sec_back.svg);
  mask-image: url(image/course_sec_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_service .activity_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_service .activity_sec .common_ttl_box .ttl {
  margin-top: 13px;
  font-weight: 900;
}
#page_service .activity_sec .act_block {
  display: flex;
  align-items: flex-start;
  margin-top: 60px;
}
#page_service .activity_sec .act_block .text_block {
  width: 520px;
}
#page_service .activity_sec .act_block .text_block .copy {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.44;
  letter-spacing: 0.04em;
  color: #333333;
}
#page_service .activity_sec .act_block .text_block .text {
  margin-top: 22px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_service .activity_sec .act_block .photo_block {
  width: 480px;
  height: 300px;
  margin: -8px 0 0 101px;
}
#page_service .activity_sec .act_block .photo_block::before, #page_service .activity_sec .act_block .photo_block::after {
  content: "";
  position: absolute;
  left: 0;
  top: -60px;
  width: 480px;
  height: 420px;
  border-radius: 20px;
}
#page_service .activity_sec .act_block .photo_block::before {
  background-color: #ffe1c6;
  transform: translate(-10px, 2px) scaleY(0.714) rotate(6deg);
}
#page_service .activity_sec .act_block .photo_block::after {
  background-color: #ffd1c5;
  transform: translate(1px, 3px) scaleY(0.714) rotate(-12deg);
}
#page_service .activity_sec .act_block .photo_block .img {
  position: relative;
  z-index: 1;
  width: 480px;
  height: 300px;
  overflow: hidden;
  border-radius: 20px;
  transform: scaleY(0.714) rotate(-3deg) scaleY(1.4);
}
#page_service .activity_sec .act_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_service .activity_sec .works_block {
  margin-top: 123px;
}
#page_service .activity_sec .works_block .common_ttl_box .ttl {
  margin-top: 17px;
}
#page_service .activity_sec .works_block .works_list {
  margin-top: 30px;
}
#page_service .activity_sec .works_block .works_list ul {
  display: grid;
  grid-template-columns: repeat(2, 545px);
  justify-content: space-between;
  gap: 53px 0;
}
#page_service .activity_sec .works_block .works_list ul li {
  display: flex;
  flex-direction: column;
}
#page_service .activity_sec .works_block .works_list ul li .img {
  position: relative;
  height: 260px;
  margin-top: 10px;
  border-radius: 20px;
}
#page_service .activity_sec .works_block .works_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
}
#page_service .activity_sec .works_block .works_list ul li .img::after {
  content: "";
  position: absolute;
  inset: -10px 10px 17px -10px;
  border: 3px solid #fe8286;
  border-radius: 20px;
  pointer-events: none;
}
#page_service .activity_sec .works_block .works_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 22px;
}
#page_service .activity_sec .works_block .works_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_service .activity_sec .works_block .works_list ul li .ttl .label {
  font-size: 22px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #000;
}
#page_service .activity_sec .works_block .works_list ul li .sub {
  margin-top: 22px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #000;
}
#page_service .activity_sec .works_block .works_list ul li .text {
  flex-grow: 1;
  margin-top: 11px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.467;
  letter-spacing: 0.04em;
  line-break: strict;
  color: #000;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  margin-top: 20px;
  padding: 0 0 10px;
  background: linear-gradient(to right, #fe8286 4px, transparent 4px) left bottom/8px 3px repeat-x;
  color: #232121;
  transition: color 0.3s;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn .arrow {
  position: relative;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-left: 32px;
  border-radius: 50%;
  background-color: #fff;
  transition: background-color 0.3s;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn .arrow::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 12px;
  width: 11px;
  height: 1px;
  background-color: #e25353;
  transition: background-color 0.3s;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn .arrow::after {
  content: "";
  position: absolute;
  left: 11px;
  top: 9px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #e25353;
  border-right: 1px solid #e25353;
  transform: rotate(45deg);
  transition: border-color 0.3s;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn:hover {
  color: #e25353;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn:hover .arrow {
  background-color: #e25353;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn:hover .arrow::before {
  background-color: #fff;
}
#page_service .activity_sec .works_block .works_list ul li .link_btn:hover .arrow::after {
  border-color: #fff;
}
#page_service .activity_sec .works_block .works_list ul li.is_peach .img::after {
  border-color: #ffae97;
}
#page_service .activity_sec .works_block .works_list ul li.is_peach .ttl .dot {
  background-color: #ffae97;
}
#page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn {
  background-image: linear-gradient(to right, #ffae97 4px, transparent 4px);
}
#page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn .arrow::before {
  background-color: #ffae97;
}
#page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn .arrow::after {
  border-color: #ffae97;
}
#page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn:hover .arrow::before {
  background-color: #fff;
}
#page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn:hover .arrow::after {
  border-color: #fff;
}

#page_service_single .common_page_wrap {
  padding: 86px 0 0;
}
#page_service_single .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_service_single .deco img {
  width: 100%;
}
#page_service_single .lead_sec {
  padding-bottom: 102px;
}
#page_service_single .lead_sec .cont {
  text-align: center;
}
#page_service_single .lead_sec .cont .copy_box {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
#page_service_single .lead_sec .cont .copy_box .circle1 {
  left: -32px;
  top: -40px;
  width: 77px;
}
#page_service_single .lead_sec .cont .copy_box .circle2 {
  right: -11px;
  top: 21px;
  width: 45px;
}
#page_service_single .lead_sec .cont .copy_box .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_service_single .lead_sec .cont .text {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_service_single .lead_sec .cont .common_btn {
  margin-top: 43px;
}
#page_service_single .lead_sec .cont .common_btn a {
  width: 440px;
  margin: 0 auto;
  text-align: left;
}
#page_service_single .request_sec {
  padding: 114px 0 90px;
  background-image: url(image/about_what_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_service_single .request_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/about_what_back.svg);
  mask-image: url(image/about_what_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_service_single .request_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_service_single .request_sec .ttl_block {
  text-align: center;
}
#page_service_single .request_sec .ttl_block .circle_l {
  left: 215px;
  top: 26px;
  width: 60px;
  transform: scaleX(-1);
}
#page_service_single .request_sec .ttl_block .flower_l {
  left: 198px;
  top: 51px;
  width: 40px;
}
#page_service_single .request_sec .ttl_block .circle_r {
  left: 866px;
  top: -31px;
  width: 60px;
}
#page_service_single .request_sec .ttl_block .flower_r {
  left: 910px;
  top: -23px;
  width: 40px;
}
#page_service_single .request_sec .ttl_block .ttl {
  position: relative;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_service_single .request_sec .request_list {
  margin-top: 72px;
}
#page_service_single .request_sec .request_list ul {
  display: flex;
  gap: 0 30px;
}
#page_service_single .request_sec .request_list ul li {
  width: 360px;
  padding: 26px 26px 39px;
  border: 4px solid transparent;
  -o-border-image: url(image/report_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/report_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
  background-color: #fff;
}
#page_service_single .request_sec .request_list ul li .num {
  position: absolute;
  left: 50%;
  top: -33px;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  padding: 18px 0;
  transform: translateX(-50%);
  background: url(image/service_num_circle.png) center/100% no-repeat;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
}
#page_service_single .request_sec .request_list ul li .img_block .img {
  width: 300px;
  height: 180px;
  overflow: hidden;
  border-radius: 10px;
}
#page_service_single .request_sec .request_list ul li .img_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_service_single .request_sec .request_list ul li .img_block .name {
  position: absolute;
  left: 50%;
  top: 180px;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  padding: 8px 14px;
  transform: translate(-50%, -50%);
  border-radius: 10px;
  background-color: #fe8286;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fff;
}
#page_service_single .request_sec .request_list ul li .sub {
  margin-top: 46px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_service_single .request_sec .request_list ul li .text {
  margin-top: 8px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.47;
  letter-spacing: 0.04em;
  color: #000;
}
#page_service_single .common_case_sec {
  padding-top: 95px;
}

.common_cta_sec.is_line {
  margin-top: 0;
  padding: 71px 0 78px;
}
.common_cta_sec.is_line .deco1 {
  left: calc(50% - 720px + 38px);
}
.common_cta_sec.is_line .flower1 {
  left: calc(50% - 720px + 973px);
  top: 51px;
}
.common_cta_sec.is_line .flower2 {
  left: calc(50% - 720px + 1054px);
  top: 135px;
}
.common_cta_sec.is_line .flower3 {
  left: calc(50% - 720px + 304px);
  top: 214px;
}
.common_cta_sec.is_line .flower4 {
  left: calc(50% - 720px + 273px);
  top: 185px;
}
.common_cta_sec.is_line .cont .ttl {
  font-size: 60.417px;
  margin-bottom: 0;
}
.common_cta_sec.is_line .cont .sub {
  margin-top: 32px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #000;
}
.common_cta_sec.is_line .cont .text {
  margin-top: 9px;
  font-size: 16px;
  margin-bottom: 0;
}
.common_cta_sec.is_line .cont .btn_list {
  justify-content: center;
  width: auto;
  margin-top: 34px;
}
.common_cta_sec.is_line .cont .btn_list .line_btn {
  width: 320px;
  padding-left: 37px;
}

#page_line .common_page_wrap {
  padding: 87px 0 0;
}
#page_line .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_line .deco img {
  width: 100%;
}
#page_line .line_btn {
  display: flex;
  align-items: center;
  width: 360px;
  height: 60px;
  padding-left: 42px;
  border-radius: 100vmax;
  background-color: #21ad3f;
  color: #fff;
  transition: background-color 0.3s, color 0.3s, box-shadow 0.3s;
}
#page_line .line_btn .icon {
  flex-shrink: 0;
  width: 24px;
  margin-right: 24px;
  line-height: 1;
}
#page_line .line_btn .icon svg {
  display: block;
  width: 100%;
  height: auto;
}
#page_line .line_btn .icon svg .bg {
  fill: #06c755;
}
#page_line .line_btn .icon svg .balloon {
  fill: #fff;
}
#page_line .line_btn .icon svg .letter {
  fill: #06c755;
}
#page_line .line_btn .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
#page_line .line_btn:hover {
  background-color: #fff;
  color: #21ad3f;
  box-shadow: inset 0 0 0 2px #21ad3f;
}
#page_line .lead_sec {
  padding-bottom: 96px;
}
#page_line .lead_sec .cont {
  text-align: center;
}
#page_line .lead_sec .cont .circle1 {
  left: 223px;
  top: -33px;
  width: 77px;
}
#page_line .lead_sec .cont .circle2 {
  left: 820px;
  top: 24px;
  width: 45px;
}
#page_line .lead_sec .cont .copy {
  position: relative;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.5295;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_line .lead_sec .cont .text {
  margin-top: 18px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_line .lead_sec .cont .line_btn {
  margin: 46px auto 0;
}
#page_line .what_sec {
  padding: 117px 0 110px;
  background-image: url(image/line_what_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_line .what_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/line_what_back.svg);
  mask-image: url(image/line_what_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_line .what_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_line .what_sec .common_ttl_box .en {
  font-size: 20px;
}
#page_line .what_sec .common_ttl_box .ttl {
  margin-top: 14px;
  font-size: 40px;
  font-weight: 900;
}
#page_line .what_sec .what_list {
  margin-top: 44px;
}
#page_line .what_sec .what_list ul {
  display: flex;
  gap: 0 20px;
}
#page_line .what_sec .what_list ul li {
  width: 270px;
}
#page_line .what_sec .what_list ul li:nth-child(even) {
  padding-top: 30px;
}
#page_line .what_sec .what_list ul li:nth-child(even) .img::after {
  border-color: #ffae97;
}
#page_line .what_sec .what_list ul li:nth-child(even) .ttl .dot {
  background-color: #ffae97;
}
#page_line .what_sec .what_list ul li .img {
  position: relative;
  height: 180px;
}
#page_line .what_sec .what_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
}
#page_line .what_sec .what_list ul li .img::after {
  content: "";
  position: absolute;
  inset: -7px 7px 7px -7px;
  border: 3px solid #fe8286;
  border-radius: 24px;
  pointer-events: none;
}
#page_line .what_sec .what_list ul li .ttl {
  display: flex;
  align-items: center;
  margin-top: 20px;
}
#page_line .what_sec .what_list ul li .ttl .dot {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  margin-right: 16px;
  border-radius: 50%;
  background-color: #fe8286;
}
#page_line .what_sec .what_list ul li .ttl .label {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .what_sec .what_list ul li .text {
  margin-top: 19px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .morning_sec {
  padding: 93px 0 75px;
}
#page_line .morning_sec .cont .circles {
  display: none;
}
#page_line .morning_sec .cont .plane {
  left: 803px;
  top: -58px;
  width: 337px;
}
#page_line .morning_sec .cont .en {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#page_line .morning_sec .cont .ttl {
  margin-top: 10px;
  font-size: 40px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_line .morning_sec .cont .sub {
  margin-top: 41px;
  font-size: 26px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_line .morning_sec .cont .text {
  margin-top: 13px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_line .morning_sec .cont .point_list {
  margin-top: 58px;
}
#page_line .morning_sec .cont .point_list ul {
  display: flex;
  gap: 0 60px;
}
#page_line .morning_sec .cont .point_list ul li {
  position: relative;
  width: 340px;
  text-align: center;
}
#page_line .morning_sec .cont .point_list ul li + li::before {
  content: "";
  position: absolute;
  left: -30px;
  top: 0;
  width: 1px;
  height: 350px;
  background-color: #d6c9c2;
}
#page_line .morning_sec .cont .point_list ul li .circle {
  position: relative;
  width: 180px;
  height: 180px;
  margin: 0 auto;
  padding-top: 21px;
}
#page_line .morning_sec .cont .point_list ul li .circle::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background-color: #ef9592;
  filter: blur(3px);
}
#page_line .morning_sec .cont .point_list ul li .circle .num {
  position: relative;
  z-index: 1;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: #fff;
}
#page_line .morning_sec .cont .point_list ul li .circle .icon {
  position: absolute;
  z-index: 1;
  line-height: 1;
}
#page_line .morning_sec .cont .point_list ul li .circle .icon img {
  display: block;
  width: 100%;
}
#page_line .morning_sec .cont .point_list ul li .circle .icon.book {
  left: 25.56%;
  top: 30%;
  width: 45.56%;
}
#page_line .morning_sec .cont .point_list ul li .circle .icon.brush {
  left: 28.33%;
  top: 30%;
  width: 42.78%;
}
#page_line .morning_sec .cont .point_list ul li .circle .icon.album {
  left: 31.11%;
  top: 33.89%;
  width: 37.22%;
}
#page_line .morning_sec .cont .point_list ul li .ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 26px;
}
#page_line .morning_sec .cont .point_list ul li .ttl .check {
  flex-shrink: 0;
  width: 24px;
  margin-right: 13px;
}
#page_line .morning_sec .cont .point_list ul li .ttl .check img {
  display: block;
  width: 100%;
}
#page_line .morning_sec .cont .point_list ul li .ttl .label {
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_line .morning_sec .cont .point_list ul li .text {
  margin-top: 17px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.334;
  letter-spacing: 0.07em;
  color: #232121;
}
#page_line .recommend_sec {
  position: relative;
  z-index: 2;
  margin-bottom: -105px;
}
#page_line .recommend_sec .box {
  width: 1240px;
  margin: 0 auto;
  padding: 49px 0 57px;
  border-radius: 20px;
  background-color: #ece6df;
}
#page_line .recommend_sec .box .girl {
  left: 1097px;
  top: 312px;
  width: 185px;
}
#page_line .recommend_sec .box .common_ttl_box .en {
  font-size: 20px;
}
#page_line .recommend_sec .box .common_ttl_box .ttl {
  margin-top: 15px;
  font-size: 40px;
  font-weight: 900;
}
#page_line .recommend_sec .box .check_list {
  margin-top: 31px;
}
#page_line .recommend_sec .box .check_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 30px;
  width: 1140px;
  margin: 0 auto;
}
#page_line .recommend_sec .box .check_list ul li {
  display: flex;
  align-items: center;
  width: 360px;
  padding: 15px 0 15px 20px;
  border-radius: 10px;
  background-color: #fff;
}
#page_line .recommend_sec .box .check_list ul li .check {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  margin-right: 19px;
  border-radius: 50%;
  background-color: #f3f3f3;
}
#page_line .recommend_sec .box .check_list ul li .check img {
  display: block;
  width: 95%;
}
#page_line .recommend_sec .box .check_list ul li .label {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .recommend_sec .box .check_list ul li .label .accent {
  color: #e25353;
}
#page_line .recommend_sec .box .copy_block {
  margin-top: 50px;
  text-align: center;
}
#page_line .recommend_sec .box .copy_block .circle_l {
  left: 198px;
  top: -25px;
  width: 77px;
}
#page_line .recommend_sec .box .copy_block .circle_r {
  left: 956px;
  top: 23px;
  width: 77px;
  transform: rotate(180deg);
}
#page_line .recommend_sec .box .copy_block .copy {
  position: relative;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.607;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .recommend_sec .box .copy_block .copy .under {
  position: relative;
  z-index: 0;
  display: inline-block;
  padding-bottom: 1px;
  border-bottom: 5px solid #fe8286;
}
#page_line .recommend_sec .box .copy_block .text {
  position: relative;
  margin-top: 8px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .next_sec,
#page_line .howto_sec {
  background-color: #fff;
  background-image: radial-gradient(#ebebeb 2px, transparent 2.5px);
  background-size: 24px 24px;
  background-position: 1px 3px;
}
#page_line .next_sec {
  padding: 105px 0 88px;
}
#page_line .next_sec .cont {
  display: flex;
  align-items: flex-start;
  padding-top: 106px;
}
#page_line .next_sec .cont .photo_block {
  flex-shrink: 0;
  width: 518px;
  height: 507px;
}
#page_line .next_sec .cont .photo_block .flowers {
  left: 7px;
  top: 10px;
  z-index: 2;
  width: 96px;
}
#page_line .next_sec .cont .photo_block .back {
  position: absolute;
  left: 37px;
  top: 38px;
  width: 440px;
  height: 430px;
  border-radius: 20px;
  background-color: #fba798;
  transform: rotate(11deg);
}
#page_line .next_sec .cont .photo_block .img {
  position: absolute;
  left: 48px;
  top: 40px;
  width: 440px;
  height: 430px;
  overflow: hidden;
  border-radius: 20px;
}
#page_line .next_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_line .next_sec .cont .photo_block .img::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 3px solid #fba798;
  border-radius: 20px;
  pointer-events: none;
}
#page_line .next_sec .cont .photo_block .girl {
  left: 363px;
  top: 305px;
  z-index: 2;
  width: 155px;
}
#page_line .next_sec .cont .text_block {
  flex: 1;
  min-width: 0;
  margin-left: 72px;
  padding-top: 56px;
}
#page_line .next_sec .cont .text_block .circles {
  left: 496px;
  top: 76px;
  width: 77px;
}
#page_line .next_sec .cont .text_block .en {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#page_line .next_sec .cont .text_block .ttl {
  position: relative;
  margin-top: 15px;
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  text-indent: -0.5em;
  color: #232121;
}
#page_line .next_sec .cont .text_block .ttl .kern {
  letter-spacing: -0.4em;
}
#page_line .next_sec .cont .text_block .sub {
  margin-top: 40px;
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .next_sec .cont .text_block .text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .next_sec .cont .text_block .common_btn {
  margin-top: 44px;
}
#page_line .next_sec .cont .text_block .common_btn a {
  width: 360px;
}
#page_line .next_sec .cont .text_block .line_btn {
  margin-top: 20px;
}
#page_line .question_sec {
  position: relative;
  z-index: 2;
  padding: 119px 0 0;
}
#page_line .question_sec .cont {
  text-align: center;
}
#page_line .question_sec .cont .ttl {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #333333;
}
#page_line .question_sec .cont .ttl .under {
  position: relative;
  z-index: 0;
  display: inline-block;
  padding-bottom: 1px;
  border-bottom: 5px solid #fe8286;
}
#page_line .question_sec .cont .text {
  margin-top: 25px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .news_sec {
  margin-top: 16px;
  padding: 0 0 122px;
}
#page_line .news_sec::before {
  content: "";
  position: absolute;
  inset: 11px 0 0;
  background-image: url(image/texture_a.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: multiply;
  opacity: 0.55;
  -webkit-mask-image: url(image/instructor_profile_back.svg);
  mask-image: url(image/instructor_profile_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_line .news_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_line .news_sec .question_list ul {
  display: flex;
  justify-content: center;
  gap: 0 30px;
}
#page_line .news_sec .question_list ul li {
  width: 262px;
  padding: 15px 0 15px 20px;
  border-radius: 6px;
  background-color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .news_sec .question_list ul li .accent {
  color: #8c6a15;
}
#page_line .news_sec .q_text {
  margin-top: 15px;
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
  color: #000;
}
#page_line .news_sec .q_text .lg {
  font-size: 20px;
  line-height: 1.5;
}
#page_line .news_sec .q_text .bold {
  font-weight: 700;
}
#page_line .news_sec .news_block {
  margin-top: 86px;
}
#page_line .news_sec .news_block .circle_l {
  left: 160px;
  top: -40px;
  width: 77px;
}
#page_line .news_sec .news_block .circle_r {
  left: 887px;
  top: 22px;
  width: 46px;
}
#page_line .news_sec .news_block .ttl {
  position: relative;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  color: #e25353;
}
#page_line .news_sec .news_block .news_cont {
  display: flex;
  align-items: flex-start;
  margin-top: 54px;
}
#page_line .news_sec .news_block .news_cont .text_block {
  width: 520px;
}
#page_line .news_sec .news_block .news_cont .text_block .copy {
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4375;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .news_sec .news_block .news_cont .text_block .text {
  margin-top: 32px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .news_sec .news_block .news_cont .text_block .tag_list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 10px;
  margin-top: 12px;
}
#page_line .news_sec .news_block .news_cont .text_block .tag_list li {
  min-width: 120px;
  padding: 10px 17px;
  text-align: center;
  border-radius: 8px;
  background-color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_line .news_sec .news_block .news_cont .text_block .tag_list + .text {
  margin-top: 14px;
}
#page_line .news_sec .news_block .news_cont .photo_block {
  width: 430px;
  height: 430px;
  margin: -10px 59px 0 auto;
}
#page_line .news_sec .news_block .news_cont .photo_block::before, #page_line .news_sec .news_block .news_cont .photo_block::after {
  content: "";
  position: absolute;
  border-radius: 20px;
}
#page_line .news_sec .news_block .news_cont .photo_block::before {
  left: 0;
  top: 5px;
  width: 429px;
  height: 422px;
  background-color: #ffd1c5;
  transform: skew(16.5deg, -6.25deg);
}
#page_line .news_sec .news_block .news_cont .photo_block::after {
  left: 1px;
  top: -4px;
  width: 428px;
  height: 428px;
  background-color: #ffe1c6;
  transform: skew(-8.37deg, 2.81deg);
}
#page_line .news_sec .news_block .news_cont .photo_block .img {
  position: relative;
  z-index: 1;
  width: 430px;
  height: 430px;
  overflow: hidden;
  border-radius: 20px;
  transform: skew(4.13deg, -2.06deg);
}
#page_line .news_sec .news_block .news_cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_line .survey_sec {
  margin-top: 65px;
  padding: 186px 0 251px;
}
#page_line .survey_sec .ring {
  left: calc(50% - 720px + 338px);
  top: 4px;
  width: 764px;
}
#page_line .survey_sec .photo1,
#page_line .survey_sec .photo2,
#page_line .survey_sec .photo3,
#page_line .survey_sec .photo4 {
  overflow: hidden;
  border-radius: 20px;
}
#page_line .survey_sec .photo1 img,
#page_line .survey_sec .photo2 img,
#page_line .survey_sec .photo3 img,
#page_line .survey_sec .photo4 img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_line .survey_sec .photo1 {
  left: calc(50% - 720px + 157.5px);
  top: 145px;
  width: 220px;
  height: 170px;
  transform: rotate(6deg);
}
#page_line .survey_sec .photo2 {
  left: calc(50% - 720px + 63px);
  top: 345px;
  width: 220px;
  height: 260px;
  transform: rotate(-6deg);
}
#page_line .survey_sec .photo3 {
  left: calc(50% - 720px + 1160px);
  top: 55px;
  width: 220px;
  height: 260px;
  transform: rotate(6deg);
}
#page_line .survey_sec .photo4 {
  left: calc(50% - 720px + 1113.5px);
  top: 375px;
  width: 220px;
  height: 170px;
  transform: rotate(-6deg);
}
#page_line .survey_sec .circles1 {
  left: calc(50% - 720px + 120px);
  top: 92px;
  width: 78px;
}
#page_line .survey_sec .circles2 {
  left: calc(50% - 720px + 1315px);
  top: 492px;
  width: 78px;
}
#page_line .survey_sec .circles3 {
  left: calc(50% - 720px + 1136px);
  top: 0;
  width: 86px;
}
#page_line .survey_sec .circles4 {
  left: calc(50% - 720px + 257px);
  top: 554px;
  width: 86px;
}
#page_line .survey_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_line .survey_sec .cont {
  text-align: center;
}
#page_line .survey_sec .cont .ttl {
  font-size: 38px;
  font-weight: 900;
  line-height: 1.2632;
  padding-left: 0.19em;
  letter-spacing: 0.19em;
  color: #232121;
}
#page_line .survey_sec .cont .sub {
  margin-top: 31px;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3334;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .survey_sec .cont .text {
  margin-top: 15px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .howto_sec {
  padding: 110px 0 118px;
}
#page_line .howto_sec .ttl_block {
  text-align: center;
}
#page_line .howto_sec .ttl_block .flower_l {
  left: 341px;
  top: 5px;
  width: 77px;
}
#page_line .howto_sec .ttl_block .flower_r {
  left: 715px;
  top: 43px;
  width: 86px;
}
#page_line .howto_sec .ttl_block .en {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#page_line .howto_sec .ttl_block .ttl {
  position: relative;
  margin-top: 16px;
  font-size: 38px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_line .howto_sec .step_list {
  margin-top: 68px;
}
#page_line .howto_sec .step_list ul {
  display: flex;
  justify-content: center;
  gap: 0 30px;
}
#page_line .howto_sec .step_list ul li {
  position: relative;
  width: 360px;
  padding: 26px 26px 26px;
  border: 4px solid transparent;
  -o-border-image: url(image/first_box_frame.png) 60 fill/30px/4px round;
     border-image: url(image/first_box_frame.png) 60 fill/30px/4px round;
  border-radius: 20px;
  background-color: #fff;
}
#page_line .howto_sec .step_list ul li + li::before {
  content: "";
  position: absolute;
  left: -38px;
  top: 50%;
  width: 38px;
  height: 3px;
  margin-top: -1.5px;
  background-color: #fe8286;
}
#page_line .howto_sec .step_list ul li .num {
  position: absolute;
  left: 50%;
  top: -29px;
  z-index: 1;
  width: 50px;
  padding: 14px 0;
  transform: translateX(-50%);
  border-radius: 50%;
  background-color: #fe8286;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #fff;
}
#page_line .howto_sec .step_list ul li .img {
  width: 300px;
  height: 180px;
  overflow: hidden;
  border-radius: 10px;
}
#page_line .howto_sec .step_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_line .howto_sec .step_list ul li .ttl {
  margin-top: 23px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #000;
}
#page_line .howto_sec .step_list ul li .text {
  margin-top: 9px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4667;
  letter-spacing: 0.04em;
  color: #000;
}

#page_about_yukiemoji .common_page_wrap {
  padding: 88px 0 0;
}
#page_about_yukiemoji #top_course_sec {
  margin-top: 79px;
}
#page_about_yukiemoji #top_course_sec .common_course_box {
  margin-top: 40px;
}
#page_about_yukiemoji #top_course_sec .common_course_box .step_list {
  margin-top: 40px;
}
#page_about_yukiemoji #top_course_sec .common_btn {
  margin-top: 43px;
}
#page_about_yukiemoji .name_sec + .common_voice_sec {
  margin-top: -24px;
}
#page_about_yukiemoji .common_instructor_sec {
  margin-top: -142px;
  padding-bottom: 161px;
}
#page_about_yukiemoji .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_about_yukiemoji .deco img {
  width: 100%;
}
#page_about_yukiemoji .common_ttl_box .en {
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.04em;
}
#page_about_yukiemoji .common_ttl_box .ttl {
  margin-top: 9px;
  font-size: 40px;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
#page_about_yukiemoji .lead_sec {
  padding-bottom: 41px;
}
#page_about_yukiemoji .lead_sec .deco1 {
  left: calc(50% - 720px + 451px);
  top: -50px;
  width: 77px;
}
#page_about_yukiemoji .lead_sec .deco2 {
  left: calc(50% - 720px + 962px);
  top: 83px;
  width: 45px;
}
#page_about_yukiemoji .lead_sec .cont {
  text-align: center;
}
#page_about_yukiemoji .lead_sec .cont .copy {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about_yukiemoji .lead_sec .cont .text {
  margin-top: 26px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about_yukiemoji .what_sec {
  padding: 199px 0 129px;
  background-image: url(image/about_yukiemoji_wave_back.svg);
  background-repeat: no-repeat;
  background-position: center 50px;
  background-size: 100% calc(100% - 50px);
}
#page_about_yukiemoji .what_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/about_yukiemoji_wave_back.svg);
  mask-image: url(image/about_yukiemoji_wave_back.svg);
  -webkit-mask-size: 100% calc(100% - 50px);
  mask-size: 100% calc(100% - 50px);
  -webkit-mask-position: center 50px;
  mask-position: center 50px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_about_yukiemoji .what_sec .deco1 {
  left: calc(50% - 720px + 163px);
  top: 256px;
  width: 94px;
}
#page_about_yukiemoji .what_sec .deco2 {
  left: calc(50% - 720px + 134px);
  top: 327px;
  width: 60px;
}
#page_about_yukiemoji .what_sec .deco3 {
  left: calc(50% - 720px + 175px);
  top: 338px;
  width: 71px;
}
#page_about_yukiemoji .what_sec .deco4 {
  left: calc(50% - 720px + 13px);
  top: 468px;
  width: 37px;
}
#page_about_yukiemoji .what_sec .deco5 {
  left: calc(50% - 720px + 57px);
  top: 493px;
  width: 43px;
}
#page_about_yukiemoji .what_sec .deco6 {
  left: calc(50% - 720px + 473px);
  top: 685px;
  width: 92px;
}
#page_about_yukiemoji .what_sec .girl {
  left: calc(50% - 720px + 1222px);
  top: 240px;
  width: 193px;
}
#page_about_yukiemoji .what_sec .photo_list {
  position: absolute;
  inset: 0;
}
#page_about_yukiemoji .what_sec .photo_list .img {
  position: absolute;
  width: 460px;
  height: 290px;
  overflow: hidden;
  border-radius: 20px;
}
#page_about_yukiemoji .what_sec .photo_list .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_about_yukiemoji .what_sec .photo_list .img1 {
  left: calc(50% - 720px + 163px);
  top: 114px;
  transform: rotate(6deg);
}
#page_about_yukiemoji .what_sec .photo_list .img2 {
  left: calc(50% - 720px + 49px);
  top: 472px;
  transform: rotate(-6deg);
  animation-delay: 0.1s;
}
#page_about_yukiemoji .what_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_about_yukiemoji .what_sec .cont .text_block {
  width: 610px;
  margin-left: 544px;
  padding-top: 8px;
}
#page_about_yukiemoji .what_sec .cont .text_block .common_ttl_box .en {
  font-size: 16px;
}
#page_about_yukiemoji .what_sec .cont .text_block .common_ttl_box .ttl {
  margin-top: 42px;
  font-size: 46px;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
#page_about_yukiemoji .what_sec .cont .text_block .text {
  margin-top: 33px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about_yukiemoji .feature_sec .ring {
  left: calc(50% - 720px - 309px);
  top: 388px;
  width: 764px;
  transform: scaleX(-1);
}
#page_about_yukiemoji .feature_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_about_yukiemoji .feature_sec .feature_block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 43px;
}
#page_about_yukiemoji .feature_sec .feature_block .photo_block {
  position: relative;
  flex-shrink: 0;
  width: 562px;
  height: 446px;
}
#page_about_yukiemoji .feature_sec .feature_block .photo_block::before, #page_about_yukiemoji .feature_sec .feature_block .photo_block::after {
  content: "";
  position: absolute;
  left: 31px;
  top: 48px;
  width: 500px;
  height: 350px;
  border-radius: 20px;
}
#page_about_yukiemoji .feature_sec .feature_block .photo_block::before {
  background-color: #ffe1c6;
  transform: rotate(6deg);
}
#page_about_yukiemoji .feature_sec .feature_block .photo_block::after {
  background-color: #ffd1c5;
  transform: rotate(-12deg);
}
#page_about_yukiemoji .feature_sec .feature_block .photo_block .img {
  position: absolute;
  left: 36px;
  top: 44px;
  z-index: 1;
  width: 500px;
  height: 350px;
  overflow: hidden;
  border-radius: 20px;
  transform: rotate(-3deg);
}
#page_about_yukiemoji .feature_sec .feature_block .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_about_yukiemoji .feature_sec .feature_block .text_block {
  width: 520px; /* Figma のテキスト枠。本文 p には幅を当てず、この幅に任せる */
}
#page_about_yukiemoji .feature_sec .feature_block .text_block .sub_ttl {
  font-size: 31px;
  font-weight: 900;
  line-height: 1.452;
  letter-spacing: 0.02em;
  color: #e25353;
}
#page_about_yukiemoji .feature_sec .feature_block .text_block .text {
  margin-top: 28px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about_yukiemoji .feature_sec .feature_block.is_reverse .text_block .sub_ttl {
  margin-right: -45px; /* Figma では見出し(565px)が文字枠 520px から右へはみ出す。本文の折り返しは 520 のまま */
}
#page_about_yukiemoji .free_sec {
  padding: 103px 0 124px;
}
#page_about_yukiemoji .accept_sec {
  padding-bottom: 135px;
}
#page_about_yukiemoji .cycle_sec {
  padding: 135px 0 192px;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Crect width='4' height='4' fill='%23ebebeb'/%3E%3C/svg%3E");
  background-repeat: repeat;
  background-position: -2px 20px;
}
#page_about_yukiemoji .cycle_sec .cont {
  text-align: center;
}
#page_about_yukiemoji .cycle_sec .cont .copy {
  margin-top: 23px;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.571;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about_yukiemoji .cycle_sec .cont > .text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.08em;
  color: #000;
}
#page_about_yukiemoji .cycle_sec .cycle_box {
  width: 1240px;
  margin: 39px auto 0;
  padding-top: 29px;
  text-align: left;
}
#page_about_yukiemoji .cycle_sec .cycle_box .box_ttl {
  position: absolute;
  left: 50%;
  top: 0;
  z-index: 4;
  width: 800px;
  padding: 0 10px;
  border-radius: 10px;
  background-color: #e06d70;
  font-size: 27px;
  font-weight: 700;
  line-height: 2.222;
  letter-spacing: 0.04em;
  text-align: center;
  color: #fff;
  transform: translateX(-50%);
}
#page_about_yukiemoji .cycle_sec .cycle_box .deco {
  z-index: 3;
}
#page_about_yukiemoji .cycle_sec .cycle_box .center_ring {
  left: 50%;
  top: 196px;
  z-index: 1;
  width: 138px;
  margin-left: -69px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .center_circle {
  left: 50%;
  top: 208px;
  z-index: 1;
  width: 114px;
  margin-left: -57px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .arrow {
  width: 40px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .arrow1 {
  left: 600px;
  top: 169px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .arrow2 {
  left: 895px;
  top: 248px;
  transform: rotate(90deg);
}
#page_about_yukiemoji .cycle_sec .cycle_box .arrow3 {
  left: 305px;
  top: 253px;
  transform: rotate(-90deg);
}
#page_about_yukiemoji .cycle_sec .cycle_box .arrow4 {
  left: 600px;
  top: 348px;
  transform: rotate(180deg);
}
#page_about_yukiemoji .cycle_sec .cycle_box .girl {
  left: 1145px;
  top: 301px;
  width: 120px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list {
  display: grid;
  grid-template-columns: 550px 550px;
  gap: 50px 40px;
  padding: 81px 47px 53px;
  border: 3px solid #e25353;
  border-radius: 20px;
  background-color: #fff8f8;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 130px;
  padding: 10px 20px 10px 150px;
  border: 2px solid #a09577;
  border-radius: 20px;
  background-color: #f9f2dc;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li .step {
  position: absolute;
  left: 210px;
  top: -17px;
  width: 130px;
  border-radius: 17px;
  background-color: #a09577;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.667;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li .icon {
  position: absolute;
  left: 38px;
  top: 23px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background-color: #fff;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li .icon img {
  width: 100%;
  height: auto;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li .ttl {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li .text {
  margin-top: 5px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step1 .icon img {
  width: 54px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step2 .icon img {
  width: 41px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step3 .icon img {
  width: 48px;
}
#page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step4 .icon img {
  width: 48px;
}
#page_about_yukiemoji .cycle_sec .tri {
  width: 339px;
  margin: 18px auto 0;
  line-height: 0;
}
#page_about_yukiemoji .cycle_sec .tri img {
  width: 100%;
}
#page_about_yukiemoji .cycle_sec .result {
  margin-top: 32px;
  font-size: 30px;
  font-weight: 900;
  line-height: 1.467;
  letter-spacing: 0.037em;
  color: #232121;
}
#page_about_yukiemoji .cycle_sec .result .under {
  display: inline-block;
  padding-bottom: 6px;
  background-image: linear-gradient(#fdacb5, #fdacb5);
  background-repeat: no-repeat;
  background-position: 22px bottom;
  background-size: calc(100% - 32px) 8px;
}
#page_about_yukiemoji .cycle_sec .result .big {
  font-size: 42px;
  line-height: 1.05;
  letter-spacing: 0.027em;
}
#page_about_yukiemoji .cycle_sec .result .red {
  color: #e25353;
}
#page_about_yukiemoji .philo_sec {
  margin-top: -71px;
  padding: 135px 0 105px;
  background-image: url(image/about_yukiemoji_wave_back.svg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
}
#page_about_yukiemoji .philo_sec::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(image/texture_b.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  mix-blend-mode: lighten;
  opacity: 0.4;
  -webkit-mask-image: url(image/about_yukiemoji_wave_back.svg);
  mask-image: url(image/about_yukiemoji_wave_back.svg);
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-position: center top;
  mask-position: center top;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  pointer-events: none;
}
#page_about_yukiemoji .philo_sec .wrap {
  position: relative;
  z-index: 1;
}
#page_about_yukiemoji .philo_sec .cont {
  display: flex;
  align-items: flex-start;
}
#page_about_yukiemoji .philo_sec .cont > .girl {
  left: 455px;
  top: 62px;
  z-index: 2;
  width: 193px;
}
#page_about_yukiemoji .philo_sec .cont .text_block {
  width: 610px;
}
#page_about_yukiemoji .philo_sec .cont .text_block .en {
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #e97e7e;
}
#page_about_yukiemoji .philo_sec .cont .text_block .label {
  margin-top: 8px;
  font-size: 22px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about_yukiemoji .philo_sec .cont .text_block .ttl {
  margin-top: 38px;
  font-size: 46px;
  font-weight: 900;
  line-height: 1.435;
  letter-spacing: 0.06em;
  color: #232121;
}
#page_about_yukiemoji .philo_sec .cont .text_block .text {
  margin-top: 17px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: #000;
}
#page_about_yukiemoji .philo_sec .cont .photo_block {
  flex-shrink: 0;
  width: 480px;
  margin: 5px -50px 0 auto;
}
#page_about_yukiemoji .philo_sec .cont .photo_block .img {
  width: 480px;
  height: 550px;
  overflow: hidden;
  border-radius: 20px;
}
#page_about_yukiemoji .philo_sec .cont .photo_block .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_about_yukiemoji .philo_sec .cont .photo_block .deco1 {
  left: 429px;
  top: -48px;
  width: 94px;
}
#page_about_yukiemoji .philo_sec .cont .photo_block .deco2 {
  left: -12px;
  top: 490px;
  width: 60px;
}
#page_about_yukiemoji .philo_sec .cont .photo_block .deco3 {
  left: 29px;
  top: 501px;
  width: 71px;
}
#page_about_yukiemoji .name_sec {
  padding-top: 95px;
}
#page_about_yukiemoji .name_sec .name_box {
  overflow: hidden;
  padding: 67px 0 44px;
  border: 3px solid #fc8f9a;
  border-radius: 40px;
  background-color: #fcf7f4;
  text-align: center;
}
#page_about_yukiemoji .name_sec .name_box .copy {
  margin-top: 23px;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.571;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_about_yukiemoji .name_sec .name_box > .text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.625;
  letter-spacing: 0.08em;
  color: #000;
}
#page_about_yukiemoji .name_sec .name_box .photo_list {
  margin-top: 50px;
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul {
  display: flex;
  gap: 0 36.5px;
  padding-left: 8px;
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul li {
  flex-shrink: 0;
  width: 200px;
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul li:nth-child(odd) {
  margin-top: 17px;
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul li:nth-child(odd) .img {
  transform: rotate(-5deg);
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul li:nth-child(even) .img {
  transform: rotate(5deg);
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul li .img {
  width: 200px;
  height: 250px;
  overflow: hidden;
  border-radius: 20px;
}
#page_about_yukiemoji .name_sec .name_box .photo_list ul li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#page_faq .common_page_wrap {
  padding: 86px 0 150px;
}
#page_faq .lead_sec .cont {
  text-align: center;
}
#page_faq .lead_sec .cont .text {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_faq .lead_sec .cont .text a {
  font-weight: 700;
  color: #232121;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: color 0.3s;
}
#page_faq .lead_sec .cont .text a:hover {
  color: #e25353;
}
#page_faq .lead_sec .cont .faq_nav {
  margin-top: 44px;
}
#page_faq .lead_sec .cont .faq_nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 12px;
}
#page_faq .lead_sec .cont .faq_nav ul li a {
  display: block;
  padding: 0 24px;
  border: 1px solid #e25353;
  border-radius: 100vmax;
  background-color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 2.8;
  letter-spacing: 0.04em;
  color: #e25353;
  transition: background-color 0.3s, color 0.3s;
}
#page_faq .lead_sec .cont .faq_nav ul li a:hover {
  background-color: #e25353;
  color: #fff;
}
#page_faq .faq_group {
  margin-top: 80px;
  scroll-margin-top: 130px;
}
#page_faq .faq_group .sub_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 14px;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_faq .faq_group .sub_ttl .lotus {
  width: 47px;
  line-height: 1;
}
#page_faq .faq_group .sub_ttl .lotus img {
  width: 100%;
}
#page_faq .faq_group .sub_ttl .lotus + .label + .lotus {
  transform: scaleX(-1);
}
#page_faq .faq_group .common_faq_list {
  margin-top: 30px;
}
#page_faq .faq_group .common_faq_list ul li {
  border: 1px solid #f0e3dc;
}

.common_product_list ul.products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 50px 25px;
  margin: 0;
  padding: 0;
}
.common_product_list ul.products::before, .common_product_list ul.products::after {
  display: none;
}
.common_product_list ul.products li.product, .common_product_list ul.products[class*=columns-] li.product {
  float: none;
  width: 100% !important;
  margin: 0 !important;
  padding: 0;
}
.common_product_list ul.products li.product a, .common_product_list ul.products[class*=columns-] li.product a {
  display: block;
  color: #232121;
}
.common_product_list ul.products li.product a .img, .common_product_list ul.products[class*=columns-] li.product a .img {
  width: 100%;
  height: 260px;
  overflow: hidden;
  border-radius: 20px;
  border: 3px solid #fe9192;
  background-color: #fff;
}
.common_product_list ul.products li.product a .img img, .common_product_list ul.products[class*=columns-] li.product a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transition: transform 0.4s;
  margin: 0;
}
.common_product_list ul.products li.product a .text_box, .common_product_list ul.products[class*=columns-] li.product a .text_box {
  padding: 0 6px;
}
.common_product_list ul.products li.product a .text_box .ttl, .common_product_list ul.products[class*=columns-] li.product a .text_box .ttl {
  padding: 0;
  margin-top: 15px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.common_product_list ul.products li.product a .text_box .price, .common_product_list ul.products[class*=columns-] li.product a .text_box .price {
  padding: 0;
  margin-top: 10px;
  margin-bottom: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #e25353;
}
.common_product_list ul.products li.product a .text_box .price del, .common_product_list ul.products[class*=columns-] li.product a .text_box .price del {
  margin-right: 8px;
  font-weight: 500;
  color: #999;
}
.common_product_list ul.products li.product a .text_box .price ins, .common_product_list ul.products[class*=columns-] li.product a .text_box .price ins {
  text-decoration: none;
}
.common_product_list ul.products li.product a .text_box .price .woocommerce-price-suffix, .common_product_list ul.products[class*=columns-] li.product a .text_box .price .woocommerce-price-suffix {
  font-size: 13px;
  font-weight: 500;
  color: #232121;
}
.common_product_list ul.products li.product a:hover .img img, .common_product_list ul.products[class*=columns-] li.product a:hover .img img {
  transform: scale(1.06);
}
.common_product_list section.related.products > h2 {
  margin-bottom: 44px;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}

.woocommerce-pagination {
  margin-top: 70px;
}
.woocommerce-pagination ul.page-numbers {
  display: flex;
  justify-content: center;
  gap: 0 10px;
  border: 0;
}
.woocommerce-pagination ul.page-numbers li {
  border: 0;
  float: none;
}
.woocommerce-pagination ul.page-numbers li a, .woocommerce-pagination ul.page-numbers li span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid #e25353;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #e25353;
  background-color: #fff;
}
.woocommerce-pagination ul.page-numbers li span.current, .woocommerce-pagination ul.page-numbers li a:hover {
  background-color: #e25353;
  color: #fff;
}

.woocommerce-notices-wrapper .woocommerce-message, .woocommerce-notices-wrapper .woocommerce-info, .woocommerce-notices-wrapper .woocommerce-error {
  margin-bottom: 40px;
  padding: 18px 24px;
  border: 0;
  border-left: 4px solid #e25353;
  border-radius: 10px;
  background-color: #fff;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.6;
  color: #232121;
}
.woocommerce-notices-wrapper .woocommerce-message::before, .woocommerce-notices-wrapper .woocommerce-info::before, .woocommerce-notices-wrapper .woocommerce-error::before {
  display: none;
}
.woocommerce-notices-wrapper .woocommerce-message .button, .woocommerce-notices-wrapper .woocommerce-info .button, .woocommerce-notices-wrapper .woocommerce-error .button {
  margin-left: 20px;
}

#page_shop .common_page_wrap {
  padding: 86px 0 160px;
}
#page_shop .deco {
  position: absolute;
  line-height: 1;
  pointer-events: none;
}
#page_shop .deco img {
  width: 100%;
}
#page_shop .lead_sec .deco1 {
  left: calc(50% - 720px + 371px);
  top: -50px;
  width: 77px;
}
#page_shop .lead_sec .deco2 {
  left: calc(50% - 720px + 962px);
  top: 83px;
  width: 45px;
}
#page_shop .lead_sec .cont {
  text-align: center;
}
#page_shop .lead_sec .cont .copy {
  font-size: 34px;
  font-weight: 900;
  line-height: 1.53;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_shop .lead_sec .cont .text {
  margin-top: 17px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_shop .list_sec {
  margin-top: 50px;
}
#page_shop .list_sec .cat_nav {
  margin-bottom: 50px;
}
#page_shop .list_sec .cat_nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 12px;
}
#page_shop .list_sec .cat_nav ul li a {
  display: block;
  padding: 0 24px;
  border: 1px solid #e25353;
  border-radius: 100vmax;
  background-color: #fff;
  font-size: 15px;
  font-weight: 700;
  line-height: 2.8;
  letter-spacing: 0.04em;
  color: #e25353;
  transition: background-color 0.3s, color 0.3s;
}
#page_shop .list_sec .cat_nav ul li.current a, #page_shop .list_sec .cat_nav ul li a:hover {
  background-color: #e25353;
  color: #fff;
}
#page_shop .list_sec .no_products {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
  text-align: center;
}

#page_product .common_page_wrap {
  padding: 86px 0 160px;
}
#page_product .main_sec .product_block {
  display: flex;
  align-items: flex-start;
  gap: 0 60px;
}
#page_product .main_sec .product_block .gallery_block {
  flex-shrink: 0;
  width: 560px;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery {
  width: 100%;
  margin: 0;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
  margin: 0;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .woocommerce-product-gallery__image {
  overflow: hidden;
  border-radius: 20px;
  border: 3px solid #fe9192;
  background-color: #fff;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .woocommerce-product-gallery__image img {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs li {
  float: none;
  width: 104px;
  overflow: hidden;
  border-radius: 10px;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs li img {
  opacity: 0.6;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs li img.flex-active, #page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs li img:hover {
  opacity: 1;
}
#page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
  top: 16px;
  right: 16px;
}
#page_product .main_sec .product_block .text_block {
  flex-grow: 1;
  padding-top: 10px;
}
#page_product .main_sec .product_block .text_block .cat {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_product .main_sec .product_block .text_block .cat a {
  color: #e25353;
}
#page_product .main_sec .product_block .text_block .cat .sep {
  margin: 0 8px;
}
#page_product .main_sec .product_block .text_block .ttl {
  margin-top: 14px;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_product .main_sec .product_block .text_block .price {
  margin-top: 20px;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
  color: #e25353;
}
#page_product .main_sec .product_block .text_block .price del {
  margin-right: 10px;
  font-size: 22px;
  font-weight: 500;
  color: #999;
}
#page_product .main_sec .product_block .text_block .price ins {
  text-decoration: none;
}
#page_product .main_sec .product_block .text_block .price .woocommerce-price-suffix {
  font-size: 14px;
  font-weight: 500;
  color: #232121;
}
#page_product .main_sec .product_block .text_block .short_desc {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_product .main_sec .product_block .text_block .short_desc p + p {
  margin-top: 0.6em;
}
#page_product .main_sec .product_block .text_block .cart_block {
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px dashed #e0d5cf;
}
#page_product .main_sec .product_block .text_block .cart_block form.cart {
  display: flex;
  align-items: center;
  gap: 0 16px;
  margin: 0;
}
#page_product .main_sec .product_block .text_block .cart_block form.cart .quantity {
  float: none;
  margin: 0;
}
#page_product .main_sec .product_block .text_block .cart_block form.cart .quantity .qty {
  width: 90px;
  height: 60px;
  padding: 0 10px;
  border: 1px solid #d9cfc9;
  border-radius: 10px;
  background-color: #fff;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  color: #232121;
}
#page_product .main_sec .product_block .text_block .cart_block form.cart .single_add_to_cart_button {
  float: none;
  width: 320px;
  height: 60px;
  margin: 0;
  padding: 0 30px;
  border: 2px solid #e25353;
  border-radius: 100vmax;
  background-color: #e25353;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #fff;
  transition: background-color 0.3s, color 0.3s;
}
#page_product .main_sec .product_block .text_block .cart_block form.cart .single_add_to_cart_button:hover {
  background-color: #fff;
  color: #e25353;
}
#page_product .main_sec .product_block .text_block .cart_block .stock {
  margin-top: 14px;
  font-size: 14px;
  font-weight: 500;
  color: #232121;
}
#page_product .main_sec .product_block .text_block .cart_block .stock.out-of-stock {
  color: #e25353;
}
#page_product .main_sec .desc_block {
  margin-top: 90px;
}
#page_product .main_sec .desc_block .sub_ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 14px;
  font-size: 28px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_product .main_sec .desc_block .sub_ttl .lotus {
  width: 47px;
  line-height: 1;
}
#page_product .main_sec .desc_block .sub_ttl .lotus img {
  width: 100%;
}
#page_product .main_sec .desc_block .sub_ttl .lotus + .label + .lotus {
  transform: scaleX(-1);
}
#page_product .main_sec .desc_block .desc {
  width: 860px;
  margin: 30px auto 0;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_product .main_sec .desc_block .desc p + p, #page_product .main_sec .desc_block .desc p + ul, #page_product .main_sec .desc_block .desc ul + p {
  margin-top: 1em;
}
#page_product .main_sec .desc_block .desc h2, #page_product .main_sec .desc_block .desc h3 {
  margin-top: 1.6em;
  font-weight: 700;
}
#page_product .main_sec .desc_block .desc h2 {
  font-size: 22px;
}
#page_product .main_sec .desc_block .desc h3 {
  font-size: 18px;
}
#page_product .main_sec .desc_block .desc img {
  max-width: 100%;
  height: auto;
  border-radius: 20px;
}
#page_product .main_sec .line_note {
  width: 860px;
  margin: 40px auto 0;
  padding: 20px 28px;
  border-radius: 12px;
  background-color: #fff;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_product .related_sec {
  margin-top: 130px;
}
#page_product .related_sec .common_btn {
  margin-top: 60px;
}
#page_product .related_sec .common_btn a {
  width: 300px;
  margin: 0 auto;
}

/* カート・お会計・マイアカウント(固定ページのショートコード) */
#page_wc .common_page_wrap {
  padding: 86px 0 160px;
}
#page_wc .woocommerce {
  display: flow-root;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_wc .woocommerce a {
  color: #e25353;
}
#page_wc .woocommerce h2, #page_wc .woocommerce h3 {
  margin: 0 0 20px;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #232121;
}
#page_wc .woocommerce .button, #page_wc .woocommerce button.button, #page_wc .woocommerce a.button, #page_wc .woocommerce input.button, #page_wc .woocommerce #place_order, #page_wc .woocommerce .checkout-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 0 32px;
  border: 2px solid #e25353;
  border-radius: 100vmax;
  background-color: #e25353;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #fff;
  transition: background-color 0.3s, color 0.3s;
}
#page_wc .woocommerce .button:hover, #page_wc .woocommerce button.button:hover, #page_wc .woocommerce a.button:hover, #page_wc .woocommerce input.button:hover, #page_wc .woocommerce #place_order:hover, #page_wc .woocommerce .checkout-button:hover {
  background-color: #fff;
  color: #e25353;
}
#page_wc .woocommerce .button:disabled, #page_wc .woocommerce .button.disabled, #page_wc .woocommerce button.button:disabled, #page_wc .woocommerce button.button.disabled, #page_wc .woocommerce a.button:disabled, #page_wc .woocommerce a.button.disabled, #page_wc .woocommerce input.button:disabled, #page_wc .woocommerce input.button.disabled, #page_wc .woocommerce #place_order:disabled, #page_wc .woocommerce #place_order.disabled, #page_wc .woocommerce .checkout-button:disabled, #page_wc .woocommerce .checkout-button.disabled {
  opacity: 0.5;
  color: #fff;
  background-color: #e25353;
}
#page_wc .woocommerce .checkout-button, #page_wc .woocommerce #place_order {
  width: 100%;
  font-size: 18px;
  min-height: 64px;
}
#page_wc .woocommerce table.shop_table {
  border: 0;
  border-radius: 0;
  border-collapse: collapse;
}
#page_wc .woocommerce table.shop_table th, #page_wc .woocommerce table.shop_table td {
  padding: 18px 14px;
  border: 0;
  border-bottom: 1px solid #eadfd9;
  font-size: 16px;
  vertical-align: middle;
}
#page_wc .woocommerce table.shop_table th {
  font-weight: 700;
}
#page_wc .woocommerce table.shop_table thead th {
  border-bottom: 2px solid #e25353;
}
#page_wc .woocommerce table.shop_table td.product-thumbnail img {
  width: 90px;
  border-radius: 10px;
}
#page_wc .woocommerce table.shop_table td.product-name a {
  font-weight: 700;
  color: #232121;
}
#page_wc .woocommerce table.shop_table td.product-remove a.remove {
  width: 28px;
  height: 28px;
  border: 1px solid #ccc;
  border-radius: 50%;
  font-size: 18px;
  line-height: 1.4;
  color: #999 !important;
}
#page_wc .woocommerce table.shop_table td.product-remove a.remove:hover {
  background-color: #e25353;
  border-color: #e25353;
  color: #fff !important;
}
#page_wc .woocommerce table.shop_table .quantity .qty {
  width: 70px;
  height: 44px;
  padding: 0 6px;
  border: 1px solid #d9cfc9;
  border-radius: 8px;
  text-align: center;
}
#page_wc .woocommerce table.shop_table td.actions {
  padding-top: 24px;
}
#page_wc .woocommerce table.shop_table td.actions .coupon {
  display: flex;
  align-items: center;
  gap: 0 10px;
}
#page_wc .woocommerce table.shop_table td.actions .coupon .input-text {
  width: 200px !important;
  height: 48px;
  padding: 0 14px;
  border: 1px solid #d9cfc9;
  border-radius: 8px;
}
#page_wc .woocommerce .cart-collaterals .cart_totals {
  width: 48%;
}
#page_wc .woocommerce .cart-collaterals .cart_totals > h2 {
  font-size: 22px;
}
#page_wc .woocommerce .cart-collaterals .cart_totals table.shop_table th {
  width: 40%;
}
#page_wc .woocommerce .cart-collaterals .cart_totals .woocommerce-shipping-destination {
  font-size: 14px;
}
#page_wc .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout {
  padding: 30px 0 0;
}
#page_wc .woocommerce form .form-row {
  margin-bottom: 14px;
}
#page_wc .woocommerce form .form-row label {
  font-size: 14px;
  font-weight: 700;
}
#page_wc .woocommerce form .form-row label .required {
  color: #e25353;
  text-decoration: none;
}
#page_wc .woocommerce form .form-row input.input-text, #page_wc .woocommerce form .form-row textarea, #page_wc .woocommerce form .form-row select, #page_wc .woocommerce form .form-row .select2-container .select2-selection--single {
  height: 50px;
  padding: 0 14px;
  border: 1px solid #d9cfc9;
  border-radius: 8px;
  background-color: #fff;
  font-size: 16px;
  line-height: 48px;
  color: #232121;
}
#page_wc .woocommerce form .form-row textarea {
  height: 120px;
  padding: 12px 14px;
  line-height: 1.6;
}
#page_wc .woocommerce form .form-row .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 48px;
  padding-left: 0;
}
#page_wc .woocommerce form .form-row .select2-container .select2-selection--single .select2-selection__arrow {
  height: 48px;
}
#page_wc .woocommerce form.checkout {
  display: flow-root;
}
#page_wc .woocommerce form.checkout .col2-set {
  width: 56%;
  float: left;
}
#page_wc .woocommerce form.checkout .col2-set .col-1, #page_wc .woocommerce form.checkout .col2-set .col-2 {
  float: none;
  width: 100%;
}
#page_wc .woocommerce form.checkout .col2-set .col-2 {
  margin-top: 30px;
}
#page_wc .woocommerce form.checkout #order_review_heading, #page_wc .woocommerce form.checkout #order_review {
  float: right;
  width: 40%;
}
#page_wc .woocommerce form.checkout #order_review {
  padding: 30px;
  border-radius: 20px;
  background-color: #fff;
}
#page_wc .woocommerce form.checkout #order_review table.shop_table th, #page_wc .woocommerce form.checkout #order_review table.shop_table td {
  padding: 12px 6px;
}
#page_wc .woocommerce form.checkout #payment {
  margin-top: 24px;
  border-radius: 10px;
  background-color: #fbf3ef;
}
#page_wc .woocommerce form.checkout #payment ul.payment_methods {
  padding: 20px;
  border-bottom: 1px solid #eadfd9;
}
#page_wc .woocommerce form.checkout #payment ul.payment_methods li {
  font-size: 15px;
  font-weight: 700;
}
#page_wc .woocommerce form.checkout #payment ul.payment_methods li .payment_box {
  margin-top: 10px;
  border-radius: 8px;
  background-color: #fff;
  font-size: 14px;
  font-weight: 500;
}
#page_wc .woocommerce form.checkout #payment ul.payment_methods li .payment_box::before {
  border-bottom-color: #fff;
}
#page_wc .woocommerce form.checkout #payment .place-order {
  padding: 20px;
}
#page_wc .woocommerce form.checkout #payment .place-order .woocommerce-privacy-policy-text {
  margin: 0 0 16px;
}
#page_wc .woocommerce form.checkout #payment div.form-row {
  padding: 0;
}
#page_wc .woocommerce form.checkout .woocommerce-privacy-policy-text {
  font-size: 13px;
}
#page_wc .woocommerce form.checkout .order_notes_note {
  margin: 10px 0 0;
  font-size: 14px;
  line-height: 1.7;
}
#page_wc .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info, #page_wc .woocommerce .woocommerce-form-login-toggle .woocommerce-info {
  border: 0;
  border-left: 4px solid #e25353;
  border-radius: 10px;
  background-color: #fff;
  color: #232121;
}
#page_wc .woocommerce .woocommerce-form-coupon-toggle .woocommerce-info::before, #page_wc .woocommerce .woocommerce-form-login-toggle .woocommerce-info::before {
  display: none;
}
#page_wc .woocommerce .woocommerce-thankyou-order-received {
  font-size: 22px;
  font-weight: 900;
  color: #e25353;
}
#page_wc .woocommerce ul.order_details {
  padding: 24px;
  border-radius: 10px;
  background-color: #fff;
}
#page_wc .woocommerce .return-to-shop {
  text-align: center;
}
#page_wc .woocommerce .cart-empty {
  text-align: center;
}
#page_wc .woocommerce .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 10px 14px;
  border-radius: 8px;
  font-weight: 700;
  color: #232121;
}
#page_wc .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a, #page_wc .woocommerce .woocommerce-MyAccount-navigation ul li a:hover {
  background-color: #fff;
  color: #e25353;
}

/* 共通設定 */
.breadcrumb.single {
  margin-top: 70px;
}

.common_page_wrap {
  padding: 110px 0 180px;
}

.common_single_wrap {
  padding: 100px 0 0;
}

.not_found .text {
  text-align: center;
}

.reserve_text {
  text-align: center;
  font-size: 30px;
}

/* 個人情報保護方針 */
.privacy_cont_sec .main_text {
  font-size: 16px;
  letter-spacing: 0.07em;
  font-weight: 400;
  line-height: 1.8;
  margin-block: 0 40px;
}

.privacy_cont_sec dl + dl {
  margin-block: 40px 0;
}

.privacy_cont_sec dl dt {
  font-size: 18px;
  letter-spacing: 0.07em;
  font-weight: 700;
  line-height: 1.5;
  border-bottom: 1px dotted #707070;
  padding-block: 0 0.6em;
  margin-block: 0 0.8em;
}

.privacy_cont_sec dl dd {
  font-size: 14px;
  letter-spacing: 0.07em;
  font-weight: 400;
}

/* PC固定ページ 404ページ */
#page_404 {
  text-align: center;
}

#page_404 .num {
  font-size: 100px;
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: blackscale;
}

#page_404 .text {
  margin-bottom: 1em;
  font-size: 16px;
}

/* wp-pagenavi base */
.wp-pagenavi {
  clear: both;
  text-align: center;
  margin-top: 70px;
}

.wp-pagenavi a,
.wp-pagenavi span {
  color: #999;
  background-color: #FFF;
  border: solid 1px #e0e0d2;
  padding: 8px 15px !important;
  margin: 0 2px;
  border-radius: 3px;
  transition: 0.2s ease-in-out;
  text-align: center;
  text-decoration: none;
}

.wp-pagenavi a:hover {
  color: #FFF;
  background-color: #b63030;
  border-color: #b63030 !important;
}

.wp-pagenavi .current {
  color: #FFF;
  background-color: #b63030;
  border-color: #b63030 !important;
  font-weight: bold;
}

.common_form_main {
  padding-top: 0;
}

.common_form_page {
  padding: 200px 0 150px;
}
.common_form_page .container {
  flex-wrap: nowrap;
  align-items: flex-start;
}
.common_form_page .container .text_block {
  position: sticky;
  top: 50px;
  left: 0;
  flex-grow: 1;
}
.common_form_page .container .text_block .top_text_box .ttl {
  font-size: 36px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.4;
  margin-bottom: 25px;
}
.common_form_page .container .text_block .top_text_box .text {
  font-size: 16px;
  letter-spacing: 0.06em;
  line-height: 1.7;
}
.common_form_page .container .text_block .top_text_box .text a {
  color: #232121;
  text-decoration: underline;
  margin: 0 2px;
}
.common_form_page .container .text_block .top_text_box .text + .text {
  margin-top: 15px;
}
.common_form_page .container .text_block .form_guide_box {
  margin-top: 40px;
}
.common_form_page .container .text_block .form_guide_box .ttl {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 5px;
  border-bottom: 1px solid #F5F5F5;
}
.common_form_page .container .text_block .form_guide_box .img_list {
  margin-top: 15px;
}
.common_form_page .container .text_block .form_guide_box .img_list ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}
.common_form_page .container .text_block .form_guide_box .img_list ul li img {
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}
.common_form_page .container .text_block .thum_box {
  display: flex;
  gap: 0 30px;
}
.common_form_page .container .text_block .thum_box .text_box {
  flex-grow: 1;
}
.common_form_page .container .text_block .thum_box .text_box .cont_list {
  margin-top: 15px;
}
.common_form_page .container .text_block .thum_box .text_box .cont_list ul li + li {
  margin-top: 10px;
}
.common_form_page .container .text_block .thum_box .text_box .cont_list ul li {
  font-size: 14px;
  display: flex;
  align-items: center;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1;
}
.common_form_page .container .text_block .thum_box .text_box .cont_list ul li::before {
  content: "";
  margin-right: 10px;
  display: block;
  flex-shrink: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #b63030;
}
.common_form_page .container .text_block .thum_box .thum {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 35%;
  border: 1px solid #F5F5F5;
  border-radius: 10px;
  overflow: hidden;
  padding: 15px;
}
.common_form_page .container .text_block .thum_box .thum img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.common_form_page .container .form_cont {
  flex-shrink: 0;
  width: 50%;
  margin-left: 50px;
  padding: 45px 25px;
  background-color: #f7f7f7;
  border: 1px solid #F5F5F5;
  border-radius: 20px;
}
.common_form_page .container .form_cont .form_wrap .wp-block-table {
  overflow: visible;
}
.common_form_page .container .form_cont .form_wrap table,
.common_form_page .container .form_cont .form_wrap th,
.common_form_page .container .form_cont .form_wrap td {
  border: none;
  padding: 0;
}
.common_form_page .container .form_cont .form_wrap .form_box {
  margin-bottom: 30px;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li + li {
  margin-top: 25px;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .label {
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 8px;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .label .hissu {
  color: red;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box input[type=text] {
  width: 100%;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #E3E3E3;
  padding: 12px 15px;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box input[type=text]::-moz-placeholder {
  font-size: 14px;
  letter-spacing: 0.05em;
  color: #B5B5B5;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box input[type=text]::placeholder {
  font-size: 14px;
  letter-spacing: 0.05em;
  color: #B5B5B5;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box.select_box {
  position: relative;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box.select_box::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(45deg);
  border-color: transparent #C7C4C4 #C7C4C4 transparent;
  border-width: 2px;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box.select_box select {
  height: 44px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  background: #FAFAFA;
  border: 1px solid #E3E3E3;
  border-radius: 4px;
  font-size: 14px;
  letter-spacing: 0.08em;
  font-weight: 400;
  padding: 0.6em 1em;
  color: #B5B5B5;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box.select_box select.empty {
  color: #231815;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box textarea {
  width: 100%;
  background-color: #fff;
  border-radius: 4px;
  border: 1px solid #E3E3E3;
  padding: 15px;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box textarea::-moz-placeholder {
  font-size: 14px;
  letter-spacing: 0.05em;
  color: #B5B5B5;
}
.common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box textarea::placeholder {
  font-size: 14px;
  letter-spacing: 0.05em;
  color: #B5B5B5;
}
.common_form_page .container .form_cont .form_wrap .btn {
  width: 100%;
}
.common_form_page .container .form_cont .form_wrap .btn button {
  width: 100%;
  line-height: 3.9;
  background-color: #b63030;
  border-radius: 6px;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.03em;
  color: #ffffff;
  box-shadow: 0 6px #862323;
  transition: 0.3s;
}
.common_form_page .container .form_cont .form_wrap .btn button:hover {
  transform: translateY(6px);
  box-shadow: none;
}
.common_form_page .container .form_cont .form_wrap button[name=submitBack] {
  background: #272625;
  margin-top: 20px;
  box-shadow: 0 6px #000000;
}
.common_form_page .container .form_cont .form_wrap .thanks_text_box .ttl {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 1;
  margin-bottom: 18px;
}
.common_form_page .container .form_cont .form_wrap .thanks_text_box .text {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.7;
}
.common_form_page .container .form_cont .form_wrap .thanks_text_box .text a {
  color: #353536;
  text-decoration: underline;
}
.common_form_page .container .form_cont .form_wrap .thanks_text_box .text + .text {
  margin-top: 10px;
}

.mwform-checkbox-field input,
.mwform-radio-field input {
  display: none;
}

.data_box.check_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 15px;
}

.radio_btns {
  display: flex;
  gap: 0 15px;
}
.radio_btns input[type=radio].radio_btns__item {
  display: none;
}
.radio_btns label {
  display: inline-block;
}
.radio_btns .radio_btns__item + span {
  padding-left: 1.8em;
  display: inline-block;
  position: relative;
  font-size: 14px;
  letter-spacing: 0.03em;
}
.radio_btns .radio_btns__item + span::after, .radio_btns .radio_btns__item + span::before {
  content: "";
  display: block;
  position: absolute;
  background-color: #ccc;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.radio_btns .radio_btns__item + span::after {
  width: 12px;
  height: 12px;
  top: 0;
  left: 4px;
  border: none;
  background: #fff;
  transform: scale(0);
  transition: all 0.3s;
}
.radio_btns .radio_btns__item:checked + span::before {
  background-color: #b63030;
}
.radio_btns .radio_btns__item:checked + span::after {
  transform: scale(1);
}

.radio-btns input[type=radio].radio-btns__item {
  display: none;
}
.radio-btns label {
  display: inline-block;
}
.radio-btns .radio-btns__item + span {
  padding-left: 2em;
  display: inline-block;
  position: relative;
}
.radio-btns .radio-btns__item + span:after, .radio-btns .radio-btns__item + span:before {
  content: "";
  display: block;
  position: absolute;
  border: 1px solid #aaa;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
}
.radio-btns .radio-btns__item + span:after {
  width: 14px;
  height: 14px;
  top: 3px;
  left: 3px;
  border: none;
  background: #f18800;
  transform: scale(0);
  transition: all 0.3s;
}
.radio-btns .radio-btns__item:checked + span {
  color: #f18800;
}
.radio-btns .radio-btns__item:checked + span:after {
  transform: scale(1);
}

section#page-contact input[type=checkbox] {
  display: none;
}

.mwform-checkbox-field-text {
  display: inline-block;
  position: relative;
  padding-left: 28px;
  font-size: 14px;
}
.mwform-checkbox-field-text:before, .mwform-checkbox-field-text:after {
  content: "";
  position: absolute;
  display: block;
}
.mwform-checkbox-field-text:before {
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 2px;
  width: 20px;
  height: 20px;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.mwform-checkbox-field-text:after {
  border-width: 3px;
  border-color: transparent transparent #f18800 #f18800;
  border-style: solid;
  width: 20px;
  height: 10px;
  margin-top: -0.2em;
  top: 50%;
  left: 0;
  transform: translateY(-50%) rotate(-45deg);
  opacity: 0;
}

input[type=checkbox]:checked + .mwform-checkbox-field-text:after {
  opacity: 1;
}

/* MW WP Form 共通 */
.mw_wp_form .vertical-item + .vertical-item {
  margin-top: 0;
}
.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0;
}
.mw_wp_form .horizontal-item {
  display: inline-block;
}

#sidebar {
  width: 310px;
}
#sidebar .block + .block {
  margin-top: 30px;
}
#sidebar .common_link_box {
  margin-bottom: 50px;
}
#sidebar .block .top_ttl {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.03em;
  position: relative;
  padding-bottom: 10px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 25px;
}
#sidebar .block .top_ttl::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 30%;
  height: 1px;
  background-color: #b63030;
}
#sidebar .block .ranking_list ul li + li {
  margin-top: 25px;
}
#sidebar .block .ranking_list ul li:first-child a .ranking_box {
  background-color: #f7d305;
  background-image: linear-gradient(to top left, #f7bf05, #fcea7f, #fcd700, #f7d305, #eaca12, #ac9303, #f7d305, #fcea7f, #f7e705, #eaca12, #f7bf05);
}
#sidebar .block .ranking_list ul li:nth-child(2) a .ranking_box {
  background-color: #a5a5a5;
  background-image: linear-gradient(to top left, #a5a5a5, #e5e5e5, #ae9c9c, #a5a5a5, #a5a5a5, #7f7f7f, #a5a5a5, #e5e5e5, #a5a5a5, #a5a5a5, #a5a5a5);
}
#sidebar .block .ranking_list ul li:nth-child(3) a .ranking_box {
  background-color: #c47222;
  background-image: linear-gradient(to top left, #c46522, #e8b27d, #d07217, #c47222, #b9722e, #834c17, #c47222, #e8b27d, #c48022, #b9722e, #c46522);
}
#sidebar .block .ranking_list ul li a {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0 11px;
}
#sidebar .block .ranking_list ul li a .ranking_box {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 24px;
  text-align: center;
  background-color: #3c3c3c;
  background-image: repeating-linear-gradient(-45deg, hsla(0, 0%, 100%, 0.1), hsla(0, 0%, 100%, 0.1) 6px, transparent 0, transparent 12px);
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
}
#sidebar .block .ranking_list ul li a .ranking_box .num {
  font-size: 14px;
  color: #fff;
  line-height: 1.7;
}
#sidebar .block .ranking_list ul li a .img {
  flex-shrink: 0;
  width: 40%;
  aspect-ratio: 16/9;
  line-height: 1;
  overflow: hidden;
}
#sidebar .block .ranking_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.3s;
}
#sidebar .block .ranking_list ul li a .text_box .ttl {
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #231815;
}
#sidebar .block .ranking_list ul li a:hover .img img {
  transform: scale(1.1);
}
#sidebar .block .voice_list ul li + li {
  margin-top: 25px;
}
#sidebar .block .voice_list ul li a {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0 11px;
}
#sidebar .block .voice_list ul li a .img {
  flex-shrink: 0;
  width: 40%;
  aspect-ratio: 16/9;
  line-height: 1;
  overflow: hidden;
}
#sidebar .block .voice_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.3s;
}
#sidebar .block .voice_list ul li a .text_box .date {
  font-size: 11px;
  letter-spacing: 0.03em;
  line-height: 1;
  color: #232121;
  margin-bottom: 7px;
}
#sidebar .block .voice_list ul li a .text_box .ttl {
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #232121;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
#sidebar .block .voice_list ul li a:hover .img img {
  transform: scale(1.1);
}
#sidebar .block .case_list ul li + li {
  margin-top: 25px;
}
#sidebar .block .case_list ul li a {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0 11px;
}
#sidebar .block .case_list ul li a .img {
  flex-shrink: 0;
  width: 40%;
  aspect-ratio: 16/9;
  line-height: 1;
  overflow: hidden;
}
#sidebar .block .case_list ul li a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.3s;
}
#sidebar .block .case_list ul li a .text_box .ttl {
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #232121;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
#sidebar .block .case_list ul li a:hover .img img {
  transform: scale(1.1);
}
#sidebar .block .link_list ul li {
  border-bottom: 1px solid #ccc;
}
#sidebar .block .link_list ul li a {
  display: flex;
  align-items: center;
  gap: 0 10px;
  padding: 12px 0;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.5;
  color: #232121;
  transition: color 0.3s;
}
#sidebar .block .link_list ul li a::before {
  content: "";
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #e25353;
  border-right: 1px solid #e25353;
  transform: rotate(45deg);
}
#sidebar .block .link_list ul li a:hover {
  color: #e25353;
}

/* 準備中 */
.sorry_sec .text_box .text {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.sorry_sec .text_box .text + .text {
  margin-top: 15px;
}
.sorry_sec .text_box .common_btn {
  margin: 30px auto 0;
}

.single_page_wrap {
  padding-top: 160px;
  padding-bottom: 120px;
  margin-bottom: 0;
}
.single_page_wrap #sidebar .wp-block-latest-posts a {
  color: #232121;
  text-decoration: underline;
}
.single_page_wrap .related_store_block {
  margin-top: 80px;
}
.single_page_wrap .related_store_block .label {
  padding-left: 20px;
  border-left: 2px solid;
  font-size: 20px;
  letter-spacing: 0.08em;
  line-height: 1;
  margin-bottom: 30px;
}
.single_page_wrap .related_store_block .box a {
  display: flex;
  align-items: center;
  gap: 0 35px;
}
.single_page_wrap .related_store_block .box a:hover .img img {
  transform: scale(1.05);
}
.single_page_wrap .related_store_block .box a:hover .text_box .name {
  color: #f8f3f0;
}
.single_page_wrap .related_store_block .box a .img {
  flex-shrink: 0;
  width: 220px;
  aspect-ratio: 4/3;
  border-radius: 8px;
  overflow: hidden;
}
.single_page_wrap .related_store_block .box a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.3s;
}
.single_page_wrap .related_store_block .box a .text_box {
  flex-grow: 1;
}
.single_page_wrap .related_store_block .box a .text_box .cat {
  font-size: 13px;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #f8f3f0;
  margin-bottom: 18px;
}
.single_page_wrap .related_store_block .box a .text_box .name {
  font-size: 22px;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #232121;
  transition: 0.3s;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 20px;
}
.single_page_wrap .related_store_block .box a .text_box .text {
  font-size: 13px;
  font-weight: normal;
  letter-spacing: 0.08em;
  line-height: 1.8;
  color: #41454B;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.single_page_wrap .related_event_block {
  margin-top: 80px;
}
.single_page_wrap .related_event_block .label {
  padding-left: 20px;
  border-left: 2px solid;
  font-size: 20px;
  letter-spacing: 0.08em;
  line-height: 1;
  margin-bottom: 30px;
}
.single_page_wrap .related_event_block .box a {
  display: flex;
  align-items: center;
  gap: 0 35px;
}
.single_page_wrap .related_event_block .box a:hover .img img {
  transform: scale(1.05);
}
.single_page_wrap .related_event_block .box a:hover .text_box .name {
  color: #f8f3f0;
}
.single_page_wrap .related_event_block .box a .img {
  flex-shrink: 0;
  width: 220px;
  aspect-ratio: 4/3;
  border-radius: 8px;
  overflow: hidden;
  background-color: #DEE8F5;
}
.single_page_wrap .related_event_block .box a .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transition: 0.3s;
}
.single_page_wrap .related_event_block .box a .text_box {
  flex-grow: 1;
}
.single_page_wrap .related_event_block .box a .text_box .name {
  font-size: 22px;
  letter-spacing: 0.08em;
  line-height: 1.5;
  color: #232121;
  transition: 0.3s;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 20px;
}
.single_page_wrap .related_event_block .box a .text_box .date {
  font-size: 13px;
  font-weight: normal;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #b63030;
}

/* 選ばれる理由 */
/* 花咲幸絵について: 漫画のモーダル(Modaal。body 直下に出るのでページの外) */
.manga_modaal .modaal-container {
  width: 90%;
  max-width: 1000px;
  border-radius: 20px;
}
.manga_modaal .modaal-content-container {
  padding: 50px 60px 40px;
}
.manga_modaal .manga_ttl {
  font-size: 24px;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  color: #232121;
}
.manga_modaal .manga_slider_wrap {
  margin-top: 24px;
}
.manga_modaal .manga_slider li img {
  width: 100%;
  height: auto;
}
.manga_modaal .manga_slider .slick-prev, .manga_modaal .manga_slider .slick-next {
  z-index: 1;
  width: 44px;
  height: 44px;
}
.manga_modaal .manga_slider .slick-prev::before, .manga_modaal .manga_slider .slick-next::before {
  font-size: 32px;
  color: #e25353;
  opacity: 1;
}
.manga_modaal .manga_slider .slick-prev {
  left: -52px;
}
.manga_modaal .manga_slider .slick-next {
  right: -52px;
}
.manga_modaal .manga_slider .slick-dots {
  position: static;
  margin-top: 16px;
}
.manga_modaal .manga_slider .slick-dots li button::before {
  font-size: 10px;
  color: #e25353;
}
.manga_modaal .manga_note {
  margin-top: 12px;
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
  color: #666;
}

@media (max-width: 750px) {
  .wrap, .wrap02, .wrap03 {
    max-width: 90%;
  }
  body {
    font-size: 3.6vw;
  }
  /* ヘッダー */
  #sp_header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 997;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.05);
  }
  #sp_header .inner .cont {
    display: flex;
    align-items: center;
    height: 70px;
    padding: 0 5.13vw 0 2.56vw;
  }
  #sp_header .inner .cont .logo {
    display: block;
    flex-shrink: 0;
    width: 33.59vw;
    line-height: 1;
  }
  #sp_header .inner .cont .logo img {
    width: 100%;
  }
  #sp_header .inner .cont .ham_btn {
    flex-shrink: 0;
    margin-left: auto;
    width: 11.79vw;
    height: 11.79vw;
    background-color: #fff;
    border: 2px solid #fd858d;
    border-radius: 50%;
    cursor: pointer;
  }
  #sp_header .inner .cont .ham_btn span {
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
    width: 4.62vw;
    height: 2px;
    background-color: #fd858d;
    transition: 0.3s;
  }
  #sp_header .inner .cont .ham_btn span:first-child {
    transform: translateY(-1.54vw);
  }
  #sp_header .inner .cont .ham_btn span:nth-child(2) {
    transform: translateY(0);
  }
  #sp_header .inner .cont .ham_btn span:last-child {
    transform: translateY(1.54vw);
  }
  #sp_header .inner .cont .ham_btn.active span:first-child {
    transform: rotate(36deg);
  }
  #sp_header .inner .cont .ham_btn.active span:nth-child(2) {
    opacity: 0;
  }
  #sp_header .inner .cont .ham_btn.active span:last-child {
    transform: rotate(-36deg);
  }
  #ham_menu {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 996;
    width: 100%;
    bottom: 0;
    height: auto;
    padding-top: 29.49vw;
    background-color: #c55946;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
  }
  #ham_menu.active {
    opacity: 1;
    visibility: visible;
  }
  #ham_menu .wrap .cta_box {
    margin-bottom: 10.77vw;
  }
  #ham_menu .wrap .cta_box .en {
    font-size: 6.15vw;
    line-height: 1.45;
    color: #fff;
    text-align: center;
    margin-bottom: 3.59vw;
  }
  #ham_menu .wrap .cta_box .btn_list a {
    display: flex;
    align-items: center;
    height: 17.95vw;
    border: 1px solid #fff;
    border-radius: 100vmax;
    color: #fff;
  }
  #ham_menu .wrap .cta_box .btn_list a + a {
    margin-top: 4.1vw;
  }
  #ham_menu .wrap .cta_box .btn_list a .icon {
    flex-shrink: 0;
    line-height: 1;
  }
  #ham_menu .wrap .cta_box .btn_list a .icon svg {
    display: block;
    width: 100%;
    height: auto;
  }
  #ham_menu .wrap .cta_box .btn_list a .label {
    font-size: 4.1vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
  }
  #ham_menu .wrap .cta_box .btn_list .reserve_btn {
    padding-left: 7.44vw;
    background-color: #b63030;
  }
  #ham_menu .wrap .cta_box .btn_list .reserve_btn .icon {
    width: 6.41vw;
    margin-right: 4.62vw;
  }
  #ham_menu .wrap .cta_box .btn_list .reserve_btn .icon svg .fill {
    fill: #fff;
  }
  #ham_menu .wrap .cta_box .btn_list .line_btn {
    padding-left: 22.56vw;
    background-color: #21ad3f;
  }
  #ham_menu .wrap .cta_box .btn_list .line_btn .icon {
    width: 7.95vw;
    margin-right: 6.15vw;
  }
  #ham_menu .wrap .cta_box .btn_list .line_btn .icon svg .bg {
    fill: #06c755;
  }
  #ham_menu .wrap .cta_box .btn_list .line_btn .icon svg .balloon {
    fill: #fff;
  }
  #ham_menu .wrap .cta_box .btn_list .line_btn .icon svg .letter {
    fill: #06c755;
  }
  #ham_menu .wrap .link_cont .link_group + .link_group {
    margin-top: 10.26vw;
  }
  #ham_menu .wrap .link_cont .link_group .en {
    position: relative;
    padding-bottom: 2.05vw;
    border-bottom: 1px solid #fff;
    font-size: 4.1vw;
    line-height: 1.45;
    color: #fff;
  }
  #ham_menu .wrap .link_cont .link_group .en::after {
    content: "";
    position: absolute;
    right: 1.28vw;
    top: 2.31vw;
    width: 3.08vw;
    height: 3.08vw;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
    transform: rotate(45deg);
  }
  #ham_menu .wrap .link_cont .link_group ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4.1vw 0;
    margin-top: 5.13vw;
  }
  #ham_menu .wrap .link_cont .link_group ul li {
    line-height: 1.45;
  }
  #ham_menu .wrap .link_cont .link_group ul li a {
    display: inline-block;
    vertical-align: top;
    font-size: 3.59vw;
    font-weight: 500;
    line-height: 1.45;
    color: #fff;
  }
  #ham_menu .bottom_cont {
    position: relative;
    overflow: hidden;
    margin-top: 15.13vw;
    padding: 8.72vw 0 3.85vw;
    color: #232121;
    text-align: center;
  }
  #ham_menu .bottom_cont a {
    color: #232121;
  }
  #ham_menu .bottom_cont::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    width: 190vw;
    height: 103.33vw;
    margin-left: -95vw;
    background-color: #fff;
    border-radius: 50%;
  }
  #ham_menu .bottom_cont::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 51.5vw;
    bottom: 0;
    background-color: #fff;
  }
  #ham_menu .bottom_cont .sub_link {
    position: relative;
    z-index: 1;
  }
  #ham_menu .bottom_cont .sub_link ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  #ham_menu .bottom_cont .sub_link ul li {
    font-size: 3.08vw;
    line-height: 1.46;
    letter-spacing: 0.04em;
  }
  #ham_menu .bottom_cont .sub_link ul li + li::before {
    content: "｜";
    margin: 0 1em;
  }
  #ham_menu .bottom_cont .copy {
    position: relative;
    z-index: 1;
    margin-top: 5.64vw;
    font-size: 3.08vw;
    line-height: 1.46;
    letter-spacing: 0.04em;
  }
  .fixed_cta_block_sp {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 995;
    width: 100%;
    padding: 1.03vw 1.03vw 0;
    background-color: #fff;
    transition: 0.3s;
    opacity: 1;
    visibility: visible;
  }
  .fixed_cta_block_sp.hide {
    opacity: 0;
    visibility: hidden;
  }
  .fixed_cta_block_sp .deco {
    position: absolute;
    z-index: 1;
    line-height: 1;
    pointer-events: none;
  }
  .fixed_cta_block_sp .deco img {
    width: 100%;
  }
  .fixed_cta_block_sp .girl {
    left: 0;
    bottom: 0;
    width: 8.21vw;
  }
  .fixed_cta_block_sp .lotus {
    right: 0;
    top: 0;
    width: 14.36vw;
  }
  .fixed_cta_block_sp .cont {
    display: flex;
    gap: 0 1.03vw;
    width: 100%;
    height: 100%;
  }
  .fixed_cta_block_sp .cont .btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 50%;
    height: 17.95vw;
    border-radius: 2.56vw 2.56vw 0 0;
    color: #fff;
  }
  .fixed_cta_block_sp .cont .btn .icon {
    flex-shrink: 0;
    width: 6.15vw;
    line-height: 1;
  }
  .fixed_cta_block_sp .cont .btn .icon svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .fixed_cta_block_sp .cont .btn .label {
    margin-top: 1.28vw;
    font-size: 3.85vw;
    font-weight: 700;
    line-height: 1.33;
    letter-spacing: 0.04em;
  }
  .fixed_cta_block_sp .cont .line_btn {
    background-color: #21ad3f;
  }
  .fixed_cta_block_sp .cont .line_btn .icon svg .bg {
    fill: transparent;
  }
  .fixed_cta_block_sp .cont .line_btn .icon svg .balloon {
    fill: #fff;
  }
  .fixed_cta_block_sp .cont .line_btn .icon svg .letter {
    fill: #06c755;
  }
  .fixed_cta_block_sp .cont .reserve_btn {
    background-color: #b63030;
  }
  .fixed_cta_block_sp .cont .reserve_btn .icon svg .fill {
    fill: #fff;
  }
  /* CTA */
  .common_cta_sec {
    margin-top: 0;
    padding: 17vw 0 17.69vw;
  }
  .common_cta_sec .deco1 {
    left: 0.26vw;
    top: -1.54vw;
    width: 38.46vw;
  }
  .common_cta_sec .deco2, .common_cta_sec .deco4, .common_cta_sec .flower3, .common_cta_sec .flower4 {
    display: none;
  }
  .common_cta_sec .deco3 {
    left: auto;
    right: 2.56vw;
    bottom: 0;
    width: 26.41vw;
  }
  .common_cta_sec .deco3 img {
    transform: scaleX(-1);
  }
  .common_cta_sec .flower1 {
    left: auto;
    right: 2.56vw;
    top: 13.85vw;
    width: 7.95vw;
  }
  .common_cta_sec .deco.flower2 {
    left: auto;
    right: 8.85vw;
    top: 10.77vw;
    width: 5vw;
  }
  .common_cta_sec .cont .ttl {
    font-size: 9.23vw;
    line-height: 1.2;
    -webkit-text-stroke: 1.24vw #fff;
    margin-bottom: 4vw;
  }
  .common_cta_sec .cont .text {
    font-size: 3.59vw;
    line-height: 1.3;
    margin-bottom: 6.67vw;
  }
  .common_cta_sec .cont .btn_list {
    display: block;
    width: 100%;
  }
  .common_cta_sec .cont .btn_list a {
    box-sizing: border-box;
    width: 100%;
    height: 17.95vw;
  }
  .common_cta_sec .cont .btn_list a + a {
    margin-top: 4.1vw;
  }
  .common_cta_sec .cont .btn_list a .label {
    font-size: 4.1vw;
  }
  .common_cta_sec .cont .btn_list .reserve_btn {
    width: 100%;
    padding-left: 7.44vw;
  }
  .common_cta_sec .cont .btn_list .reserve_btn .icon {
    width: 6.41vw;
    margin-right: 4.62vw;
  }
  .common_cta_sec .cont .btn_list .line_btn {
    width: 100%;
    padding-left: 22.56vw;
  }
  .common_cta_sec .cont .btn_list .line_btn .icon {
    width: 7.95vw;
    margin-right: 6.15vw;
  }
  .common_cta_sec .cont .btn_list .reserve_btn:hover {
    background-color: #b63030;
    color: #ffffff;
    box-shadow: none;
  }
  .common_cta_sec .cont .btn_list .reserve_btn:hover .icon svg .fill {
    fill: #ffffff;
  }
  .common_cta_sec .cont .btn_list .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  .common_cta_sec.is_service .cont .single_btn a:hover {
    background-color: #b63030;
    color: #ffffff;
    box-shadow: none;
  }
  .common_cta_sec.is_service .cont .single_btn a:hover .dot {
    background-color: #ffffff;
  }
  /* フッター */
  .common_cta_sec.is_bottom {
    padding: 18vw 0 17.69vw;
  }
  .common_cta_sec.is_bottom .deco1 {
    left: 0.26vw;
    top: -1.54vw;
    width: 38.46vw;
  }
  .common_cta_sec.is_bottom .deco3 {
    left: auto;
  }
  .common_cta_sec.is_bottom .flower1 {
    left: auto;
    top: 13.33vw;
  }
  .common_cta_sec.is_bottom .flower2 {
    top: 10.26vw;
  }
  .common_cta_sec.is_bottom .cont .ttl {
    font-size: 7.18vw;
    line-height: 1.4;
    margin-bottom: 3.08vw;
  }
  .common_cta_sec.is_bottom .cont .text {
    margin-bottom: 7.69vw;
  }
  .common_cta_sec.is_bottom .cont .btn_list .line_btn {
    justify-content: center;
    padding-left: 0;
  }
  .common_cta_sec.is_bottom.is_top .cont .btn_list .line_btn {
    justify-content: flex-start;
    padding-left: 22.56vw;
  }
  #main_footer {
    padding-top: 15.38vw;
  }
  #main_footer .link_cont {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 7.18vw 12.82vw;
    margin-bottom: 9.23vw;
  }
  #main_footer .link_cont .link_group {
    width: auto;
  }
  #main_footer .link_cont .link_group.contents, #main_footer .link_cont .link_group.contact {
    width: auto;
  }
  #main_footer .link_cont .link_group .en {
    font-size: 4.1vw;
    line-height: 1.4375;
    text-decoration: underline;
    text-underline-offset: 0.2em;
    margin-bottom: 2.56vw;
  }
  #main_footer .link_cont .link_group ul li {
    line-height: 1.425;
  }
  #main_footer .link_cont .link_group ul li + li {
    margin-top: 2.56vw;
  }
  #main_footer .link_cont .link_group ul li a {
    font-size: 3.59vw;
    line-height: 1.425;
  }
  #main_footer .bottom_cont::before {
    left: 50%;
    width: 190vw;
    height: 103.33vw;
  }
  #main_footer .bottom_cont::after {
    top: 51.5vw;
  }
  #main_footer .bottom_cont .cont {
    padding: 6.41vw 0 19.74vw;
    text-align: center;
  }
  #main_footer .bottom_cont .cont .logo {
    width: 78.46vw;
    margin-bottom: 3.85vw;
  }
  #main_footer .bottom_cont .cont .info {
    display: none;
  }
  #main_footer .bottom_cont .cont .sub_cont {
    display: block;
  }
  #main_footer .bottom_cont .cont .sub_cont .sub_link ul {
    flex-wrap: wrap;
    justify-content: center;
  }
  #main_footer .bottom_cont .cont .sub_cont .sub_link ul li {
    font-size: 3.08vw;
    line-height: 1.46;
  }
  #main_footer .bottom_cont .cont .sub_cont .copy {
    margin: 5.13vw 0 0;
    font-size: 3.08vw;
    line-height: 1.46;
  }
  #main_footer .link_cont .link_group ul li a:hover {
    background-position: 100% 100%;
    background-size: 0px 1px;
  }
  #main_footer .bottom_cont .cont .sub_cont .sub_link ul li a:hover {
    background-position: 100% 100%;
    background-size: 0px 1px;
  }
  /* トップページ */
  #top_fv_sec {
    padding-bottom: 100.97vw;
    margin-top: 70px;
  }
  #top_fv_sec .ring1 {
    left: 11.03vw;
    top: 78.72vw;
    width: 119.74vw;
  }
  #top_fv_sec .ring2 {
    left: -24.87vw;
    top: -41.79vw;
    width: 81.03vw;
    opacity: 1;
    transform: rotate(180deg);
  }
  #top_fv_sec .ring2 img {
    height: 72vw;
  }
  #top_fv_sec .astronaut, #top_fv_sec .petal4, #top_fv_sec .petal5, #top_fv_sec .sparkle3, #top_fv_sec .sparkle4, #top_fv_sec .sparkle5 {
    display: none;
  }
  #top_fv_sec .sparkle1, #top_fv_sec .petal3 {
    z-index: 4;
  }
  #top_fv_sec .flower1 {
    left: 17.69vw;
    top: 79.15vw;
    width: 16.36vw;
  }
  #top_fv_sec .flower2 {
    left: 34.05vw;
    top: 79.15vw;
    width: 6.18vw;
  }
  #top_fv_sec .flower3 {
    left: 30.05vw;
    top: 74.62vw;
    width: 4.36vw;
  }
  #top_fv_sec .flower4 {
    left: 2.56vw;
    top: 135.49vw;
    width: 10.46vw;
  }
  #top_fv_sec .flower5 {
    left: 1.54vw;
    top: 132.87vw;
    width: 5.18vw;
  }
  #top_fv_sec .flower6 {
    left: 87.95vw;
    top: 133.28vw;
    width: 10.46vw;
  }
  #top_fv_sec .flower7 {
    left: 94.26vw;
    top: 130.64vw;
    width: 5.18vw;
  }
  #top_fv_sec .petal1 {
    left: 36.03vw;
    top: 89.51vw;
    width: 6.36vw;
  }
  #top_fv_sec .petal2 {
    left: 0.96vw;
    top: 69.17vw;
    width: 8.97vw;
    transform: scaleY(-1) rotate(-23.86deg);
  }
  #top_fv_sec .petal3 {
    left: 90.41vw;
    top: 31.58vw;
    width: 4.85vw;
    transform: rotate(156.1deg);
  }
  #top_fv_sec .sparkle1 {
    left: 3.85vw;
    top: 63.85vw;
    width: 3.33vw;
    transform: scaleX(-1);
  }
  #top_fv_sec .sparkle2 {
    left: 34.59vw;
    top: 86.79vw;
    width: 2.36vw;
    transform: none;
  }
  #top_fv_sec .sparkle6 {
    left: 3.72vw;
    top: 131.33vw;
    width: 4.36vw;
  }
  #top_fv_sec .sparkle7 {
    left: 92.9vw;
    top: 129.13vw;
    width: 4.36vw;
    transform: scaleX(-1);
  }
  #top_fv_sec .photo_list .img {
    border-radius: 2.56vw;
  }
  #top_fv_sec .photo_list .img1 {
    left: 36.41vw;
    top: 77.69vw;
    width: 58.46vw;
    height: 35.9vw;
    transform: translate(3vw, -3vw);
  }
  #top_fv_sec .photo_list .img2 {
    left: 5.38vw;
    top: 98.46vw;
    width: 23.08vw;
    height: 29.49vw;
    transform: translate(3vw, 0);
  }
  #top_fv_sec .photo_list .img3 {
    left: 31.03vw;
    top: 123.08vw;
    width: 21.03vw;
    height: 28.72vw;
    transform: translate(3vw, -3vw);
  }
  #top_fv_sec .photo_list .img4 {
    left: 54.62vw;
    top: 116.15vw;
    width: 43.08vw;
    height: 28.21vw;
    transform: translate(-3vw, -3vw);
  }
  #top_fv_sec .photo_list .img5 {
    display: none;
  }
  #top_fv_sec .cont {
    padding: 7.95vw 0 0;
  }
  #top_fv_sec .cont .text_block .label {
    padding-top: 4.62vw;
    font-size: 5.09vw;
    line-height: 1.1;
    letter-spacing: 0.06em;
    -webkit-text-stroke: 1.85vw #fff;
    margin-bottom: 5vw;
  }
  #top_fv_sec .cont .text_block .label .ruby_wrap {
    padding-top: 4.62vw;
  }
  #top_fv_sec .cont .text_block .label .ruby {
    top: 0.9vw;
    font-size: 3.01vw;
    line-height: 1.53;
  }
  #top_fv_sec .cont .text_block .copy {
    padding: 0 2.56vw;
    border-radius: 1.03vw;
  }
  #top_fv_sec .cont .text_block .copy1 {
    font-size: 5.5vw;
    line-height: 1.63;
    letter-spacing: 0.08em;
    margin-bottom: 2.05vw;
  }
  #top_fv_sec .cont .text_block .copy2 {
    font-size: 8.5vw;
    line-height: 1.47;
    margin-bottom: 2.05vw;
  }
  #top_fv_sec .cont .text_block .copy3 {
    font-size: 8.72vw;
    line-height: 1.47;
  }
  #top_fv_sec .cont .text_block .copy3 .small {
    font-size: 8.72vw;
  }
  #top_fv_sec .scroll {
    display: none;
  }
  #top_fv_sec .cont .text_block .label {
    padding-left: 2.82vw;
  }
  .common_ttl_box .en {
    font-size: 3.59vw;
  }
  .common_ttl_box .ttl {
    font-size: 7.69vw;
    margin-top: 2.31vw;
  }
  .common_btn a {
    width: 100%;
    height: 15.38vw;
    padding: 0 7.69vw;
  }
  .common_btn a .label {
    font-size: 4.1vw;
    padding-bottom: 0.77vw;
  }
  .common_btn a .dot {
    width: 2.05vw;
    height: 2.05vw;
    margin-left: 5.13vw;
  }
  .common_btn a:hover {
    background-color: #e25353;
    color: #ffffff;
    box-shadow: none;
  }
  .common_btn a:hover .dot {
    background-color: #ffffff;
  }
  .common_slider_arrow, .common_voice_sec .cont .common_voice_list .slider_arrow, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow, .common_case_sec .case_list .slider_arrow {
    width: 15.38vw;
    height: 15.38vw;
  }
  .common_slider_arrow::before, .common_voice_sec .cont .common_voice_list .slider_arrow::before, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow::before, .common_case_sec .case_list .slider_arrow::before {
    width: 3.08vw;
    height: 3.08vw;
    margin: 5.9vw 0 0 5.38vw;
  }
  .common_slider_arrow.prev::before, .common_voice_sec .cont .common_voice_list .prev.slider_arrow::before, .common_instructor_sec .cont .lead_block .slider_nav .prev.slider_arrow::before, .common_case_sec .case_list .prev.slider_arrow::before {
    margin-left: 6.67vw;
  }
  .common_slider_arrow:hover, .common_voice_sec .cont .common_voice_list .slider_arrow:hover, .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow:hover, .common_case_sec .case_list .slider_arrow:hover {
    background-color: #fff;
  }
  /* トップページ */
  #top_news_sec {
    padding-bottom: 14vw;
    padding-top: 12vw;
    background-image: url(image/news_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #top_news_sec .cont {
    display: block;
    padding: 7.95vw 5.13vw 10vw;
    border-radius: 5.13vw;
  }
  #top_news_sec .cont .ttl_block {
    width: auto;
    padding-top: 0;
  }
  #top_news_sec .cont .ttl_block .common_ttl_box {
    margin-bottom: 0;
  }
  #top_news_sec .cont .ttl_block .common_ttl_box .en {
    font-size: 4.62vw;
  }
  #top_news_sec .cont .ttl_block .common_ttl_box .ttl {
    font-size: 7.18vw;
    margin-top: 1.54vw;
  }
  #top_news_sec .cont .ttl_block .common_btn {
    display: none;
  }
  #top_news_sec .cont .common_news_list {
    margin-top: 5vw;
  }
  #top_news_sec .cont .common_news_list ul li {
    padding: 4vw 0 3.5vw;
  }
  #top_news_sec .cont .common_news_list ul li a .text_box .ttl_box {
    display: block;
  }
  #top_news_sec .cont .common_news_list ul li a .text_box .ttl_box .date {
    font-size: 3.33vw;
  }
  #top_news_sec .cont .common_news_list ul li a .text_box .ttl_box .ttl {
    margin-top: 1.3vw;
    font-size: 4.1vw;
    line-height: 1.3;
  }
  #top_news_sec .cont .common_news_list ul li a .text_box .text {
    display: none;
  }
  #top_news_sec .cont .common_news_list ul li a .arrow {
    display: none;
  }
  #top_news_sec .sp_btn {
    width: 56.41vw;
    margin: 6vw auto 0;
  }
  #top_news_sec .cont .common_news_list ul li a:hover .text_box .ttl_box .ttl {
    color: #232121;
  }
  #top_about_sec {
    padding-bottom: 21.49vw;
    padding-top: 15.9vw;
  }
  #top_about_sec .deco {
    z-index: 0;
  }
  #top_about_sec .deco1 {
    left: 67.18vw;
    top: -0.51vw;
    width: 26.41vw;
  }
  #top_about_sec .deco2 {
    left: 84.87vw;
    top: 178.46vw;
    width: 11.03vw;
  }
  #top_about_sec .deco3 {
    left: -0.51vw;
    top: 21.03vw;
    width: 12.31vw;
  }
  #top_about_sec .deco4 {
    left: 63.08vw;
    top: 5.13vw;
    width: 10vw;
  }
  #top_about_sec .deco5 {
    left: 81.79vw;
    top: 32.31vw;
    width: 10vw;
  }
  #top_about_sec .deco2, #top_about_sec .deco6, #top_about_sec .deco7, #top_about_sec .deco8, #top_about_sec .deco9, #top_about_sec .deco10 {
    display: none;
  }
  #top_about_sec .deco11 {
    display: block;
    z-index: 2;
    left: 84.87vw;
    top: 178.46vw;
    width: 11.03vw;
  }
  #top_about_sec .deco12 {
    display: block;
    z-index: 2;
    left: 0.77vw;
    top: 219.74vw;
    width: 12.05vw;
  }
  #top_about_sec .photo_list .img {
    width: 60vw;
    height: 44.1vw;
    border-radius: 5.13vw;
  }
  #top_about_sec .photo_list .img1 {
    left: -12.82vw;
    top: 182.56vw;
    transform: rotate(-6deg);
  }
  #top_about_sec .photo_list .img2 {
    left: 48.72vw;
    top: 182.56vw;
    transform: rotate(6deg);
  }
  #top_about_sec .photo_list .img3 {
    left: 110.26vw;
    top: 182.56vw;
    transform: rotate(-6deg);
  }
  #top_about_sec .cont .text_block {
    width: 100%;
  }
  #top_about_sec .cont .text_block .common_ttl_box .ttl {
    font-size: 7.69vw;
    line-height: 1.4;
    letter-spacing: 0.01em;
    margin-top: 6.92vw;
  }
  #top_about_sec .cont .text_block .text {
    margin-top: 4.62vw;
    font-size: 3.59vw;
    line-height: 1.64;
  }
  #top_about_sec .cont .text_block .common_btn {
    margin-top: 7.69vw;
  }
  #top_about_sec .cont .text_block .common_ttl_box .en {
    font-size: 4.1vw;
  }
  #top_first_sec {
    padding-bottom: 17.95vw;
    padding-top: 40.77vw;
    background-image: url(image/first_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #top_first_sec::before {
    -webkit-mask-image: url(image/first_sec_back_sp.svg);
    mask-image: url(image/first_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #top_first_sec .cont .common_ttl_box .ttl {
    margin-top: 3.08vw;
  }
  #top_first_sec .cont .intro_block {
    display: block;
    margin-top: 1.03vw;
  }
  #top_first_sec .cont .intro_block .photo_block {
    width: 100%;
    height: 67.18vw;
  }
  #top_first_sec .cont .intro_block .photo_block::before, #top_first_sec .cont .intro_block .photo_block::after {
    width: 82.05vw;
    height: 51.28vw;
    border-radius: 5.13vw;
  }
  #top_first_sec .cont .intro_block .photo_block::before {
    left: 3.85vw;
    top: 8.21vw;
  }
  #top_first_sec .cont .intro_block .photo_block::after {
    left: 3.85vw;
    top: 8.21vw;
  }
  #top_first_sec .cont .intro_block .photo_block .img {
    left: 3.85vw;
    top: 7.44vw;
    width: 82.05vw;
    height: 51.28vw;
    border-radius: 5.13vw;
  }
  #top_first_sec .cont .intro_block .photo_block .lotus {
    left: 79.23vw;
    top: 45.64vw;
    width: 15.64vw;
  }
  #top_first_sec .cont .intro_block .text_block {
    padding-top: 3.85vw;
  }
  #top_first_sec .cont .intro_block .text_block .copy {
    font-size: 6.15vw;
    line-height: 1.4;
  }
  #top_first_sec .cont .intro_block .text_block .text {
    margin-top: 3.85vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #top_first_sec .cont .intro_block .text_block .common_btn {
    margin-top: 7.69vw;
  }
  #top_first_sec .cont .intro_block .text_block .common_btn a {
    width: 71.79vw;
    margin: 0 auto;
  }
  #top_first_sec .cont .course_block {
    margin-top: 24.87vw;
    padding-bottom: 15.13vw;
    border-width: 3px;
    border-radius: 5.13vw;
  }
  #top_first_sec .cont .course_block .stars {
    left: -3.85vw;
    top: -3.85vw;
    width: 22.31vw;
  }
  #top_first_sec .cont .course_block .girl {
    left: 71.79vw;
    top: 119.49vw;
    width: 23.08vw;
  }
  #top_first_sec .cont .course_block .photo {
    width: 35.64vw;
    height: 44.36vw;
    border-radius: 5.13vw;
  }
  #top_first_sec .cont .course_block .photo3, #top_first_sec .cont .course_block .photo4 {
    display: none;
  }
  #top_first_sec .cont .course_block .photo1 {
    left: 5.38vw;
    top: 11.03vw;
    transform: rotate(-5deg);
  }
  #top_first_sec .cont .course_block .photo2 {
    left: 47.44vw;
    top: 11.03vw;
    transform: rotate(5deg);
  }
  #top_first_sec .cont .course_block .band {
    width: 61.54vw;
    height: 10.26vw;
    margin-top: -5.9vw;
    font-size: 5.13vw;
    line-height: 2;
  }
  #top_first_sec .cont .course_block .copy {
    margin-top: 54.62vw;
    font-size: 7.69vw;
    line-height: 1.13;
  }
  #top_first_sec .cont .course_block .copy .lead {
    display: block;
    margin-bottom: 2.82vw;
    font-size: 5.13vw;
    line-height: 1.2;
  }
  #top_first_sec .cont .course_block .copy .em::before {
    top: -2.05vw;
    height: 1.54vw;
    background-image: radial-gradient(circle, #e97e7e 0.77vw, transparent 0.9vw);
    background-size: 7.95vw 1.54vw;
    background-position: 0.38vw 0;
  }
  #top_first_sec .cont .course_block .text {
    margin-top: 5.13vw;
    padding: 0 5.13vw;
    font-size: 3.59vw;
    line-height: 1.43;
    letter-spacing: 0.05em;
    text-align: left;
  }
  #top_first_sec .cont .course_block .common_btn {
    margin-top: 7.44vw;
    padding: 0 5.13vw;
  }
  .common_voice_sec {
    padding-top: 17.18vw;
  }
  .common_voice_sec.is_top .cont .ttl_block .text {
    margin-top: 5.13vw;
  }
  .common_voice_sec.is_top .cont .common_voice_list {
    margin-top: 4.36vw;
  }
  .common_voice_sec.is_top .cont .common_btn {
    margin-top: 6.15vw;
  }
  .common_voice_sec .cont .ttl_block .deco {
    top: 1.54vw;
    width: 13.59vw;
  }
  .common_voice_sec .cont .ttl_block .leaf1 {
    left: -2.56vw;
  }
  .common_voice_sec .cont .ttl_block .leaf2 {
    left: auto;
    right: -2.56vw;
  }
  .common_voice_sec .cont .ttl_block .common_ttl_box .ttl {
    margin-top: 0.51vw;
  }
  .common_voice_sec .cont .ttl_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.43;
  }
  .common_voice_sec .cont .common_voice_list {
    width: 100%;
    margin-top: 4.36vw;
    clip-path: none;
  }
  .common_voice_sec .cont .common_voice_list .slider_arrow {
    position: static;
    width: 15.38vw;
    height: 15.38vw;
    transform: none;
  }
  .common_voice_sec .cont .common_voice_list .slick-list {
    overflow: hidden;
    margin: 0 -2.43vw;
    padding: 0;
  }
  .common_voice_sec .cont .common_voice_list ul li {
    width: 89.74vw;
    margin: 0 2.56vw;
    padding-top: 6.67vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .clip {
    width: 12.31vw;
    margin-left: -6.15vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card {
    padding: 5.64vw 5.64vw 8.72vw;
    border-radius: 7.69vw 1.54vw 7.69vw 1.54vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .img {
    height: 43.59vw;
    border-radius: 5.64vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .ttl {
    min-height: 13.33vw;
    margin-top: 4.1vw;
    padding-bottom: 4.1vw;
    font-size: 4.1vw;
    line-height: 1.626;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .bottom_box {
    margin-top: 4.1vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .name {
    font-size: 3.59vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .arrow {
    width: 6.67vw;
    height: 6.67vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .arrow::before {
    left: 1.79vw;
    top: 3.21vw;
    width: 2.56vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a .card .bottom_box .arrow::after {
    left: 2.82vw;
    top: 2.31vw;
    width: 1.28vw;
    height: 1.28vw;
  }
  .common_voice_sec .cont .common_voice_list .slick-dotted.slick-slider {
    margin-bottom: 3.5vw;
  }
  .common_voice_sec .cont .common_voice_list .slider_nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 5.13vw;
    margin-top: 0;
  }
  .common_voice_sec .cont .common_voice_list .slider_nav .slick-dots {
    position: static;
    display: flex;
    gap: 0 2.56vw;
    width: auto;
  }
  .common_voice_sec .cont .common_voice_list .slider_nav .slick-dots li {
    width: 2.56vw;
    height: 2.56vw;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    background-color: #ebc4c4;
  }
  .common_voice_sec .cont .common_voice_list .slider_nav .slick-dots li button {
    display: none;
  }
  .common_voice_sec .cont .common_voice_list .slider_nav .slick-dots li.slick-active {
    background-color: #e25353;
  }
  .common_voice_sec .cont .common_btn {
    margin-top: 6.15vw;
    padding: 0 5.13vw;
  }
  .common_voice_sec .cont .common_voice_list ul li a:hover .card .img img {
    transform: none;
  }
  .common_voice_sec .cont .common_voice_list ul li a:hover .card .ttl {
    color: #232121;
  }
  .common_voice_sec .cont .common_voice_list ul li a:hover .card .bottom_box .arrow {
    transform: none;
  }
  .common_voice_sec .cont .common_voice_list .slider_arrow:hover::before {
    border-color: #e25353 #e25353 #232121 #232121;
  }
  .common_line_sec {
    margin-top: 20.51vw;
  }
  .common_line_sec .wrap {
    max-width: 94.87vw;
  }
  .common_line_sec .cont {
    padding: 2.05vw;
    border-radius: 5.13vw;
  }
  .common_line_sec .cont::before {
    inset: 1.03vw;
    border-radius: 5.13vw;
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0.64vw, transparent 0.77vw), url(image/line_sec_bg_sp.png);
    background-size: 6.15vw 6.15vw, 100% 100%;
    background-position: 1.03vw 1.03vw, center;
  }
  .common_line_sec .cont:hover::before {
    inset: 1.03vw;
  }
  .common_line_sec .cont .inner {
    padding: 12vw 0 19vw;
    border-radius: 5.13vw;
    text-align: center;
  }
  .common_line_sec .cont .inner .circle, .common_line_sec .cont .inner .girl, .common_line_sec .cont .inner .bear {
    display: none;
  }
  .common_line_sec .cont .inner .phone {
    left: 62.82vw;
    top: 9.6vw;
    width: 12vw;
  }
  .common_line_sec .cont .inner .text_block .copy {
    font-size: 7vw;
    line-height: 1.25;
  }
  .common_line_sec .cont .inner .text_block .copy .num {
    font-size: 13vw;
    line-height: 0;
  }
  .common_line_sec .cont .inner .text_block .copy .num::after {
    left: 7.44vw;
    top: -2.05vw;
    width: 5.64vw;
    height: 5.64vw;
  }
  .common_line_sec .cont .inner .text_block .copy .under {
    padding-bottom: 0;
    margin-bottom: 0;
    background-position: 0 calc(100% + 3vw);
    background-size: 54.1vw 5.9vw;
  }
  .common_line_sec .cont .inner .text_block .copy .line {
    font-size: 11vw;
    line-height: 0;
    -webkit-text-stroke: 2.05vw #fff;
  }
  .common_line_sec .cont .inner .text_block .copy .line2 {
    display: block;
    font-size: 9.2vw;
    line-height: 1.25;
  }
  .common_line_sec .cont .inner .text_block .text {
    margin-top: 2.5vw;
    padding: 0 3.59vw;
    font-size: 3.33vw;
    line-height: 1.6;
  }
  .common_line_sec .cont .link_btn {
    width: 72vw;
    height: 10.5vw;
    margin: -12.56vw 0 0 auto;
    padding: 0 3.59vw 0 9.23vw;
    clip-path: polygon(5.03vw 0, 100% 0, 100% 100%, 0 100%);
  }
  .common_line_sec .cont .link_btn .label {
    font-size: 3.6vw;
  }
  .common_line_sec .cont .link_btn .arrow {
    width: 6.15vw;
    height: 6.15vw;
  }
  .common_line_sec .cont .link_btn .arrow::before {
    left: 1.79vw;
    top: 2.05vw;
    width: 1.28vw;
    height: 1.28vw;
  }
  .common_line_sec .cont .link_btn:hover {
    background-color: #d74928;
  }
  .common_line_sec .cont .link_btn:hover .arrow {
    transform: none;
  }
  .common_course_box {
    margin-top: 6.67vw;
    padding: 8.46vw 1.54vw 21.05vw;
    border-radius: 5.13vw;
  }
  .common_course_box .plane {
    left: 60vw;
    top: auto;
    bottom: -13.64vw;
    width: 37.44vw;
  }
  .common_course_box .joinus {
    left: 27.69vw;
    top: auto;
    bottom: -8.13vw;
    width: 28.97vw;
  }
  .common_course_box .circles {
    left: 55.64vw;
    top: auto;
    bottom: -8.16vw;
    width: 14.87vw;
  }
  .common_course_box .copy {
    font-size: 5.64vw;
    line-height: 1.27;
  }
  .common_course_box .text {
    margin-top: 3.85vw;
    font-size: 3.59vw;
    line-height: 1.57;
  }
  .common_course_box .step_list {
    margin-top: 5.13vw;
  }
  .common_course_box .step_list ul li + li {
    margin-top: 5.38vw;
  }
  .common_course_box .step_list ul li + li::before {
    left: 44.62vw;
    top: -5.13vw;
    width: 2px;
    height: 4.87vw;
  }
  .common_course_box .step_list ul li + li .head::before {
    left: 43.85vw;
    top: -1.03vw;
    width: 2.05vw;
    height: 2.05vw;
  }
  .common_course_box .step_list ul li a {
    position: relative;
    display: block;
    border-radius: 2.56vw;
  }
  .common_course_box .step_list ul li a::after {
    content: "";
    position: absolute;
    left: 43.85vw;
    bottom: -1.03vw;
    z-index: 1;
    width: 2.05vw;
    height: 2.05vw;
    border: 1px solid #fb6a6a;
    border-radius: 50%;
    background-color: #fff;
  }
  .common_course_box .step_list ul li a .head {
    display: block;
    width: 100%;
    padding: 2.05vw 0 2.3vw;
    border-radius: 2.56vw 2.56vw 0 0;
    text-align: center;
  }
  .common_course_box .step_list ul li a .head::after {
    content: none;
  }
  .common_course_box .step_list ul li a .head .name {
    width: auto;
    padding: 0;
    border-right: 0;
    text-align: center;
    font-size: 6.15vw;
    line-height: 1.33;
  }
  .common_course_box .step_list ul li a .head .name br {
    display: none;
  }
  .common_course_box .step_list ul li a .head .target {
    flex: none;
    padding-top: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0 2.56vw;
    margin: 1.28vw 0 0;
  }
  .common_course_box .step_list ul li a .head .target .tag {
    width: 23.08vw;
    font-size: 3.85vw;
    line-height: 1.7325;
  }
  .common_course_box .step_list ul li a .head .target .who {
    margin-top: 0;
    font-size: 3.85vw;
  }
  .common_course_box .step_list ul li a .text {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3.85vw 0;
    text-align: center;
    font-size: 4.1vw;
    line-height: 1.56;
  }
  .common_course_box .step_list ul li.step3 a .head::after {
    left: 43.85vw;
  }
  .common_course_box .branch {
    display: block;
    padding-bottom: 2.82vw;
    padding-top: 0;
  }
  .common_course_box .branch::before {
    left: 44.62vw;
    top: 0.51vw;
    height: 6.41vw;
  }
  .common_course_box .branch::after {
    left: 43.85vw;
    top: 6.67vw;
    width: 2.05vw;
    height: 2.05vw;
    border: 1px solid #fb6a6a;
    border-radius: 50%;
    background-color: #fff;
  }
  .common_course_box .branch .note {
    position: static;
    font-size: 3.08vw;
    line-height: 1.5;
    color: #000;
  }
  .common_course_box .branch .note1 {
    margin-left: 0;
    padding-top: 11.79vw;
    text-align: center;
  }
  .common_course_box .branch .note2 {
    display: none;
  }
  .common_course_box .tab_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 2.56vw;
  }
  .common_course_box .tab_list .tab {
    position: relative;
    display: flex;
    align-items: center;
    height: 12.82vw;
    padding-left: 3.59vw;
    border: 1px solid #be3e17;
    border-radius: 1.54vw;
    background-color: #fff;
    font-size: 3.59vw;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.04em;
    color: #be3e17;
  }
  .common_course_box .tab_list .tab::after {
    content: "";
    position: absolute;
    right: 3.59vw;
    top: 4.62vw;
    width: 2.05vw;
    height: 2.05vw;
    border-right: 1px solid #be3e17;
    border-bottom: 1px solid #be3e17;
    transform: rotate(45deg);
  }
  .common_course_box .tab_list .tab.active {
    background-color: #be3e17;
    color: #fff;
  }
  .common_course_box .tab_list .tab.active::after {
    border-color: #fff;
  }
  .common_course_box .advanced_list {
    margin-top: 5.13vw;
  }
  .common_course_box .advanced_list ul {
    display: block;
  }
  .common_course_box .advanced_list ul li {
    display: none;
  }
  .common_course_box .advanced_list ul li.show {
    display: block;
  }
  .common_course_box .advanced_list ul li a {
    border-radius: 2.56vw;
  }
  .common_course_box .advanced_list ul li a .head {
    padding: 2.05vw 0 2.3vw;
    border-radius: 2.56vw 2.56vw 0 0;
  }
  .common_course_box .advanced_list ul li a .head::before {
    content: none;
  }
  .common_course_box .advanced_list ul li a .head .name {
    font-size: 6.15vw;
    line-height: 1.33;
  }
  .common_course_box .advanced_list ul li a .head .target {
    gap: 0 2.56vw;
    margin-top: 1.28vw;
  }
  .common_course_box .advanced_list ul li a .head .target .tag {
    width: 23.08vw;
    font-size: 3.85vw;
    line-height: 1.7325;
  }
  .common_course_box .advanced_list ul li a .head .target .who {
    font-size: 3.85vw;
  }
  .common_course_box .advanced_list ul li a .text {
    padding: 3.85vw 0;
    border-radius: 0 0 2.56vw 2.56vw;
    font-size: 4.1vw;
    line-height: 1.56;
  }
  .common_course_box .advanced_list ul li.creative::after {
    left: 43.85vw;
    bottom: -1.03vw;
    width: 2.05vw;
    height: 2.05vw;
  }
  .common_course_box .advanced_list ul li.instructor a .text {
    padding: 3.85vw 0;
  }
  .common_course_box .advanced_list ul li.continuation {
    margin-top: 5.38vw;
  }
  .common_course_box .advanced_list ul li.continuation::before {
    left: 44.62vw;
    top: -5.13vw;
    width: 2px;
    height: 4.87vw;
  }
  .common_course_box .advanced_list ul li.continuation a .head::before {
    content: "";
    left: 43.85vw;
    top: -1.03vw;
    width: 2.05vw;
    height: 2.05vw;
  }
  .common_course_box .step_list ul li a:hover {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 3px 4px 0px;
  }
  .common_course_box .advanced_list ul li a:hover {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 3px 4px 0px;
  }
  #top_course_sec {
    padding-bottom: 55.64vw;
    margin-top: 5.64vw;
    padding-top: 24.36vw;
  }
  #top_course_sec .common_ttl_box .ttl {
    margin-top: 0.51vw;
  }
  #top_course_sec {
    background-image: url(image/course_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #top_course_sec::before {
    -webkit-mask-image: url(image/course_sec_back_sp.svg);
    mask-image: url(image/course_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #top_course_sec .deco1 {
    left: -1.54vw;
    top: 32.56vw;
    width: 21.79vw;
  }
  #top_course_sec .wrap {
    max-width: 94.87vw;
  }
  #top_course_sec .cont .common_btn {
    margin-top: 12.05vw;
    padding: 0 5.13vw;
  }
  #top_course_sec .cont .common_btn a {
    width: 100%;
  }
  .common_instructor_sec {
    margin-top: -30.26vw;
    padding-bottom: 14.87vw;
  }
  .common_instructor_sec.is_top .cont .lead_block .flowers2 {
    left: -5vw;
    top: 242.95vw;
  }
  .common_instructor_sec .cont .ttl_block {
    display: block;
  }
  .common_instructor_sec .cont .ttl_block .common_btn {
    display: none;
  }
  .common_instructor_sec .cont .lead_block {
    display: block;
    margin-top: 4.36vw;
  }
  .common_instructor_sec .cont .lead_block .flowers {
    left: 73.33vw;
    top: 33.33vw;
    width: 17.44vw;
  }
  .common_instructor_sec .cont .lead_block .flowers2 {
    left: -5vw;
    top: 242.95vw;
    width: 17.44vw;
  }
  .common_instructor_sec .cont .lead_block .text_box .copy {
    font-size: 5.13vw;
    line-height: 1.3;
  }
  .common_instructor_sec .cont .lead_block .text_box .text {
    margin-top: 2.82vw;
    font-size: 3.59vw;
    line-height: 1.43;
  }
  .common_instructor_sec .cont .lead_block .slider_nav {
    display: none;
  }
  .common_instructor_sec .cont .common_instructor_list {
    width: 92.4vw;
    margin-left: -1.2vw;
    margin-top: 6.92vw;
  }
  .common_instructor_sec .cont .common_instructor_list .slick-list {
    overflow: hidden;
  }
  .common_instructor_sec .cont .common_instructor_list .slick-track {
    display: flex;
  }
  .common_instructor_sec .cont .common_instructor_list .slick-slide {
    display: block;
    height: auto;
    margin: 0;
  }
  .common_instructor_sec .cont .common_instructor_list .slick-slide > div {
    display: flex;
    align-items: stretch;
    height: auto;
    margin: 0 1.2vw;
    gap: 0 2.4vw;
  }
  .common_instructor_sec .cont .common_instructor_list .slick-slide > div + div {
    margin-top: 3.5vw;
  }
  .common_instructor_sec .cont .common_instructor_list ul li {
    box-sizing: border-box;
    display: flex;
    height: auto;
    margin: 0;
    padding: 0 0;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 100%;
    padding: 2.56vw 2.56vw 6vw;
    border-radius: 21.79vw 21.79vw 0 0;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a .img {
    height: 37.6vw;
    border-radius: 50%;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a .badge {
    width: 30.77vw;
    margin: -4.62vw auto -2.05vw;
    font-size: 3.59vw;
    line-height: 1.86;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a .name {
    margin-top: 3.3vw;
    font-size: 4.8vw;
    line-height: 1.25;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a .en {
    margin-top: 0;
    font-size: 3.08vw;
    line-height: 1.4;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a .area_label {
    gap: 0 2.56vw;
    margin-top: 1.03vw;
    font-size: 3.59vw;
    line-height: 1.8;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a .area {
    margin: 0.3vw -2.05vw 0;
    font-size: 3.33vw;
    line-height: 1.23;
  }
  .common_instructor_sec .cont .sp_nav {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 4vw;
  }
  .common_instructor_sec .cont .sp_nav .slider_arrow {
    width: 15.38vw;
    height: 15.38vw;
    border: 1px solid #e25353;
    border-radius: 50%;
    background-color: #fff;
  }
  .common_instructor_sec .cont .sp_nav .slider_arrow::before {
    content: "";
    display: block;
    width: 3.08vw;
    height: 3.08vw;
    margin: 5.9vw 0 0 5.38vw;
    border-top: 2px solid #e25353;
    border-right: 2px solid #e25353;
    transform: rotate(45deg);
  }
  .common_instructor_sec .cont .sp_nav .slider_arrow.prev::before {
    margin-left: 6.67vw;
    transform: rotate(-135deg);
  }
  .common_instructor_sec .cont .sp_nav .progress {
    position: relative;
    width: 38.46vw;
    height: 1.03vw;
    margin: 0 7.69vw;
    border-radius: 0.51vw;
    background-color: #d9d0ca;
  }
  .common_instructor_sec .cont .sp_nav .progress .fill {
    position: absolute;
    left: 0;
    top: 0;
    width: 9.74vw;
    height: 100%;
    border-radius: 0.51vw;
    background-color: #e25353;
    transition: width 0.3s;
  }
  .common_instructor_sec .cont .sp_btn {
    margin-top: 9.49vw;
    padding: 0 5.13vw;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a:hover .img img {
    transform: none;
  }
  .common_instructor_sec .cont .common_instructor_list ul li a:hover .name {
    color: #232121;
  }
  .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow:hover {
    background-color: #ffffff;
  }
  .common_instructor_sec .cont .lead_block .slider_nav .slider_arrow:hover::before {
    border-color: #e25353 #e25353 #232121 #232121;
  }
  #top_shop_sec {
    padding-bottom: 26.67vw;
    padding-top: 0;
    background-image: url(image/shop_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #top_shop_sec::before {
    background-size: 5.13vw 5.13vw;
    -webkit-mask-image: url(image/shop_sec_back_sp.svg);
    mask-image: url(image/shop_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #top_shop_sec .deco_text {
    left: 4.87vw;
    top: 12.82vw;
    font-size: 16.92vw;
    line-height: 0.9;
  }
  #top_shop_sec .cont {
    display: flex;
    flex-direction: column-reverse;
  }
  #top_shop_sec .cont .photo_block {
    width: 100%;
    height: 53.85vw;
    margin: 41.79vw 0 0;
  }
  #top_shop_sec .cont .photo_block::before {
    left: 0;
    top: 0;
    width: 89.74vw;
    height: 53.85vw;
    border-radius: 5.13vw;
    transform: rotate(6deg);
  }
  #top_shop_sec .cont .photo_block .img {
    width: 89.74vw;
    height: 53.85vw;
    border-radius: 5.13vw;
  }
  #top_shop_sec .cont .photo_block .girl {
    left: 68.46vw;
    top: 29.74vw;
    width: 25.13vw;
  }
  #top_shop_sec .cont .text_block {
    width: 100%;
    margin-top: 7.18vw;
  }
  #top_shop_sec .cont .text_block .ttl {
    font-size: 8.21vw;
    line-height: 1.2;
  }
  #top_shop_sec .cont .text_block .text {
    margin-top: 2.56vw;
    font-size: 3.85vw;
    line-height: 1.46;
  }
  #top_shop_sec .cont .text_block .common_btn {
    margin-top: 6.92vw;
  }
  #top_shop_sec .cont .text_block .common_btn a {
    width: 79.49vw;
  }
  #top_business_sec {
    margin-top: 7.69vw;
  }
  #top_business_sec .common_ttl_box .ttl {
    margin-top: 0.26vw;
  }
  #top_business_sec .wrap03 {
    max-width: 94.87vw;
  }
  #top_business_sec .box {
    padding: 12.05vw 0 16.41vw;
    border-radius: 7.69vw;
  }
  #top_business_sec .box .wrap {
    max-width: 89.74vw;
  }
  #top_business_sec .box .cont .copy {
    margin-top: 7.18vw;
    font-size: 5.38vw;
    line-height: 1.14;
  }
  #top_business_sec .box .cont .text {
    margin-top: 3.59vw;
    font-size: 3.59vw;
    line-height: 1.57;
  }
  #top_business_sec .box .cont .common_service_list {
    margin-top: 8.97vw;
  }
  #top_business_sec .box .cont .common_service_list ul {
    display: block;
  }
  #top_business_sec .box .cont .common_service_list ul li + li {
    margin-top: 10.26vw;
  }
  #top_business_sec .box .cont .common_service_list ul li:nth-child(2) {
    animation-delay: 0s;
  }
  #top_business_sec .box .cont .common_service_list ul li:nth-child(3) {
    animation-delay: 0s;
  }
  #top_business_sec .box .cont .common_service_list ul li:nth-child(4) {
    animation-delay: 0s;
  }
  #top_business_sec .box .cont .common_service_list ul li:nth-child(even) {
    margin-top: 10.26vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .img {
    height: 46.15vw;
    border-radius: 5.13vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .img::before {
    left: -1.54vw;
    top: -1.54vw;
    border-radius: 6.15vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .img img {
    border-radius: 5.13vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .ttl {
    gap: 0 4.1vw;
    margin-top: 5.13vw;
    font-size: 4.62vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .ttl::before {
    width: 3.59vw;
    height: 3.59vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .text {
    margin-top: 5.13vw;
    font-size: 3.85vw;
    line-height: 1.46;
  }
  #top_business_sec .box .cont .common_service_list ul li a .more {
    margin-top: 4.1vw;
    padding-bottom: 2.56vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .more .label {
    font-size: 3.85vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .more .arrow {
    width: 6.15vw;
    height: 6.15vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .more .arrow::before {
    left: 1.79vw;
    top: 2.95vw;
    width: 2.56vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a .more .arrow::after {
    left: 2.82vw;
    top: 2.31vw;
    width: 1.28vw;
    height: 1.28vw;
  }
  #top_business_sec .box .cont .btn_list {
    display: block;
    margin-top: 6.15vw;
  }
  #top_business_sec .box .cont .btn_list .common_btn + .common_btn {
    margin-top: 5.9vw;
  }
  #top_business_sec .box .cont .btn_list .common_btn a {
    width: 100%;
  }
  #top_business_sec .box .cont .btn_list .common_btn a .icon {
    width: 5.9vw;
    margin-right: 3.85vw;
  }
  #top_business_sec .box .cont .btn_list .estimate_btn a {
    width: 100%;
    padding-left: 8.21vw;
  }
  #top_business_sec .box .cont .common_service_list ul li a:hover .ttl {
    color: #232121;
  }
  #top_business_sec .box .cont .common_service_list ul li a:hover .more .arrow {
    transform: none;
  }
  #top_report_sec {
    margin-top: 13.59vw;
  }
  #top_report_sec .cont {
    display: block;
  }
  #top_report_sec .cont .box {
    padding: 8vw 5vw 9vw;
    border-radius: 5.13vw;
  }
  #top_report_sec .cont .box + .box {
    margin-top: 7.69vw;
  }
  #top_report_sec .cont .box .common_ttl_box .ttl {
    font-size: 6.67vw;
    margin-top: 2.5vw;
  }
  #top_report_sec .cont .box .text {
    margin-top: 3vw;
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #top_report_sec .cont .box .common_post_list {
    margin-top: 6vw;
  }
  #top_report_sec .cont .box .common_post_list ul li {
    padding: 3.5vw 0;
  }
  #top_report_sec .cont .box .common_post_list ul li a {
    align-items: center;
  }
  #top_report_sec .cont .box .common_post_list ul li a .img {
    width: 25.64vw;
    height: 25.64vw;
    border-radius: 2.56vw;
  }
  #top_report_sec .cont .box .common_post_list ul li a .text_box {
    margin-left: 3vw;
    padding-top: 0;
  }
  #top_report_sec .cont .box .common_post_list ul li a .text_box .date {
    font-size: 3.08vw;
  }
  #top_report_sec .cont .box .common_post_list ul li a .text_box .ttl {
    margin-top: 2.31vw;
    font-size: 3.85vw;
    line-height: 1.4;
  }
  #top_report_sec .cont .box .common_post_list ul li a .text_box .cat {
    min-width: 20.51vw;
    line-height: 1.5;
    margin-top: 3.08vw;
    padding: 0 3.08vw;
    font-size: 3.08vw;
    line-height: 1.5;
  }
  #top_report_sec .cont .box .common_btn {
    margin-top: 6.92vw;
  }
  #top_report_sec .cont .box .common_btn a {
    width: 56.41vw;
  }
  #top_report_sec .cont .blog_box .common_btn a {
    background-color: #ff7654;
  }
  #top_report_sec .cont .blog_box .common_btn a:hover {
    background-color: #fff;
    color: #ff7654;
    box-shadow: inset 0 0 0 2px #ff7654;
  }
  #top_report_sec .cont .box .common_post_list ul li a:hover .img img {
    transform: none;
  }
  #top_report_sec .cont .box .common_post_list ul li a:hover .text_box .ttl {
    color: #333333;
  }
  .common_faq_sec {
    margin-top: 13.85vw;
  }
  .common_faq_sec .common_ttl_box .ttl {
    margin-top: 0.77vw;
  }
  .common_faq_sec {
    padding: 22.56vw 0 15.64vw;
    background-image: url(image/faq_sec_back_sp.svg), linear-gradient(#faefe8, #faefe8);
    background-position: center top, center 17.02vw;
    background-size: 100% 510.77vw, 100% calc(100% - 17.02vw);
  }
  .common_faq_sec::before {
    -webkit-mask-image: url(image/faq_sec_back_sp.svg), linear-gradient(#000, #000);
    mask-image: url(image/faq_sec_back_sp.svg), linear-gradient(#000, #000);
    -webkit-mask-size: 100% 510.77vw, 100% calc(100% - 17.02vw);
    mask-size: 100% 510.77vw, 100% calc(100% - 17.02vw);
    -webkit-mask-position: center top, center 17.02vw;
    mask-position: center top, center 17.02vw;
  }
  .common_faq_sec .cont .lead {
    margin-top: 5.38vw;
    font-size: 3.33vw;
    line-height: 1.77;
  }
  .common_faq_sec .cont .common_btn {
    margin-top: 7.69vw;
    padding: 0 5.13vw;
  }
  .common_faq_sec .cont .common_btn a {
    width: 100%;
  }
  .common_faq_sec .cont .lead a:hover {
    color: #232121;
  }
  .common_faq_list {
    margin-top: 3.85vw;
  }
  .common_faq_list ul li {
    padding: 5.64vw 5.13vw 5.9vw;
    border-radius: 2.56vw;
  }
  .common_faq_list ul li + li {
    margin-top: 5.13vw;
  }
  .common_faq_list ul li .q_box {
    align-items: flex-start;
    padding-bottom: 4.1vw;
    cursor: pointer;
  }
  .common_faq_list ul li .q_box .mark {
    width: 11.54vw;
    height: 11.54vw;
    font-size: 5.13vw;
    line-height: 2.25;
  }
  .common_faq_list ul li .q_box .ttl {
    margin: 0.77vw 0 0 5.13vw;
    font-size: 4.1vw;
    line-height: 1.25;
    letter-spacing: 0;
  }
  .common_faq_list ul li .q_box .toggle {
    width: 3.59vw;
    height: 3.59vw;
    margin: 4.1vw 0 0 2.56vw;
  }
  .common_faq_list ul li .q_box .toggle::before, .common_faq_list ul li .q_box .toggle::after {
    top: 1.67vw;
    width: 3.59vw;
  }
  .common_faq_list ul li .a_box {
    padding-top: 4.36vw;
  }
  .common_faq_list ul li .a_box .mark {
    width: 11.54vw;
    height: 11.54vw;
    font-size: 5.13vw;
    line-height: 2.15;
  }
  .common_faq_list ul li .a_box .text {
    margin-left: 4.87vw;
    font-size: 3.59vw;
    line-height: 1.36;
    letter-spacing: 0.1em;
  }
  .common_faq_list ul li:not(.open) .q_box {
    padding-bottom: 0;
    border-bottom: 0;
  }
  .common_faq_list ul li:not(.open) .q_box .toggle::before {
    transform: rotate(0);
  }
  .common_faq_list ul li:not(.open) .q_box .toggle::after {
    transform: rotate(90deg);
  }
  .common_faq_list ul li:not(.open) .a_box {
    display: none;
  }
  .common_faq_list ul li .a_box .text a:hover {
    color: #333333;
  }
  /* 下層共通 */
  .common_page_main {
    margin-top: 70px;
  }
  .common_page_main .bg {
    top: -61.54vw;
    width: 180vw;
    height: 120vw;
  }
  .common_page_main .cont .breadcrumb {
    padding-top: 3.08vw;
    font-size: 2.82vw;
  }
  .common_page_main .cont .breadcrumb .sep {
    margin: 0 1.28vw;
  }
  .common_page_main .cont .illust {
    width: 61.54vw;
    margin: 0 auto;
  }
  .common_page_main .cont .ttl_box .en {
    margin-top: 2.05vw;
    font-size: 3.59vw;
    line-height: 1.43;
  }
  .common_page_main .cont .ttl_box .ttl {
    min-width: 69.23vw;
    height: auto;
    margin-top: 1.54vw;
    padding: 2.4vw 4.62vw;
    border-radius: 2.05vw;
    font-size: 8.21vw;
    line-height: 1.15;
  }
  .common_page_main .cont .ttl_box.long .ttl {
    padding: 0 4.62vw;
    font-size: 6.67vw;
    line-height: 2.153;
  }
  .common_page_main .cont .ttl_box.two .ttl {
    padding: 2.4vw 4.62vw;
    font-size: 7.18vw;
    line-height: 1.15;
  }
  .common_course_cta_sec {
    height: auto;
    padding: 16vw 0 11vw;
  }
  .common_course_cta_sec .astro1 {
    left: 2.56vw;
    top: 1.28vw;
    width: 18.97vw;
  }
  .common_course_cta_sec .astro2 {
    left: auto;
    right: 2.56vw;
    top: 1.28vw;
    width: 18.97vw;
  }
  .common_course_cta_sec .lotus1 {
    left: -5.13vw;
    width: 33.33vw;
  }
  .common_course_cta_sec .lotus2 {
    left: auto;
    right: -5.13vw;
    width: 30.77vw;
  }
  .common_course_cta_sec .lotus3 {
    display: none;
  }
  .common_course_cta_sec .flower1 {
    left: auto;
    right: 8.97vw;
    top: 20.51vw;
    width: 11.03vw;
  }
  .common_course_cta_sec .flower2 {
    left: auto;
    right: 3.08vw;
    top: 30.77vw;
    width: 5.9vw;
  }
  .common_course_cta_sec .flower3 {
    left: 5.13vw;
    top: 26.41vw;
    width: 9.74vw;
  }
  .common_course_cta_sec .flower4 {
    left: 2.56vw;
    top: 20.51vw;
    width: 5.9vw;
  }
  .common_course_cta_sec .cont .ttl {
    font-size: 7.18vw;
    line-height: 1.39;
    -webkit-text-stroke: 2.5vw #fff;
  }
  .common_course_cta_sec .cont .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.6;
  }
  .common_course_cta_sec .cont .btn_list {
    display: block;
    width: 100%;
    margin-top: 6.15vw;
  }
  .common_course_cta_sec .cont .btn_list a {
    box-sizing: border-box;
    width: 100%;
    height: 17.95vw;
  }
  .common_course_cta_sec .cont .btn_list a + a {
    margin-top: 4.1vw;
  }
  .common_course_cta_sec .cont .btn_list a .label {
    font-size: 4.1vw;
  }
  .common_course_cta_sec .cont .btn_list .reserve_btn {
    width: 100%;
    padding-left: 7.44vw;
  }
  .common_course_cta_sec .cont .btn_list .reserve_btn .icon {
    width: 6.41vw;
    margin-right: 4.62vw;
  }
  .common_course_cta_sec .cont .btn_list .line_btn {
    width: 100%;
    justify-content: center;
    padding-left: 0;
  }
  .common_course_cta_sec .cont .btn_list .line_btn .icon {
    width: 7.95vw;
    margin-right: 6.15vw;
  }
  .common_course_cta_sec .cont .btn_list .reserve_btn:hover {
    background-color: #b63030;
    color: #ffffff;
    box-shadow: none;
  }
  .common_course_cta_sec .cont .btn_list .reserve_btn:hover .icon svg .fill {
    fill: #ffffff;
  }
  .common_course_cta_sec .cont .btn_list .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  /* 初めての方へ */
  .common_feature_sec {
    padding: 10vw 0 15.38vw;
  }
  .common_feature_sec .cont .circles {
    left: auto;
    right: 0;
    top: -5.13vw;
    width: 17.95vw;
  }
  .common_feature_sec .cont .plane {
    display: none;
  }
  .common_feature_sec .cont .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  .common_feature_sec .cont .copy {
    margin-top: 6.15vw;
    font-size: 4.36vw;
    line-height: 1.6;
  }
  .common_feature_sec .cont .text {
    margin-top: 3.59vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  .common_feature_sec .cont .point_list {
    margin-top: 8.21vw;
  }
  .common_feature_sec .cont .point_list ul {
    display: block;
  }
  .common_feature_sec .cont .point_list ul li + li {
    margin-top: 8vw;
    padding-top: 8vw;
    border-top: 1px solid #d6c9c2;
  }
  .common_feature_sec .cont .point_list ul li + li::before {
    content: none;
  }
  .common_feature_sec .cont .point_list ul li .mark {
    width: 27vw;
    height: 27vw;
    padding-top: 5.13vw;
  }
  .common_feature_sec .cont .point_list ul li .mark .point {
    font-size: 3.33vw;
  }
  .common_feature_sec .cont .point_list ul li .mark .icon {
    margin-top: 2vw;
    width: 10vw;
  }
  .common_feature_sec .cont .point_list ul li:nth-child(2) .mark .icon, .common_feature_sec .cont .point_list ul li:nth-child(3) .mark .icon {
    margin-top: 2vw;
    width: 10vw;
  }
  .common_feature_sec .cont .point_list ul li .ttl {
    gap: 0 3.08vw;
    margin-top: 3vw;
  }
  .common_feature_sec .cont .point_list ul li .ttl .check {
    width: 8vw;
  }
  .common_feature_sec .cont .point_list ul li .ttl .label {
    padding-top: 0.77vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  .common_feature_sec .cont .point_list ul li .text {
    margin-top: 2.5vw;
    font-size: 3.59vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  .common_philosophy_sec {
    padding: 15.38vw 0 17.95vw;
  }
  .common_philosophy_sec.has_line {
    padding-bottom: 17.95vw;
  }
  .common_philosophy_sec::before {
    background-size: 5.13vw 5.13vw;
  }
  .common_philosophy_sec > .wrap > .cont {
    display: block;
  }
  .common_philosophy_sec > .wrap > .cont .deco_text {
    top: -2.56vw;
    width: 100%;
    font-size: 11vw;
  }
  .common_philosophy_sec > .wrap > .cont .text_block {
    padding-top: 7.69vw;
  }
  .common_philosophy_sec > .wrap > .cont .text_block > .label {
    font-size: 4.2vw;
  }
  .common_philosophy_sec > .wrap > .cont .text_block .ttl {
    margin-top: 3vw;
    font-size: 6.67vw;
    line-height: 1.4;
  }
  .common_philosophy_sec > .wrap > .cont .text_block .text {
    margin-top: 3.8vw;
    font-size: 3.59vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  .common_philosophy_sec > .wrap > .cont .text_block .btn_list {
    display: block;
    margin-top: 7.69vw;
  }
  .common_philosophy_sec > .wrap > .cont .text_block .btn_list .common_btn a {
    width: 100%;
  }
  .common_philosophy_sec > .wrap > .cont .text_block .btn_list .common_btn + .common_btn {
    margin-top: 3.85vw;
  }
  .common_philosophy_sec > .wrap > .cont .text_block .btn_list .common_btn + .common_btn a {
    width: 100%;
  }
  .common_philosophy_sec > .wrap > .cont .photo_block {
    width: 100%;
    height: auto;
    margin: 9vw 0 0;
    padding-bottom: 7.69vw;
  }
  .common_philosophy_sec > .wrap > .cont .photo_block::before {
    left: 14vw;
    top: 0;
    width: 60vw;
    height: 60vw;
    border-radius: 5.13vw;
  }
  .common_philosophy_sec > .wrap > .cont .photo_block .img {
    width: 60vw;
    height: 60vw;
    margin: 7.69vw auto 0;
    border-radius: 5.13vw;
  }
  .common_philosophy_sec > .wrap > .cont .photo_block .girl {
    left: 0vw;
    top: auto;
    bottom: 0;
    width: 22vw;
  }
  .common_philosophy_sec .common_line_sec {
    margin-top: 12.82vw;
  }
  #page_beginners .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_beginners .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_beginners .lead_sec .deco1 {
    left: 0;
    top: -11.54vw;
    width: 12.82vw;
  }
  #page_beginners .lead_sec .deco2 {
    left: auto;
    right: 0;
    top: 23.08vw;
    width: 8.21vw;
  }
  #page_beginners .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_beginners .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_beginners .about_sec {
    margin-top: -10.26vw;
    padding: 25.64vw 0 12vw;
    background-image: url(image/news_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #page_beginners .about_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg);
    mask-image: url(image/news_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #page_beginners .about_sec .deco1 {
    left: auto;
    right: 2.56vw;
    top: 20.51vw;
    width: 12.31vw;
  }
  #page_beginners .about_sec .deco2 {
    left: 1.28vw;
    top: 24.1vw;
    width: 12.31vw;
  }
  #page_beginners .about_sec .deco3, #page_beginners .about_sec .deco4 {
    display: none;
  }
  #page_beginners .about_sec .cont .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_beginners .about_sec .cont .sub {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_beginners .about_sec .cont .text {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_beginners .about_sec .cont .divider {
    gap: 0 4.1vw;
    margin-top: 8.21vw;
    font-size: 4.62vw;
  }
  #page_beginners .about_sec .cont .divider::before, #page_beginners .about_sec .cont .divider::after {
    border-top-width: 2px;
  }
  #page_beginners .about_sec .cont .work_list {
    margin-top: 10.26vw;
  }
  #page_beginners .about_sec .cont .work_list ul {
    display: block;
  }
  #page_beginners .about_sec .cont .work_list ul li {
    min-height: 0;
    padding: 6.41vw 5.13vw 6.41vw;
    border-image-width: 6.41vw;
    border-radius: 5.13vw;
  }
  #page_beginners .about_sec .cont .work_list ul li + li {
    margin-top: 9vw;
  }
  #page_beginners .about_sec .cont .work_list ul li .num {
    width: 11.54vw;
    height: 11.54vw;
    margin: -12.82vw auto 1.28vw;
    font-size: 4.87vw;
    line-height: 2.37;
  }
  #page_beginners .about_sec .cont .work_list ul li .img {
    height: 46.15vw;
    border-radius: 2.56vw;
  }
  #page_beginners .about_sec .cont .work_list ul li .ttl {
    margin-top: 5.13vw;
    font-size: 4.36vw;
    line-height: 1.5;
  }
  #page_beginners .about_sec .cont .work_list ul li .text {
    margin-top: 2.05vw;
    font-size: 3.59vw;
    line-height: 1.6;
  }
  #page_beginners .course_sec {
    padding: 17.95vw 0 5vw;
  }
  #page_beginners .course_sec .cont .common_ttl_box .label {
    font-size: 4.1vw;
  }
  #page_beginners .course_sec .cont .common_ttl_box .ttl {
    margin-top: 2.82vw;
  }
  #page_beginners .course_sec .cont .copy {
    text-align: left;
    margin-top: 6.15vw;
    font-size: 4.62vw;
    line-height: 1.6;
  }
  #page_beginners .course_sec .cont .text {
    text-align: left;
    margin-top: 3.5vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_beginners .course_sec .cont .sub_ttl {
    gap: 0 2.56vw;
    margin-top: 8.21vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_beginners .course_sec .cont .sub_ttl .lotus {
    width: 10.26vw;
  }
  #page_beginners .course_sec .cont .work_list {
    margin-top: 7.69vw;
  }
  #page_beginners .course_sec .cont .work_list ul {
    display: block;
  }
  #page_beginners .course_sec .cont .work_list ul li {
    height: auto;
    padding: 6.41vw;
    border-radius: 5.13vw;
  }
  #page_beginners .course_sec .cont .work_list ul li + li {
    margin-top: 5vw;
  }
  #page_beginners .course_sec .cont .work_list ul li::before {
    border-radius: 5.13vw;
    transform: rotate(3deg);
  }
  #page_beginners .course_sec .cont .work_list ul li .img {
    height: 46.15vw;
    border-radius: 4.1vw;
  }
  #page_beginners .course_sec .cont .work_list ul li .ttl {
    margin-top: 4.1vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_beginners .course_sec .cont .work_list ul li .text {
    margin-top: 1.54vw;
    font-size: 3.59vw;
    line-height: 1.6;
  }
  #page_beginners .course_sec .cont .common_btn {
    margin-top: 10.26vw;
  }
  #page_beginners .course_sec .cont .common_btn a {
    width: 100%;
  }
  #page_beginners .flow_sec {
    padding: 14vw 0 16vw;
    background-image: url(image/first_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #page_beginners .flow_sec::before {
    -webkit-mask-image: url(image/first_sec_back_sp.svg);
    mask-image: url(image/first_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #page_beginners .flow_sec .cont .deco1, #page_beginners .flow_sec .cont .deco2, #page_beginners .flow_sec .cont .deco3, #page_beginners .flow_sec .cont .deco4 {
    display: none;
  }
  #page_beginners .flow_sec .cont .lead {
    margin-top: 3.5vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_beginners .flow_sec .cont .common_flow_list {
    margin-top: 6vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li {
    display: block;
    min-height: 0;
    padding: 6.41vw 5.13vw 7.69vw;
    border-width: 2px;
    border-radius: 5.13vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li + li {
    margin-top: 6vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li + li::before {
    top: -8vw;
    width: 22vw;
    height: 7vw;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box {
    padding-top: 0;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .ttl {
    align-items: flex-start;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .ttl .step {
    width: 19.23vw;
    padding-top: 0.51vw;
    font-size: 4.1vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .ttl .label {
    font-size: 4.36vw;
    line-height: 1.5;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .text {
    margin-top: 3.59vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list {
    display: block;
    margin-top: 5.13vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn {
    width: 100%;
    height: 12.82vw;
    padding: 0 5.13vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .icon {
    width: 6.15vw;
    margin-right: 3.85vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .label {
    font-size: 3.85vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn .dot {
    width: 2.05vw;
    height: 2.05vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn + .link_btn {
    margin-top: 3.08vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .line_btn {
    width: 100%;
    padding-left: 5.13vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .img {
    width: 100%;
    height: 45vw;
    margin: 5.13vw 0 0;
    border-radius: 4.1vw;
  }
  #page_beginners .common_voice_sec {
    padding-top: 15vw;
  }
  #page_beginners .common_faq_sec {
    margin-top: 13.85vw;
  }
  #page_beginners .course_sec .cont .common_btn a {
    padding-right: 5.38vw;
  }
  #page_beginners .flow_sec .cont .common_ttl_box .ttl {
    margin-top: 3.85vw;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn:hover {
    background-color: #e25353;
    color: #ffffff;
    box-shadow: none;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .link_btn:hover .dot {
    background-color: #ffffff;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .line_btn:hover {
    color: #ffffff;
    box-shadow: none;
  }
  #page_beginners .flow_sec .cont .common_flow_list ul li .text_box .btn_list .line_btn:hover .dot {
    background-color: #ffffff;
  }
  #page_about .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_about .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_about .lead_sec .deco1 {
    left: 0;
    top: -11.54vw;
    width: 12.82vw;
  }
  #page_about .lead_sec .deco2 {
    left: auto;
    right: 0;
    top: 23.08vw;
    width: 8.21vw;
  }
  #page_about .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_about .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_about .what_sec {
    padding: 15.38vw 0 76.92vw;
    background-image: url(image/news_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #page_about .what_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg);
    mask-image: url(image/news_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #page_about .what_sec .deco1 {
    left: 0;
    top: -5.13vw;
    width: 15.38vw;
  }
  #page_about .what_sec .deco2, #page_about .what_sec .deco3, #page_about .what_sec .deco5 {
    display: none;
  }
  #page_about .what_sec .deco4 {
    left: auto;
    right: 3.85vw;
    top: 33.33vw;
    width: 7.69vw;
  }
  #page_about .what_sec .deco6 {
    left: auto;
    right: 1.28vw;
    top: auto;
    bottom: 7.69vw;
    width: 15.38vw;
  }
  #page_about .what_sec .girl {
    left: auto;
    right: 2.56vw;
    top: -7.69vw;
    width: 28.21vw;
  }
  #page_about .what_sec .photo_list .img {
    width: 56.41vw;
    height: 35.56vw;
    border-radius: 5.13vw;
  }
  #page_about .what_sec .photo_list .img1 {
    left: -6.41vw;
    top: auto;
    bottom: 30.77vw;
  }
  #page_about .what_sec .photo_list .img2 {
    left: 48.72vw;
    top: auto;
    bottom: 15.38vw;
  }
  #page_about .what_sec .cont .text_block {
    width: 100%;
    margin-left: 0;
  }
  #page_about .what_sec .cont .text_block .common_ttl_box .ttl {
    margin-top: 6.41vw;
    font-size: 7.18vw;
    line-height: 1.4;
    letter-spacing: 0.01em;
  }
  #page_about .what_sec .cont .text_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.64;
  }
  #page_about .what_sec .cont .text_block .common_btn {
    margin-top: 7.69vw;
  }
  #page_about .what_sec .cont .text_block .common_btn a {
    width: 100%;
  }
  #page_about .classroom_sec {
    padding: 20.51vw 0 14vw;
  }
  #page_about .classroom_sec .ring {
    left: -5.13vw;
    top: 7.69vw;
    width: 110.26vw;
  }
  #page_about .classroom_sec .deco1 {
    left: 0;
    top: 3vw;
    width: 12vw;
  }
  #page_about .classroom_sec .deco2 {
    left: auto;
    right: 1.28vw;
    top: 64.1vw;
    width: 15.38vw;
  }
  #page_about .classroom_sec .deco3, #page_about .classroom_sec .deco4 {
    display: none;
  }
  #page_about .classroom_sec .photo_list .img {
    width: 28vw;
    height: 21.5vw;
    border-radius: 3.85vw;
  }
  #page_about .classroom_sec .photo_list .img1 {
    left: auto;
    right: 2.5vw;
    top: 4vw;
    width: 24vw;
    height: 29vw;
  }
  #page_about .classroom_sec .photo_list .img2 {
    left: 2.5vw;
    top: 9vw;
  }
  #page_about .classroom_sec .photo_list .img3 {
    left: auto;
    right: -5vw;
    top: auto;
    bottom: 23vw;
    transform: rotate(6deg);
  }
  #page_about .classroom_sec .photo_list .img4 {
    left: -3vw;
    top: auto;
    bottom: 14vw;
    width: 24vw;
    height: 29vw;
  }
  #page_about .classroom_sec .cont .common_ttl_box .ttl {
    margin-top: 3.08vw;
    font-size: 8.46vw;
  }
  #page_about .classroom_sec .cont .copy {
    margin-top: 6.41vw;
    font-size: 5.13vw;
    line-height: 1.5;
    letter-spacing: 0.1em;
  }
  #page_about .classroom_sec .cont .text {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_about .classroom_sec .cont .common_btn {
    margin-top: 7.69vw;
  }
  #page_about .classroom_sec .cont .common_btn a {
    width: 100%;
  }
  #page_about .what_sec .cont .text_block .common_ttl_box .en {
    font-size: 4.1vw;
  }
  #page_hanasaki .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_hanasaki .profile_block {
    display: block;
  }
  #page_hanasaki .profile_block .text_block {
    width: 100%;
    padding-top: 0;
  }
  #page_hanasaki .profile_block .text_block > .label {
    font-size: 3.59vw;
  }
  #page_hanasaki .profile_block .text_block .name {
    margin-top: 3.08vw;
  }
  #page_hanasaki .profile_block .text_block .name .ja {
    font-size: 7.18vw;
  }
  #page_hanasaki .profile_block .text_block .name .en {
    margin-left: 5.13vw;
    font-size: 3.59vw;
  }
  #page_hanasaki .profile_block .text_block .position {
    margin-top: 5.13vw;
    font-size: 3.85vw;
    line-height: 1.5;
  }
  #page_hanasaki .profile_block .text_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_hanasaki .lead_sec .cont .profile_block {
    display: flex;
    flex-direction: column;
    margin-top: 2vw;
  }
  #page_hanasaki .lead_sec .cont .profile_block .text_block {
    margin-top: 6vw;
  }
  #page_hanasaki .lead_sec .cont .profile_block .photo_block {
    order: -1;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0 0 7.69vw;
  }
  #page_hanasaki .lead_sec .cont .profile_block .photo_block::before {
    left: calc(50% - 30vw);
    top: 7.69vw;
    width: 60vw;
    height: 60vw;
    border-radius: 5.13vw;
    transform: rotate(6deg);
    transform-origin: 50% 50%;
  }
  #page_hanasaki .lead_sec .cont .profile_block .photo_block .img {
    width: 60vw;
    height: 60vw;
    margin: 7.69vw auto 0;
    border-radius: 5.13vw;
  }
  #page_hanasaki .lead_sec .cont .profile_block .photo_block .girl {
    left: 0;
    top: auto;
    bottom: 0;
    width: 22vw;
  }
  #page_hanasaki .story_sec {
    margin-top: -5.13vw;
    padding: 20.51vw 0 15.38vw;
    background-image: url(image/hanasaki_story_wave_sp.svg), linear-gradient(#fcf7f4, #fcf7f4);
    background-position: center bottom, center top;
    background-size: 100% auto, 100% calc(100% - 100vw);
  }
  #page_hanasaki .story_sec::before {
    -webkit-mask-image: url(image/hanasaki_story_wave_sp.svg), linear-gradient(#000, #000);
    mask-image: url(image/hanasaki_story_wave_sp.svg), linear-gradient(#000, #000);
    -webkit-mask-position: center bottom, center top;
    mask-position: center bottom, center top;
    -webkit-mask-size: 100% auto, 100% calc(100% - 100vw);
    mask-size: 100% auto, 100% calc(100% - 100vw);
  }
  #page_hanasaki .story_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .story_sec .story_list {
    margin-top: 7vw;
  }
  #page_hanasaki .story_sec .story_list ul li {
    display: flex;
    flex-direction: column;
    padding: 0;
  }
  #page_hanasaki .story_sec .story_list ul li::before {
    display: none;
  }
  #page_hanasaki .story_sec .story_list ul li.reverse {
    flex-direction: column;
    padding: 0;
  }
  #page_hanasaki .story_sec .story_list ul li.reverse .img {
    height: 56.41vw;
  }
  #page_hanasaki .story_sec .story_list ul li.reverse .circles {
    left: auto;
    right: -2.56vw;
    top: -5.13vw;
  }
  #page_hanasaki .story_sec .story_list ul li:nth-child(2), #page_hanasaki .story_sec .story_list ul li:nth-child(3), #page_hanasaki .story_sec .story_list ul li:nth-child(4) {
    margin-top: 8vw;
  }
  #page_hanasaki .story_sec .story_list ul li:first-child .img img {
    -o-object-position: center top;
       object-position: center top;
  }
  #page_hanasaki .story_sec .story_list ul li .circles {
    left: auto;
    right: -2.56vw;
    top: -5.13vw;
    width: 15.38vw;
  }
  #page_hanasaki .story_sec .story_list ul li .text_box {
    display: contents;
  }
  #page_hanasaki .story_sec .story_list ul li .text_box .num {
    order: 1;
    width: 28.21vw;
    border-radius: 3.08vw;
    font-size: 3.85vw;
    line-height: 1.5974;
  }
  #page_hanasaki .story_sec .story_list ul li .text_box .ttl {
    order: 3;
    margin-top: 4.5vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_hanasaki .story_sec .story_list ul li .text_box .text {
    order: 4;
    margin-top: 4vw;
    padding: 5.13vw;
    border-radius: 5.13vw;
    background-color: #fffbf1;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .story_sec .story_list ul li .img {
    order: 2;
    width: 100%;
    height: 50vw;
    margin-top: 4vw;
    border-radius: 5.13vw;
  }
  #page_hanasaki .story_sec .common_btn {
    margin-top: 10.26vw;
  }
  #page_hanasaki .story_sec .common_btn a {
    width: 100%;
  }
  #page_hanasaki .story_sec .common_btn a .label {
    font-size: 3.9vw;
  }
  #page_hanasaki .philosophy_sec {
    padding-top: 6.5vw;
  }
  #page_hanasaki .philosophy_sec .branch {
    left: 0;
    top: auto;
    bottom: -15.38vw;
    width: 51.28vw;
  }
  #page_hanasaki .philosophy_sec .cont .plane {
    position: static;
    width: 34vw;
    margin: 0 auto;
  }
  #page_hanasaki .philosophy_sec .cont .common_ttl_box {
    margin-top: 5.13vw;
    text-align: center;
  }
  #page_hanasaki .philosophy_sec .cont .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .philosophy_sec .cont .lead {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
    text-align: center;
  }
  #page_hanasaki .philosophy_sec .cont .text {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .philosophy_sec .box {
    margin-top: 7.69vw;
    padding: 10.26vw 5.13vw 12.82vw;
    border-radius: 5.13vw;
  }
  #page_hanasaki .philosophy_sec .box .flower1 {
    left: auto;
    right: -2.56vw;
    top: auto;
    bottom: -7.69vw;
    width: 25.64vw;
  }
  #page_hanasaki .philosophy_sec .box .flower2 {
    left: -2.56vw;
    top: auto;
    bottom: -8.13vw;
    width: 23.08vw;
  }
  #page_hanasaki .philosophy_sec .box .circle1 {
    left: -2.56vw;
    top: -3.85vw;
    width: 12.82vw;
  }
  #page_hanasaki .philosophy_sec .box .circle2 {
    left: auto;
    right: -1.28vw;
    top: 15.38vw;
    width: 8.21vw;
  }
  #page_hanasaki .philosophy_sec .box .box_ttl {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_hanasaki .philosophy_sec .box .box_ttl .num {
    font-size: 9.23vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list {
    margin-top: 8.21vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul {
    display: block;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li {
    width: 100%;
    padding: 0;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li + li {
    margin-top: 8vw;
    padding-top: 8vw;
    border-left: 0;
    border-top: 1px solid #d6c9c2;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .mark {
    width: 27vw;
    height: 27vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .mark .point {
    top: 2vw;
    font-size: 3.33vw;
    line-height: 2.2;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon1 {
    left: 8.1vw;
    top: 8.2vw;
    width: 10.8vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon2 {
    left: 7.74vw;
    top: 9.1vw;
    width: 11.52vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .mark .icon3 {
    left: 7.56vw;
    top: 9.46vw;
    width: 11.7vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .ttl {
    justify-content: flex-start;
    margin-top: 3vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .ttl .check {
    width: 8vw;
    margin-top: 0;
    margin-right: 3.08vw;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .ttl .label {
    padding-top: 0.77vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_hanasaki .philosophy_sec .box .point_list ul li .text {
    margin-top: 2.5vw;
    font-size: 3.59vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  #page_hanasaki .philosophy_sec .box .copy {
    margin-top: 7.69vw;
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_hanasaki .philosophy_sec .box .bottom_text {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-align: left;
  }
  #page_hanasaki .learning_sec {
    padding: 20.51vw 0 15.38vw;
  }
  #page_hanasaki .learning_sec .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_hanasaki .learning_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .learning_sec .card_list {
    margin-top: 7.69vw;
  }
  #page_hanasaki .learning_sec .card_list ul {
    display: block;
  }
  #page_hanasaki .learning_sec .card_list ul li {
    width: 100%;
    padding: 5.13vw 5.13vw 7.69vw;
  }
  #page_hanasaki .learning_sec .card_list ul li::before {
    transform: rotate(-1.5deg);
  }
  #page_hanasaki .learning_sec .card_list ul li + li {
    margin-top: 5.13vw;
  }
  #page_hanasaki .learning_sec .card_list ul li .img {
    width: 100%;
    height: 48.72vw;
    border-radius: 5.13vw;
  }
  #page_hanasaki .learning_sec .card_list ul li .ttl {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_hanasaki .learning_sec .card_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .instructor_sec {
    padding: 20.51vw 0 15.38vw;
  }
  #page_hanasaki .instructor_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    -webkit-mask-position: center bottom, center top;
    mask-position: center bottom, center top;
    -webkit-mask-size: 100% auto, 100% calc(100% - 100vw);
    mask-size: 100% auto, 100% calc(100% - 100vw);
  }
  #page_hanasaki .instructor_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .instructor_sec .intro_block {
    display: block;
    margin-top: 7.69vw;
  }
  #page_hanasaki .instructor_sec .intro_block .photo_block {
    width: 82.05vw;
    height: 55vw;
    margin: 0 auto;
  }
  #page_hanasaki .instructor_sec .intro_block .photo_block::before, #page_hanasaki .instructor_sec .intro_block .photo_block::after {
    border-radius: 5.13vw;
  }
  #page_hanasaki .instructor_sec .intro_block .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_hanasaki .instructor_sec .intro_block .text_block {
    width: 100%;
    margin: 9vw 0 0;
  }
  #page_hanasaki .instructor_sec .intro_block .text_block .ttl {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_hanasaki .instructor_sec .intro_block .text_block .text {
    margin-top: 4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .instructor_sec .sub_ttl {
    text-align: center;
    width: 100%;
    margin: 10.26vw 0 0;
    padding: 2.56vw 0;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_hanasaki .instructor_sec .goal_list {
    margin-top: 5.13vw;
  }
  #page_hanasaki .instructor_sec .goal_list ul {
    display: block;
  }
  #page_hanasaki .instructor_sec .goal_list ul li {
    width: 100%;
    padding-bottom: 5.13vw;
    border-radius: 5.13vw;
  }
  #page_hanasaki .instructor_sec .goal_list ul li + li {
    margin-top: 5.13vw;
  }
  #page_hanasaki .instructor_sec .goal_list ul li .ttl {
    padding: 3.08vw 0;
    border-radius: 5.13vw 5.13vw 0 0;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_hanasaki .instructor_sec .goal_list ul li .text {
    margin-top: 3.08vw;
    padding: 0 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-align: left;
  }
  #page_hanasaki .instructor_sec .bottom_text {
    margin-top: 7.69vw;
    font-size: 3.59vw;
    line-height: 1.8;
    text-align: left;
  }
  #page_hanasaki .instructor_sec .common_btn {
    margin-top: 7.69vw;
  }
  #page_hanasaki .instructor_sec .common_btn a {
    width: 100%;
    padding: 0 6.41vw;
  }
  #page_hanasaki .instructor_sec .common_btn a .label {
    font-size: 3.85vw;
  }
  #page_hanasaki .instructor_sec .common_btn a .dot {
    margin-left: 2.56vw;
  }
  #page_hanasaki .activity_sec {
    padding: 13vw 0 0;
  }
  #page_hanasaki .activity_sec .box {
    padding: 10.26vw 5.13vw 12.82vw;
    border-radius: 5.13vw;
  }
  #page_hanasaki .activity_sec .box::before {
    border-radius: 5.13vw;
  }
  #page_hanasaki .activity_sec .box .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .activity_sec .box .lead {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_hanasaki .activity_sec .box .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-align: left;
  }
  #page_hanasaki .activity_sec .box .activity_list {
    width: 100%;
    margin-top: 7.69vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul {
    display: block;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li {
    width: 100%;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li + li {
    margin-top: 10.26vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li:nth-child(even) {
    margin-top: 10.26vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li:nth-child(4) .ttl {
    margin-top: 5.13vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li:nth-child(4) .text {
    margin-top: 3.08vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .img {
    width: 100%;
    height: 53.33vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .img::before {
    left: -1.54vw;
    top: -1.54vw;
    width: 100%;
    height: 100%;
    border-width: 2px;
    border-radius: 6.15vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #page_hanasaki .activity_sec .box .activity_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .profile_sec {
    padding: 20.51vw 0 15.38vw;
  }
  #page_hanasaki .profile_sec::before {
    top: 47.18vw;
    background-color: #efe9e3;
    background-image: none;
    -webkit-mask-image: url(image/hanasaki_profile_back.svg), url(image/hanasaki_profile_back.svg), linear-gradient(#000, #000);
    mask-image: url(image/hanasaki_profile_back.svg), url(image/hanasaki_profile_back.svg), linear-gradient(#000, #000);
    -webkit-mask-position: center top, center bottom, center center;
    mask-position: center top, center bottom, center center;
    -webkit-mask-size: 100% auto, 100% auto, 100% calc(100% - 200vw);
    mask-size: 100% auto, 100% auto, 100% calc(100% - 200vw);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
  #page_hanasaki .profile_sec .common_ttl_box {
    text-align: center;
  }
  #page_hanasaki .profile_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .profile_sec .profile_block {
    display: flex;
    flex-direction: column;
    margin-top: 12vw;
  }
  #page_hanasaki .profile_sec .profile_block .text_block {
    margin-top: 8vw;
  }
  #page_hanasaki .profile_sec .profile_block .text_block .name {
    margin-top: 3.08vw;
  }
  #page_hanasaki .profile_sec .profile_block .photo_block {
    order: -1;
    width: 82.05vw;
    height: 52.31vw;
    margin: 0 auto;
  }
  #page_hanasaki .profile_sec .profile_block .photo_block::before {
    border-radius: 5.13vw;
  }
  #page_hanasaki .profile_sec .profile_block .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_hanasaki .profile_sec .history_ttl {
    margin-top: 12.82vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_hanasaki .profile_sec .history_table {
    margin-top: 3.08vw;
  }
  #page_hanasaki .profile_sec .history_table table {
    width: calc(100% + 1.03vw);
    margin: 0 -0.51vw;
    border-spacing: 0.51vw 0;
  }
  #page_hanasaki .profile_sec .history_table table th, #page_hanasaki .profile_sec .history_table table td {
    padding: 3.08vw 2.56vw;
    font-size: 3.33vw;
    line-height: 1.6;
    word-break: normal;
  }
  #page_hanasaki .profile_sec .history_table table th {
    width: 24.62vw;
  }
  #page_hanasaki .profile_sec .history_table table thead th {
    padding: 2.56vw;
    font-size: 3.85vw;
    line-height: 1.6;
  }
  #page_hanasaki .profile_sec .history_table table thead th.year {
    border-radius: 1.54vw 1.54vw 0 0;
  }
  #page_hanasaki .profile_sec .history_table table thead th.event {
    border-radius: 1.54vw;
  }
  #page_hanasaki .profile_sec .history_table table tbody tr:first-child th, #page_hanasaki .profile_sec .history_table table tbody tr:first-child td {
    padding-top: 3.08vw;
  }
  #page_hanasaki .profile_sec .history_table table tbody tr:last-child th {
    border-radius: 0 0 1.54vw 1.54vw;
  }
  #page_hanasaki .message_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_hanasaki .message_sec::before {
    background-size: 5.13vw 5.13vw;
  }
  #page_hanasaki .message_sec .cont {
    display: flex;
    flex-direction: column;
    padding-top: 11vw;
  }
  #page_hanasaki .message_sec .cont .deco_text {
    left: 0;
    top: -2.56vw;
    width: 100%;
    font-size: 11vw;
    text-align: left;
  }
  #page_hanasaki .message_sec .cont .text_block {
    display: contents;
  }
  #page_hanasaki .message_sec .cont .text_block > .label {
    order: 1;
    font-size: 3.59vw;
  }
  #page_hanasaki .message_sec .cont .text_block .ttl {
    order: 3;
    margin-top: 10vw;
    font-size: 6.15vw;
    line-height: 1.4;
  }
  #page_hanasaki .message_sec .cont .text_block .text {
    order: 4;
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  #page_hanasaki .message_sec .cont .text_block .sign {
    order: 5;
    margin-top: 5.13vw;
  }
  #page_hanasaki .message_sec .cont .text_block .sign .company {
    font-size: 3.33vw;
    line-height: 1.5;
  }
  #page_hanasaki .message_sec .cont .text_block .sign .name {
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_hanasaki .message_sec .cont .photo_block {
    order: 2;
    width: 100%;
    height: 60vw;
    margin: 11vw 0 0;
  }
  #page_hanasaki .message_sec .cont .photo_block::before {
    border-radius: 5.13vw;
  }
  #page_hanasaki .message_sec .cont .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_hanasaki .message_sec .cont .photo_block .img img {
    -o-object-position: center 30%;
       object-position: center 30%;
  }
  #page_hanasaki .message_sec .cont .photo_block .flower1 {
    left: auto;
    right: -4vw;
    top: -6vw;
    width: 18vw;
  }
  #page_hanasaki .message_sec .cont .photo_block .flower2 {
    left: -4vw;
    right: auto;
    top: auto;
    bottom: -6vw;
    width: 18vw;
  }
  #page_hanasaki .lesson_sec {
    padding: 20.51vw 0 20.51vw;
  }
  #page_hanasaki .lesson_sec .ring {
    left: -10.26vw;
    top: 2.56vw;
    width: 120.51vw;
  }
  #page_hanasaki .lesson_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_hanasaki .lesson_sec .lesson_list {
    margin-top: 7.69vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul {
    display: block;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li {
    width: 100%;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li + li {
    margin-top: 12.82vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .deco1 {
    left: -5.13vw;
    top: -3.85vw;
    width: 15.38vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .deco2 {
    left: auto;
    right: -2.56vw;
    top: -5.13vw;
    width: 12.82vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .deco3 {
    left: -5.13vw;
    top: -6.41vw;
    width: 17.95vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .deco4, #page_hanasaki .lesson_sec .lesson_list ul li .deco6 {
    left: auto;
    right: -2.56vw;
    top: 43.59vw;
    width: 10.26vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .deco5 {
    left: -2.56vw;
    top: 43.59vw;
    width: 10.26vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .img {
    width: 100%;
    height: 51.28vw;
    border-radius: 5.13vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .common_btn {
    margin-top: 5.13vw;
  }
  #page_hanasaki .lesson_sec .lesson_list ul li .common_btn a .label {
    font-size: 3.7vw;
    line-height: 1.3;
  }
  #page_hanasaki .profile_block .text_block .name .en {
    margin-top: 1.03vw;
  }
  #page_hanasaki .message_sec::before {
    top: -35.38vw;
  }
  #page_group .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_group .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_group .lead_sec .cont .text {
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_group .business_sec {
    padding: 12.82vw 0 15.38vw;
  }
  #page_group .business_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_group .business_sec .business_list {
    margin-top: 7.69vw;
  }
  #page_group .business_sec .business_list ul {
    display: block;
  }
  #page_group .business_sec .business_list ul li + li {
    margin-top: 12.82vw;
  }
  #page_group .business_sec .business_list ul li .img {
    width: 100%;
    height: 42.56vw;
  }
  #page_group .business_sec .business_list ul li .img::before {
    left: -1.54vw;
    top: -1.54vw;
    width: 100%;
    height: 100%;
    border-width: 2px;
    border-radius: 6.15vw;
  }
  #page_group .business_sec .business_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_group .business_sec .business_list ul li .ttl {
    flex-wrap: wrap;
    margin-top: 6.41vw;
  }
  #page_group .business_sec .business_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_group .business_sec .business_list ul li .ttl .label {
    font-size: 5.13vw;
  }
  #page_group .business_sec .business_list ul li .ttl .address {
    width: 100%;
    margin: 2.56vw 0 0;
    font-size: 3.33vw;
    line-height: 1.5;
  }
  #page_group .business_sec .business_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_group .business_sec .business_list ul li .link_list {
    display: block;
    padding-top: 5.13vw;
  }
  #page_group .business_sec .business_list ul li .link_list .link_btn {
    width: 100%;
    padding-bottom: 2.56vw;
    background-size: 2.05vw 0.77vw;
  }
  #page_group .business_sec .business_list ul li .link_list .link_btn + .link_btn {
    margin-top: 5.13vw;
  }
  #page_group .business_sec .business_list ul li .link_list .link_btn .label {
    font-size: 3.85vw;
    line-height: 1.4;
  }
  #page_group .business_sec .business_list ul li .link_list .link_btn .arrow {
    width: 6.15vw;
  }
  #page_group .business_sec .business_list ul li .shop_list {
    display: block;
    margin-top: 3.08vw;
  }
  #page_group .business_sec .business_list ul li .shop_list .shop {
    width: 100%;
  }
  #page_group .business_sec .business_list ul li .shop_list .shop + .shop {
    margin-top: 7.69vw;
  }
  #page_group .business_sec .business_list ul li .shop_list .shop .shop_name {
    font-size: 4.1vw;
    line-height: 1.5;
  }
  #page_group .business_sec .business_list ul li .shop_list .shop .text {
    margin-top: 2.05vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_group .business_sec .business_list ul li .shop_list .shop .link_list {
    padding-top: 3.08vw;
  }
  #page_group .company_sec {
    padding: 20.51vw 0 14vw;
  }
  #page_group .company_sec .ring {
    left: -5.13vw;
    top: 7.69vw;
    width: 110.26vw;
  }
  #page_group .company_sec .photo {
    border-radius: 3.85vw;
  }
  #page_group .company_sec .photo1 {
    left: -3vw;
    top: 9vw;
    width: 26vw;
    height: 20vw;
  }
  #page_group .company_sec .photo2 {
    left: auto;
    right: -5vw;
    top: 4vw;
    width: 24vw;
    height: 29vw;
  }
  #page_group .company_sec .photo3 {
    left: -3vw;
    top: auto;
    bottom: 7vw;
    width: 24vw;
    height: 29vw;
  }
  #page_group .company_sec .photo4 {
    left: auto;
    right: -5vw;
    top: auto;
    bottom: 23vw;
    width: 28vw;
    height: 21.5vw;
    transform: rotate(6deg);
  }
  #page_group .company_sec .circle2 {
    left: 0;
    top: 3vw;
    width: 12vw;
  }
  #page_group .company_sec .circle1 {
    left: auto;
    right: 1.28vw;
    top: 64.1vw;
    width: 15.38vw;
  }
  #page_group .company_sec .deco1, #page_group .company_sec .deco2 {
    display: none;
  }
  #page_group .company_sec .common_ttl_box .ttl {
    margin-top: 3.08vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_group .company_sec .cont .text {
    margin-top: 6.41vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_group .company_sec .cont .common_btn {
    margin-top: 7.69vw;
  }
  #page_group .company_sec .cont .common_btn a {
    width: 100%;
  }
  #page_group .business_sec .business_list ul li .link_list .link_btn:hover .arrow {
    transform: none;
  }
  #page_atelier .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_atelier .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_atelier .lead_sec .cont .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_atelier .lead_sec .cont .circle2 {
    left: auto;
    right: -1.28vw;
    top: 10.26vw;
    width: 9.23vw;
  }
  #page_atelier .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_atelier .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_atelier .atelier_sec {
    padding: 15.38vw 0 51vw;
    background-image: url(image/course_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #page_atelier .atelier_sec::before {
    -webkit-mask-image: url(image/course_sec_back_sp.svg);
    mask-image: url(image/course_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #page_atelier .atelier_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_atelier .atelier_sec .info_block {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 7.69vw;
  }
  #page_atelier .atelier_sec .info_block .text_block {
    width: 100%;
    margin-top: 12vw;
  }
  #page_atelier .atelier_sec .info_block .text_block .ttl {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_atelier .atelier_sec .info_block .text_block .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_atelier .atelier_sec .info_block .text_block .info_list {
    width: 100%;
    margin-top: 5.13vw;
    padding: 5.13vw 5.13vw 4.1vw;
    border-radius: 5.13vw;
  }
  #page_atelier .atelier_sec .info_block .text_block .info_list .row {
    align-items: flex-start;
    padding: 3.08vw 0 2.56vw;
  }
  #page_atelier .atelier_sec .info_block .text_block .info_list .row dt {
    width: 23.08vw;
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_atelier .atelier_sec .info_block .text_block .info_list .row dd {
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_atelier .atelier_sec .info_block .text_block .common_btn {
    margin-top: 6.41vw;
  }
  #page_atelier .atelier_sec .info_block .text_block .common_btn a {
    width: 100%;
  }
  #page_atelier .atelier_sec .info_block .photo_block {
    width: 76.92vw;
    height: 67.18vw;
    margin: 0 auto;
  }
  #page_atelier .atelier_sec .info_block .photo_block::before, #page_atelier .atelier_sec .info_block .photo_block::after {
    border-radius: 5.13vw;
  }
  #page_atelier .atelier_sec .info_block .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_atelier .common_instructor_sec {
    margin-top: -30.26vw;
    padding-bottom: 15.38vw;
  }
  #page_atelier .online_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_atelier .online_sec::before {
    background-image: radial-gradient(#ebebeb 0.51vw, transparent 0.64vw);
    background-size: 6.15vw 6.15vw;
    background-position: 3.08vw 2.56vw;
  }
  #page_atelier .online_sec .cont {
    display: flex;
    flex-direction: column;
  }
  #page_atelier .online_sec .cont .photo_block {
    width: 100%;
    height: 55vw;
    margin: 10.26vw auto 0;
  }
  #page_atelier .online_sec .cont .photo_block::before {
    left: -1.54vw;
    top: -0.51vw;
    border-radius: 5.13vw;
  }
  #page_atelier .online_sec .cont .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_atelier .online_sec .cont .photo_block .flowers {
    left: -7.69vw;
    top: -7.69vw;
    width: 20.51vw;
  }
  #page_atelier .online_sec .cont .photo_block .girl {
    left: auto;
    right: -4.7vw;
    top: auto;
    bottom: -5.13vw;
    width: 20vw;
  }
  #page_atelier .online_sec .cont .text_block {
    width: 100%;
    display: contents;
  }
  #page_atelier .online_sec .cont .text_block .circles {
    left: auto;
    right: 0;
    top: 14vw;
    width: 15.38vw;
  }
  #page_atelier .online_sec .cont .text_block .common_ttl_box {
    position: relative;
    z-index: 1;
    order: -1;
  }
  #page_atelier .online_sec .cont .text_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 6.6vw;
    line-height: 1.4;
  }
  #page_atelier .online_sec .cont .text_block .copy {
    margin-top: 7vw;
    font-size: 6.1vw;
    line-height: 1.5;
  }
  #page_atelier .online_sec .cont .text_block .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_atelier .online_sec .cont .text_block .line_btn {
    width: 100%;
    height: 17.95vw;
    margin-top: 7.69vw;
    padding-left: 12.82vw;
  }
  #page_atelier .online_sec .cont .text_block .line_btn .icon {
    width: 7.95vw;
    margin-right: 6.15vw;
  }
  #page_atelier .online_sec .cont .text_block .line_btn .label {
    font-size: 4.1vw;
  }
  #page_atelier .atelier_sec .info_block .photo_block::before {
    left: -2.56vw;
    top: 0.77vw;
  }
  #page_atelier .atelier_sec .info_block .photo_block::after {
    top: 1.28vw;
  }
  #page_atelier .online_sec .cont .text_block .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  #page_company .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_company .philosophy_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_company .philosophy_sec .philosophy_list {
    margin-top: 5vw;
  }
  #page_company .philosophy_sec .philosophy_list ul {
    display: block;
  }
  #page_company .philosophy_sec .philosophy_list ul li {
    width: 100%;
    padding-top: 2.82vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li + li {
    margin-top: 3vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li .num {
    left: 50%;
    width: 19.49vw;
    padding: 0;
    border-radius: 3.08vw;
    font-size: 4.1vw;
    line-height: 1.5;
    transform: translateX(-50%);
  }
  #page_company .philosophy_sec .philosophy_list ul li .box {
    display: flex;
    align-items: center;
    gap: 0 3.5vw;
    padding: 4vw 5vw 3.5vw;
    border-radius: 5.13vw;
    text-align: left;
  }
  #page_company .philosophy_sec .philosophy_list ul li .box .icon {
    flex-shrink: 0;
    width: 17.95vw;
    height: 17.95vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li .box .icon img {
    width: 10vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li .box .text {
    flex-grow: 1;
    margin-top: 0;
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_company .philosophy_sec .philosophy_list ul li:nth-child(2) .box .icon img {
    width: 9.49vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li:nth-child(3) .box .icon img {
    width: 8.21vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li:nth-child(4) .box .icon img {
    width: 7.69vw;
  }
  #page_company .philosophy_sec .philosophy_list ul li:nth-child(5) .box .icon img {
    width: 9.74vw;
  }
  #page_company .info_sec {
    margin-top: -10.26vw;
    padding: 25.64vw 0 15.38vw;
    background-image: url(image/company_info_back_sp.svg);
  }
  #page_company .info_sec::before {
    -webkit-mask-image: url(image/company_info_back_sp.svg);
    mask-image: url(image/company_info_back_sp.svg);
  }
  #page_company .info_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_company .info_sec .info_box {
    margin-top: 6.41vw;
    padding: 2.56vw 5.13vw 6.15vw;
    border-radius: 5.13vw;
  }
  #page_company .info_sec .info_box .info_table th, #page_company .info_sec .info_box .info_table td {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: 0;
    font-size: 3.59vw;
    line-height: 1.6;
  }
  #page_company .info_sec .info_box .info_table th {
    padding-top: 3.59vw;
  }
  #page_company .info_sec .info_box .info_table td {
    padding: 1.03vw 0 3.59vw;
    border-bottom: 1px dashed #c3c2c2;
  }
  #page_company .info_sec .info_box .info_table tr:last-child th {
    padding-bottom: 0;
  }
  #page_company .info_sec .info_box .info_table tr:last-child td {
    padding-bottom: 0;
    border-bottom: 0;
  }
  #page_company .info_sec .common_btn {
    margin-top: 7.69vw;
  }
  #page_company .info_sec .common_btn a {
    width: 100%;
    padding-right: 7.69vw;
  }
  #page_company .representative_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_company .representative_sec::before {
    background-size: 5.13vw 5.13vw;
  }
  #page_company .representative_sec .cont .deco_text {
    left: 0;
    top: -2.56vw;
    width: 100%;
    font-size: 9vw;
  }
  #page_company .representative_sec .cont .profile_block {
    display: block;
  }
  #page_company .representative_sec .cont .profile_block .text_block {
    width: 100%;
    padding-top: 7.69vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block > .label {
    font-size: 3.59vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block .name {
    margin-top: 5.13vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block .name .ja {
    font-size: 7.18vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block .name .en {
    margin-left: 5.13vw;
    font-size: 3.59vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_company .representative_sec .cont .profile_block .text_block .common_btn {
    margin-top: 6.41vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block .common_btn a {
    width: 100%;
  }
  #page_company .representative_sec .cont .profile_block .photo_block {
    display: flow-root;
    width: 100%;
    height: auto;
    margin: 7.69vw 0 0;
    padding: 0 0 7.69vw 5.13vw;
  }
  #page_company .representative_sec .cont .profile_block .photo_block::before {
    left: 15.38vw;
    width: 76.92vw;
    height: 69.74vw;
    border-radius: 5.13vw;
  }
  #page_company .representative_sec .cont .profile_block .photo_block .img {
    width: 76.92vw;
    height: 69.74vw;
    margin: 7.69vw 0 0 2.56vw;
    border-radius: 5.13vw;
  }
  #page_company .representative_sec .cont .profile_block .photo_block .girl {
    left: 0;
    top: auto;
    bottom: 0;
    width: 30.77vw;
  }
  #page_company .representative_sec .cont .profile_block .text_block .name .en {
    margin-top: 1.03vw;
  }
  #page_company .info_sec .info_box .info_table td a:hover {
    text-decoration: none;
  }
  #page_course .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_course .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_course .lead_sec .cont .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_course .lead_sec .cont .circle2 {
    left: auto;
    right: -1.28vw;
    top: 23.08vw;
    width: 9.23vw;
  }
  #page_course .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_course .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course .find_sec {
    padding: 20.51vw 0 20.51vw;
    background-image: url(image/course_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #page_course .find_sec::before {
    -webkit-mask-image: url(image/course_sec_back_sp.svg);
    mask-image: url(image/course_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
  }
  #page_course .find_sec .find_circles {
    left: -1.54vw;
    top: 30.77vw;
    width: 21.79vw;
  }
  #page_course .find_sec .wrap {
    max-width: 94.87vw;
  }
  #page_course .find_sec .common_ttl_box .ttl {
    margin-top: 0.51vw;
  }
  #page_course .find_sec .common_course_box {
    margin-top: 7.69vw;
  }
  #page_course .find_sec .common_course_box .plane {
    left: 60vw;
    top: auto;
  }
  #page_course .find_sec .common_course_box .joinus {
    left: 27.69vw;
    top: auto;
  }
  #page_course .find_sec .common_course_box .circles {
    left: 55.64vw;
    top: auto;
  }
  #page_course .about_sec {
    padding-top: 15.38vw;
  }
  #page_course .about_sec .ttl_block .flower1 {
    left: 0;
    top: -5.13vw;
    width: 15.38vw;
  }
  #page_course .about_sec .ttl_block .flower2 {
    left: auto;
    right: 0;
    top: auto;
    bottom: -11vw;
    width: 12vw;
  }
  #page_course .about_sec .ttl_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 6vw;
    line-height: 1.5;
  }
  #page_course .about_sec .ttl_block .common_ttl_box .ttl .small {
    font-size: 5vw;
    line-height: 1.5;
  }
  #page_course .about_sec .work_list {
    margin-top: 6vw;
  }
  #page_course .about_sec .work_list ul {
    display: block;
  }
  #page_course .about_sec .work_list ul li {
    width: 100%;
    padding-top: 6.41vw;
  }
  #page_course .about_sec .work_list ul li + li {
    margin-top: 3vw;
  }
  #page_course .about_sec .work_list ul li .num {
    left: 50%;
    width: 12.82vw;
    padding: 3.59vw 0;
    font-size: 5.64vw;
    transform: translateX(-50%);
  }
  #page_course .about_sec .work_list ul li .num::before {
    inset: -1.03vw;
  }
  #page_course .about_sec .work_list ul li .box {
    padding: 7.69vw 5.13vw 7.69vw;
    border-image-width: 6.41vw;
  }
  #page_course .about_sec .work_list ul li .box .img {
    width: 100%;
    height: auto;
    aspect-ratio: 5/3;
    border-radius: 2.56vw;
  }
  #page_course .about_sec .work_list ul li .box .ttl {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_course .about_sec .work_list ul li .box .text {
    margin-top: 2.05vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course .support_sec {
    margin-top: 9vw;
    padding: 18vw 0 20.51vw;
  }
  #page_course .support_sec .cont {
    display: block;
  }
  #page_course .support_sec .cont .photo_block {
    width: 100%;
    height: 55vw;
    margin: 0 auto;
  }
  #page_course .support_sec .cont .photo_block::before, #page_course .support_sec .cont .photo_block::after {
    border-radius: 5.13vw;
  }
  #page_course .support_sec .cont .photo_block::before {
    left: -1.38vw;
    right: 1.38vw;
  }
  #page_course .support_sec .cont .photo_block::after {
    left: -1.9vw;
    right: 1.9vw;
  }
  #page_course .support_sec .cont .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_course .support_sec .cont .photo_block .circle1 {
    left: -7.69vw;
    top: -10.26vw;
    width: 20.51vw;
  }
  #page_course .support_sec .cont .photo_block .circle2 {
    left: auto;
    right: -7.69vw;
    top: auto;
    bottom: -5.13vw;
    width: 15.38vw;
  }
  #page_course .support_sec .cont .text_block {
    width: 100%;
    margin: 9vw 0 0;
  }
  #page_course .support_sec .cont .text_block .girl {
    left: auto;
    right: 0;
    top: 18.56vw;
    width: 25.64vw;
  }
  #page_course .support_sec .cont .text_block .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_course .support_sec .cont .text_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 6.67vw;
    line-height: 1.5;
    letter-spacing: 0.04em;
  }
  #page_course .support_sec .cont .text_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course .support_sec .cont .text_block .line_btn {
    justify-content: center;
    width: 100%;
    height: 17.95vw;
    margin-top: 7.69vw;
    padding-left: 0;
  }
  #page_course .support_sec .cont .text_block .line_btn .icon {
    width: 7.95vw;
    margin-right: 6.15vw;
  }
  #page_course .support_sec .cont .text_block .line_btn .label {
    font-size: 4.1vw;
  }
  #page_course .common_voice_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_course .support_sec .cont .text_block .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  #page_course_single .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_course_single .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_course_single .lead_sec .cont .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_course_single .lead_sec .cont .circle2 {
    left: auto;
    right: -1.28vw;
    top: 23.08vw;
    width: 9.23vw;
  }
  #page_course_single .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_course_single .lead_sec .cont .copy .num {
    font-size: 6.41vw;
  }
  #page_course_single .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course_single .recommend_sec {
    padding: 20.51vw 0 15.38vw;
  }
  #page_course_single .recommend_sec .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_course_single .recommend_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_course_single .recommend_sec .sub {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_course_single .recommend_sec .check_list {
    margin-top: 6.41vw;
  }
  #page_course_single .recommend_sec .check_list ul {
    display: block;
  }
  #page_course_single .recommend_sec .check_list ul li {
    padding: 3.08vw 3.85vw;
    border-radius: 2.56vw;
  }
  #page_course_single .recommend_sec .check_list ul li + li {
    margin-top: 3.08vw;
  }
  #page_course_single .recommend_sec .check_list ul li .check {
    width: 8.21vw;
    height: 8.21vw;
    margin: 0 3.08vw 0 0;
  }
  #page_course_single .recommend_sec .check_list ul li .check img {
    width: 7.69vw;
  }
  #page_course_single .recommend_sec .check_list ul li .label {
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_course_single .recommend_sec .bottom_block {
    margin-top: 7.69vw;
  }
  #page_course_single .recommend_sec .bottom_block .circle3 {
    left: -7.56vw;
    top: -5.13vw;
    width: 10.38vw;
  }
  #page_course_single .recommend_sec .bottom_block .circle4 {
    left: auto;
    right: -8.56vw;
    top: auto;
    bottom: -8.82vw;
    width: 11.38vw;
  }
  #page_course_single .recommend_sec .bottom_block .text {
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course_single .recommend_sec .bottom_block .copy {
    margin-top: 2.56vw;
    font-size: 4.62vw;
    line-height: 1.8;
  }
  #page_course_single .recommend_sec .bottom_block .copy .under {
    display: inline;
    padding-bottom: 0.27vw;
    border-bottom-width: 2px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  #page_course_single .content_sec .box {
    padding: 12.82vw 5.13vw 12.82vw;
    border-radius: 5.13vw;
  }
  #page_course_single .content_sec .box::before {
    border-radius: 5.13vw;
  }
  #page_course_single .content_sec .box .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_course_single .content_sec .box .copy {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_course_single .content_sec .box .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course_single .content_sec .box .lesson_list {
    width: 100%;
    margin-top: 7.69vw;
  }
  #page_course_single .content_sec .box .lesson_list ul {
    display: block;
  }
  #page_course_single .content_sec .box .lesson_list ul li {
    width: 100%;
  }
  #page_course_single .content_sec .box .lesson_list ul li + li {
    margin-top: 10.26vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li:nth-child(even) {
    margin-top: 10.26vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li .img {
    width: 100%;
    height: 46.15vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li .img::before {
    left: -1.54vw;
    top: -1.54vw;
    width: 100%;
    height: 100%;
    border-width: 2px;
    border-radius: 6.15vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_course_single .content_sec .box .lesson_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #page_course_single .content_sec .box .lesson_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_course_single .content_sec .box .works_block {
    margin-top: 15.38vw;
  }
  #page_course_single .content_sec .box .works_block .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_course_single .content_sec .box .works_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
  }
  #page_course_single .content_sec .box .works_block .sub_ttl {
    gap: 0 2.56vw;
    margin-top: 5.13vw;
    font-size: 5.13vw;
    line-height: 1.4;
  }
  #page_course_single .content_sec .box .works_block .sub_ttl .lotus {
    flex-shrink: 0;
    width: 10.26vw;
  }
  #page_course_single .content_sec .box .works_block .sub_ttl .label {
    text-align: center;
  }
  #page_course_single .content_sec .box .works_block .note {
    margin-top: 7.69vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course_single .content_sec .box .works_block .work_list {
    width: 100%;
    margin-top: 7.69vw;
  }
  #page_course_single .content_sec .box .works_block .work_list ul {
    display: block;
  }
  #page_course_single .content_sec .box .works_block .work_list ul li {
    width: 100%;
  }
  #page_course_single .content_sec .box .works_block .work_list ul li + li {
    margin-top: 5vw;
  }
  #page_course_single .content_sec .box .works_block .work_list ul li::before {
    left: -1.54vw;
    top: 2.05vw;
    width: 100%;
    height: 100%;
    border-radius: 5.13vw;
    transform: rotate(-2deg);
  }
  #page_course_single .content_sec .box .works_block .work_list ul li:nth-child(2)::before {
    left: 1.54vw;
    transform: rotate(2deg);
  }
  #page_course_single .content_sec .box .works_block .work_list ul li .card {
    padding: 5.13vw 5.13vw 6.41vw;
    border-radius: 5.13vw;
  }
  #page_course_single .content_sec .box .works_block .work_list ul li .card .img {
    width: 100%;
    height: 46.15vw;
    border-radius: 2.56vw;
  }
  #page_course_single .content_sec .box .works_block .work_list ul li .card .ttl {
    margin-top: 4.1vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_course_single .content_sec .box .works_block .work_list ul li .card .text {
    margin-top: 2.05vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_course_single .movie_sec {
    margin-top: -5.13vw;
    padding: 20.51vw 0 15.38vw;
  }
  #page_course_single .movie_sec::before {
    background-size: 5.13vw 5.13vw;
  }
  #page_course_single .movie_sec .cont {
    display: block;
  }
  #page_course_single .movie_sec .cont .deco_text {
    left: -2.56vw;
    top: -1.28vw;
    width: auto;
    font-size: 9vw;
    text-align: left;
  }
  #page_course_single .movie_sec .cont .text_block {
    width: 100%;
    padding-top: 5.13vw;
  }
  #page_course_single .movie_sec .cont .text_block > .label {
    font-size: 3.59vw;
  }
  #page_course_single .movie_sec .cont .text_block .ttl {
    margin-top: 8vw;
    font-size: 5.64vw;
    line-height: 1.5;
    letter-spacing: 0.04em;
  }
  #page_course_single .movie_sec .cont .text_block .text {
    margin-top: 3.5vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_course_single .movie_sec .cont .text_block .common_btn {
    margin-top: 6.41vw;
  }
  #page_course_single .movie_sec .cont .text_block .common_btn a {
    width: 87.18vw;
  }
  #page_course_single .movie_sec .cont .thumb_block {
    width: 82.05vw;
    height: 46.15vw;
    margin: 9vw auto 0;
  }
  #page_course_single .movie_sec .cont .thumb_block::before, #page_course_single .movie_sec .cont .thumb_block::after {
    width: 100%;
    height: 100%;
    border-radius: 5.13vw;
  }
  #page_course_single .movie_sec .cont .thumb_block::before {
    left: -2.05vw;
    top: 2.05vw;
  }
  #page_course_single .movie_sec .cont .thumb_block::after {
    left: 2.05vw;
    top: -2.05vw;
  }
  #page_course_single .movie_sec .cont .thumb_block .img {
    border-radius: 5.13vw;
  }
  #page_course_single .flow_sec {
    margin-top: 0;
    padding: 20.51vw 0 20.51vw;
    background-image: url(image/news_sec_back_sp.svg), linear-gradient(#f1e6e0, #f1e6e0);
    background-position: center bottom, center top;
    background-size: 100% 175.64vw, 100% calc(100% - 170vw);
  }
  #page_course_single .flow_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    -webkit-mask-size: 100% 175.64vw, 100% calc(100% - 170vw);
    mask-size: 100% 175.64vw, 100% calc(100% - 170vw);
    -webkit-mask-position: center bottom, center top;
    mask-position: center bottom, center top;
  }
  #page_course_single .flow_sec .cont > .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_course_single .flow_sec .cont > .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_course_single .flow_sec .cont > .copy {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_course_single .flow_sec .cont > .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course_single .flow_sec .cont .info_block {
    margin-top: 10.26vw;
    padding-top: 10.26vw;
  }
  #page_course_single .flow_sec .cont .info_block .circle1 {
    left: -2.56vw;
    top: 2.56vw;
    width: 15.38vw;
  }
  #page_course_single .flow_sec .cont .info_block .circle2 {
    left: auto;
    right: -2.56vw;
    top: auto;
    bottom: 20.51vw;
    width: 15.38vw;
  }
  #page_course_single .flow_sec .cont .info_block .info_head {
    display: block;
  }
  #page_course_single .flow_sec .cont .info_block .info_head .common_ttl_box {
    margin-top: 0;
    text-align: center;
  }
  #page_course_single .flow_sec .cont .info_block .info_head .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_course_single .flow_sec .cont .info_block .info_head .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_course_single .flow_sec .cont .info_block .info_head .note {
    width: 100%;
    margin-top: 5.13vw;
    font-size: 3.33vw;
    line-height: 1.6;
    text-align: center;
  }
  #page_course_single .flow_sec .cont .info_block .info_table {
    margin-top: 6.41vw;
    padding-bottom: 0;
    border-radius: 5.13vw;
  }
  #page_course_single .flow_sec .cont .info_block .info_table table th, #page_course_single .flow_sec .cont .info_block .info_table table td {
    display: block;
    width: 100%;
    padding: 0 5.13vw;
    border: 0;
    font-size: 3.59vw;
    line-height: 1.6;
  }
  #page_course_single .flow_sec .cont .info_block .info_table table thead {
    display: none;
  }
  #page_course_single .flow_sec .cont .info_block .info_table table tbody th {
    padding-top: 3.59vw;
    border-top: 1px solid #ddd;
    color: #e25353;
  }
  #page_course_single .flow_sec .cont .info_block .info_table table tbody tr:first-child th {
    border-top: 0;
  }
  #page_course_single .flow_sec .cont .info_block .info_table table tbody td {
    padding: 1.03vw 5.13vw 3.59vw;
  }
  #page_course_single .flow_sec .cont .info_block .common_btn {
    margin-top: 7.69vw;
    padding: 0 5.13vw;
  }
  #page_course_single .flow_sec .cont .info_block .common_btn a {
    width: 100%;
  }
  #page_course_single .content_sec + .flow_sec {
    margin-top: -12.82vw;
    padding-top: 33.33vw;
  }
  #page_course_single .extra_sec {
    padding: 15.38vw 0 0;
  }
  #page_course_single .extra_sec .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_course_single .extra_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_course_single .extra_sec .copy {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_course_single .extra_sec .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_course_single .common_voice_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_course_single .common_faq_sec {
    padding-bottom: 15.64vw;
  }
  #page_course_single .next_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_course_single .next_sec::before {
    background-size: 5.13vw 5.13vw;
  }
  #page_course_single .next_sec .cont {
    display: block;
  }
  #page_course_single .next_sec .cont .photo_block {
    width: 76.92vw;
    height: 64.62vw;
    margin: 5.13vw auto 0;
  }
  #page_course_single .next_sec .cont .photo_block::before {
    left: -1.54vw;
    top: -0.51vw;
    border-radius: 5.13vw;
  }
  #page_course_single .next_sec .cont .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_course_single .next_sec .cont .photo_block .flowers {
    left: -7.69vw;
    top: -7.69vw;
    width: 20.51vw;
  }
  #page_course_single .next_sec .cont .photo_block .girl {
    left: auto;
    right: -7.69vw;
    top: auto;
    bottom: -5.13vw;
    width: 30.77vw;
  }
  #page_course_single .next_sec .cont .text_block {
    width: 100%;
    margin: 9vw 0 0;
  }
  #page_course_single .next_sec .cont .text_block .circles {
    left: auto;
    right: -2.56vw;
    top: -10.26vw;
    width: 15.38vw;
  }
  #page_course_single .next_sec .cont .text_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_course_single .next_sec .cont .text_block .copy {
    margin-top: 5.13vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_course_single .next_sec .cont .text_block .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_course_single .next_sec .cont .text_block .common_btn {
    margin-top: 6.41vw;
  }
  #page_course_single .next_sec .cont .text_block .common_btn a {
    width: 87.18vw;
    min-width: 0;
    padding: 0 5.13vw;
  }
  #page_course_single .next_sec .cont .text_block .common_btn a .label {
    font-size: 3.59vw;
    letter-spacing: 0.02em;
  }
  #page_course_single .next_sec .next_list {
    display: block;
    margin-top: 7.69vw;
    padding-top: 7.69vw;
  }
  #page_course_single .next_sec .next_list .item + .item {
    margin-top: 7.69vw;
    padding-top: 7.69vw;
    background: linear-gradient(to right, #b2ac9c 6px, transparent 6px) -3px 0/10px 2px repeat-x;
  }
  #page_course_single .next_sec .next_list .item .tag {
    padding: 1.03vw 3.85vw;
    border-radius: 5.13vw;
    font-size: 3.33vw;
    line-height: 1.5;
  }
  #page_course_single .next_sec .next_list .item .name {
    margin-top: 2.56vw;
    font-size: 5.13vw;
  }
  #page_course_single .next_sec .next_list .item .text {
    margin-top: 2.56vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_course_single .next_sec .next_list .item .common_btn {
    width: 100%;
    padding-top: 4.1vw;
  }
  #page_course_single .next_sec .next_list .item .common_btn a {
    width: 100%;
    padding: 0 5.13vw;
  }
  #page_course_single .next_sec .next_list .item .common_btn a .label {
    font-size: 3.33vw;
    letter-spacing: 0.02em;
  }
  #page_course_single .movie_sec .cont .thumb_block .img:hover img {
    transform: none;
  }
  #page_training .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_training .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_training .lead_sec .cont .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_training .lead_sec .cont .circle2 {
    left: auto;
    right: -1.28vw;
    top: 33.33vw;
    width: 9.23vw;
  }
  #page_training .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_training .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .philosophy_sec {
    margin-top: 0;
    padding: 20.51vw 0 15.38vw;
    background-image: url(image/news_sec_back_sp.svg), linear-gradient(#f1e6e0, #f1e6e0);
    background-position: center bottom, center top;
    background-size: 100% 175.64vw, 100% calc(100% - 175.64vw + 1px);
  }
  #page_training .philosophy_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    -webkit-mask-size: 100% 175.64vw, 100% calc(100% - 175.64vw + 1px);
    mask-size: 100% 175.64vw, 100% calc(100% - 175.64vw + 1px);
    -webkit-mask-position: center bottom, center top;
    mask-position: center bottom, center top;
  }
  #page_training .philosophy_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .philosophy_sec .intro_block {
    display: block;
    margin-top: 7.69vw;
  }
  #page_training .philosophy_sec .intro_block .photo_block {
    width: 100%;
    height: 55vw;
    margin: 0 auto;
  }
  #page_training .philosophy_sec .intro_block .photo_block::before, #page_training .philosophy_sec .intro_block .photo_block::after {
    border-radius: 5.13vw;
  }
  #page_training .philosophy_sec .intro_block .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_training .philosophy_sec .intro_block .text_block {
    width: 100%;
    margin: 9vw 0 0;
  }
  #page_training .philosophy_sec .intro_block .text_block .ttl {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_training .philosophy_sec .intro_block .text_block .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
    line-break: strict;
  }
  #page_training .philosophy_sec .goal_list {
    margin-top: 10.26vw;
  }
  #page_training .philosophy_sec .goal_list ul {
    display: block;
  }
  #page_training .philosophy_sec .goal_list ul li {
    width: 100%;
    padding-bottom: 5.13vw;
    border-radius: 5.13vw;
  }
  #page_training .philosophy_sec .goal_list ul li + li {
    margin-top: 5.13vw;
  }
  #page_training .philosophy_sec .goal_list ul li .ttl {
    padding: 3.08vw 0;
    border-radius: 5.13vw 5.13vw 0 0;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .philosophy_sec .goal_list ul li .sub {
    margin-top: 4.1vw;
    padding: 0 5.13vw;
    font-size: 4.1vw;
    line-height: 1.5;
  }
  #page_training .philosophy_sec .goal_list ul li .text {
    margin: 2.56vw 5.13vw 0;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .philosophy_sec .copy {
    margin-top: 10.26vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_training .philosophy_sec .copy .under {
    padding: 0 1.28vw 2.82vw;
  }
  #page_training .philosophy_sec .copy .under::after {
    left: 0;
    right: 0;
    height: 1.28vw;
  }
  #page_training .philosophy_sec .bottom_text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.8;
  }
  #page_training .recommend_sec {
    padding: 13vw 0 15.38vw;
  }
  #page_training .recommend_sec .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_training .recommend_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .recommend_sec .sub {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .recommend_sec .check_list {
    margin-top: 6.41vw;
  }
  #page_training .recommend_sec .check_list ul {
    display: block;
  }
  #page_training .recommend_sec .check_list ul li {
    padding: 3.08vw 3.85vw;
    border-radius: 2.56vw;
  }
  #page_training .recommend_sec .check_list ul li + li {
    margin-top: 3.08vw;
  }
  #page_training .recommend_sec .check_list ul li .check {
    width: 8.21vw;
    height: 8.21vw;
    margin: 0 3.08vw 0 0;
  }
  #page_training .recommend_sec .check_list ul li .check img {
    width: 7.69vw;
  }
  #page_training .recommend_sec .check_list ul li .label {
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_training .recommend_sec .bottom_block {
    margin-top: 7.69vw;
  }
  #page_training .recommend_sec .bottom_block .circle3 {
    left: -7.56vw;
    top: -5.13vw;
    width: 10.38vw;
  }
  #page_training .recommend_sec .bottom_block .circle4 {
    left: auto;
    right: -8.56vw;
    top: auto;
    bottom: -8.82vw;
    width: 11.38vw;
  }
  #page_training .recommend_sec .bottom_block .text {
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .recommend_sec .bottom_block .copy {
    margin-top: 2.56vw;
    font-size: 4.62vw;
    line-height: 1.8;
  }
  #page_training .recommend_sec .bottom_block .copy .under {
    display: inline;
    padding-bottom: 0.27vw;
    border-bottom-width: 2px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  #page_training .content_sec .box {
    padding: 12.82vw 5.13vw 12.82vw;
    border-radius: 5.13vw;
  }
  #page_training .content_sec .box::before {
    border-radius: 5.13vw;
  }
  #page_training .content_sec .box .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .content_sec .box .copy {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .content_sec .box .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .content_sec .box .lesson_list {
    width: 100%;
    margin-top: 7.69vw;
  }
  #page_training .content_sec .box .lesson_list ul {
    display: block;
  }
  #page_training .content_sec .box .lesson_list ul li {
    width: 100%;
  }
  #page_training .content_sec .box .lesson_list ul li + li {
    margin-top: 10.26vw;
  }
  #page_training .content_sec .box .lesson_list ul li:nth-child(n+4) {
    margin-top: 10.26vw;
  }
  #page_training .content_sec .box .lesson_list ul li:nth-child(3n) .text {
    max-width: none;
  }
  #page_training .content_sec .box .lesson_list ul li .img {
    width: 100%;
    height: 46.15vw;
  }
  #page_training .content_sec .box .lesson_list ul li .img::before {
    left: -1.54vw;
    top: -1.54vw;
    width: 100%;
    height: 100%;
    border-width: 2px;
    border-radius: 6.15vw;
  }
  #page_training .content_sec .box .lesson_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_training .content_sec .box .lesson_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_training .content_sec .box .lesson_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_training .content_sec .box .lesson_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #page_training .content_sec .box .lesson_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_training .flow_sec {
    margin-top: 15.38vw;
    padding: 20.51vw 0 15.38vw;
    background-image: url(image/news_sec_back_sp.svg), linear-gradient(#f1e6e0, #f1e6e0);
    background-position: center bottom, center top;
    background-size: 100% 175.64vw, 100% calc(100% - 175.64vw + 1px);
  }
  #page_training .flow_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    mask-image: url(image/news_sec_back_sp.svg), linear-gradient(#000, #000);
    -webkit-mask-size: 100% 175.64vw, 100% calc(100% - 175.64vw + 1px);
    mask-size: 100% 175.64vw, 100% calc(100% - 175.64vw + 1px);
    -webkit-mask-position: center bottom, center top;
    mask-position: center bottom, center top;
  }
  #page_training .flow_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .flow_sec .copy {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .flow_sec .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .flow_sec .step_list {
    margin-top: 7.69vw;
  }
  #page_training .flow_sec .step_list > ul > li {
    display: block;
    padding: 6.41vw 5.13vw;
    border-radius: 5.13vw;
  }
  #page_training .flow_sec .step_list > ul > li + li {
    margin-top: 7.69vw;
  }
  #page_training .flow_sec .step_list > ul > li + li::before {
    top: -7.95vw;
    width: 25.64vw;
    height: 7.69vw;
    margin-left: -12.82vw;
  }
  #page_training .flow_sec .step_list > ul > li .circles {
    display: none;
  }
  #page_training .flow_sec .step_list > ul > li .text_box {
    padding-right: 0;
  }
  #page_training .flow_sec .step_list > ul > li .text_box .ttl {
    display: block;
  }
  #page_training .flow_sec .step_list > ul > li .text_box .ttl .step {
    display: block;
    width: auto;
    font-size: 4.62vw;
  }
  #page_training .flow_sec .step_list > ul > li .text_box .ttl .label {
    display: block;
    margin-top: 2.05vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .flow_sec .step_list > ul > li .text_box .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .flow_sec .step_list > ul > li .text_box .dot_list li {
    padding-left: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .flow_sec .step_list > ul > li .text_box .dot_list li::before {
    margin-left: -5.13vw;
    margin-right: 1.28vw;
  }
  #page_training .flow_sec .step_list > ul > li .img {
    width: 100%;
    height: 53.33vw;
    margin: 5.13vw 0 0;
    border-radius: 2.56vw;
  }
  #page_training .info_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_training .info_sec .cont .circle1, #page_training .info_sec .cont .circle2, #page_training .info_sec .cont .circle3, #page_training .info_sec .cont .circle5 {
    display: none;
  }
  #page_training .info_sec .cont .circle4 {
    left: auto;
    right: -2.56vw;
    top: 2.56vw;
    width: 15.38vw;
  }
  #page_training .info_sec .cont .info_head {
    display: block;
  }
  #page_training .info_sec .cont .info_head .common_ttl_box {
    text-align: center;
  }
  #page_training .info_sec .cont .info_head .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_training .info_sec .cont .info_head .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .info_sec .cont .info_head .note {
    width: 100%;
    margin-top: 5.13vw;
    font-size: 3.33vw;
    line-height: 1.6;
    text-align: center;
  }
  #page_training .info_sec .cont .info_table {
    margin-top: 6.41vw;
    padding-bottom: 0;
    border-radius: 5.13vw;
  }
  #page_training .info_sec .cont .info_table table th, #page_training .info_sec .cont .info_table table td {
    display: block;
    width: 100%;
    padding: 0 5.13vw;
    border: 0;
    font-size: 3.59vw;
    line-height: 1.6;
  }
  #page_training .info_sec .cont .info_table table thead {
    display: none;
  }
  #page_training .info_sec .cont .info_table table tbody th {
    padding-top: 3.59vw;
    border-top: 1px solid #ddd;
    color: #e25353;
  }
  #page_training .info_sec .cont .info_table table tbody tr:first-child th {
    border-top: 0;
  }
  #page_training .info_sec .cont .info_table table tbody td {
    padding: 1.03vw 5.13vw 3.59vw;
  }
  #page_training .info_sec .cont .common_btn {
    margin-top: 7.69vw;
    padding: 0 5.13vw;
  }
  #page_training .info_sec .cont .common_btn a {
    width: 100%;
  }
  #page_training .info_sec .cont .note_block {
    margin-top: 10.26vw;
    padding-top: 7.69vw;
  }
  #page_training .info_sec .cont .note_block .ttl {
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .info_sec .cont .note_block .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .after_sec .box {
    padding: 12.82vw 5.13vw 12.82vw;
    border-radius: 5.13vw;
  }
  #page_training .after_sec .box::before {
    border-radius: 5.13vw;
  }
  #page_training .after_sec .box .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .after_sec .box .copy {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_training .after_sec .box .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .after_sec .box .after_list {
    width: 100%;
    margin-top: 7.69vw;
  }
  #page_training .after_sec .box .after_list ul {
    display: block;
  }
  #page_training .after_sec .box .after_list ul li {
    width: 100%;
  }
  #page_training .after_sec .box .after_list ul li + li {
    margin-top: 10.26vw;
  }
  #page_training .after_sec .box .after_list ul li:nth-child(even) {
    margin-top: 10.26vw;
  }
  #page_training .after_sec .box .after_list ul li .img {
    width: 100%;
    height: 53.33vw;
  }
  #page_training .after_sec .box .after_list ul li .img::before {
    left: -1.54vw;
    top: -1.54vw;
    width: 100%;
    height: 100%;
    border-width: 2px;
    border-radius: 6.15vw;
  }
  #page_training .after_sec .box .after_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_training .after_sec .box .after_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_training .after_sec .box .after_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin: 1.54vw 3.08vw 0 0;
  }
  #page_training .after_sec .box .after_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #page_training .after_sec .box .after_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .instructor_sec {
    margin-top: -5.13vw;
    padding: 20.51vw 0 15.38vw;
  }
  #page_training .instructor_sec::before {
    background-size: 5.13vw 5.13vw;
  }
  #page_training .instructor_sec .cont {
    display: block;
  }
  #page_training .instructor_sec .cont .photo_block {
    width: 76.92vw;
    height: 64.62vw;
    margin: 5.13vw auto 0;
  }
  #page_training .instructor_sec .cont .photo_block::before {
    left: -1.54vw;
    top: -0.51vw;
    border-radius: 5.13vw;
  }
  #page_training .instructor_sec .cont .photo_block .img {
    border-radius: 5.13vw;
  }
  #page_training .instructor_sec .cont .photo_block .flowers {
    left: -7.69vw;
    top: -7.69vw;
    width: 20.51vw;
  }
  #page_training .instructor_sec .cont .photo_block .girl {
    left: auto;
    right: -7.69vw;
    top: auto;
    bottom: -5.13vw;
    width: 30.77vw;
  }
  #page_training .instructor_sec .cont .text_block {
    width: 100%;
    margin: 7vw 0 0;
  }
  #page_training .instructor_sec .cont .text_block .circles {
    left: auto;
    right: -2.56vw;
    top: -10.26vw;
    width: 15.38vw;
  }
  #page_training .instructor_sec .cont .text_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .instructor_sec .cont .text_block .copy {
    margin-top: 4vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_training .instructor_sec .cont .text_block .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .instructor_sec .cont .text_block .common_btn {
    margin-top: 6.41vw;
    padding: 0 5.13vw;
  }
  #page_training .instructor_sec .cont .text_block .common_btn a {
    width: 100%;
  }
  #page_training .common_voice_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_training .common_faq_sec {
    padding-bottom: 15.64vw;
  }
  #page_training .related_sec {
    padding: 20.51vw 0 20.51vw;
  }
  #page_training .related_sec .ring {
    left: -10.26vw;
    top: 2.56vw;
    width: 120.51vw;
  }
  #page_training .related_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_training .related_sec .related_list {
    margin-top: 7.69vw;
  }
  #page_training .related_sec .related_list ul {
    display: block;
  }
  #page_training .related_sec .related_list ul li {
    width: 100%;
  }
  #page_training .related_sec .related_list ul li + li {
    margin-top: 12.82vw;
  }
  #page_training .related_sec .related_list ul li .deco1 {
    left: -5.13vw;
    top: -3.85vw;
    width: 15.38vw;
  }
  #page_training .related_sec .related_list ul li .deco2 {
    left: auto;
    right: -2.56vw;
    top: -5.13vw;
    width: 12.82vw;
  }
  #page_training .related_sec .related_list ul li .deco3, #page_training .related_sec .related_list ul li .deco4 {
    left: auto;
    right: -2.56vw;
    top: 48.72vw;
    width: 10.26vw;
  }
  #page_training .related_sec .related_list ul li .deco4 {
    left: -2.56vw;
    right: auto;
  }
  #page_training .related_sec .related_list ul li .img {
    width: 100%;
    height: 56.41vw;
    border-radius: 5.13vw;
  }
  #page_training .related_sec .related_list ul li .tag {
    margin-top: 5.13vw;
    padding: 1.03vw 2.56vw;
    border-radius: 5.13vw;
    font-size: 3.33vw;
    line-height: 1.5;
    letter-spacing: 0.02em;
  }
  #page_training .related_sec .related_list ul li .ttl {
    margin-top: 3.08vw;
  }
  #page_training .related_sec .related_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_training .related_sec .related_list ul li .ttl .label {
    font-size: 5.13vw;
    line-height: 1.4;
  }
  #page_training .related_sec .related_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_training .related_sec .related_list ul li .common_btn {
    margin-top: 5.13vw;
  }
  #page_training .related_sec .related_list ul li .common_btn a {
    width: 100%;
  }
  #page_training .related_sec .related_list ul li .common_btn a .label {
    font-size: 3.5vw;
  }
  #page_training .related_sec .related_list ul li:nth-child(2) .common_btn a {
    width: 100%;
  }
  #page_training .recommend_sec .check_list ul li .check {
    margin-top: 1.03vw;
    margin-bottom: 1.03vw;
  }
  #single_instructor .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #single_instructor .head_sec {
    padding: 0 0 5.13vw;
  }
  #single_instructor .head_sec .cont {
    display: block;
  }
  #single_instructor .head_sec .cont .photo_block {
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
  }
  #single_instructor .head_sec .cont .photo_block .back {
    left: 0;
    top: 0;
    width: 100%;
    height: 60vw;
    border-radius: 5.13vw;
    transform: rotate(6deg);
  }
  #single_instructor .head_sec .cont .photo_block .img {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 60vw;
    border-width: 0.77vw;
    border-radius: 5.13vw;
  }
  #single_instructor .head_sec .cont .text_block {
    padding-top: 7vw;
  }
  #single_instructor .head_sec .cont .text_block .en {
    font-size: 3.59vw;
  }
  #single_instructor .head_sec .cont .text_block .name {
    flex-wrap: wrap;
    margin-top: 3.08vw;
  }
  #single_instructor .head_sec .cont .text_block .name .ja {
    font-size: 7.18vw;
  }
  #single_instructor .head_sec .cont .text_block .name .roman {
    margin: 1.79vw 0 0 4.1vw;
    font-size: 4.1vw;
  }
  #single_instructor .head_sec .cont .text_block .info_list {
    margin-top: 6.41vw;
  }
  #single_instructor .head_sec .cont .text_block .info_list .row {
    display: block;
  }
  #single_instructor .head_sec .cont .text_block .info_list .row + .row {
    margin-top: 4.62vw;
  }
  #single_instructor .head_sec .cont .text_block .info_list .row dt {
    width: 25.64vw;
    margin: 0 0 2.05vw;
    border-radius: 3.33vw;
    font-size: 3.33vw;
    line-height: 1.85;
  }
  #single_instructor .head_sec .cont .text_block .info_list .row dd {
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #single_instructor .head_sec .cont .text_block .common_btn {
    margin-top: 7.69vw;
  }
  #single_instructor .head_sec .cont .text_block .common_btn a {
    width: 100%;
  }
  #single_instructor .profile_sec {
    margin-top: 0;
    padding: 15.38vw 0 17.95vw;
    background-size: 100% auto, 100% calc(100% - 25.64vw);
  }
  #single_instructor .profile_sec::before {
    -webkit-mask-size: 100% auto, 100% calc(100% - 25.64vw);
    mask-size: 100% auto, 100% calc(100% - 25.64vw);
  }
  #single_instructor .profile_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
  }
  #single_instructor .profile_sec .profile_content {
    margin-top: 7.69vw;
    min-height: 0;
    font-size: 3.59vw;
    line-height: 1.9;
  }
  #single_instructor .course_sec {
    padding: 20.51vw 0 17.95vw;
  }
  #single_instructor .course_sec .ring {
    left: -10.26vw;
    top: 2.56vw;
    width: 120.51vw;
  }
  #single_instructor .course_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #single_instructor .course_sec .course_list {
    margin-top: 7.69vw;
  }
  #single_instructor .course_sec .course_list ul {
    display: block;
  }
  #single_instructor .course_sec .course_list ul li {
    width: 100%;
  }
  #single_instructor .course_sec .course_list ul li + li {
    margin-top: 12.82vw;
  }
  #single_instructor .course_sec .course_list ul li .deco1 {
    left: -5.13vw;
    top: -3.85vw;
    width: 15.38vw;
  }
  #single_instructor .course_sec .course_list ul li .deco2 {
    left: auto;
    right: -2.56vw;
    top: -5.13vw;
    width: 12.82vw;
  }
  #single_instructor .course_sec .course_list ul li .deco3 {
    left: -5.13vw;
    top: -6.41vw;
    width: 17.95vw;
  }
  #single_instructor .course_sec .course_list ul li .img {
    width: 100%;
    height: 51.28vw;
    border-radius: 5.13vw;
  }
  #single_instructor .course_sec .course_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #single_instructor .course_sec .course_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #single_instructor .course_sec .course_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #single_instructor .course_sec .course_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  #single_instructor .course_sec .course_list ul li .common_btn {
    margin-top: 5.13vw;
  }
  #single_instructor .course_sec .course_list ul li .common_btn a .label {
    font-size: 4.1vw;
    line-height: 1.4;
  }
  #single_instructor .course_sec .center_btn {
    margin-top: 10.26vw;
  }
  #single_instructor .course_sec .center_btn a {
    width: 100%;
  }
  #single_instructor .course_sec .center_btn a .label {
    font-size: 4.1vw;
  }
  #single_instructor .activity_sec {
    padding: 0 0 17.95vw;
  }
  #single_instructor .activity_sec .ttl_box .ttl {
    font-size: 7.18vw;
  }
  #single_instructor .activity_sec .ttl_box .en {
    margin-left: 4.1vw;
    font-size: 3.85vw;
  }
  #single_instructor .activity_sec .activity_slider_wrap {
    margin-top: 6.41vw;
    clip-path: inset(0 0 0 1.28vw);
  }
  #single_instructor .activity_sec .activity_slider_wrap .activity_slider {
    margin-left: -3.85vw;
  }
  #single_instructor .activity_sec .activity_slider_wrap .activity_slider li {
    width: 66.67vw;
    padding: 3.85vw 5.13vw;
  }
  #single_instructor .activity_sec .activity_slider_wrap .activity_slider li .img {
    width: 56.41vw;
    height: 56.41vw;
    border-radius: 5.13vw;
  }
  #single_instructor .contact_sec {
    padding: 0 0 17.95vw;
  }
  #single_instructor .contact_sec .box {
    padding: 13vw 5.13vw 20vw;
    border-radius: 5.13vw;
  }
  #single_instructor .contact_sec .box .tree1 {
    left: 2.56vw;
    width: 25.64vw;
  }
  #single_instructor .contact_sec .box .tree2 {
    left: auto;
    right: 2.56vw;
    width: 24.36vw;
  }
  #single_instructor .contact_sec .box .girl {
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 13vw;
  }
  #single_instructor .contact_sec .box .flower1 {
    left: auto;
    right: 5.13vw;
    top: 2.56vw;
    width: 12.82vw;
  }
  #single_instructor .contact_sec .box .flower2 {
    left: auto;
    right: 1.28vw;
    top: 9.49vw;
    width: 7.69vw;
  }
  #single_instructor .contact_sec .box .flower3 {
    left: 2.56vw;
    top: 5.13vw;
    width: 10.26vw;
  }
  #single_instructor .contact_sec .box .flower4 {
    left: 10.26vw;
    top: 1.28vw;
    width: 7.69vw;
  }
  #single_instructor .contact_sec .box .cont .ttl {
    font-size: 6.15vw;
    line-height: 1.5;
    letter-spacing: 0.02em;
    -webkit-text-stroke: 1.28vw #fff;
  }
  #single_instructor .contact_sec .box .cont .text {
    margin-top: 4.1vw;
    font-size: 3.33vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  #single_instructor .contact_sec .box .cont .btn_list {
    display: block;
    margin-top: 6.41vw;
  }
  #single_instructor .contact_sec .box .cont .btn_list a {
    height: 15.38vw;
  }
  #single_instructor .contact_sec .box .cont .btn_list a + a {
    margin-top: 3.85vw;
  }
  #single_instructor .contact_sec .box .cont .btn_list a .label {
    font-size: 3.85vw;
  }
  #single_instructor .contact_sec .box .cont .btn_list .insta_btn {
    width: 100%;
    padding-left: 12.82vw;
    box-shadow: inset 0 0 0 0.51vw #e25353;
  }
  #single_instructor .contact_sec .box .cont .btn_list .insta_btn .icon {
    width: 7.18vw;
    margin-right: 5.13vw;
  }
  #single_instructor .contact_sec .box .cont .btn_list .line_btn {
    width: 100%;
    padding-left: 14.1vw;
  }
  #single_instructor .contact_sec .box .cont .btn_list .line_btn .icon {
    width: 6.41vw;
    margin-right: 5.13vw;
  }
  #single_instructor .common_instructor_sec {
    margin-top: 0;
    padding-bottom: 17.95vw;
  }
  #single_instructor .course_sec .course_list ul li .common_btn a:hover {
    background-color: #ec736d;
  }
  #single_instructor .contact_sec .box .cont .btn_list .insta_btn:hover {
    background-color: #ffffff;
    color: #e25353;
  }
  #single_instructor .contact_sec .box .cont .btn_list .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  .common_case_sec {
    padding: 15.38vw 0 17.95vw;
  }
  .common_case_sec .cont .common_ttl_box .en {
    font-size: 3.59vw;
  }
  .common_case_sec .cont .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
  }
  .common_case_sec .cont .sub {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  .common_case_sec .cont .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  .common_case_sec .case_list {
    width: 100%;
    margin-top: 5.13vw;
  }
  .common_case_sec .case_list .slick-dotted.slick-slider {
    margin-bottom: 0;
  }
  .common_case_sec .case_list .slider_arrow.pc {
    display: none;
  }
  .common_case_sec .case_list .slick-list {
    margin: 0 -5vw;
    padding: 5.13vw 0;
  }
  .common_case_sec .case_list .slick-slide {
    margin: 0 5vw;
  }
  .common_case_sec .case_list li a .card {
    padding: 2.56vw 2.56vw 3.85vw;
    border-radius: 5.13vw;
  }
  .common_case_sec .case_list li a .card .img {
    width: 100%;
    height: 51.28vw;
    border-radius: 2.56vw;
  }
  .common_case_sec .case_list li a .card .ttl {
    margin-top: 5.13vw;
    font-size: 4.36vw;
  }
  .common_case_sec .case_list li a .card .cat {
    min-width: 20.51vw;
    margin-top: 3.08vw;
    padding: 0 3.08vw;
    font-size: 3.08vw;
    line-height: 1.83;
  }
  .common_case_sec .case_list li a .card .date {
    margin-top: 2.56vw;
    font-size: 3.08vw;
  }
  .common_case_sec .case_list .slider_nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 5.13vw;
    margin-top: 1.79vw;
  }
  .common_case_sec .case_list .slider_nav .slider_arrow {
    position: static;
    transform: none;
  }
  .common_case_sec .case_list .slider_nav .slick-dots {
    position: static;
    display: flex;
    gap: 0 2.56vw;
    width: auto;
  }
  .common_case_sec .case_list .slider_nav .slick-dots li {
    width: 2.56vw;
    height: 2.56vw;
    margin: 0;
    padding: 0;
    border-radius: 50%;
    background-color: #ebc4c4;
  }
  .common_case_sec .case_list .slider_nav .slick-dots li button {
    display: none;
  }
  .common_case_sec .case_list .slider_nav .slick-dots li.slick-active {
    background-color: #e25353;
  }
  .common_case_sec .common_btn {
    margin-top: 7.69vw;
  }
  .common_case_sec .common_btn a {
    width: 100%;
  }
  .common_case_sec .case_list .slider_arrow:hover::before {
    border-color: #e25353 #e25353 #232121 #232121;
  }
  .common_case_sec .case_list li a:hover .card .img img {
    transform: none;
  }
  .common_cta_sec.is_service {
    padding: 18vw 0;
  }
  .common_cta_sec.is_service .deco1 {
    left: 0.26vw;
    top: -1.54vw;
  }
  .common_cta_sec.is_service .flower1 {
    top: 13.85vw;
  }
  .common_cta_sec.is_service .cont .ttl {
    font-size: 7.6vw;
    line-height: 1.3;
    margin-bottom: 0;
  }
  .common_cta_sec.is_service .cont .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.8;
    margin-bottom: 0;
  }
  .common_cta_sec.is_service .cont .single_btn {
    margin-top: 6.41vw;
  }
  .common_cta_sec.is_service .cont .single_btn a {
    width: 100%;
    height: 17.95vw;
  }
  .common_cta_sec.is_service .cont .single_btn a .label {
    font-size: 3.7vw;
  }
  #page_service .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_service .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_service .lead_sec .cont .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_service .lead_sec .cont .circle2 {
    left: auto;
    right: 0;
    top: 12.82vw;
    width: 8.97vw;
  }
  #page_service .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_service .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_service .lead_sec .cont .common_btn {
    margin-top: 7.69vw;
  }
  #page_service .lead_sec .cont .common_btn a {
    width: 100%;
  }
  #page_service .lead_sec .cont .common_btn a .label {
    font-size: 3.7vw;
  }
  #page_service .activity_sec {
    padding: 24.36vw 0 20.51vw;
    background-image: url(image/course_sec_back_sp.svg);
  }
  #page_service .activity_sec::before {
    -webkit-mask-image: url(image/course_sec_back_sp.svg);
    mask-image: url(image/course_sec_back_sp.svg);
  }
  #page_service .activity_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
  }
  #page_service .activity_sec .act_block {
    flex-direction: column-reverse;
    margin-top: 7.69vw;
  }
  #page_service .activity_sec .act_block .text_block {
    width: 100%;
    margin-top: 8vw;
  }
  #page_service .activity_sec .act_block .text_block .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_service .activity_sec .act_block .text_block .text {
    margin-top: 2.7vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_service .activity_sec .act_block .photo_block {
    width: 85.9vw;
    height: 48.72vw;
    margin: 0 auto;
  }
  #page_service .activity_sec .act_block .photo_block::before, #page_service .activity_sec .act_block .photo_block::after {
    top: -9.76vw;
    width: 85.9vw;
    height: 68.24vw;
    border-radius: 5.13vw;
  }
  #page_service .activity_sec .act_block .photo_block .img {
    width: 85.9vw;
    height: 48.72vw;
    border-radius: 5.13vw;
  }
  #page_service .activity_sec .works_block {
    margin-top: 17.95vw;
  }
  #page_service .activity_sec .works_block .common_ttl_box .ttl {
    margin-top: 2.31vw;
  }
  #page_service .activity_sec .works_block .works_list {
    margin-top: 6.41vw;
  }
  #page_service .activity_sec .works_block .works_list ul {
    display: block;
  }
  #page_service .activity_sec .works_block .works_list ul li + li {
    margin-top: 12.82vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .img {
    height: 48.72vw;
    margin-top: 2.56vw;
    border-radius: 5.13vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .img::after {
    inset: -2.56vw 2.56vw 4.36vw -2.56vw;
    border-radius: 5.13vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .ttl .label {
    font-size: 4.87vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .sub {
    margin-top: 4.1vw;
    font-size: 4.36vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .text {
    margin-top: 2.56vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn {
    align-self: stretch;
    justify-content: space-between;
    margin-top: 5.13vw;
    padding-bottom: 2.05vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn .label {
    font-size: 3.59vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn .arrow {
    width: 6.15vw;
    height: 6.15vw;
    margin-left: 5.13vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn .arrow::before {
    left: 1.79vw;
    top: 2.82vw;
    width: 2.05vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn .arrow::after {
    left: 2.56vw;
    top: 2.05vw;
    width: 1.28vw;
    height: 1.28vw;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn:hover {
    color: #232121;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn:hover .arrow {
    background-color: #ffffff;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn:hover .arrow::before {
    background-color: #e25353;
  }
  #page_service .activity_sec .works_block .works_list ul li .link_btn:hover .arrow::after {
    border-color: #e25353 #e25353 #232121 #232121;
  }
  #page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn:hover .arrow::before {
    background-color: #ffae97;
  }
  #page_service .activity_sec .works_block .works_list ul li.is_peach_link .link_btn:hover .arrow::after {
    border-color: #ffae97;
  }
  #page_service_single .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_service_single .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_service_single .lead_sec .cont .copy_box {
    width: auto;
  }
  #page_service_single .lead_sec .cont .copy_box .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_service_single .lead_sec .cont .copy_box .circle2 {
    right: 0;
    top: 12.82vw;
    width: 8.97vw;
  }
  #page_service_single .lead_sec .cont .copy_box .copy {
    font-size: 6.15vw;
    line-height: 1.5;
  }
  #page_service_single .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_service_single .lead_sec .cont .common_btn {
    margin-top: 7.69vw;
  }
  #page_service_single .lead_sec .cont .common_btn a {
    width: 100%;
  }
  #page_service_single .lead_sec .cont .common_btn a .label {
    font-size: 3.7vw;
  }
  #page_service_single .request_sec {
    padding: 17.95vw 0 15.38vw;
    background-image: url(image/course_sec_back_sp.svg);
  }
  #page_service_single .request_sec::before {
    -webkit-mask-image: url(image/course_sec_back_sp.svg);
    mask-image: url(image/course_sec_back_sp.svg);
  }
  #page_service_single .request_sec .ttl_block .circle_l {
    left: -2.56vw;
    top: auto;
    bottom: -5.13vw;
    width: 12.82vw;
  }
  #page_service_single .request_sec .ttl_block .flower_l {
    left: -3.85vw;
    top: auto;
    bottom: 0;
    width: 7.69vw;
  }
  #page_service_single .request_sec .ttl_block .circle_r {
    left: auto;
    right: -1.28vw;
    top: -7.69vw;
    width: 12.82vw;
  }
  #page_service_single .request_sec .ttl_block .flower_r {
    left: auto;
    right: -2.56vw;
    top: -2.56vw;
    width: 7.69vw;
  }
  #page_service_single .request_sec .ttl_block .ttl {
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_service_single .request_sec .request_list {
    margin-top: 9vw;
  }
  #page_service_single .request_sec .request_list ul {
    display: block;
  }
  #page_service_single .request_sec .request_list ul li {
    width: 100%;
    padding: 7.18vw 5.13vw 8.97vw;
    border-radius: 5.13vw;
  }
  #page_service_single .request_sec .request_list ul li + li {
    margin-top: 12.82vw;
  }
  #page_service_single .request_sec .request_list ul li .num {
    top: -8.46vw;
    width: 14.87vw;
    padding: 5.125vw 0;
    font-size: 4.62vw;
  }
  #page_service_single .request_sec .request_list ul li .img_block .img {
    width: 100%;
    height: 53.08vw;
    border-radius: 2.56vw;
  }
  #page_service_single .request_sec .request_list ul li .img_block .name {
    top: auto;
    bottom: -4.46vw;
    transform: translateX(-50%);
    padding: 1.79vw 3.59vw;
    border-radius: 2.56vw;
    font-size: 4.1vw;
    line-height: 1.3;
  }
  #page_service_single .request_sec .request_list ul li .sub {
    margin-top: 9vw;
    font-size: 5.3vw;
    line-height: 1.4;
  }
  #page_service_single .request_sec .request_list ul li .text {
    margin-top: 2.56vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_service_single .common_case_sec {
    padding-top: 15.38vw;
  }
  .common_cta_sec.is_line {
    padding: 15.38vw 0 20vw;
  }
  .common_cta_sec.is_line .deco1 {
    left: 0.26vw;
  }
  .common_cta_sec.is_line .flower1 {
    left: auto;
    top: 13.85vw;
  }
  .common_cta_sec.is_line .cont .ttl {
    font-size: 7.69vw;
    line-height: 1.4;
    margin-bottom: 0;
  }
  .common_cta_sec.is_line .cont .sub {
    margin-top: 4vw;
    font-size: 5.1vw;
    line-height: 1.5;
  }
  .common_cta_sec.is_line .cont .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-align: left;
    margin-bottom: 0;
  }
  .common_cta_sec.is_line .cont .btn_list {
    margin-top: 6.41vw;
  }
  .common_cta_sec.is_line .cont .btn_list .line_btn {
    justify-content: center;
    width: 100%;
    padding-left: 0;
  }
  #page_line .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_line .line_btn {
    width: 100%;
    height: 15.38vw;
    padding-left: 10.26vw;
  }
  #page_line .line_btn .icon {
    width: 6.15vw;
    margin-right: 5.13vw;
  }
  #page_line .line_btn .label {
    font-size: 4.1vw;
  }
  #page_line .lead_sec {
    padding-bottom: 15.38vw;
  }
  #page_line .lead_sec .cont .circle1 {
    left: -2.56vw;
    top: -7.69vw;
    width: 15.38vw;
  }
  #page_line .lead_sec .cont .circle2 {
    left: auto;
    right: -2.56vw;
    top: 11.54vw;
    width: 8.97vw;
  }
  #page_line .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_line .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .lead_sec .cont .line_btn {
    margin-top: 7.69vw;
  }
  #page_line .what_sec {
    padding: 17.95vw 0 15.38vw;
  }
  #page_line .what_sec .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_line .what_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 6.6vw;
    line-height: 1.4;
  }
  #page_line .what_sec .what_list {
    margin-top: 7.69vw;
  }
  #page_line .what_sec .what_list ul {
    display: block;
  }
  #page_line .what_sec .what_list ul li {
    width: 100%;
  }
  #page_line .what_sec .what_list ul li + li {
    margin-top: 10.26vw;
  }
  #page_line .what_sec .what_list ul li:nth-child(even) {
    padding-top: 0;
  }
  #page_line .what_sec .what_list ul li .img {
    height: 51.28vw;
  }
  #page_line .what_sec .what_list ul li .img img {
    border-radius: 5.13vw;
  }
  #page_line .what_sec .what_list ul li .img::after {
    inset: -1.79vw 1.79vw 1.79vw -1.79vw;
    border-width: 0.77vw;
    border-radius: 6.15vw;
  }
  #page_line .what_sec .what_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_line .what_sec .what_list ul li .ttl .dot {
    width: 3.08vw;
    height: 3.08vw;
    margin-right: 3.08vw;
  }
  #page_line .what_sec .what_list ul li .ttl .label {
    font-size: 4.62vw;
    line-height: 1.4;
  }
  #page_line .what_sec .what_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_line .morning_sec {
    padding: 15.38vw 0 12.82vw;
  }
  #page_line .morning_sec .cont .plane {
    left: auto;
    right: -2.56vw;
    top: -10.26vw;
    width: 35.9vw;
  }
  #page_line .morning_sec .cont .en {
    font-size: 3.59vw;
  }
  #page_line .morning_sec .cont .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_line .morning_sec .cont .sub {
    margin-top: 5.13vw;
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_line .morning_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_line .morning_sec .cont .point_list {
    margin-top: 10.26vw;
  }
  #page_line .morning_sec .cont .point_list ul {
    display: block;
  }
  #page_line .morning_sec .cont .point_list ul li {
    width: 100%;
  }
  #page_line .morning_sec .cont .point_list ul li + li {
    margin-top: 10.26vw;
  }
  #page_line .morning_sec .cont .point_list ul li + li::before {
    display: none;
  }
  #page_line .morning_sec .cont .point_list ul li .circle {
    width: 38.46vw;
    height: 38.46vw;
    padding-top: 5.13vw;
  }
  #page_line .morning_sec .cont .point_list ul li .circle .num {
    font-size: 3.08vw;
  }
  #page_line .morning_sec .cont .point_list ul li .ttl {
    margin-top: 5.13vw;
  }
  #page_line .morning_sec .cont .point_list ul li .ttl .check {
    width: 5.13vw;
    height: 5.13vw;
    margin-right: 3.08vw;
  }
  #page_line .morning_sec .cont .point_list ul li .ttl .label {
    font-size: 4.62vw;
  }
  #page_line .morning_sec .cont .point_list ul li .text {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .recommend_sec {
    margin-bottom: -15.38vw;
  }
  #page_line .recommend_sec .box {
    width: 100%;
    padding: 10.26vw 5.13vw 12.82vw;
    border-radius: 5.13vw;
  }
  #page_line .recommend_sec .box .girl {
    left: auto;
    right: 1.28vw;
    top: auto;
    bottom: -7.69vw;
    width: 23.08vw;
  }
  #page_line .recommend_sec .box .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_line .recommend_sec .box .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_line .recommend_sec .box .check_list {
    margin-top: 6.41vw;
  }
  #page_line .recommend_sec .box .check_list ul {
    display: block;
    width: 100%;
  }
  #page_line .recommend_sec .box .check_list ul li {
    width: 100%;
    padding: 3.08vw 3.85vw;
    border-radius: 2.56vw;
  }
  #page_line .recommend_sec .box .check_list ul li + li {
    margin-top: 3.08vw;
  }
  #page_line .recommend_sec .box .check_list ul li .check {
    width: 8.21vw;
    height: 8.21vw;
    margin-right: 3.08vw;
  }
  #page_line .recommend_sec .box .check_list ul li .label {
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_line .recommend_sec .box .copy_block {
    margin-top: 7.69vw;
    padding: 0;
  }
  #page_line .recommend_sec .box .copy_block .circle_l {
    left: -2.56vw;
    top: -5.13vw;
    width: 10.38vw;
  }
  #page_line .recommend_sec .box .copy_block .circle_r {
    display: none;
  }
  #page_line .recommend_sec .box .copy_block .copy {
    font-size: 5.5vw;
    line-height: 1.7;
  }
  #page_line .recommend_sec .box .copy_block .copy .under {
    display: inline;
    padding-bottom: 0.27vw;
    border-bottom-width: 2px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  #page_line .recommend_sec .box .copy_block .text {
    margin-top: 2.56vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .next_sec,
  #page_line .howto_sec {
    background-size: 5.13vw 5.13vw;
    background-image: radial-gradient(#ebebeb 0.51vw, transparent 0.64vw);
  }
  #page_line .next_sec {
    padding: 21vw 0 15.38vw;
  }
  #page_line .next_sec .cont {
    display: block;
    padding-top: 5.13vw;
  }
  #page_line .next_sec .cont .photo_block {
    width: 100%;
    height: auto;
    padding: 0 0 5.13vw;
  }
  #page_line .next_sec .cont .photo_block .flowers {
    left: -2.56vw;
    top: -5.13vw;
    width: 20.51vw;
  }
  #page_line .next_sec .cont .photo_block .back {
    left: 0;
    top: 4.1vw;
    width: 100%;
    height: 60vw;
    border-radius: 5.13vw;
    transform: rotate(4deg);
  }
  #page_line .next_sec .cont .photo_block .img {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 60vw;
    border-width: 0.77vw;
    border-radius: 5.13vw;
  }
  #page_line .next_sec .cont .photo_block .girl {
    left: auto;
    right: -4.7vw;
    top: auto;
    bottom: -2.56vw;
    width: 23.08vw;
  }
  #page_line .next_sec .cont .text_block {
    padding-top: 0;
    margin: 5vw 0 0;
  }
  #page_line .next_sec .cont .text_block .circles {
    left: auto;
    right: -2.56vw;
    top: -2.56vw;
    width: 15.38vw;
  }
  #page_line .next_sec .cont .text_block .en {
    font-size: 3.59vw;
  }
  #page_line .next_sec .cont .text_block .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_line .next_sec .cont .text_block .sub {
    margin-top: 4vw;
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_line .next_sec .cont .text_block .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-wrap: pretty;
  }
  #page_line .next_sec .cont .text_block .common_btn {
    margin-top: 6.41vw;
  }
  #page_line .next_sec .cont .text_block .common_btn a {
    width: 100%;
  }
  #page_line .next_sec .cont .text_block .line_btn {
    margin-top: 3.85vw;
  }
  #page_line .question_sec {
    padding: 15.38vw 0 0;
  }
  #page_line .question_sec .cont .ttl {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_line .question_sec .cont .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .news_sec {
    margin-top: 0;
    padding: 4.1vw 0 17.95vw;
  }
  #page_line .news_sec .question_list ul {
    display: block;
  }
  #page_line .news_sec .question_list ul li {
    width: 100%;
    padding: 2.56vw 5.13vw;
    border-radius: 2.05vw;
    font-size: 3.59vw;
  }
  #page_line .news_sec .question_list ul li + li {
    margin-top: 2.05vw;
  }
  #page_line .news_sec .q_text {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .news_sec .q_text .lg {
    font-size: 3.85vw;
    line-height: 1.7;
  }
  #page_line .news_sec .news_block {
    margin-top: 15.38vw;
  }
  #page_line .news_sec .news_block .circle_l {
    left: -2.56vw;
    top: -12.82vw;
    width: 12.82vw;
  }
  #page_line .news_sec .news_block .circle_r {
    left: auto;
    right: 0;
    top: auto;
    bottom: -5.13vw;
    width: 8.97vw;
  }
  #page_line .news_sec .news_block .ttl {
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_line .news_sec .news_block .news_cont {
    display: block;
    margin-top: 4vw;
  }
  #page_line .news_sec .news_block .news_cont .text_block {
    width: 100%;
  }
  #page_line .news_sec .news_block .news_cont .text_block .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_line .news_sec .news_block .news_cont .text_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .news_sec .news_block .news_cont .text_block .tag_list {
    gap: 2.05vw 2.05vw;
    margin-top: 2.56vw;
  }
  #page_line .news_sec .news_block .news_cont .text_block .tag_list li {
    min-width: 0;
    padding: 1.92vw 3.85vw;
    border-radius: 2.05vw;
    font-size: 3.59vw;
  }
  #page_line .news_sec .news_block .news_cont .text_block .tag_list + .text {
    margin-top: 3.08vw;
  }
  #page_line .news_sec .news_block .news_cont .photo_block {
    width: 100%;
    height: 60vw;
    margin: 9vw auto 0;
  }
  #page_line .news_sec .news_block .news_cont .photo_block::before {
    left: 0;
    top: 2.56vw;
    width: 100%;
    height: 60vw;
    border-radius: 5.13vw;
    transform: rotate(4deg);
  }
  #page_line .news_sec .news_block .news_cont .photo_block::after {
    display: none;
  }
  #page_line .news_sec .news_block .news_cont .photo_block .img {
    width: 100%;
    height: 60vw;
    border-radius: 5.13vw;
    transform: rotate(-2.15deg);
  }
  #page_line .survey_sec {
    margin-top: 0;
    padding: 25vw 0 19.5vw;
  }
  #page_line .survey_sec .ring {
    left: -5.13vw;
    top: 25vw;
    width: 110.26vw;
  }
  #page_line .survey_sec .photo1,
  #page_line .survey_sec .photo2,
  #page_line .survey_sec .photo3,
  #page_line .survey_sec .photo4 {
    border-radius: 3.85vw;
  }
  #page_line .survey_sec .photo1 {
    left: -3vw;
    top: 6vw;
    width: 26vw;
    height: 20vw;
  }
  #page_line .survey_sec .photo3 {
    left: auto;
    right: -5vw;
    top: -3vw;
    width: 24vw;
    height: 29vw;
  }
  #page_line .survey_sec .photo2 {
    left: -4.5vw;
    top: auto;
    bottom: 8.5vw;
    width: 24vw;
    height: 29vw;
  }
  #page_line .survey_sec .photo4 {
    left: auto;
    right: -5vw;
    top: auto;
    bottom: 3.5vw;
    width: 28vw;
    height: 21.5vw;
    transform: rotate(6deg);
  }
  #page_line .survey_sec .circles1 {
    left: 0;
    top: 3vw;
    width: 12vw;
  }
  #page_line .survey_sec .circles2 {
    left: auto;
    right: 0;
    top: 31vw;
    width: 12vw;
  }
  #page_line .survey_sec .circles3,
  #page_line .survey_sec .circles4 {
    display: none;
  }
  #page_line .survey_sec .cont .ttl {
    padding-left: 0.04em;
    font-size: 7.18vw;
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
  #page_line .survey_sec .cont .sub {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    line-height: 1.5;
  }
  #page_line .survey_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.8;
  }
  #page_line .howto_sec {
    padding: 15.38vw 0 17.95vw;
  }
  #page_line .howto_sec .ttl_block .flower_l {
    left: -1.28vw;
    top: 0;
    width: 14.1vw;
  }
  #page_line .howto_sec .ttl_block .flower_r {
    left: auto;
    right: -1.28vw;
    top: auto;
    bottom: -2.56vw;
    width: 15.38vw;
  }
  #page_line .howto_sec .ttl_block .en {
    font-size: 3.59vw;
  }
  #page_line .howto_sec .ttl_block .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_line .howto_sec .step_list {
    margin-top: 10.26vw;
  }
  #page_line .howto_sec .step_list ul {
    display: block;
  }
  #page_line .howto_sec .step_list ul li {
    width: 100%;
    padding: 7.18vw 5.13vw 7.69vw;
    border-radius: 5.13vw;
  }
  #page_line .howto_sec .step_list ul li + li {
    margin-top: 9vw;
  }
  #page_line .howto_sec .step_list ul li + li::before {
    left: 50%;
    top: -10.23vw;
    width: 0.51vw;
    height: 6.15vw;
    margin-left: -0.26vw;
  }
  #page_line .howto_sec .step_list ul li + li::after {
    content: "";
    position: absolute;
    left: 50%;
    top: -6.9vw;
    width: 2.56vw;
    height: 2.56vw;
    margin: 0 0 0 -1.28vw;
    border-top: 2px solid #fe8286;
    border-right: 2px solid #fe8286;
    transform: rotate(135deg);
  }
  #page_line .howto_sec .step_list ul li .num {
    top: -3.85vw;
    width: 10.26vw;
    padding: 0;
    border-radius: 3.85vw;
    font-size: 3.59vw;
    line-height: 2.142;
  }
  #page_line .howto_sec .step_list ul li .img {
    width: 100%;
    height: 45vw;
    border-radius: 2.56vw;
  }
  #page_line .howto_sec .step_list ul li .ttl {
    margin-top: 5.13vw;
    font-size: 4.62vw;
  }
  #page_line .howto_sec .step_list ul li .text {
    margin-top: 2.56vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_line .question_sec .cont .ttl .under {
    display: inline;
    padding-bottom: 0.27vw;
    border-bottom-width: 2px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  #page_line .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  #page_about_yukiemoji .common_page_wrap {
    padding: 12.82vw 0 0;
  }
  #page_about_yukiemoji .common_ttl_box .en {
    font-size: 3.59vw;
  }
  #page_about_yukiemoji .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.18vw;
    line-height: 1.4;
  }
  #page_about_yukiemoji .lead_sec {
    padding-bottom: 12.82vw;
  }
  #page_about_yukiemoji .lead_sec .deco1 {
    left: 0;
    top: -11.54vw;
    width: 12.82vw;
  }
  #page_about_yukiemoji .lead_sec .deco2 {
    left: auto;
    right: 0;
    top: 23.08vw;
    width: 8.21vw;
  }
  #page_about_yukiemoji .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_about_yukiemoji .lead_sec .cont .text {
    margin-top: 3.4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_about_yukiemoji .what_sec {
    padding: 15.38vw 0 76.92vw;
    background-image: url(image/news_sec_back_sp.svg);
    background-position: center top;
    background-size: 100% 100%;
  }
  #page_about_yukiemoji .what_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg);
    mask-image: url(image/news_sec_back_sp.svg);
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-position: center top;
    mask-position: center top;
  }
  #page_about_yukiemoji .what_sec .deco1 {
    left: 0;
    top: -5.13vw;
    width: 15.38vw;
  }
  #page_about_yukiemoji .what_sec .deco2, #page_about_yukiemoji .what_sec .deco3, #page_about_yukiemoji .what_sec .deco5 {
    display: none;
  }
  #page_about_yukiemoji .what_sec .deco4 {
    left: auto;
    right: 3.85vw;
    top: 33.33vw;
    width: 7.69vw;
  }
  #page_about_yukiemoji .what_sec .deco6 {
    left: auto;
    right: 1.28vw;
    top: auto;
    bottom: 7.69vw;
    width: 15.38vw;
  }
  #page_about_yukiemoji .what_sec .girl {
    left: auto;
    right: 2.56vw;
    top: -7.69vw;
    width: 28.21vw;
  }
  #page_about_yukiemoji .what_sec .photo_list .img {
    width: 56.41vw;
    height: 35.56vw;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji .what_sec .photo_list .img1 {
    left: -6.41vw;
    top: auto;
    bottom: 30.77vw;
  }
  #page_about_yukiemoji .what_sec .photo_list .img2 {
    left: 48.72vw;
    top: auto;
    bottom: 15.38vw;
  }
  #page_about_yukiemoji .what_sec .cont .text_block {
    width: 100%;
    margin-left: 0;
  }
  #page_about_yukiemoji .what_sec .cont .text_block .common_ttl_box .ttl {
    margin-top: 6.41vw;
    font-size: 7.18vw;
    line-height: 1.4;
    letter-spacing: 0.01em;
  }
  #page_about_yukiemoji .what_sec .cont .text_block .text {
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.64;
  }
  #page_about_yukiemoji .feature_sec .ring {
    left: -60vw;
    top: 20vw;
    width: 110.26vw;
  }
  #page_about_yukiemoji .feature_sec .feature_block {
    flex-direction: column;
    gap: 0;
    margin-top: 6vw;
  }
  #page_about_yukiemoji .feature_sec .feature_block.is_reverse {
    flex-direction: column-reverse;
  }
  #page_about_yukiemoji .feature_sec .feature_block .photo_block {
    width: 76.92vw;
    height: auto;
    margin: 2.56vw auto 0;
  }
  #page_about_yukiemoji .feature_sec .feature_block .photo_block::before, #page_about_yukiemoji .feature_sec .feature_block .photo_block::after {
    left: -1.28vw;
    top: 1.03vw;
    width: 100%;
    height: 100%;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji .feature_sec .feature_block .photo_block .img {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 53.85vw;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji .feature_sec .feature_block .text_block {
    width: 100%;
    margin-top: 10.26vw;
  }
  #page_about_yukiemoji .feature_sec .feature_block .text_block .sub_ttl {
    font-size: 5vw;
    line-height: 1.5;
  }
  #page_about_yukiemoji .feature_sec .feature_block .text_block .text {
    margin-top: 3.8vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_about_yukiemoji .feature_sec .feature_block.is_reverse .text_block .sub_ttl {
    margin-right: 0;
  }
  #page_about_yukiemoji .free_sec {
    padding: 15.38vw 0 15.38vw;
  }
  #page_about_yukiemoji .accept_sec {
    padding-bottom: 20.51vw;
  }
  #page_about_yukiemoji .accept_sec .common_ttl_box .ttl {
    font-size: 6.15vw;
  }
  #page_about_yukiemoji .cycle_sec {
    padding: 15.38vw 0 20.51vw;
  }
  #page_about_yukiemoji .cycle_sec .cont {
    text-align: left;
  }
  #page_about_yukiemoji .cycle_sec .cont .copy {
    margin-top: 5.13vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_about_yukiemoji .cycle_sec .cont > .text {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.7;
    letter-spacing: 0.04em;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box {
    width: 100%;
    margin-top: 6.2vw;
    padding-top: 6.15vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .box_ttl {
    width: 92%;
    padding: 2.56vw 2vw;
    border-radius: 2.56vw;
    font-size: 4.1vw;
    line-height: 1.5;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .center_ring, #page_about_yukiemoji .cycle_sec .cycle_box .center_circle, #page_about_yukiemoji .cycle_sec .cycle_box .arrow {
    display: none;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .girl {
    left: auto;
    right: 2.56vw;
    top: auto;
    bottom: 0;
    width: 12.5vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list {
    grid-template-columns: 100%;
    gap: 7.69vw;
    padding: 17vw 3.85vw 11.6vw;
    border-width: 0.77vw;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li {
    min-height: 0;
    padding: 6.41vw 2.56vw 4.1vw 24.36vw;
    border-width: 0.51vw;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step3 {
    order: 3;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step4 {
    order: 4;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li .step {
    left: 26.92vw;
    top: -3.85vw;
    width: 25.64vw;
    border-radius: 3.85vw;
    font-size: 3.59vw;
    line-height: 2.14;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li .icon {
    left: 5.13vw;
    top: 50%;
    width: 15.38vw;
    height: 15.38vw;
    transform: translateY(-50%);
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li .ttl {
    font-size: 4.1vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li .text {
    margin-top: 1.28vw;
    font-size: 3.33vw;
    line-height: 1.6;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step1 .icon img {
    width: 10.26vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step2 .icon img {
    width: 7.95vw;
  }
  #page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step3 .icon img, #page_about_yukiemoji .cycle_sec .cycle_box .step_list li.step4 .icon img {
    width: 9.23vw;
  }
  #page_about_yukiemoji .cycle_sec .tri {
    width: 51.28vw;
    margin-top: 5.13vw;
  }
  #page_about_yukiemoji .cycle_sec .result {
    text-align: center;
    margin-top: 5vw;
    font-size: 5.13vw;
    line-height: 1.6;
  }
  #page_about_yukiemoji .cycle_sec .result .under {
    display: inline;
    padding-bottom: 0.51vw;
    background-position: left bottom;
    background-size: 100% 1.54vw;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  #page_about_yukiemoji .cycle_sec .result .big {
    font-size: 6.67vw;
    line-height: 1.2;
  }
  #page_about_yukiemoji .philo_sec {
    margin-top: -5.13vw;
    padding: 17.95vw 0 15.38vw;
    background-image: url(image/news_sec_back_sp.svg);
    background-size: 100% 100%;
  }
  #page_about_yukiemoji .philo_sec::before {
    -webkit-mask-image: url(image/news_sec_back_sp.svg);
    mask-image: url(image/news_sec_back_sp.svg);
  }
  #page_about_yukiemoji .philo_sec .cont {
    flex-direction: column;
  }
  #page_about_yukiemoji .philo_sec .cont > .girl {
    left: auto;
    right: 0;
    top: -5.13vw;
    width: 25.64vw;
  }
  #page_about_yukiemoji .philo_sec .cont .text_block {
    width: 100%;
  }
  #page_about_yukiemoji .philo_sec .cont .text_block .en {
    font-size: 3.59vw;
    line-height: 1.5;
  }
  #page_about_yukiemoji .philo_sec .cont .text_block .label {
    margin-top: 2.05vw;
    font-size: 4.36vw;
  }
  #page_about_yukiemoji .philo_sec .cont .text_block .ttl {
    margin-top: 6.41vw;
    font-size: 7.18vw;
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
  #page_about_yukiemoji .philo_sec .cont .text_block .text {
    margin-top: 4vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_about_yukiemoji .philo_sec .cont .photo_block {
    width: 100%;
    margin: 10vw auto 0;
  }
  #page_about_yukiemoji .philo_sec .cont .photo_block .img {
    width: 100%;
    height: 55vw;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji .philo_sec .cont .photo_block .deco1 {
    left: auto;
    right: -7.69vw;
    top: -5.13vw;
    width: 15.38vw;
  }
  #page_about_yukiemoji .philo_sec .cont .photo_block .deco2 {
    left: -5.13vw;
    top: auto;
    bottom: -2.56vw;
    width: 10.26vw;
  }
  #page_about_yukiemoji .philo_sec .cont .photo_block .deco3 {
    left: 1.28vw;
    top: auto;
    bottom: -5.13vw;
    width: 12.82vw;
  }
  #page_about_yukiemoji .name_sec {
    padding-top: 12.82vw;
  }
  #page_about_yukiemoji .name_sec .name_box {
    padding: 10.26vw 3.85vw 7.69vw;
    border-width: 0.77vw;
    border-radius: 7.69vw;
  }
  #page_about_yukiemoji .name_sec .name_box .copy {
    margin-top: 3vw;
    font-size: 5.13vw;
    line-height: 1.5;
  }
  #page_about_yukiemoji .name_sec .name_box > .text {
    margin-top: 3.5vw;
    font-size: 3.59vw;
    line-height: 1.7;
    text-align: left;
    letter-spacing: 0.04em;
  }
  #page_about_yukiemoji .name_sec .name_box .photo_list {
    margin: 7.69vw -3.85vw 0;
  }
  #page_about_yukiemoji .name_sec .name_box .photo_list ul {
    display: block;
    padding: 2.56vw 0;
  }
  #page_about_yukiemoji .name_sec .name_box .photo_list ul .slick-list {
    overflow: hidden;
  }
  #page_about_yukiemoji .name_sec .name_box .photo_list ul li {
    width: 41vw;
    padding: 0 2vw;
  }
  #page_about_yukiemoji .name_sec .name_box .photo_list ul li:nth-child(odd) {
    margin-top: 0;
  }
  #page_about_yukiemoji .name_sec .name_box .photo_list ul li .img {
    width: 100%;
    height: 48.08vw;
    border-radius: 5.13vw;
  }
  #page_about_yukiemoji #top_course_sec {
    padding-bottom: 50vw;
    margin-top: 5.64vw;
  }
  #page_about_yukiemoji #top_course_sec .deco1 {
    top: 12.56vw;
  }
  #page_about_yukiemoji #top_course_sec .common_course_box {
    margin-top: 8vw;
  }
  #page_about_yukiemoji #top_course_sec .common_course_box .step_list {
    margin-top: 6vw;
  }
  #page_about_yukiemoji .name_sec + .common_voice_sec {
    margin-top: -6.15vw;
  }
  #page_about_yukiemoji .common_instructor_sec {
    margin-top: -30.26vw;
    padding-bottom: 14.87vw;
  }
  #page_about_yukiemoji .common_instructor_sec .common_ttl_box .ttl {
    margin-top: 2.31vw;
    font-size: 7.69vw;
    line-height: 1.3;
  }
  #page_faq .common_page_wrap {
    padding: 12.82vw 0 20.51vw;
  }
  #page_faq .lead_sec .cont .text {
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_faq .lead_sec .cont .faq_nav {
    margin-top: 7.69vw;
  }
  #page_faq .lead_sec .cont .faq_nav ul {
    gap: 2.56vw 2.56vw;
  }
  #page_faq .lead_sec .cont .faq_nav ul li a {
    padding: 0 3.85vw;
    font-size: 3.33vw;
    line-height: 2.6;
  }
  #page_faq .faq_group {
    margin-top: 15.38vw;
    scroll-margin-top: 20.51vw;
  }
  #page_faq .faq_group .sub_ttl {
    gap: 0 2.56vw;
    font-size: 5.64vw;
  }
  #page_faq .faq_group .sub_ttl .lotus {
    width: 9.23vw;
  }
  #page_faq .faq_group .common_faq_list {
    margin-top: 5.13vw;
  }
  #page_faq .lead_sec .cont .text a:hover {
    color: #232121;
  }
  #page_faq .lead_sec .cont .faq_nav ul li a:hover {
    background-color: #ffffff;
    color: #e25353;
  }
  .common_product_list ul.products {
    grid-template-columns: repeat(2, 1fr);
    gap: 7vw 3.5vw;
  }
  .common_product_list ul.products li.product a .img, .common_product_list ul.products[class*=columns-] li.product a .img {
    border-width: 0.51vw;
    border-radius: 3.85vw;
    height: 45vw;
  }
  .common_product_list ul.products li.product a .text_box, .common_product_list ul.products[class*=columns-] li.product a .text_box {
    padding: 0 0.5vw;
  }
  .common_product_list ul.products li.product a .text_box .ttl, .common_product_list ul.products[class*=columns-] li.product a .text_box .ttl {
    margin-top: 3.08vw;
    font-size: 3.59vw;
    line-height: 1.5;
  }
  .common_product_list ul.products li.product a .text_box .price, .common_product_list ul.products[class*=columns-] li.product a .text_box .price {
    margin-top: 1.54vw;
    font-size: 3.85vw;
  }
  .common_product_list ul.products li.product a .text_box .price .woocommerce-price-suffix, .common_product_list ul.products[class*=columns-] li.product a .text_box .price .woocommerce-price-suffix {
    font-size: 2.82vw;
  }
  .common_product_list section.related.products > h2 {
    margin-bottom: 7.69vw;
    font-size: 6.15vw;
  }
  .common_product_list ul.products li.product a:hover .img img {
    transform: none;
  }
  .common_product_list ul.products[class*=columns-] li.product a:hover .img img {
    transform: none;
  }
  .woocommerce-pagination {
    margin-top: 12.82vw;
  }
  .woocommerce-pagination ul.page-numbers {
    gap: 0 2.05vw;
  }
  .woocommerce-pagination ul.page-numbers li a, .woocommerce-pagination ul.page-numbers li span {
    width: 10.26vw;
    height: 10.26vw;
    font-size: 3.59vw;
  }
  .woocommerce-pagination ul.page-numbers li a:hover {
    background-color: #fff;
    color: #e25353;
  }
  .woocommerce-notices-wrapper .woocommerce-message, .woocommerce-notices-wrapper .woocommerce-info, .woocommerce-notices-wrapper .woocommerce-error {
    margin-bottom: 7.69vw;
    padding: 4.1vw 4.62vw;
    border-radius: 2.56vw;
    font-size: 3.59vw;
  }
  .woocommerce-notices-wrapper .woocommerce-message .button, .woocommerce-notices-wrapper .woocommerce-info .button, .woocommerce-notices-wrapper .woocommerce-error .button {
    display: block;
    margin: 2.56vw 0 0;
  }
  #page_shop .common_page_wrap {
    padding: 12.82vw 0 20.51vw;
  }
  #page_shop .lead_sec .deco1 {
    left: 0;
    top: -11.54vw;
    width: 12.82vw;
  }
  #page_shop .lead_sec .deco2 {
    left: auto;
    right: 0;
    top: 23.08vw;
    width: 8.21vw;
  }
  #page_shop .lead_sec .cont .copy {
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_shop .lead_sec .cont .text {
    margin-top: 2vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_shop .list_sec {
    margin-top: 8vw;
  }
  #page_shop .list_sec .cat_nav {
    margin-bottom: 7.69vw;
  }
  #page_shop .list_sec .cat_nav ul {
    gap: 2.56vw 2.56vw;
  }
  #page_shop .list_sec .cat_nav ul li a {
    padding: 0 3.85vw;
    font-size: 3.33vw;
    line-height: 2.6;
  }
  #page_shop .list_sec .no_products {
    font-size: 3.59vw;
  }
  #page_shop .list_sec .cat_nav ul li a:hover {
    background-color: #fff;
    color: #e25353;
  }
  #page_product .common_page_wrap {
    padding: 12.82vw 0 20.51vw;
  }
  #page_product .main_sec .product_block {
    flex-direction: column;
    gap: 0;
  }
  #page_product .main_sec .product_block .gallery_block {
    width: 100%;
  }
  #page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .woocommerce-product-gallery__image {
    border-width: 0.51vw;
    border-radius: 5.13vw;
  }
  #page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs {
    gap: 2.05vw;
    margin-top: 2.56vw;
  }
  #page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs li {
    width: 18.46vw;
    border-radius: 2.56vw;
  }
  #page_product .main_sec .product_block .text_block {
    width: 100%;
    margin-top: 7.69vw;
    padding-top: 0;
  }
  #page_product .main_sec .product_block .text_block .cat {
    font-size: 3.08vw;
  }
  #page_product .main_sec .product_block .text_block .ttl {
    margin-top: 2.56vw;
    font-size: 5.64vw;
    line-height: 1.5;
  }
  #page_product .main_sec .product_block .text_block .price {
    margin-top: 3.08vw;
    font-size: 6.15vw;
  }
  #page_product .main_sec .product_block .text_block .price del {
    font-size: 4.36vw;
  }
  #page_product .main_sec .product_block .text_block .price .woocommerce-price-suffix {
    font-size: 3.08vw;
  }
  #page_product .main_sec .product_block .text_block .short_desc {
    margin-top: 4.1vw;
    font-size: 3.59vw;
    line-height: 1.8;
  }
  #page_product .main_sec .product_block .text_block .cart_block {
    margin-top: 6.15vw;
    padding-top: 6.15vw;
  }
  #page_product .main_sec .product_block .text_block .cart_block form.cart {
    flex-wrap: wrap;
    gap: 3.08vw;
  }
  #page_product .main_sec .product_block .text_block .cart_block form.cart .quantity .qty {
    width: 20.51vw;
    height: 13.33vw;
    border-radius: 2.56vw;
    font-size: 4.1vw;
  }
  #page_product .main_sec .product_block .text_block .cart_block form.cart .single_add_to_cart_button {
    flex-grow: 1;
    width: auto;
    height: 13.33vw;
    padding: 0 5vw;
    font-size: 4.1vw;
  }
  #page_product .main_sec .product_block .text_block .cart_block .stock {
    margin-top: 3.08vw;
    font-size: 3.33vw;
  }
  #page_product .main_sec .desc_block {
    margin-top: 15.38vw;
  }
  #page_product .main_sec .desc_block .sub_ttl {
    gap: 0 2.56vw;
    font-size: 5.64vw;
  }
  #page_product .main_sec .desc_block .sub_ttl .lotus {
    width: 9.23vw;
  }
  #page_product .main_sec .desc_block .desc {
    width: 100%;
    margin-top: 5.13vw;
    font-size: 3.59vw;
    line-height: 1.8;
  }
  #page_product .main_sec .desc_block .desc h2 {
    font-size: 4.62vw;
  }
  #page_product .main_sec .desc_block .desc h3 {
    font-size: 4.1vw;
  }
  #page_product .main_sec .desc_block .desc img {
    border-radius: 5.13vw;
  }
  #page_product .main_sec .line_note {
    width: 100%;
    margin-top: 7.69vw;
    padding: 4.1vw 5.13vw;
    border-radius: 2.56vw;
    font-size: 3.59vw;
    line-height: 1.7;
  }
  #page_product .related_sec {
    margin-top: 20.51vw;
  }
  #page_product .related_sec .common_btn {
    margin-top: 10.26vw;
  }
  #page_product .related_sec .common_btn a {
    width: 100%;
  }
  #page_product .main_sec .product_block .text_block .cart_block form.cart .quantity .qty {
    padding-right: 2.56vw;
    padding-left: 2.56vw;
  }
  #page_product .main_sec .product_block .gallery_block .woocommerce-product-gallery .flex-control-thumbs li img:hover {
    opacity: 0.6;
  }
  #page_product .main_sec .product_block .text_block .cart_block form.cart .single_add_to_cart_button:hover {
    background-color: #e25353;
    color: #ffffff;
  }
  #page_wc .common_page_wrap {
    padding: 12.82vw 0 20.51vw;
  }
  #page_wc .woocommerce {
    font-size: 3.59vw;
  }
  #page_wc .woocommerce h2, #page_wc .woocommerce h3 {
    margin-bottom: 4.1vw;
    font-size: 4.62vw;
  }
  #page_wc .woocommerce .button, #page_wc .woocommerce button.button, #page_wc .woocommerce a.button, #page_wc .woocommerce input.button, #page_wc .woocommerce #place_order, #page_wc .woocommerce .checkout-button {
    min-height: 12.82vw;
    padding: 0 6.15vw;
    font-size: 3.59vw;
  }
  #page_wc .woocommerce .checkout-button, #page_wc .woocommerce #place_order {
    min-height: 14.36vw;
    font-size: 4.1vw;
  }
  #page_wc .woocommerce table.shop_table th, #page_wc .woocommerce table.shop_table td {
    padding: 3.59vw 2.05vw;
    font-size: 3.59vw;
  }
  #page_wc .woocommerce table.shop_table td.product-thumbnail img {
    width: 18vw;
    border-radius: 2.56vw;
  }
  #page_wc .woocommerce table.shop_table .quantity .qty {
    width: 16.41vw;
    height: 10.26vw;
    border-radius: 2.05vw;
  }
  #page_wc .woocommerce table.shop_table td.actions .coupon {
    flex-wrap: wrap;
    gap: 2.56vw;
  }
  #page_wc .woocommerce table.shop_table td.actions .coupon .input-text {
    width: 100% !important;
    height: 11.28vw;
    border-radius: 2.05vw;
  }
  #page_wc .woocommerce table.shop_table td.actions .coupon .button {
    width: 100%;
  }
  #page_wc .woocommerce table.shop_table td.actions > .button {
    width: 100%;
    margin-top: 2.56vw;
  }
  #page_wc .woocommerce .cart-collaterals .cart_totals {
    width: 100%;
    margin-top: 7.69vw;
  }
  #page_wc .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout {
    padding-top: 5.13vw;
  }
  #page_wc .woocommerce form .form-row {
    margin-bottom: 3.08vw;
  }
  #page_wc .woocommerce form .form-row label {
    font-size: 3.33vw;
  }
  #page_wc .woocommerce form .form-row input.input-text, #page_wc .woocommerce form .form-row textarea, #page_wc .woocommerce form .form-row select, #page_wc .woocommerce form .form-row .select2-container .select2-selection--single {
    height: 11.79vw;
    padding: 0 3.08vw;
    border-radius: 2.05vw;
    font-size: 16px;
    line-height: 11.28vw;
  }
  #page_wc .woocommerce form .form-row textarea {
    height: 30vw;
    padding: 2.56vw 3.08vw;
  }
  #page_wc .woocommerce form .form-row .select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 11.28vw;
  }
  #page_wc .woocommerce form .form-row .select2-container .select2-selection--single .select2-selection__arrow {
    height: 11.28vw;
  }
  #page_wc .woocommerce form.checkout .col2-set {
    width: 100%;
    float: none;
  }
  #page_wc .woocommerce form.checkout .col2-set .col-2 {
    margin-top: 6.15vw;
  }
  #page_wc .woocommerce form.checkout #order_review_heading, #page_wc .woocommerce form.checkout #order_review {
    float: none;
    width: 100%;
  }
  #page_wc .woocommerce form.checkout #order_review_heading {
    margin-top: 8.21vw;
  }
  #page_wc .woocommerce form.checkout #order_review {
    padding: 5.13vw 4.1vw;
    border-radius: 5.13vw;
  }
  #page_wc .woocommerce form.checkout #order_review table.shop_table th, #page_wc .woocommerce form.checkout #order_review table.shop_table td {
    padding: 2.56vw 1.28vw;
  }
  #page_wc .woocommerce form.checkout #payment {
    margin-top: 5.13vw;
    border-radius: 2.56vw;
  }
  #page_wc .woocommerce form.checkout #payment ul.payment_methods {
    padding: 4.1vw;
  }
  #page_wc .woocommerce form.checkout #payment ul.payment_methods li {
    font-size: 3.59vw;
  }
  #page_wc .woocommerce form.checkout #payment ul.payment_methods li .payment_box {
    font-size: 3.33vw;
  }
  #page_wc .woocommerce form.checkout #payment .place-order {
    padding: 4.1vw;
  }
  #page_wc .woocommerce form.checkout #payment .place-order .woocommerce-privacy-policy-text {
    margin-bottom: 4.1vw;
  }
  #page_wc .woocommerce form.checkout .order_notes_note {
    margin-top: 2.56vw;
    font-size: 3.33vw;
  }
  #page_wc .woocommerce ul.order_details {
    padding: 4.1vw;
    border-radius: 2.56vw;
  }
  #page_wc .woocommerce ul.order_details li {
    float: none;
    margin: 0 0 3.08vw;
    padding: 0;
    border: 0;
  }
  #page_wc .woocommerce .woocommerce-thankyou-order-received {
    font-size: 4.62vw;
  }
  #page_wc .woocommerce .woocommerce-MyAccount-navigation ul li a {
    padding: 2.56vw 3.08vw;
    border-radius: 2.05vw;
  }
  #page_wc .woocommerce .button:hover {
    background-color: #e25353;
    color: #ffffff;
  }
  #page_wc .woocommerce button.button:hover {
    background-color: #e25353;
    color: #fff;
  }
  #page_wc .woocommerce a.button:hover {
    background-color: #e25353;
    color: #ffffff;
  }
  #page_wc .woocommerce input.button:hover {
    background-color: #e25353;
    color: #fff;
  }
  #page_wc .woocommerce #place_order:hover {
    background-color: #e25353;
    color: #fff;
  }
  #page_wc .woocommerce .checkout-button:hover {
    background-color: #e25353;
    color: #fff;
  }
  #page_wc .woocommerce table.shop_table td.product-remove a.remove:hover {
    color: #999 !important;
  }
  #page_wc .woocommerce .woocommerce-MyAccount-navigation ul li a:hover {
    color: #232121;
  }
  /* 共通設定 */
  .common_page_wrap {
    padding: 17vw 0 22vw;
  }
  .common_single_wrap {
    padding: 0 0 17vw;
  }
  .reserve_text {
    font-size: 6vw;
  }
  .breadcrumb {
    font-size: 2.4vw;
  }
  .breadcrumb.single {
    text-align: left;
    margin-top: 19vw;
  }
  /* SP固定ページ 個人情報保護方針 */
  .privacy_cont_sec .main_text {
    font-size: 3.3vw;
    margin-block: 0 10vw;
  }
  .privacy_cont_sec dl + dl {
    margin-block: 8vw 0;
  }
  .privacy_cont_sec dl dt {
    font-size: 4.1vw;
    padding-block: 0 0.5em;
    margin-block: 0 0.7em;
  }
  .privacy_cont_sec dl dd {
    font-size: 3.3vw;
  }
  /* SP固定ページ 404ページ */
  #page_404 .num {
    font-size: 20vw;
    line-height: 1.5;
  }
  #page_404 .text {
    font-size: 3.5vw;
  }
  .wp-pagenavi {
    margin-top: 12vw;
  }
  .wp-pagenavi a:hover {
    color: #fe8286;
    background-color: #ffffff;
    border-color: #fe8286;
  }
  .wp-pagenavi a,
  .wp-pagenavi span {
    padding: 1.5vw 2.8vw !important;
    margin: 0 2px;
    font-size: 3.6vw;
  }
  .common_form_page {
    padding: calc(70px + 14vw) 0 25vw;
  }
  .common_form_page .container {
    display: block;
  }
  .common_form_page .container .text_block {
    position: inherit;
    top: 0;
    margin-bottom: 8vw;
  }
  .common_form_page .container .text_block .top_text_box {
    margin-bottom: 0;
  }
  .common_form_page .container .text_block .top_text_box .ttl {
    font-size: 7.2vw;
    margin-bottom: 5vw;
  }
  .common_form_page .container .text_block .top_text_box .text {
    font-size: 3.6vw;
  }
  .common_form_page .container .text_block .top_text_box .text a {
    margin: 0 0.1vw;
  }
  .common_form_page .container .text_block .top_text_box .text + .text {
    margin-top: 1.5vw;
  }
  .common_form_page .container .text_block .form_guide_box {
    margin-top: 5vw;
    margin-bottom: 10vw;
  }
  .common_form_page .container .text_block .form_guide_box .ttl {
    font-size: 3.8vw;
    padding-bottom: 2vw;
  }
  .common_form_page .container .text_block .thum_box {
    gap: 0 5vw;
  }
  .common_form_page .container .text_block .thum_box .text_box .cont_list {
    margin-top: 3vw;
  }
  .common_form_page .container .text_block .thum_box .text_box .cont_list ul li + li {
    margin-top: 2vw;
  }
  .common_form_page .container .text_block .thum_box .text_box .cont_list ul li {
    font-size: 3.5vw;
  }
  .common_form_page .container .text_block .thum_box .text_box .cont_list ul li::before {
    margin-right: 2vw;
    width: 1.5vw;
    height: 1.5vw;
  }
  .common_form_page .container .text_block .thum_box .thum {
    width: 30%;
    border-radius: 3vw;
    padding: 2vw;
  }
  .common_form_page .container .form_cont {
    width: 100%;
    padding: 7vw 3.5vw 6vw;
    margin-left: 0;
  }
  .common_form_page .container .form_cont .top_text_box {
    margin-bottom: 6vw;
  }
  .common_form_page .container .form_cont .top_text_box .lead {
    font-size: 3.6vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box {
    margin-bottom: 7vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li + li {
    margin-top: 5.5vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .label {
    font-size: 3.5vw;
    margin-bottom: 3vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box input[type=text] {
    padding: 2.5vw 3.5vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box input[type=text]::-moz-placeholder {
    font-size: 3.6vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box input[type=text]::placeholder {
    font-size: 3.6vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box textarea {
    padding: 3vw 3.5vw;
    font-size: 3.6vw;
    height: 50vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box textarea::-moz-placeholder {
    font-size: 3.6vw;
  }
  .common_form_page .container .form_cont .form_wrap .form_box .list ul li .data_box textarea::placeholder {
    font-size: 3.6vw;
  }
  .common_form_page .container .form_cont .form_wrap .btn button {
    line-height: 3.8;
    font-size: 4.2vw;
  }
  .common_form_page .container .form_cont .form_wrap .btn button:hover {
    transform: translateY(0);
    box-shadow: 0 6px #862323;
  }
  .common_form_page .container .form_cont .form_wrap button[name=submitBack] {
    margin-top: 3vw;
  }
  .common_form_page .container .form_cont .form_wrap .thanks_text_box .ttl {
    font-size: 4.5vw;
    line-height: 1.4;
    margin-bottom: 4vw;
  }
  .common_form_page .container .form_cont .form_wrap .thanks_text_box .text {
    font-size: 3.6vw;
  }
  .common_form_page .container .form_cont .form_wrap .thanks_text_box .text + .text {
    margin-top: 2vw;
  }
  /* layout helpers */
  .data_box.check_wrap {
    display: block;
  }
  .mw_wp_form .horizontal-item {
    display: block;
  }
  .mw_wp_form .horizontal-item + .horizontal-item {
    margin-top: 2vw;
  }
  .radio_btns {
    display: block;
  }
  #sidebar {
    width: 100%;
    padding: 0 15px;
    margin-top: 5vw;
  }
  #sidebar .block + .block {
    margin-top: 10vw;
  }
  #sidebar .common_link_box {
    margin-bottom: 0;
  }
  #sidebar .block .top_ttl {
    font-size: 3.6vw;
    padding-bottom: 2vw;
    margin-bottom: 6vw;
  }
  #sidebar .block .top_ttl::before {
    width: 30%;
  }
  #sidebar .block .ranking_list ul li + li {
    margin-top: 5vw;
  }
  #sidebar .block .ranking_list ul li a {
    gap: 0 3vw;
  }
  #sidebar .block .ranking_list ul li a .ranking_box {
    width: 6vw;
  }
  #sidebar .block .ranking_list ul li a .ranking_box .num {
    font-size: 3.5vw;
    line-height: 1.7;
  }
  #sidebar .block .ranking_list ul li a .img {
    width: 34%;
  }
  #sidebar .block .ranking_list ul li a .text_box .ttl {
    font-size: 3.1vw;
  }
  #sidebar .block .ranking_list ul li a:hover .img img {
    transform: scale(1);
  }
  #sidebar .block .voice_list ul li + li {
    margin-top: 4vw;
  }
  #sidebar .block .voice_list ul li a {
    gap: 0 3vw;
  }
  #sidebar .block .voice_list ul li a .img {
    width: 34%;
  }
  #sidebar .block .voice_list ul li a .text_box .date {
    font-size: 3vw;
    margin-bottom: 1vw;
  }
  #sidebar .block .voice_list ul li a .text_box .ttl {
    font-size: 3.1vw;
  }
  #sidebar .block .voice_list ul li a:hover .img img {
    transform: scale(1);
  }
  #sidebar .block .case_list ul li + li {
    margin-top: 4vw;
  }
  #sidebar .block .case_list ul li a {
    gap: 0 3vw;
  }
  #sidebar .block .case_list ul li a .img {
    width: 34%;
  }
  #sidebar .block .case_list ul li a .text_box .ttl {
    font-size: 3.1vw;
  }
  #sidebar .block .case_list ul li a:hover .img img {
    transform: scale(1);
  }
  #sidebar .block .link_list ul li a {
    gap: 0 2.5vw;
    padding: 3vw 0;
    font-size: 3.3vw;
  }
  #sidebar .block .link_list ul li a::before {
    width: 1.5vw;
    height: 1.5vw;
  }
  #sidebar .block .link_list ul li a:hover {
    color: #232121;
  }
  /* 準備中 */
  .sorry_sec .text_box .text {
    text-align: left;
    font-size: 4vw;
  }
  .sorry_sec .text_box .text + .text {
    margin-top: 3vw;
  }
  .sorry_sec .text_box .common_btn {
    margin: 7vw 0 0;
  }
  .single_page_wrap {
    padding-top: calc(70px + 10vw);
    padding-bottom: 19vw;
    margin-bottom: 0;
  }
  .single_page_wrap #sidebar {
    padding: 0;
    margin-top: 14vw;
  }
  .single_page_wrap .related_store_block .box a:hover .img img {
    transform: none;
  }
  .single_page_wrap .related_store_block .box a:hover .text_box .name {
    color: #232121;
  }
  .single_page_wrap .related_event_block .box a:hover .img img {
    transform: none;
  }
  .single_page_wrap .related_event_block .box a:hover .text_box .name {
    color: #232121;
  }
  /* 選ばれる理由 */
  /* 一覧ページ */
  #archive_page .common_page_wrap {
    padding: 12.82vw 0 25.64vw;
  }
  #archive_page .cat_nav {
    margin-bottom: 8.21vw;
  }
  #archive_page .cat_nav ul {
    gap: 2.05vw 2.05vw;
  }
  #archive_page .cat_nav ul li a {
    padding: 0 4.1vw;
    font-size: 3.33vw;
    line-height: 2.6;
  }
  #archive_page .common_news_list {
    width: auto;
    padding: 6.15vw 5.13vw 4.1vw;
    border-radius: 5.13vw;
  }
  #archive_page .common_news_list ul li {
    padding: 5.13vw 0 3.08vw;
  }
  #archive_page .common_news_list ul li a .text_box .ttl_box {
    display: block;
  }
  #archive_page .common_news_list ul li a .text_box .ttl_box .date {
    font-size: 3.08vw;
  }
  #archive_page .common_news_list ul li a .text_box .ttl_box .ttl {
    margin-top: 2.05vw;
    font-size: 4.1vw;
  }
  #archive_page .common_news_list ul li a .text_box .text {
    margin-top: 2.05vw;
    font-size: 3.59vw;
  }
  #archive_page .common_news_list ul li a .arrow {
    width: 8.21vw;
    height: 8.21vw;
    margin-left: 3.08vw;
  }
  #archive_page .common_news_list ul li a .arrow::before {
    left: 2.82vw;
    top: 3.08vw;
    width: 1.79vw;
    height: 1.79vw;
  }
  #archive_page .common_post_list ul {
    display: block;
  }
  #archive_page .common_post_list ul li {
    padding: 6.15vw 0;
  }
  #archive_page .common_post_list ul li:nth-child(-n+2) {
    padding-top: 6.15vw;
  }
  #archive_page .common_post_list ul li:first-child {
    padding-top: 0;
  }
  #archive_page .common_post_list ul li a {
    align-items: center;
  }
  #archive_page .common_post_list ul li a .img {
    width: 30.77vw;
    height: 21.79vw;
    border-radius: 2.56vw;
  }
  #archive_page .common_post_list ul li a .text_box {
    margin-left: 3vw;
    padding-top: 0;
  }
  #archive_page .common_post_list ul li a .text_box .date {
    font-size: 3.08vw;
  }
  #archive_page .common_post_list ul li a .text_box .ttl {
    margin-top: 2.05vw;
    font-size: 3.85vw;
  }
  #archive_page .common_post_list ul li a .text_box .cat {
    min-width: 20vw;
    margin-top: 1.54vw;
    padding: 0 2.56vw;
    font-size: 3.08vw;
  }
  #archive_page .common_voice_list ul {
    grid-template-columns: 1fr;
    gap: 3vw 0;
  }
  #archive_page .common_voice_list ul li {
    width: auto;
    padding-top: 6.67vw;
  }
  #archive_page .common_voice_list ul li a .clip {
    width: 11.28vw;
    margin-left: -5.64vw;
  }
  #archive_page .common_voice_list ul li a .card {
    padding: 5.13vw 5.13vw 8.21vw;
    border-radius: 7.69vw 1.54vw 7.69vw 1.54vw;
  }
  #archive_page .common_voice_list ul li a .card .img {
    height: 48.72vw;
    border-radius: 5.13vw;
  }
  #archive_page .common_voice_list ul li a .card .ttl {
    min-height: 0;
    margin-top: 4.62vw;
    padding-bottom: 4.36vw;
    font-size: 4.1vw;
  }
  #archive_page .common_voice_list ul li a .card .bottom_box {
    margin-top: 4.36vw;
  }
  #archive_page .common_voice_list ul li a .card .bottom_box .name {
    font-size: 3.59vw;
  }
  #archive_page .common_voice_list ul li a .card .bottom_box .arrow {
    width: 6.15vw;
    height: 6.15vw;
  }
  #archive_page .common_voice_list ul li a .card .bottom_box .arrow::before {
    left: 1.79vw;
    top: 2.95vw;
    width: 2.56vw;
  }
  #archive_page .common_voice_list ul li a .card .bottom_box .arrow::after {
    left: 2.82vw;
    top: 2.31vw;
    width: 1.28vw;
    height: 1.28vw;
  }
  #archive_page .common_instructor_list ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.5vw 2.4vw;
  }
  #archive_page .common_instructor_list ul li {
    width: auto;
  }
  #archive_page .common_instructor_list ul li a {
    padding: 2.56vw 2.56vw 6vw;
    border-radius: 21.79vw 21.79vw 0 0;
  }
  #archive_page .common_instructor_list ul li a .img {
    height: 37.6vw;
    border-radius: 50%;
  }
  #archive_page .common_instructor_list ul li a .badge {
    width: 30.77vw;
    margin: -4.62vw auto -2.05vw;
    font-size: 3.59vw;
    line-height: 1.86;
  }
  #archive_page .common_instructor_list ul li a .name {
    margin-top: 3.3vw;
    font-size: 4.8vw;
    line-height: 1.25;
  }
  #archive_page .common_instructor_list ul li a .en {
    margin-top: 0;
    font-size: 3.08vw;
    line-height: 1.4;
  }
  #archive_page .common_instructor_list ul li a .area_label {
    gap: 0 2.56vw;
    margin-top: 1.03vw;
    font-size: 3.59vw;
    line-height: 1.8;
  }
  #archive_page .common_instructor_list ul li a .area {
    margin: 0.3vw -2.05vw 0;
    font-size: 3.33vw;
    line-height: 1.23;
  }
  #archive_page .archive_navi {
    margin-top: 10.26vw;
  }
  #archive_page .archive_navi .wp-pagenavi {
    gap: 0 1.54vw;
  }
  #archive_page .archive_navi .wp-pagenavi a, #archive_page .archive_navi .wp-pagenavi span {
    min-width: 9.23vw;
    height: 9.23vw;
    font-size: 3.33vw;
  }
  #archive_page .cat_nav ul li a:hover {
    background-color: #fe8286;
    color: #ffffff;
  }
  #archive_page .common_news_list ul li a:hover .text_box .ttl_box .ttl {
    color: #232121;
  }
  #archive_page .common_news_list ul li a:hover .arrow {
    transform: none;
  }
  #archive_page .common_post_list ul li a:hover .img img {
    transform: none;
  }
  #archive_page .common_post_list ul li a:hover .text_box .ttl {
    color: #333333;
  }
  #archive_page .common_voice_list ul li a:hover .card .img img {
    transform: none;
  }
  #archive_page .common_voice_list ul li a:hover .card .ttl {
    color: #232121;
  }
  #archive_page .common_voice_list ul li a:hover .card .bottom_box .arrow {
    transform: none;
  }
  #archive_page .common_instructor_list ul li a:hover .img img {
    transform: none;
  }
  #archive_page .common_instructor_list ul li a:hover .name {
    color: #232121;
  }
  #archive_page .archive_navi .wp-pagenavi a:hover {
    background-color: #ffffff;
    color: #fe8286;
  }
  #main_header .cont .nav > ul > li > a:hover {
    color: #b63030;
  }
  #main_header .cont .nav > ul > li > a:hover::after {
    transform: none;
  }
  #main_header .cont .nav > ul > li .sub_list ul li a:hover {
    color: #333333;
  }
  #main_header .cont .nav > ul > li .sub_list ul li a:hover .arrow {
    border-color: #333333;
  }
  #main_header .cont .nav > ul > li:hover .sub_list {
    opacity: 0;
    visibility: hidden;
  }
  #main_header .btn_list .line_btn:hover {
    background-color: #21ad3f;
    color: #ffffff;
    box-shadow: none;
  }
  #main_header .btn_list .reserve_btn:hover {
    background-color: #b63030;
    color: #ffffff;
    box-shadow: none;
  }
  #main_header .btn_list .reserve_btn:hover .icon svg .fill {
    fill: #ffffff;
  }
  .manga_modaal .modaal-container {
    width: 92vw;
    border-radius: 3.85vw;
  }
  .manga_modaal .modaal-content-container {
    padding: 10.26vw 3.85vw 6.41vw;
  }
  .manga_modaal .manga_ttl {
    font-size: 5.13vw;
  }
  .manga_modaal .manga_slider_wrap {
    margin-top: 4.1vw;
  }
  .manga_modaal .manga_slider .slick-prev, .manga_modaal .manga_slider .slick-next {
    width: 9.23vw;
    height: 9.23vw;
  }
  .manga_modaal .manga_slider .slick-prev::before, .manga_modaal .manga_slider .slick-next::before {
    font-size: 6.15vw;
  }
  .manga_modaal .manga_slider .slick-prev {
    left: -2.56vw;
  }
  .manga_modaal .manga_slider .slick-next {
    right: -2.56vw;
  }
  .manga_modaal .manga_slider .slick-dots {
    margin-top: 3.08vw;
  }
  .manga_modaal .manga_note {
    margin-top: 2.56vw;
    font-size: 3.08vw;
  }
}/*# sourceMappingURL=style.css.map */