<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
html {
  scroll-behavior: smooth;
  font-size: 10px;
}

.keizoku_01 {
  color: #d23ca3;
  font-family: 'canada-type-gibson';
  font-weight: 900;
  font-size: 12rem;
  position: relative;
  -webkit-text-stroke: 15px #ffffff;
  padding-left: 20px;
  display: block;
  display: inline-block;
}

.keizoku_01::before {
  content: attr(data-text);
  -webkit-text-stroke: 0;
  position: absolute;
  inset: 0 auto auto 0;
  /* 修正: 全方向に配置 */
  padding-left: 20px;
  display: block;
}

.keizoku_02 {
  color: #d23ca3;
  font-family: 'canada-type-gibson';
  font-weight: 900;
  font-size: 8rem;
  position: relative;
  -webkit-text-stroke: 15px #ffffff;
  padding-top: 15px;
  display: inline-block;
}

.keizoku_02::before {
  content: attr(data-text);
  -webkit-text-stroke: 0;
  position: absolute;
  padding-top: 15px;
  inset: 0 auto auto 0;
}

.keizoku_03 {
  color: #d23ca3;
  font-family: 'canada-type-gibson';
  font-weight: 500;
  font-size: 6rem;
  position: relative;
  -webkit-text-stroke: 10px #ffffff;
  padding-top: 25px;
  display: inline-block;
}

.keizoku_03::before {
  content: attr(data-text);
  -webkit-text-stroke: 0;
  position: absolute;
  padding-top: 25px;
  inset: 0 auto auto 0;
}
/*---------------------------
共通スタイル
---------------------------*/
/*-- フォントサイズ --*/
.f10 {
  font-size: 1rem;
}

.f22 {
  font-size: 2.2rem;
}

.f24 {
  font-size: 2.4rem;
}

.f26 {
  font-size: 2.6rem;
}

.f28 {
  font-size: 2.8rem;
}

.f32 {
  font-size: 3.2rem;
}

.f36 {
  font-size: 3.6rem;
}

.f38 {
  font-size: 3.8rem;
}

.f40 {
  font-size: 4rem;
}

.f45 {
  font-size: 4.5rem;
}

.f48 {
  font-size: 4.8rem;
}

.f56 {
  font-size: 5.6rem;
}

.f64 {
  font-size: 6.4rem;
}

.f96 {
  font-size: 9.6rem;
}

.f160 {
  font-size: 16rem;
}

/*-- マージン --*/
.mt16 {
  margin-top: 1.6rem;
}

.mt24 {
  margin-top: 2.4rem;
}

.mt32 {
  margin-top: 3.2rem;
}

.mt40 {
  margin-top: 4rem;
}

.mt48 {
  margin-top: 4.8rem;
}

.mt64 {
  margin-top: 6.4rem;
}

.mt80 {
  margin-top: 8rem;
}

.mt96 {
  margin-top: 9.6rem;
}

.mb24 {
  margin-bottom: 2.4rem;
}

.mb32 {
  margin-bottom: 3.2rem;
}

.mb40 {
  margin-bottom: 4rem;
}

.mb48 {
  margin-bottom: 4.8rem;
}

.mb64 {
  margin-bottom: 6.4rem;
}

.ml32 {
  margin-left: 3.2rem;
}

/*-- パディング --*/
.pt24 {
  padding-top: 2.4rem;
}

.pt32 {
  padding-top: 3.2rem;
}

.pt40 {
  padding-top: 4rem;
}

.pt48 {
  padding-top: 4.8rem;
}

.pt64 {
  padding-top: 6.4rem;
}

.pb32 {
  padding-bottom: 3.2rem;
}

.pb40 {
  padding-bottom: 4rem;
}

.pb48 {
  padding-bottom: 4.8rem;
}

.pb64 {
  padding-bottom: 6.4rem;
}

.pb80 {
  padding-bottom: 8rem;
}

.pb96 {
  padding-bottom: 9.6rem;
}

/*-- カラー --*/
.purple {
  color: #8156ae;
}

.gold {
  color: #bfa26a;
}

.pink {
  color: #d23ca3;
}

.l_purple {
  color: #e9e6ed;
}

.l_gold {
  color: #e5ce90;
}

.yellow {
  color: #ffe466;
}

.gray {
  color: #58565c;
}

.white {
  color: #fff;
}

.black {
  color: #372d4b;
}

/*-- フォントスタイル --*/
.b {
  font-weight: bold;
}

.i {
  font-style: italic;
}

