@charset "UTF-8";
/*
@mixin box_line($width: 20px,$height: 3px) {
  background-color: $site-c;
  border-radius: 2px;
  height: $height;
  width: $width;
}
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&Oswald:wght@600&display=swap");

/* 
==================================================
	basic layout
================================================== */
html {
  font-size: 62.5%; }
  
*{
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

body {
  background-color: #fff;
  color: #333;	
  font-family: 'Noto Sans JP', YuGothic,'Yu Gothic','Yu Gothic UI','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,sans-serif;
  font-size: 1.8rem !important;
  font-size: 18px !important;
  line-height: 1.5;
  margin: 0 !important;
  position: relative; }

@media only screen and (max-width: 767px) {
  body {
    font-size: 1.6rem;
    font-size: 16px; } }
    
a {
  color: #000000;
  transition: .5s ease-in;
  text-decoration: none; }
  
  a:link {
    text-decoration: none; }

  a:hover {
    text-decoration: none;
    opacity: 0.5; }

 a.anchor {
    display: block;
    padding-top: 50px;
    margin-top: -50px;}

.inner {
  margin: 0 auto;
  max-width: 1100px;
  width: 90%; }
  
  @media only screen and (max-width: 1024px) {
    .inner {
      width: 100%; }
  a:hover {
    opacity: 1; }}

.color_r2 {
  color: #c2172f; }

.color_g {
  color: #a98328; }

br {
  line-height: 0 !important; }

/* -- 余白スペース -- */

.pr-3 {
  padding-right: 3%; }
  @media only screen and (max-width: 767px) {
    .pr-3 {
      padding-right: 1.5%; } }

.pl-3 {
  padding-left: 3%; }
  @media only screen and (max-width: 767px) {
    .pl-3 {
      padding-left: 1.5%; } }

.pl-10 {
  display: block;
  padding-left: 10%; }
  @media only screen and (max-width: 767px) {
    .pl-10 {
      padding-left: 0; } }

.mt-2 {
  margin-top: 2rem; }

.mt-3 {
  margin-top: 3rem; }

.mt-4 {
  margin-top: 4rem; }

.mt-5 {
  margin-top: 5rem; }

.mt-6 {
  margin-top: 6rem; }
  @media only screen and (max-width: 767px) {
    .mt-6 {
      margin-top: 3rem; } }

.mt-9 {
  margin-top: 9rem; }
  @media only screen and (max-width: 767px) {
    .mt-9 {
      margin-top: 4.5rem; } }

.mt-15 {
  margin-top: 15rem; }
  @media only screen and (max-width: 767px) {
    .mt-15 {
      margin-top: 7.5rem; } }

.mb-2 {
  margin-bottom: 2rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-2 {
      margin-bottom: 1rem !important; } }

.mb-3 {
  margin-bottom: 3rem !important; }

.mb-4 {
  margin-bottom: 4rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-4 {
      margin-bottom: 2rem !important; } }

.mb-5 {
  margin-bottom: 5rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-5 {
      margin-bottom: 3rem !important; } }

.mb-6 {
  margin-bottom: 6rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-6 {
      margin-bottom: 3rem !important; } }

.mb-8 {
  margin-bottom: 8rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-8 {
      margin-bottom: 4rem !important; } }

.mb-9 {
  margin-bottom: 9rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-9 {
      margin-bottom: 4.5rem !important; } }

.mb-10 {
  margin-bottom: 10rem !important; }
  @media only screen and (max-width: 767px) {
    .mb-10 {
      margin-bottom: 5rem !important; } }

.mb-13 {
  margin-bottom: 13rem; }
  @media only screen and (max-width: 767px) {
    .mb-13 {
      margin-bottom: 6.5rem; } }

.mb-14 {
  margin-bottom: 14.5rem; }
  @media only screen and (max-width: 767px) {
    .mb-14 {
      margin-bottom: 7.5rem; } }

.mb-16 {
  margin-bottom: 16rem; }
  @media only screen and (max-width: 767px) {
    .mb-16 {
      margin-bottom: 8rem; } }

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

  .sp {
    display: block !important; } }
@media only screen and (min-width: 768px) {
  .pc {
    display: block !important; }

  .sp {
    display: none !important; } }
#main article {
  padding: 0; }

/* ==================================================
	common setting
================================================== */
.text-center {
  text-align: center; }

.text-right {
  text-align: right; }

.marker {
  background: linear-gradient(transparent 60%, #ffda2a 60%); }

@media only screen and (max-width: 767px) {
  .sp-text-center {
    text-align: center; } }
/* 
==================================================
	flex
================================================== */
.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .flex.a_center {
    align-items: center; }
  .flex.a_start {
    align-items: flex-start; }
  @media only screen and (max-width: 767px) {
    .flex {
      flex-wrap: wrap; }
      .flex .sp_order1 {
        order: 1;
        margin-bottom: 2rem;
        padding: 0 !important; }
      .flex .sp_order2 {
        order: 2; } }

  .flex .txt {
    box-sizing: border-box;
    padding: 0 0 0 2.5%;
    width: 50%; }
    @media only screen and (max-width: 767px) {
      .flex .txt {
        width: 100%; } }
  .flex .left {
    order: 1; }
  .flex .right {
    order: 2; }
  @media only screen and (max-width: 767px) {
    .flex .left {
      order: 2; }
    .flex .right {
      order: 1; } }

/* 
==================================================
	main
================================================== */

/*----------------------------
　▼　LPページ共通（ここから）
----------------------------*/
/*各セクション*/

section{
	width: 100%;
	padding: 0;
	margin: 0;
	text-align: center;
}

.content{
	display: inline-block;
  position: relative;
	width: 95%;
	max-width: 1020px;
	text-align: center;
	margin-top: 50px;
}

@media only screen and (max-width: 767px){
.content{
	width: 96%;
	max-width: 750px;
	margin-top: 30px;
}}

/*背景色*/
.bg-grey{
	background: #efefef;
}

.bg-blue{
	background: #D7EBF1;
}

/*--MVエリア--*/
.container{
	width: 100%;
	padding: 0;
	text-align: center;
	margin-bottom: 30px;
}

/*--LINE告知バナー--*/
.bnr-line{
	display: block;
	background: #06c555;
	padding-top: 20px;
	padding-bottom: 30px;
}
.bnr-line img{
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
}
@media only screen and (max-width: 767px){
.bnr-line{
	padding-top: 15px;
	padding-bottom: 0px;
}
.bnr-line img{
width:100%;
max-width: 750px;
}}

/*--基本文字サイズ--*/
p{
font-size: 18px;
line-height: 1.5;
}
@media only screen and (max-width: 767px){
p{
font-size: 16px;
line-height: 1.5;
}}

/*--蛍光マーカー--*/
.marker-y{
background: linear-gradient(transparent 30%, #F9EBAB 80%);
font-weight: 600;
}

/*----------------------------
　▲　LPページ共通（ここまで）
----------------------------*/

#last{
padding-bottom: 60px;
margin:0
}

/*--　見出し　フキダシ --*/

.ttl-fukidashi-k {
  position: relative;
  display: inline-block;
  padding: 20px 50px;
  min-width: 380px;
  color: #fff;
  font-size: 22px;
	font-weight: 600;
	line-height: 1.4em;
  background: #333;
	margin-bottom: 20px;
	-webkit-filter:drop-shadow(3px 3px 3px rgba(0,0,0,0.4));
}

.ttl-fukidashi-k:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 15px solid #333;
}

  @media only screen and (max-width: 767px) {
  .ttl-fukidashi-k {
  min-width: 280px;
  width: 70%;
	padding: 15px auto;
  font-size: 18px; }}

.ttl-fukidashi-w {
  position: relative;
  display: inline-block;
  padding: 20px 30px;
  min-width: 380px;
	width: 70%;
	border: solid #707070 2px;
  color: #333;
  font-size: 28px;
	font-weight: 600;
	line-height: 1.4em;
  background: #fff;
	margin-top: 30px;
	margin-bottom: 40px;
	-webkit-filter:drop-shadow(3px 3px 3px rgba(0,0,0,0.4));
}

.ttl-fukidashi-w:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
	border-right: 15px solid transparent;
  border-top: 15px solid #666;
  border-left: 15px solid transparent;
}

.ttl-fukidashi-w:after {
  content: "";
  position: absolute;
  top: 96%;
  left: 50%;
  margin-left: -15px;
	border-right: 15px solid transparent;
  border-top: 15px solid #fff;
  border-left: 15px solid transparent;
}

  @media only screen and (max-width: 767px) {
  .ttl-fukidashi-w {
  width: 85%;
  min-width: 280px;
	padding: 15px 15px;
	margin-bottom: 30px;
  font-size: 18px; }}
	
/*-- FLEX レイアウト --*/
	
.flex-container{
	display: flex;
	justify-content: space-around;
}

@media screen and (max-width:767px){
	h2{font-size: 1.1em;}
	.flex-container{flex-direction:column;}
}
	
.flex-item02{
	color: inherit;
	padding: 1em;
	flex-basis: 46%;
}
.flex-item02 dt{
	margin-bottom: 10px;
	font-size: 1.2em;
	font-weight: bold;
}

@media screen and (max-width:767px){
	h2{font-size: 1.1em;}
	.flex-container{flex-direction:row;}
	.flex-item02{
		margin: 0 1em 1em;
	}}

.dot-line-gold {
  padding: 1rem 2rem;
	margin:0 30px;
  color: goldenrod;
  border-bottom: 4px dotted goldenrod;
}

/*-- 紺色背景ボックス --*/
.box-blue02{
  display:inline-block;
background: url("https://spiralturn.co.jp/lib/wp-content/themes/gga_theme4/assets_new/kodawari/images/bg_01.jpg") no-repeat;
	padding:20px 50px;
	border-radius: 15px;
	font-size: 20px;
	line-height: 1.4em;
	color: #fff;
	font-weight: 500;
	margin-bottom: 40px;
	margin-top: 30px;
	max-width: 680px
}
@media screen and (max-width:767px){
.box-blue02{
	padding:15px 30px;
	font-size: 16px;
	line-height: 1.4em;
	margin-bottom: 30px;
}}

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

/* 背景色（グラデーション）*/

.bg-bl2gr2ye-linear{
background: rgb(126,225,255);
background: linear-gradient(166deg, rgba(126,225,255,1) 13%, rgba(252,247,160,1) 47%, rgba(181,252,38,1) 59%, rgba(251,185,1,1) 100%);
}

.bg-bl2or-linear{
  background-image: linear-gradient(343deg, rgba(253, 219, 146, 1), rgba(209, 253, 254, 1) 76%);
}

.bg-gr2ye2pi-linear{
background-image: linear-gradient(225deg, rgba(187, 255, 239, 1), rgba(236, 237, 203, 1) 38%, rgba(248, 227, 183, 1) 70%, rgba(255, 196, 232, 1) 97%);
}

.bg-ye2ye-linear{
background: rgb(251,185,1);
background: linear-gradient(166deg, rgba(251,185,1,1) 13%, rgba(252,240,40,1) 47%, rgba(252,237,38,1) 52%, rgba(251,185,1,1) 100%);
}

.bg-bl2bl-linear{
background: rgb(207,234,251);
background: linear-gradient(166deg, rgba(207,234,251,1) 10%, rgba(76,187,255,1) 40%, rgba(128,190,237,1) 60%, rgba(207,234,251,1) 79%);
}

.bg-ye2bl2gr-linear{
background: rgb(249,251,207);
background: linear-gradient(166deg, rgba(249,251,207,1) 10%, rgba(207,234,251,1) 35%, rgba(128,237,233,1) 60%, rgba(249,251,207,1) 82%);
}

/*現代人の９割は足裏の体重移動が乱れている*/
.flex-sole{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.item-sole{
	background: #fff;
	border-radius: 16px;
	border:1px solid #ccc;
	min-width: 280px;
	padding: 20px 20px;
	margin-bottom: 30px;
	text-align: center;
	flex-basis: 30%;
}
.item-sole dt img{
	max-width: 160px;
}
.item-sole dd{
	margin: 10px auto;
	font-size: 1.2em;
	font-weight: 600;
}
@media screen and (max-width:767px){
.item-sole{
	border-radius: 12px;
	min-width: 100px;
	padding: 15px 5px;
	margin-bottom: 20px;
	text-align: center;
	flex-basis: 32%;
}
.item-sole dt img{
	max-width: 100px;}
.item-sole dd{
	margin: 10px auto;
	font-size: 0.8em;
	font-weight: 600;
}}

/*文字色*/
span.large-red{
	font-size: 28px;
	font-weight: 600;
	color: #E13134;
}
@media screen and (max-width:767px){
span.large-red{
	line-height: 1.4em;
}}
	
/*-- インソールで足裏から全身の動きを変える --*/ 

.sensor{
display: inline-block;
width:100%;
max-width: 860px;
text-align: center;
margin-bottom: 30px;
}
.sensor img{
width:100%;
text-align: center;
margin:20px auto;
}

@media screen and (max-width:767px){
.sensor{
width:96%;
margin:0 auto;
}}

/*-- 嬉しい6つの特徴 --*/
.container_merit6{
	display: flex;
	justify-content: space-between;
	max-width: 860px;
	width: 98%;
	margin: 0 auto;
}

.merit6-item{
	margin-bottom: 20px;
	flex-basis: 30%;
}

.merit6-item dl{
	margin-bottom: 10px;
	font-size: 1em;
}

.merit6-item dt img{
	width:80%;
	margin-bottom: 15px;
}

.merit6-item dd{
	line-height: 1.4em;
	font-size: 1em;
	font-weight: 600;
	color:#333;
	padding-bottom: 20px
}
.merit6-item dd span{
	line-height: 1.6em;
	font-size: 1.4em;
	font-weight: 600;
}

@media screen and (max-width:767px){
.merit6-item{
	margin-bottom: 10px;
	flex-basis: 32%;}
.merit6-item dt img{
	width:95%;}
.merit6-item dd{
	line-height: 1.4em;
	font-size: 14px;}
.merit6-item dd span{
	font-size: 18px;
}}

.merit6-note{
max-width: 820px;
width: 90%;
font-family: 'Noto Sans JP', sans-serif;
font-size: 14px;
text-align: left;
margin: 0 auto;
}

@media screen and (max-width:767px){
.merit6-note{
width: 96%;
font-size: 12px;
}}

/*-- こだわりのオーダーメイド --*/

h4.steps{
  position: relative;
  overflow: hidden;
  padding: 0.8rem 0.8rem 0.8rem 160px;
	font-size:22px;
	line-height: 1.3em;
	font-weight: 600;
	text-align: left;
  margin-top: 40px;
	background: #D7EBF1;
	border-bottom: 3px solid #265BA8;
}
@media screen and (max-width:767px){
h4.steps{
  margin-top: 30px;
	font-size: 16px;
  padding: 0.7rem 0.7rem 0.7rem 150px;
}}

h4.steps:before {
  position: absolute;
  top: -50%;
  left: -110px;
  width: 250px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(-15deg);
  transform: rotate(-15deg);
  background: #265BA8;
	text-align: left;
}

h4.steps span {
	font-size:20px;
	font-weight: 400;
	line-height:1.2em;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  padding-top: 10px;
  padding-left: 20px;
  color: #fff;
}
@media screen and (max-width:767px){
h4.steps span {
	font-size:18px;
	font-weight: 600;
  padding-top: 20px;
}}

.box-zairyo{
display: flex;
justify-content: space-around;
align-items: center;
}

.box-zairyo img{
width:50%;
}

@media screen and (max-width:767px){
.box-zairyo{
flex-direction: column;}
.box-zairyo img{
width:80%;
}}

.difference {
	display: inline-block;
  position: relative;
  padding: 1rem 2rem;
  text-align: center;
  border: 2px solid #265ba8;
  border-radius: 0 10px 10px 10px;
	margin-top: 50px;
	margin-bottom: 60px;
	width: 86%;
}
@media screen and (max-width:767px){
.difference {
	width: 100%;
}}

.difference img{
float: left;
margin-right: 20px;
}

.difference:before {
  font-size: 15px;
  font-size: 1.5rem;
  position: absolute;
  top: -34px;
  left: -2px;
  height: 34px;
  padding: 5px 1em;
  content: 'POINT';
  color: #fff;
	font-weight: 600;
  border-radius: 10px 10px 0 0;
  background: #265ba8;
}

/*-- 安心保証 --*/
.flex-warranty-container{
	display: flex;
	justify-content: space-around;
	flex-wrap:wrap;
	margin: 20px auto 30px;
	max-width: 860px;
	width: 98%;
}
.flex-warranty{
	margin-bottom: 20px;
	flex-basis: 22%;
}

.flex-warranty dl{
	margin-bottom: 10px;
}

.flex-warranty dt img{
	max-width: 250px;
	margin-bottom: 10px;
}


@media screen and (max-width:767px){
.flex-warranty-container{
	margin: 10px 10px 30px;
}
.flex-warranty dt img{
	max-width: 180px;
	width: 100%;
	}
.flex-warranty{
	flex-basis: 42%;
	margin-bottom: 10px;
	}}
	
/*-- 安心保証（KIDS用）--*/
	
.flex-warranty_kids dt img{
	width: 280px;
	margin-bottom: 10px;
}

@media screen and (max-width:767px){
.flex-warranty_kids dt img{
	max-width: 240px;
	width: 100%;
	}
.flex-warranty_kids{
	flex-basis: 100%;
	margin-bottom: 10px;
	}}

/*-- 月々定額プランフロー --*/

.sbsc-schedule img{
max-width: 760px;
width: 100%;
margin: 0 auto 30px;
}

@media only screen and (max-width: 767px){
.sbsc-schedule img{
margin: 0 auto 30px;
max-width: 500px;
width: 96%;
}}

/*-- LP用（kids以外） 安心保証 --*/

.plan_warranty-container{
display:inline-block;
margin: 0 auto;
width: 100%;
max-width: 760px;
}

.plan_warranty-item{
text-align: center;
}

.plan_warranty-item img{
width: 100%;
}

@media only screen and (max-width: 767px){
.plan_warranty-item img{
margin: 0 auto;
max-width: 500px;
width: 96%;}}

/*-- 料金プラン 囲み罫 --*/

.waku_attent{
display: inline-block;
padding: 20px 30px;
text-align: left;
line-height:1.4em;
background-color: #fff;
border: 2px solid #CCC;
width:90%;
max-width: 760px;
margin-bottom: 30px;
}
@media only screen and (max-width: 767px){
.waku_attent{
padding: 12px;
width:96%;
}}

.waku_attent p.explain{
font-family: 'Noto Sans JP', sans-serif;
font-size: 18px;
text-align: left;
}

.waku_attent p.explain a{
color: #2b00ff;
text-decoration: underline;
}

@media only screen and (max-width: 767px){
.waku_attent p.explain{
font-size: 14px;
}}

.underline-r{
	display: inline-block;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.6;
	border-bottom: solid 1px #fc0b0b;
	margin-bottom: 20px;
	width:100%;
}
@media screen and (max-width: 767px){
.underline-r{
	font-size: 18px;
	line-height: 1.6;
	margin-bottom: 10px;
}}

p.message{
	font-size: 24px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.2em;
	text-align: center;
}
@media screen and (max-width: 767px){
p.message{
	font-size: 16px;
	line-height: 1.3;
	letter-spacing: 0.1em;
}}

p.center{
display:inline-block;
text-align:center !important;
margin-bottom: 30px;
}

.waku_attent p.t-small{
font-size: 14px;
margin: 10px auto;
text-align:left;
}

/*-- その他ラインナップ --*/

.under-str-g{
	display: inline-block;
	position: relative;
	padding: 10px;
	margin-bottom: 20px;
	font-size: 26px;
	font-weight: 600;
	color: #001E57;
}
@media screen and (max-width: 767px){
.under-str-g{
	padding: 10px;
	margin-bottom: 20px;
	font-size: 18px;
}}

/* ライン */

.dot-line-g {
	margin: 15px 10%;
  border-bottom: 4px dotted goldenrod;
}
@media screen and (max-width:767px){
.dot-line-g {
	margin: 5px 5%;
}}

.dash-line-w{
	margin: 15px 10%;
	border-bottom: 1px dashed #fff;
}

/* 足裏の体重移動　やじろべえ */

.flex-container_yaji{
	display: flex;
	justify-content: space-around;
	margin-bottom: 50px;
}
.flex-item_yaji{
	flex-basis: 32%;
}
.flex-item_yaji dt{
	margin-bottom: 10px;
	font-size: 20px;
	font-weight: bold;
}
.flex-item_yaji dd img{
	max-width: 350px;
	width: 100%;
	margin-bottom: 20px;
}
.txt-16{
font-size: 16px;
}

@media screen and (max-width:767px){
	.flex-container_yaji{
	flex-direction:column;
	margin-bottom: 30px;}
	.flex-item_yaji{
		margin-bottom: 30px;}
	.flex-item_yaji dt{
	font-size: 18px;}
	.flex-item_yaji dd img{
	width: 90%;
}}


/*--テキストリンク--*/

.txt-link_lp{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
@media screen and (max-width:767px){
.txt-link_lp{
	font-size: 16px;
}}

.txt-link_lp:hover {
	color: #dc143c!important;
	text-decoration: underline;
}

/*-- 上付き文字 --*/

.sup-kome{
	font-size: 0.8em;
  color:#333;
  font-weight:normal;
	vertical-align: top;
}

/*-- フローティングバナー（SP版） --*/

.floating-banner {
    position: fixed;
    z-index: 99999;
    bottom: 100px;
    right: 0;
}
.banner {
    width: 240px;
    padding: 20px 10px;
    background: #15162b;
    color: #F2DF65;
    font-weight: 600;
    text-align: center;
}

.copy {
    font-size: 16px;
    margin: 0 auto 10px;
}
.cta {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 180px;
    height: 36px;
    font-size: 18px;
		font-weight: 600;
		border: solid 2px #fff;
		background: #e71875;
		color: #fff;
    border-radius: 5px;
    margin: 5px auto;
    text-align: center;
    line-height: 1.2;
}

/*-- フローティングバナー（PC版） --*/

.floating-banner-pc {
    display: none;
    position: fixed;
    z-index: 99999;
    bottom: 100px;
    right: 20px;
    width: 240px;
    height: 200px;
    background: #EC0C7C;
    border-radius: 10px;
    box-sizing: border-box;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.floating-banner-pc.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.fbpc-inner {
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border: 1px dashed rgba(255, 255, 255, 0.85);
    border-radius: 6px;
    pointer-events: none;
}

.fbpc-cart-icon {
    position: absolute;
    top: 18px;
    left: 106px;
    width: 27px;
    height: 23px;
}

.fbpc-heading {
    position: absolute;
    top: 46px;
    left: 0;
    width: 100%;
    text-align: center;
    color: #ffffff;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.04em;
    margin: 0;
}

.fbpc-btn {
    position: absolute;
    left: 26px;
    width: 188px;
    height: 34px;
    background: #ffffff;
    border-radius: 21px;
    box-shadow: 0 0 0 2.5px #EC0C7C, 0 0 0 4.5px #ffffff;
    display: flex;
    align-items: center;
    padding: 0 0 0 30px;
    box-sizing: border-box;
    cursor: pointer;
    text-decoration: none;
    transition: background-color 0.15s ease;
}

.fbpc-btn:hover {
    background: #ffd7e0;
    opacity: 1;
}

.fbpc-btn-1 { top: 82px; }
.fbpc-btn-2 { top: 136px; }

.fbpc-btn-label {
    color: #EC0C7C;
    font-size: 17px;
    font-weight: bold;
}

.fbpc-btn-arrow {
    position: absolute;
    top: 7px;
    right: 16px;
    width: 19px;
    height: 19px;
    border-radius: 50%;
    background: #EC0C7C;
    display: flex;
    align-items: center;
    justify-content: center;
}

.fbpc-btn-arrow::after {
    content: "";
    width: 0;
    height: 0;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 6px solid #ffffff;
    margin-left: 1.5px;
}

@media screen and (min-width: 768px) {
.floating-banner {
  display: none;
    }
.floating-banner-pc {
    display: block;
    }
}

@media screen and (max-width: 767px) {
.floating-banner {
        display: block;
        left: 0;
        right: 0;
    		bottom: 0;
    }
.banner {
        width: 100%;
        padding: 10px;
    }
.copy {
        font-size: 14px;
        margin: 0 auto;
    }
.wrap-cta{
				display: flex;
				justify-content: center;
				align-items: center;
				gap: 10px;
				width: 100%;
				max-width: 400px;
				margin: 0 auto;
		}
.wrap-cta a {
				display: flex;
				flex: 1 1 0;
				min-width: 0;
				max-width: 180px;
		}
.cta {
				width: 100%;
				margin: 5px 0;
		}}