/*-- フォントファミリー --*/
.font_ja {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.font_en {
  font-family: "canada-type-gibson", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.font_en_i {
  font-family: "canada-type-gibson", sans-serif;
  font-weight: 500;
  font-style: italic;
}

/*-- font-face --*/
@font-face {
  font-family: "bootstrap@5.3.0";
  src: url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.0/font/fonts/bootstrap-icons.woff2") format("woff2");
  font-display: swap;
}
/*-- 行間調整 --*/
.lh15 {
  line-height: 1.5em;
}

.lh18 {
  line-height: 1.8em;
}

/*---------------------------
Body
---------------------------*/
body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 3.2rem;
  font-weight: normal;
  color: #372d4b;
  line-height: 1.8em;
  background: #fff;
  position: relative;
}

/*---------------------------
Link
---------------------------*/
a {
  text-decoration: none;
  word-break: break-all;
}

a:hover img {
  transition-duration: 0.3s;
  opacity: 0.7;
}

a.link_line {
  text-decoration: underline;
}
a.link_line:hover {
  cursor: pointer;
  color: #d23ca3;
}

/*---------------------------
Img
---------------------------*/
img {
  max-width: 100%;
  height: auto;
}

/*---------------------------
中央揃え用スタイル
---------------------------*/
.mlr24 {
  margin: 0 2.4rem;
}

.mlr32 {
  margin: 0 3.2rem;
}

/*-- 画像センター用 --*/
.img_center {
  display: block;
  margin: 0 auto;
}

.t_center {
  text-align: center;
}

.v_middle {
  display: inline-block;
  vertical-align: middle;
}

.t_left {
  text-align: left;
}

/*-- ブロック要素 --*/
.display_b {
  display: block;
}

/*-- 横並び --*/
.display_f {
  display: flex;
  justify-content: center;
  align-items: center;
}

/*-- 縦並び --*/
.display_f2 {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

/*---------------------------
Pc
---------------------------*/
.pc_container {
  width: 100%;
  height: 100%;
  position: fixed;
  background: url(../img/pc_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  overflow-y: auto;
}
.pc_container .pc_inner {
  max-width: 1536px;
}
.pc_container .pc_inner .pc_people {
  position: absolute;
  left: 20rem;
  bottom: 0;
  width: 100rem;
  z-index: 2;
}
.pc_container .pc_inner .pc_btn {
  position: absolute;
  top: 5%;
  left: 5%;
  z-index: 5;
}
.pc_container .pc_inner .pc_flex {
  position: absolute;
  left: 5%;
  bottom: 5%;
  display: flex;
  align-items: center;
  z-index: 5;
}
.pc_container .pc_inner .pc_flex .pc_store {
  display: inline-block;
  color: #fff;
  font-size: 2.4rem;
  line-height: 1.5;
  text-align: center;
  background: #8156ae;
  padding: 1.8rem 3.6rem;
}

.pc_container.bg-lazy {
  background-image: none !important;
}

.no-webp .pc_container {
  background: url(../img/bg.jpg);
}
.no-webp .pc_container.bg-lazy {
  background-image: none !important;
}

/*------------------------------------------------------
Sp
------------------------------------------------------*/
.sp_container {
  box-shadow: 0 1rem 2.5rem 0 rgba(87, 39, 137, 0.6);
  width: 60rem;
  background: #fff;
}

/*---------------------------
@mixin
---------------------------*/
/*-- Webフォント用 --*/
/*-- ボタン用 --*/
/*-- 吹き出し用 --*/
/*-- h3見出し（日本語f48）用 --*/
/*-- ゴールド影付き見出し用 --*/
/*-- 画像と横並び見出し用 --*/
/*-- 紫下線用 --*/
/*-- 横並び白枠用 --*/
/*---------------------------
■フッター
---------------------------*/
.footer_area {
  background: #58565c;
  color: #fff;
  padding: 3.2rem;
}
.footer_area .logo {
  width: 24rem;
  margin: auto;
  display: block;
}
.footer_area .copy {
  font-size: 2rem;
  text-align: center;
}

/*---- フッターボタン ----*/
.footer_btn {
  display: block;
  width: 50rem;
  color: #fff;
  font-size: 3.6rem;
  font-weight: bold;
  padding: 2rem;
  text-align: center;
  background-color: #d23ca3;
  border-radius: 100vh;
  box-shadow: 0.2rem 0.2rem 0.2rem 0 rgba(255, 255, 255, 0.5) inset, -0.3rem -0.3rem 0.3rem 0 rgba(67, 1, 46, 0.5) inset;
  width: 36rem;
  padding: 1rem;
}
.footer_btn::before {
  content: "無料";
  font-size: 2.5rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 2rem 1rem;
  border-radius: 50%;
  margin-right: 1rem;
  box-shadow: 0.1rem 0.1rem 0.1rem 0.1rem rgba(0, 0, 0, 0.2) inset;
  /*margin-right: 1rem;*/
}
.footer_btn::after {
  content: "▶";
  position: relative;
  top: -0.5rem;
  font-size: 2rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 0.8rem 1rem;
  border-radius: 50%;
  margin-left: 1rem;
  margin-right: 1rem;
  margin-left: 0;
}
.footer_btn:hover {
  opacity: 0.8;
}

.tel_btn img, .line_btn img {
  width: 8rem;
}

.line_btn {
  margin-left: 1rem;
  margin-right: 1rem;
}

/*---------------------------
■共通パーツ
---------------------------*/
/*---- 背景ライトパープル ----*/
.bg_l_purple {
  background: #e9e6ed;
}

/*---- パープル▼見出し ----*/
.h2_purple {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  background: #8156ae;
  color: #fff;
  text-align: center;
  padding: 4.5rem 3.2rem 0;
}

.triangle {
  width: 100%;
  border-right: 30rem solid transparent;
  border-left: 30rem solid transparent;
  border-top: 8rem solid #8156ae;
}

.triangle_l_purple {
  width: 100%;
  border-right: 30rem solid #e9e6ed;
  border-left: 30rem solid #e9e6ed;
  border-top: 8rem solid #8156ae;
}

/*---- グレー背景テキスト ----*/
.gray_p {
  background: #58565c;
  color: #fff;
  padding: 6.4rem 3.2rem;
}

/*---- 雲形吹き出し ----*/
.balloon_cloud {
  background: #e9e6ed;
  padding-bottom: 11rem;
}

.balloon_cloud_txt, .balloon_cloud_txt2 {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  line-height: 1.5;
  font-size: 4.5rem;
  padding-top: 5.5rem;
  position: absolute;
  width: 60rem;
  text-align: center;
}

.balloon_cloud_txt2 {
  padding-top: 22.5rem;
}

/*---- 吹き出し（白） ----*/
.white_balloon {
  position: absolute;
  background: url(../img/bubble_white.webp) top left no-repeat;
  background-size: cover;
  width: 28rem;
  height: 10rem;
  margin: -5.4rem 0 0 3.2rem;
}
.white_balloon .white_balloon_txt {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  text-align: center;
  display: block;
  margin-top: 0.7rem;
}

/*---- 吹き出し（ピンク） ----*/
.pink_balloon {
  position: absolute;
  background: url(../img/bubble_pink.webp) top left no-repeat;
  background-size: cover;
  width: 28rem;
  height: 9.4rem;
  margin: -7.4rem 0 0 3.2rem;
}
.pink_balloon .pink_balloon_txt {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: 4rem;
  color: #fff;
  text-align: center;
  display: block;
  margin-top: 0.7rem;
}

/*---- 無料体験ボタン ----*/
.trial_btn {
  display: block;
  width: 50rem;
  color: #fff;
  font-size: 3.6rem;
  font-weight: bold;
  padding: 2rem;
  text-align: center;
  background-color: #d23ca3;
  border-radius: 100vh;
  box-shadow: 0.2rem 0.2rem 0.2rem 0 rgba(255, 255, 255, 0.5) inset, -0.3rem -0.3rem 0.3rem 0 rgba(67, 1, 46, 0.5) inset;
  margin: 0 auto 4.8rem;
}
.trial_btn::before {
  content: "無料";
  font-size: 2.5rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 2rem 1rem;
  border-radius: 50%;
  margin-right: 1rem;
  box-shadow: 0.1rem 0.1rem 0.1rem 0.1rem rgba(0, 0, 0, 0.2) inset;
}
.trial_btn::after {
  content: "▶";
  position: relative;
  top: -0.5rem;
  font-size: 2rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 0.8rem 1rem;
  border-radius: 50%;
  margin-left: 1rem;
  margin-right: 1rem;
}
.trial_btn:hover {
  opacity: 0.8;
}

/*---- 無料体験ボタン ----*/
.trial_btn_only {
  display: block;
  width: 50rem;
  color: #fff;
  font-size: 3.6rem;
  font-weight: bold;
  padding: 2rem;
  text-align: center;
  background-color: #d23ca3;
  border-radius: 100vh;
  box-shadow: 0.2rem 0.2rem 0.2rem 0 rgba(255, 255, 255, 0.5) inset, -0.3rem -0.3rem 0.3rem 0 rgba(67, 1, 46, 0.5) inset;
  margin: 0 auto;
}
.trial_btn_only::before {
  content: "無料";
  font-size: 2.5rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 2rem 1rem;
  border-radius: 50%;
  margin-right: 1rem;
  box-shadow: 0.1rem 0.1rem 0.1rem 0.1rem rgba(0, 0, 0, 0.2) inset;
}
.trial_btn_only::after {
  content: "▶";
  position: relative;
  top: -0.5rem;
  font-size: 2rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 0.8rem 1rem;
  border-radius: 50%;
  margin-left: 1rem;
  margin-right: 1rem;
}
.trial_btn_only:hover {
  opacity: 0.8;
}

/*---- 無料体験ボタンのリンクテキスト ----*/
.link a {
  text-decoration: underline;
}
.link a:hover {
  color: #bfa26a;
}

/*---- 口コミボタン ----*/
.tweet_btn {
  display: block;
  width: 50rem;
  color: #fff;
  font-size: 3.6rem;
  font-weight: bold;
  padding: 2rem;
  text-align: center;
  background-color: #d23ca3;
  border-radius: 100vh;
  box-shadow: 0.2rem 0.2rem 0.2rem 0 rgba(255, 255, 255, 0.5) inset, -0.3rem -0.3rem 0.3rem 0 rgba(67, 1, 46, 0.5) inset;
  margin: 0 auto;
}
.tweet_btn::after {
  content: "▶";
  position: relative;
  top: -0.5rem;
  font-size: 2rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 0.8rem 1rem;
  border-radius: 50%;
  margin-left: 1rem;
  margin-right: 1rem;
}
.tweet_btn:hover {
  opacity: 0.8;
}

/*---- 無料体験ボタン・フッター追従 ----*/
.trial_btn_fixed {
  display: block;
  width: 100%;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  padding: 2.5rem;
  text-align: center;
  background-color: #d23ca3;
}
.trial_btn_fixed::before {
  content: "無料";
  font-size: 2.4rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 1.7rem 0.71rem;
  border-radius: 50%;
  margin-right: 1rem;
  box-shadow: 0.1rem 0.1rem 0.1rem 0.1rem rgba(0, 0, 0, 0.2) inset;
}
.trial_btn_fixed::after {
  content: "▶";
  position: relative;
  top: -0.5rem;
  font-size: 2rem;
  color: #d23ca3;
  background-color: #fff;
  padding: 0.8rem 1rem;
  border-radius: 50%;
  margin-left: 1rem;
  margin-right: 1rem;
}
.trial_btn_fixed:hover {
  opacity: 0.8;
}

/*---- カルテ ----*/
.binder_gold {
  background-color: #bfa26a;
}

.binder_purple {
  background-color: #8156ae;
}

.binder_gold, .binder_purple {
  position: relative;
  width: 100%;
  border-radius: 1rem;
  margin-top: 11rem;
  padding: 2.4rem;
}
.binder_gold section, .binder_purple section {
  background: #fff;
}
.binder_gold section .binder_clip, .binder_purple section .binder_clip {
  position: absolute;
  top: -5rem;
  left: 50%;
  transform: translate(-50%, 0);
}
.binder_gold section .binder_ttl, .binder_purple section .binder_ttl {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: 4.8rem;
  text-align: center;
  padding-top: 8rem;
  padding-bottom: 4.9rem;
}
.binder_gold section .future_pic img, .binder_purple section .future_pic img {
  width: 28.8rem;
}
.binder_gold section .lifespan_pic img, .binder_purple section .lifespan_pic img {
  width: 43.4rem;
  padding-bottom: 6.4rem;
}
.binder_gold section .lifespan_graph img, .binder_purple section .lifespan_graph img {
  padding-bottom: 6.4rem;
}
.binder_gold section .h4_gold, .binder_purple section .h4_gold {
  border-top: 0.3rem solid #bfa26a;
  border-bottom: 0.3rem solid #bfa26a;
}
.binder_gold section .h4_purple, .binder_purple section .h4_purple {
  border-top: 0.3rem solid #8156ae;
  border-bottom: 0.3rem solid #8156ae;
}
.binder_gold section .h4_gold, .binder_gold section .h4_purple, .binder_purple section .h4_gold, .binder_purple section .h4_purple {
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
  padding: 3.2rem 0;
  margin: 0 2.4rem 4.8rem;
}
.binder_gold section .binder_icon_pic img, .binder_purple section .binder_icon_pic img {
  width: 16rem;
}

/*---- 図上の見出し ----*/
.h3_ja40 {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: 4rem;
  text-align: center;
  padding-bottom: 6.4rem;
}
.h3_ja40 .h3_q {
  display: block;
  font-family: "canada-type-gibson", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 8rem;
  color: #8156ae;
  padding-bottom: 2.4rem;
}

/*---------------------------
■パーツ調整
---------------------------*/
/*---- メイン画像（First View） ----*/
.fv {
  position: relative;
  width: 100%;
  height: 115rem;
  background: url(../img/fv_bg.webp) 0 0 no-repeat;
  background-size: cover;
}
.fv .header {
  display: flex;
  padding-top: 3.2rem;
  justify-content: space-between;
}
.fv .header img {
  width: 26rem;
}
.fv .fv_img {
  position: absolute;
  top: 21rem;
  right: 3.2rem;
  width: 68%;
}
.fv .fv_campaign {
  position: relative;
  top: 37rem;
  width: 55.2rem;
  background: #8156ae;
  border-radius: 2rem;
  margin: 5.4rem auto 9.5rem;
}
.fv .fv_campaign .fv_c_ttl_area {
  display: flex;
}
.fv .fv_campaign .fv_c_ttl_area .gold_circle {
  position: absolute;
  top: -5rem;
  width: 14.4rem;
}
.fv .fv_campaign .fv_c_ttl_area .fv_c_ttl {
  position: absolute;
  top: 1.4rem;
  left: 15.5rem;
}
.fv .fv_campaign .oen {
  display: flex;
  position: relative;
  top: 8rem;
  justify-content: space-between;
  z-index: 10;
  margin: 0 auto;
  padding: 0 2.4rem;
}
.fv .fv_campaign .oen .left, .fv .fv_campaign .oen .center, .fv .fv_campaign .oen .right {
  background: #fff;
  border-radius: 2rem;
  text-align: center;
  padding: 1.5rem 1.5rem 0;
}
.fv .fv_campaign .oen .left .oen_txt, .fv .fv_campaign .oen .center .oen_txt, .fv .fv_campaign .oen .right .oen_txt {
  display: block;
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.3em;
}
.fv .fv_campaign .plus_a_top {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 2.8rem;
  font-weight: bold;
  margin: 8.5rem auto 0;
}
.fv .fv_campaign .plus_a_box {
  display: flex;
  justify-content: space-between;
  padding: 0 2.4rem;
}
.fv .fv_campaign .plus_a_box .left, .fv .fv_campaign .plus_a_box .right {
  background: #fff;
  border-radius: 2rem;
  text-align: center;
  width: 48%;
  padding: 1rem 0 0.5rem;
  margin-bottom: 2.4rem;
}
.fv .fv_campaign .plus_a_box .left .plus_a_txt, .fv .fv_campaign .plus_a_box .right .plus_a_txt {
  display: block;
  line-height: 1.8em;
}

.fv.bg-lazy {
  background-image: none !important;
}

.logo img {
  width: 24rem;
  height: auto;
}

/*---- メイン画像下のテキスト ----*/
.opening {
  position: relative;
  margin-top: 4.4rem;
}
.opening .opening_txt {
  padding-top: 6.4rem;
}

/*---- チェックリスト（ゴールド） ----*/
.check_g_list {
  margin: 6.4rem 3.2rem;
  background: url(../img/up_down.webp) top right no-repeat;
  background-size: contain;
}
.check_g_list li {
  font-size: 3.8rem;
  color: #372d4b;
  font-weight: bold;
  padding-bottom: 1.5rem;
  padding-right: 9.5rem;
}
.check_g_list li:last-child {
  padding-bottom: 0;
}
.check_g_list li .gold_check {
  font-size: 3rem;
  color: #bfa26a;
  padding-right: 1.5rem;
}

/*---- チェックリスト（パープル） ----*/
.check_p_list li {
  font-size: 3.2rem;
  color: #372d4b;
  font-weight: bold;
  padding-bottom: 1.5rem;
}
.check_p_list li .purple_check {
  font-size: 3rem;
  color: #8156ae;
  padding-right: 1.5rem;
}

/*---- 運動量の目安時間 ----*/
.time_answer {
  position: relative;
  background-color: #e9e6ed;
  padding: 6.4rem 0 3.2rem;
}
.time_answer .time_member {
  position: relative;
}
.time_answer .time_member .balloon {
  position: absolute;
  top: 0;
  right: 3.2rem;
}
.time_answer .time_member .balloon .speak {
  width: 35rem;
  position: relative;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: 3.8rem;
  text-align: center;
  top: -19rem;
}
.time_answer .time_staff .balloon2 {
  position: relative;
  top: -2rem;
}
.time_answer .time_staff .txt {
  position: absolute;
  top: 0;
  font-size: 3.6rem;
  font-weight: bold;
  margin: 70rem 0 0 5rem;
}
.time_answer .time_staff .staff_img {
  position: relative;
  top: -3rem;
  left: 37rem;
}

/*---- 幸せに1番必要なもの図 ----*/
.keep_graph img {
  width: 53.6rem;
}

/*---- キャンペーン（画像パターン） ----*/
.campaign01_top {
  position: relative;
}
.campaign01_top .campaign_staff01 {
  position: relative;
  top: 0;
  left: 24.6rem;
}
.campaign01_top .campaign_staff01 img {
  width: 32.3rem;
}
.campaign01_top .campaign_member {
  position: relative;
  top: 9rem;
  left: 28.8rem;
}
.campaign01_top .campaign_member img {
  width: 28rem;
}
.campaign01_top .campaign_ttl01 {
  position: absolute;
  top: 3rem;
  left: 3.2rem;
  z-index: 2;
}
.campaign01_top .campaign_ttl01 img {
  width: 43rem;
}

.campaign_gold {
  position: relative;
  top: 9rem;
  padding: 4.5rem 0 3rem 3.2rem;
  font-size: 3.8rem;
  font-weight: bold;
  color: #fff;
  background: #bfa26a;
}
.campaign_gold::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(../img/30_pink_circle.webp);
  width: 15rem;
  height: 15rem;
  background-size: contain;
  background-repeat: no-repeat;
  top: 3rem;
  right: 3.2rem;
}

.campaign01_btm {
  position: relative;
}
.campaign01_btm .campaign_staff02 {
  position: relative;
  top: 0;
  left: 0;
}
.campaign01_btm .campaign_staff02 img {
  width: 25rem;
}
.campaign01_btm .campaign_table {
  position: absolute;
  width: 36.8rem;
  background: #8156ae;
  border-radius: 2rem;
  top: -1rem;
  right: 2.4rem;
}
.campaign01_btm .campaign_table .campaign_ttl {
  font-size: 3.2rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  margin: 0.5rem 0 0 0;
}
.campaign01_btm .campaign_table .bg_white {
  width: 33.6rem;
  margin: 0 1.6rem 1.6rem;
  background: #fff;
  border-radius: 1rem;
}
.campaign01_btm .campaign_table .bg_white .campaign_sub {
  font-size: 2.8rem;
  font-weight: bold;
  display: block;
  padding: 1rem 0 0;
}
.campaign01_btm .campaign_table .bg_white .campaign_price {
  padding-bottom: 2rem;
}
.campaign01_btm .campaign_table .bg_white .campaign_price .gold_circle img {
  width: 14.4rem;
}
.campaign01_btm .campaign_table .bg_white .campaign_price .yen {
  color: #d23ca3;
  font-size: 16rem;
  font-family: "canada-type-gibson", sans-serif;
  font-weight: 500;
  font-style: italic;
}
.campaign01_btm .campaign_table p {
  display: block;
  width: 100%;
  text-align: center;
}

/*---- 3つの特典 ----*/
.special3 {
  position: relative;
}
.special3 .bubble_h3, .special3 .bubble_h3_2 {
  position: relative;
  background: url(../img/campaign_3ttl.webp) top center no-repeat;
  background-size: contain;
  height: 7.5rem;
  top: -11rem;
  left: 0;
  color: #fff;
  text-align: center;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
}
.special3 .bubble_h3.bg-lazy, .special3 .bubble_h3_2.bg-lazy {
  background-image: none !important;
}
.special3 .bubble_h3_2 {
  top: 16rem;
}
.special3 .special3_staff_table {
  margin-top: -7.5rem;
}
.special3 .special3_table {
  margin-top: 19rem;
}
.special3 .bg_purple, .special3 .bg_white {
  display: flex;
  width: 60rem;
  padding: 3.2rem 3.8rem 3.2rem 2.4rem;
  box-sizing: border-box;
}
.special3 .bg_purple .special_menu, .special3 .bg_white .special_menu {
  width: 75%;
}
.special3 .bg_purple .special_menu .special_sub, .special3 .bg_white .special_menu .special_sub {
  margin-top: -1rem;
}
.special3 .bg_purple .special_price, .special3 .bg_white .special_price {
  width: 25%;
  text-align: right;
  margin-top: 3rem;
}
.special3 .bg_purple {
  background: #8156ae;
  color: #fff;
}
.special3 .bg_white {
  background: #fff;
  color: #8156ae;
}
.special3 .special_1::before, .special3 .special_2::before, .special3 .special_3::before {
  width: 5.6rem;
  height: 5.6rem;
  font-size: 3.2rem;
  color: #8156ae;
  background: #fff;
  padding: 0.3rem 1rem;
  border-radius: 50%;
  margin-top: 3rem;
  margin-right: 1rem;
  font-family: "canada-type-gibson", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.special3 .special_1::before {
  content: "01";
}
.special3 .special_2::before {
  content: "02";
  color: #fff;
  background: #8156ae;
}
.special3 .special_3::before {
  content: "03";
}

/*---- さらに ----*/
.plus_a {
  margin-top: 6.4rem;
  background: #fff;
}
.plus_a .bubble_h3 {
  background: url(../img/campaign+attl.webp) top center no-repeat;
  background-size: contain;
  height: 7.5rem;
  color: #fff;
  text-align: center;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
}
.plus_a .bubble_h3.bg-lazy {
  background-image: none !important;
}
.plus_a .plus_attl {
  font-size: 3.2rem;
  width: 100%;
  text-align: center;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
}
.plus_a .plus_a_price {
  background: #bfa26a;
  padding: 3.2rem 3.2rem 1rem;
  margin: 2.4rem 0 6.4rem;
}
.plus_a .plus_a_price .plus_a_box {
  display: flex;
  justify-content: space-between;
}
.plus_a .plus_a_price .plus_a_box .left, .plus_a .plus_a_price .plus_a_box .right {
  background: #fff;
  border-radius: 2rem;
  text-align: center;
  width: 48%;
  padding: 1.5rem 0 1rem;
}
.plus_a .plus_a_price .plus_a_box .left .plus_a_txt, .plus_a .plus_a_price .plus_a_box .right .plus_a_txt {
  display: block;
  line-height: 2em;
}
.plus_a .plus_a_price .plus_a_standard {
  font-size: 2.6rem;
  color: #fff;
  text-align: center;
  padding-top: 1rem;
}

/*---- スタッフ吹き出しバナー ----*/
.staff01, .staff02, .staff03, .staff05, .staff06 {
  position: relative;
  width: 100%;
  height: auto;
  background-size: cover;
}

.staff01 {
  background: url(../img/staff01_bg.webp) 0 0 no-repeat;
}

.staff02 {
  background: url(../img/staff02_bg.webp) 0 0 no-repeat;
}

.staff03 {
  background: url(../img/staff03_bg.webp) 0 0 no-repeat;
}

.staff04 {
  background: url(../img/staff04_bg.webp) 0 0 no-repeat;
}

.staff05 {
  background: url(../img/staff05_bg.webp) 0 0 no-repeat;
}

.staff06 {
  background: url(../img/staff06_bg.webp) 0 0 no-repeat;
  background-size: cover;
  width: 100%;
}

.staff01.bg-lazy, .staff02.bg-lazy, .staff03.bg-lazy, .staff04.bg-lazy, .staff05.bg-lazy, .staff06.bg-lazy {
  background-image: none !important;
}

.staff_l_bubble {
  background: url(../img/staff_bubble_left.webp) 0 0 no-repeat;
  position: absolute;
  margin-top: -4rem;
  width: 46.3rem;
  height: 31rem;
  background-size: cover;
  text-align: center;
  padding-top: 5.5rem;
  z-index: 1;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
}

.staff_r_bubble {
  background: url(../img/staff_bubble_right.webp) 0 0 no-repeat;
  position: absolute;
  margin-top: -4rem;
  width: 46.3rem;
  height: 31rem;
  background-size: cover;
  text-align: center;
  padding-top: 5.5rem;
  z-index: 1;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  right: 0;
}

.staff_l_bubble.bg-lazy, .staff_r_bubble.bg-lazy {
  background-image: none !important;
}

.staff_i_group {
  position: relative;
}
.staff_i_group .staff_txt {
  display: block;
  text-align: right;
  position: absolute;
  z-index: 10 !important;
}
.staff_i_group .staff_txt img {
  width: 38rem;
  margin: 32rem 0 7rem 3.2rem;
}
.staff_i_group .gold_plated {
  display: block;
  position: absolute;
}
.staff_i_group .gold_plated img {
  width: 32rem;
  margin: 7rem 0 0 3.2rem;
}
.staff_i_group .staff_img {
  display: block;
  text-align: right;
}
.staff_i_group .staff_img img {
  width: 21rem;
  margin-top: 15rem;
  z-index: 2;
}
.staff_i_group .staff_img2 {
  display: block;
  text-align: right;
}
.staff_i_group .staff_img2 img {
  width: 21rem;
  margin-top: 18rem;
  z-index: 2;
}
.staff_i_group .staff_img4 {
  display: block;
  text-align: right;
}
.staff_i_group .staff_img4 img {
  width: 35rem;
  z-index: 2;
}

.staff_ir_group {
  position: relative;
}
.staff_ir_group .staff_txt {
  display: block;
  position: absolute;
  right: 3.2rem;
  z-index: 10 !important;
}
.staff_ir_group .staff_txt img {
  width: 43rem;
  margin: 32rem 0 7rem 3.2rem;
}
.staff_ir_group picture {
  display: block;
}
.staff_ir_group .staff_img3 {
  text-align: left;
}
.staff_ir_group .staff_img3 img {
  width: 27rem;
  margin-top: 13rem;
  z-index: 2;
}
.staff_ir_group .staff_img4 img {
  width: 34.6rem;
  margin-top: 10rem;
}
.staff_ir_group .staff_img5 img {
  width: 26.5rem;
  margin-top: 10rem;
}
.staff_ir_group .staff_img6 img {
  width: 30.4rem;
  margin-top: 20rem;
}

.staff_name {
  position: absolute;
  margin-top: -8rem;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  color: #fff;
  width: 56rem;
  background-color: #8156ae;
  padding: 0.8rem 0 0.4rem 3.2rem;
  box-shadow: 0.8rem 0.8rem 0 0 rgb(191, 162, 106);
}

.staff_p {
  color: #fff;
  font-size: 3.2rem;
  padding: 4.8rem 3.2rem 8rem 3.2rem;
  background-color: rgba(0, 0, 0, 0.6);
}

.reason {
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 2rem;
  margin: -3.6rem 3.2rem 6.4rem;
  padding: 8rem 2.4rem 2.4rem;
  box-shadow: 0 0.5rem 2rem 0 rgba(51, 51, 51, 0.3);
}

/*---- FAQ ----*/
.faq h3 {
  display: flex;
  line-height: 1.4;
  margin: 6.4rem 3.2rem 2.4rem;
  align-items: center;
}
.faq h3::before {
  content: "";
  display: inline-block;
  width: 8rem;
  height: 8rem;
  background: url(../img/q.png) top left no-repeat;
  background-size: contain;
  margin-right: 1.6rem;
}
.faq h3 .faq_txt {
  display: inline-block;
  width: 44rem;
}
.faq p {
  background: #fff;
  padding: 3.2rem 2.4rem;
  margin: 0 3.2rem;
  border-radius: 1rem;
  box-shadow: 0 0.5rem 2rem 0 rgba(51, 51, 51, 0.3);
}

/*---- ゴールド背景のh4 ----*/
.gold_ja {
  background: #bfa26a;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  color: #fff;
  text-align: center;
  font-size: 3.2rem;
  padding: 1.8rem auto;
}

/*---- 黒半透明背景 ----*/
.black_box {
  background-color: rgba(0, 0, 0, 0.6);
}

/*---- 97.2% ----*/
.keizoku {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4.8rem 2.4rem 4.8rem 0;
}
.keizoku img {
  width: 25rem;
}

/*---- 日本語f48のh3 ----*/
.point_ttl {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: 4.8rem;
  text-align: center;
  padding-top: 8rem;
  padding-bottom: 4.9rem;
}

/*---- グリッド ----*/
.grid {
  display: grid;
  margin: 0 3.2rem;
  gap: 2.6rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  text-align: center;
}
.grid img {
  width: 16rem;
}
.grid span {
  display: block;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  margin: 2.4rem auto;
  letter-spacing: -0.04em;
}

/*---- ゴールド影付き見出し用 ----*/
.shadow_ttl {
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  color: #fff;
  width: 56rem;
  background-color: #8156ae;
  padding: 0.8rem 0 0.4rem 3.2rem;
  box-shadow: 0.8rem 0.8rem 0 0 rgb(191, 162, 106);
  /*margin-top: 6.4rem;*/
  margin-bottom: 4.8rem;
  font-size: 3.8rem;
}

/*---- 料金テーブル（初期費用・基本料金） ----*/
.price_table {
  width: calc(100% - 6.4rem);
  margin: 0 3.2rem;
}
.price_table tr {
  border-bottom: 0.2rem solid #8156ae;
}
.price_table tr .left {
  width: 60%;
  font-weight: bold;
  padding: 4rem 0 2.4rem;
}
.price_table tr .right {
  width: 40%;
  text-align: right;
  padding: 4rem 0 2.4rem;
}

/*---- 人数限定プランタイトル ----*/
.price_h4_ttl {
  display: flex;
  background: #8156ae;
  align-items: center;
  padding: 2.4rem 3.2rem;
  margin-top: 4rem;
}
.price_h4_ttl picture {
  width: 11.6rem;
  margin-right: 1.6rem;
}
.price_h4_ttl div {
  line-height: 1.5em;
}

/*---- 料金テーブル（人数限定プラン） ----*/
.ranking_price {
  width: calc(100% - 6.4rem);
  margin: 0 3.2rem 4rem;
  border-bottom: 0.2rem solid #8156ae;
}
.ranking_price dt {
  padding-top: 4rem;
  font-weight: bold;
}
.ranking_price dd {
  padding-bottom: 2.4rem;
  text-align: right;
}

.ranking_list {
  margin: 4rem 3.2rem 0;
  border-top: 0.2rem solid #8156ae;
  padding-top: 4rem;
}
.ranking_list li::before {
  content: "●";
  color: #bfa26a;
  margin-right: 0.3em;
}

/*---- 背景複数行の見出し ----*/
.ml_ttl {
  color: #fff;
  font-size: 3.2rem;
  text-align: center;
  line-height: 1.6;
  padding-bottom: 3.2rem;
}

/*---- SNS ----*/
/*---- YOUTUBE ----*/
.frame_wrap {
  position: relative;
  margin: 0 auto;
  width: 53.6rem;
  padding-top: 50%; /* 動画の比率　*/
  overflow: hidden;
}
.frame_wrap .arrow, .frame_wrap .arrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
}
.frame_wrap .arrow {
  width: 56px;
  height: 56px;
  border-radius: 100%;
  background-color: rgba(255, 255, 255, 0.8); /* 矢印背景色　*/
  pointer-events: none;
}
.frame_wrap .arrow::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 0 8px 12px;
  border-color: transparent transparent transparent #222; /* 矢印色　*/
}
.frame_wrap img {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: auto;
  transform: translateY(-50%);
}
.frame_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*---- Instagram ----*/
.instagram_ttl {
  display: flex;
  align-items: center;
  margin: 0 3.2rem 2.4rem;
}
.instagram_ttl .instagram_icon img {
  width: 8rem;
  border-radius: 50%;
  margin-right: 1.6rem;
}

.snapwidget-widget-body {
  margin: 0 3.2rem 6.4rem;
}

.instagram_thumbnail {
  position: relative;
  width: 53.6rem;
  height: 36rem;
  text-align: center;
  margin: 0 auto 6.4rem;
  padding-top: 50%;
}
.instagram_thumbnail iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.indoor_wrap .indoorview {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

/*---- 概要 ----*/
.info {
  background-color: #fff;
  padding: 3.2rem 2.4rem;
  margin-bottom: 4.8rem;
  border-radius: 2rem;
  box-shadow: 0 0.5rem 2rem 0 rgba(51, 51, 51, 0.3);
}
.info:last-child {
  margin-bottom: 4.8rem;
}
.info .info_span {
  display: inline-block;
  margin-right: 1.6rem;
}

/*---- 営業日テーブル ----*/
.business_table {
  width: 53.6rem;
  margin: 0 auto 4.8rem;
}
.business_table th {
  background: #8156ae;
  color: #fff;
  border-bottom: 0.2rem solid #e9e6ed;
}
.business_table td {
  background: #fff;
}
.business_table th, .business_table td {
  padding: 1rem 0;
  text-align: center;
  border-right: 0.2rem solid #e9e6ed;
}
.business_table th:last-child, .business_table td:last-child {
  border-right: none;
}

/*-- 予約 --*/
/*-- 画像と横並び見出し --*/
.reserve_ttl {
  display: flex;
  background: #8156ae;
  align-items: center;
  padding: 2.4rem 3.2rem 0;
}
.reserve_ttl picture {
  width: 11rem;
  margin-right: 1.6rem;
}

/*-- アイコンと横並び見出し --*/
.icon_h3 {
  display: flex;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-style: normal;
  font-size: 4.8rem;
  margin: 6.4rem 3.2rem 3.2rem;
  align-items: center;
}
.icon_h3 picture {
  width: 6.4rem;
  margin-right: 1.6rem;
}

.purple_border {
  width: calc(100% - 6.4rem);
  margin: 0 3.2rem 4rem;
  border-bottom: 0.2rem solid #8156ae;
  padding-bottom: 2.4rem;
}

/*---------------------------
アニメーション
---------------------------*/
/*------- フェードイン用 -------*/
.fadein {
  opacity: 0;
}

.fadein.is-active {
  animation: fadeIn 0.7s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*------- 下から上へフェードイン用 -------*/
/* アニメーション前 */
.u-fade-type-up {
  transform: translateY(50px);
  opacity: 0;
}

/* トリガー発火でis-activeを付与 */
.u-fade-type-up.is-active {
  transition: 0.6s;
  transform: translateY(0);
  opacity: 1;
}

/*------- 複数 / 下から上へフェードイン用 -------*/
/* アニメーション前 */
.u-fade-type-up {
  transform: translateY(50px);
  opacity: 0;
}

/* トリガー発火でis-activeを付与 */
.is-active .u-fade-type-up {
  transition: 0.6s;
  transform: translateY(0);
  opacity: 1;
}

.is-active .u-fade-type-up:nth-child(2) {
  transition-delay: 0.2s;
}

.is-active .u-fade-type-up:nth-child(3) {
  transition-delay: 0.4s;
}

.is-active .u-fade-type-up:nth-child(4) {
  transition-delay: 0.6s;
}

.is-active .u-fade-type-up:nth-child(5) {
  transition-delay: 0.8s;
}

.is-active .u-fade-type-up:nth-child(6) {
  transition-delay: 1s;
}

.is-active .u-fade-type-up:nth-child(7) {
  transition-delay: 1.2s;
}

.is-active .u-fade-type-up:nth-child(8) {
  transition-delay: 1.4s;
}

.is-active .u-fade-type-up:nth-child(9) {
  transition-delay: 1.6s;
}

.is-active .u-fade-type-up:nth-child(10) {
  transition-delay: 1.8s;
}

.is-active .u-fade-type-up:nth-child(11) {
  transition-delay: 2s;
}

.is-active .u-fade-type-up:nth-child(12) {
  transition-delay: 2.2s;
}

/*------- リスト用 / 右から順番にスライドイン用 -------*/
/* アニメーション前 */
.u-fade-type-left {
  transform: translateX(50px);
  opacity: 0;
}

/* トリガー発火でis-activeを付与 */
.is-active .u-fade-type-left {
  transition: 0.6s;
  transform: translateX(0);
  opacity: 1;
}

.is-active .u-fade-type-left:nth-child(2) {
  transition-delay: 0.2s;
}

.is-active .u-fade-type-left:nth-child(3) {
  transition-delay: 0.4s;
}

.is-active .u-fade-type-left:nth-child(4) {
  transition-delay: 0.6s;
}

.is-active .u-fade-type-left:nth-child(5) {
  transition-delay: 0.8s;
}

.is-active .u-fade-type-left:nth-child(6) {
  transition-delay: 1s;
}

.is-active .u-fade-type-left:nth-child(7) {
  transition-delay: 1.2s;
}

.is-active .u-fade-type-left:nth-child(8) {
  transition-delay: 1.4s;
}

/*------- 見出し用 / 左からスライドイン用 -------*/
/* アニメーション前 */
.u-fade-type-right {
  transform: translateX(-50px);
  opacity: 0;
}

/* トリガー発火でis-activeを付与 */
.is-active .u-fade-type-right {
  transition: 0.6s;
  transform: translateX(0);
  opacity: 1;
}

/*------- テキスト用 / 左からスライドイン用 -------*/
/*全共通*/
.slide-in {
  overflow: hidden;
  display: inline-block;
}

.slide-in_inner {
  display: inline-block;
}

/*左右のアニメーション*/
.leftAnime {
  opacity: 0; /*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
  animation: slideTextX100 0.8s forwards;
  -webkit-animation: slideTextX100 0.8s forwards;
  opacity: 0;
}

@keyframes slideTextX100 {
  from {
    transform: translateX(-100%); /*要素を左の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}
.slideAnimeRightLeft {
  animation: slideTextX-100 0.8s forwards;
  -webkit-animation: slideTextX-100 0.8s forwards;
  opacity: 0;
}

@keyframes slideTextX-100 {
  from {
    transform: translateX(100%); /*要素を右の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}
/*------- ズームイン用 -------*/
.zoomin {
  opacity: 0;
}

.zoomin.is-active {
  animation: zoomIn 0.7s ease forwards;
  -webkit-animation: zoomIn 0.7s ease forwards;
}

@keyframes zoomIn {
  0% {
    transform: scale(0.7);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
/*------- ボタン用 / ぽよんループ -------*/
.poyon_btn {
  animation: poyon_btn 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyon_btn {
  0%, 40%, 60%, 80% {
    transform: scale(1);
  }
  50%, 70% {
    transform: scale(0.9);
  }
}
/*---------------------------
メディアクエリ
---------------------------*/
@media screen and (max-width: 1500px) {
  .pc_container .pc_no1 {
    width: 24rem;
  }
  .pc_container .pc_logo {
    width: 32rem;
  }
}
@media screen and (max-width: 1400px) {
  .pc_container .pc_people {
    display: none;
  }
}
@media screen and (max-width: 1280px) {
  .pc_btn {
    width: 20rem;
    margin-left: 4rem;
  }
  .pc_flex {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }
  .pc_flex .pc_no1 {
    width: 20rem;
  }
  .pc_flex .pc_logo {
    width: 28rem;
  }
  .pc_flex .pc_store {
    font-size: 2rem !important;
  }
}
@media screen and (min-width: 1025px) {
  .sp_container {
    position: absolute;
    top: 0;
    right: 5%;
  }
  #fixed_btn {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .pc_btn {
    display: none;
  }
  .pc_no1 {
    display: none;
  }
  .pc_logo {
    display: none;
  }
  .pc_store {
    display: none;
  }
  .sp_container {
    max-width: 1024px;
    margin: 0 auto;
    position: relative;
  }
  .footer_area .copy {
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 600px) {
  html {
    font-size: 60%;
  }
  .pc_container {
    display: none;
  }
  .sp_container {
    width: 100%;
    box-shadow: none;
    overflow: hidden;
  }
  .special3 .bg_purple, .special3 .bg_white {
    display: flex;
    width: 100vw;
  }
  .time_answer img {
    width: 18.8rem;
  }
  .time_answer .time_member .balloon img {
    width: 35rem;
  }
  .time_answer .time_staff .balloon2 img {
    width: 46rem;
  }
  .time_answer .time_staff .staff_img img {
    width: 21rem;
  }
  #fixed_btn {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 50;
    cursor: pointer;
    transition: 0.5s;
  }
}
@media screen and (max-width: 450px) {
  html {
    font-size: 45%;
  }
  .binder_gold section .binder_clip, .binder_purple section .binder_clip {
    position: absolute;
    top: -8rem;
    left: 50%;
    transform: translate(-50%, 0);
  }
  .bg_purple, .bg_white {
    width: 100%;
    box-sizing: content-box;
  }
}
@media screen and (max-width: 428px) {
  html {
    font-size: 42.8%;
  }
  .pc_container {
    display: none;
  }
  .sp_container {
    width: 100%;
    box-shadow: none;
  }
}
@media screen and (max-width: 414px) {
  html {
    font-size: 41.4%;
  }
}
@media screen and (max-width: 409px) {
  html {
    font-size: 40.9%;
  }
}
@media screen and (max-width: 390px) {
  html {
    font-size: 39%;
  }
}
@media screen and (max-width: 384px) {
  html {
    font-size: 38.4%;
  }
}
@media screen and (max-width: 375px) {
  html {
    font-size: 37.5%;
  }
}
@media screen and (max-width: 360px) {
  html {
    font-size: 36%;
  }
}
@media screen and (max-width: 320px) {
  html {
    font-size: 32%;
  }
}
@media screen and (max-width: 240px) {
  html {
    font-size: 24%;
  }
}/*# sourceMappingURL=style.css.map */</pre></body></html>