@charset "UTF-8";

/*----------------------------------

デフォルトリセット

---------------------------------- */
a {
  text-decoration:none;
}

p {
  margin:0;
  padding:0;
  margin-block-start: inherit;
  margin-block-end: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin-block-start: inherit;
  margin-block-end: inherit;
}

ul {
  display: block;
  list-style-type:  inherit;
  margin-block-start: inherit;
  margin-block-end: inherit;
  margin-inline-start: inherit;
  margin-inline-end: inherit;
  padding-inline-start: inherit;
  list-style: none;
}

table {
  border-spacing: inherit;
}

h1 img{
  width: 100%;
}

img{
	vertical-align:top;
}

body {
  font-family: sans-serif;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  margin: 0;
  color: #333;
}

#main_content {
  flex: 1;
}

/*----------------------------------

SPとPCで画像分ける

---------------------------------- */
.bnr_sp{
  display: block;
}

.bnr_pc{
  display: none;
}

/*----------------------------------

パーツ

---------------------------------- */

.margin-top10{
  margin-top: 10px;
}

.margin-top20{
  margin-top: 20px;
}

.margin-top40{
  margin-top: 40px;
}

.margin-top60{
  margin-top: 60px;
}

.margin-top100{
  margin-top: 60px;
}


.title_back,
.title_back_safe{
  display: block;
  padding: 16px 0;
  text-align: center;
  font-weight: bold;
  color: #fff;
}

.title_back{
  font-size: 1.4rem;
  background-color: #2b66fd;
}

.title_back_safe{
  font-size: 1.6rem;
  background-color: #279661;
  margin: 40px -20px 0;
}

.br_::before {
  content: "\A";
  white-space: pre;
}

.yellow_color{
  color: #fbfc5d;
}

.yellow-green_color{
  color: #fefe9b;
}

.main_color{
  color: #3370fd;
  font-weight: bold;
}

.center{
  text-align: center;
}

.left{
  text-align: left!important;
}

.size-small{
  font-size: 0.85rem;
  font-weight: bold;
}

.size-medium{
  font-size: 1.15rem;
  font-weight: bold;
}

.red_color{
  font-size: 1.3rem;
  color: #fe1f1f;
  font-weight: bold;
}

/*----------------------------------

ヘッダー

---------------------------------- */
.header {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 16px 10px;
  background-color: #2b66fd;
  gap: 30px;
}

.logo img,
.cv-button img {
  max-width: 100%;
  height: auto;
  display: block;
}

.cv-button:hover {

}

/*----------------------------------

フッダー

---------------------------------- */

.footer {
  background-color: #2b66fd;
  color: #fff;
  padding: 10px;
  text-align: center;
}

/*----------------------------------

CVボタン

---------------------------------- */
.wrapper-cv{
  padding: 30px 10px;
  background-color: #fff;
}

.wrapper-cv img{
  width: 100%;
}

.poyopoyo {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}


/*----------------------------------

こんな方におすすめ

---------------------------------- */
.section-angled {
  background: url('images/bg-recs.jpg') no-repeat center/cover;
  color: #fff;
  padding: 40px 10px 60px;
  position: relative;
  clip-path: polygon(0 0, 100% 0, 100% 95%, 50% 100%, 0 95%);
  text-align: center;
  z-index: 0;
}


.box-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  max-width: 800px;
  margin: 0 auto;
}

.box {
  flex: 0 0 calc(50% - 10px); /* 2列分割（gap補正） */
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 10px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease;
}

.box-title {
  display: block;
  font-weight: bold;
  font-size: 0.85rem;
  color: #fff;
  background-color: #509efd;
  border-radius: 10px 10px 0 0;
  padding: 10px 0;
}

.box img {
  width: 100%;
  /*height: auto;
  max-height: 120px;*/
  object-fit: contain;
  border-radius: 0 0 10px 10px;
}

/*----------------------------------

不安要素

---------------------------------- */

.section-next {
  background: url('images/bg-anxiety.jpg') no-repeat center/cover;
  position: relative;
  margin-top: -30px; /* ▼のくぼみにかぶせる */
  z-index: -1;
  padding: 120px 10px 60px;
  text-align: center;
}

.section-next .inner{
  padding-top: 200px;
}

.text-stroke-fat_large,
.text-stroke-fat_small {
  font-weight: bold;
  -webkit-text-stroke: 4px #000;
  text-stroke: 4px  #000;
  paint-order: stroke;
}

.text-stroke-fat_large {
  color: #fff;
  font-size: 2rem;
}

.text-stroke-fat_small {
  color: #fff;
  font-size: 1.1rem;
}

/*----------------------------------

安心ください！宣言

---------------------------------- */

.hero {
  background: linear-gradient(to right, #5fa9ff, #92e6ff, #5fa9ff);
  padding: 30px 10px 60px;
}

.hero-top {
  text-align: center;
  display: flex;
  justify-content: center;
}

.headline {
  font-size: 2.8rem;
  font-weight: 900;
  margin: 0;
  color: transparent;
  background-color: #fff;
  background-image: radial-gradient(circle, rgba(0, 255, 128, 1) 0%, rgba(0, 255, 128, 0) 75%);
  background-repeat: no-repeat;
  background-size: 0em 0em;
  background-position: 0% 0%;
  -webkit-background-clip: text;
  background-clip: text;
  padding: 10px;
}

.headline.animate {
  animation-name: kirari;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}

@keyframes kirari {
  0% {
    background-size: 0em 0em;
    background-position: 0% 50%;
  }
  50% {
    background-size: 2em 2em;
  }
  100% {
    background-size: 0em 0em;
    background-position: 100% 50%;
  }
}

.hero-inner{
  position: relative;
}

.hero-box {
  background-color: #fff;
  padding: 30px 20px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  position: relative;
  z-index: 1;
  /*margin: 0 10px;*/
  border-radius: 10px;
}

.message-blue {
  font-size: 1.8rem;
  font-weight: bold;
  color: #0050d9;
  margin: 0 0 20px;
}

.message-red {
  font-size: 2rem;
  font-weight: bold;
  color: #ff4444;
  margin: 20px 0 0;
}

.service-box {
  background-color: #296eff;
  padding: 12px 15px;
  border-radius: 8px;
  align-items: center;
}

.service-box img {
  width: 55%;
}

/*.service-box .logo {
  width: 48px;
  height: auto;
}*/

.hero-person {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 180px;
  z-index: 2;
}

/*----------------------------------

３つの安心

---------------------------------- */

.safe-section {
  background: linear-gradient(to right, #5fa9ff, #92e6ff, #5fa9ff);
  padding: 30px 10px;
}

.safe-card {
  background: #fff;
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px;
  border-radius: 12px;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
  position: relative;
}

.safe-header {
  background: #279661;
  color: #fff;
  padding: 10px 20px;
  border-radius: 4px;
  display: block;
  align-items: center;
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 20px;
  transform: skew(-15deg);
  position: absolute;
  top: -40px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 70%;
  display: flex;
}

.beginner-icon {
  width: 18%;
  height: auto;
  position: relative;
  left: -40px;
  top: -30px;
  margin-right: -10px;
}

.safe-catch,
.logo-text-image {
 text-align: center;
}

.logo-text-image {
 margin-bottom: 20px;
}

.logo-text-image img {
  width: 260px;
  max-width: 100%;
  height: auto;
  margin: 40px 0 0;
}

.safe-title {
  font-size: 2rem;
  font-weight: bold;
  /*display: flex;*/
  /*justify-content: center;*/
  align-items: baseline;
  /*gap: 5px;*/
  margin-left: 20px;
}

.safe-number {
  font-size: 8rem;
  color: #0aa789;
  line-height: 1; /
}

.safe-label {
  font-size: 1.5rem;
  color: #222;
}

.safe-note {
  background: #279661;
  color: #fff;
  border-radius: 4px;
  padding: 20px;
  position: relative;
  margin-top: 30px;
}

.safe-note span {
  font-size: 1.1rem;
  font-weight: bold;
  line-height: 1.6;
  display: block;
}

.safe-note strong {
  font-size: 1.4rem;
  display: inline-block;
  margin-top: 5px;
}

.woman-image {
  position: absolute;
  bottom: -40px;
  right: -20px;
  width: 180px;
}

.safe-three {
  text-align: center;
  margin-top: 30px;
}

.safe-three img {
  width: 90%;
}

.safe-catch3 {
  text-align: center;
}

.safe-catch3 span {
  margin-top: 20px;
  font-size: 2.1rem;
  font-weight: 900;
  color: red;
  background: linear-gradient(transparent 60%, #fefe9b 60%);
  padding: 0 2px;
  display: inline;
}

.safe-text {
  font-size: 1.2rem;
  text-align: center;
  margin-top: 20px;
}

/*----------------------------------

安心CVボタン

---------------------------------- */

.safe-cv_box{
  display: flex;
  align-items: center;

}

.safe-cv_box img{
  width: 40%!important;
}

.overlap{
  position: relative;
  text-align: center;
}

.overlap img{
  width: 80% !important;
  opacity: 0.7;
}

.overlap div{
  position: absolute;
  top:50%;
  left: 50%;
 -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin: 0!important;
  padding: 0!important;
  width: 100%;
  text-align: center;
  color: #2b66fd;

  font-size: 1.35rem;
  font-weight: bold;
}

/*----------------------------------

MCLとは + No1

---------------------------------- */

.mcl-section {
  background: linear-gradient(to right, #5fa9ff, #92e6ff, #5fa9ff);
  padding: 60px 10px 30px;
}

.mcl-card {
  background: #fff;
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px;
  border-radius: 12px;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
  position: relative;
}

.mcl-header,
.one-header {
  background: #2b66fd;
  color: #fff;
  padding: 10px 20px;
  border-radius: 4px;
  display: block;
  align-items: center;
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 20px;
  transform: skew(-15deg);
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 70%;
}

.mcl-header {
  font-size: 1.5rem;
}

.mcl-catch {
  text-align: center;
  align-items: center;
  width: 100%;
}

.mcl-catch img{
  width: 100%;
  transform: skew(15deg);
}

.mcl-text{
  margin-top: 30px;
  font-size: 0.9rem;
  /*font-weight: bold;*/
}

.one-section {
  background: linear-gradient(to right, #5fa9ff, #92e6ff, #5fa9ff);
  padding: 30px 10px 30px;
}

.one_img_box,
.top_img_box{
  display: block;
  text-align: center;
}

.top_img_box{
  margin: 0 auto;
}

.one_img_box img,
.top_img_box img{
  width: 100%;
}

.img_box{
  display: block;
  text-align: center;
}

.img_box img{
  width: 70%;
}


.one-text{
  margin: 20px 0 0;
  font-size: 1.1rem;
  font-weight: bold;
}

.kinds_text,
.currency_text{
  color: #ec0927;
  font-size: 5rem;
  font-weight: bold;
  /*transform: skew(-15deg);
  display: inline-block;*/
}

.currencys_mid_text{
  color: #ec0927;
  font-size: 4rem;
  font-weight: bold;
  /*transform: skew(-15deg);
  display: inline-block;*/
}

.kinds_sub_text,
.currency_sub_text{
  font-size: 2rem;
  font-weight: bold;
}

/*----------------------------------

コース

---------------------------------- */


.course_text{
  font-size: 2rem;
  font-weight: bold;
  color: #3370fd;
  margin-bottom: 20px;
  text-align: center;
}

.course_sub_text{
  font-size: 1.3rem;
  font-weight: bold;
  margin-top: 30px;
  text-align: center;
}

.flex-box {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0 -15px auto;
}

.plan-column {
  width: calc(50% - 2.5px);
}

.plan-title {
  font-size: 1.3rem;
  font-weight: bold;
  padding: 12px;
  text-align: center;
  color: #fff;
  border-radius: 8px 8px 0 0;
  margin-bottom: 0;
}

.plan-title.standard {
  background: #5c9eff;
}

.plan-title.extra {
  background: #fcb000;
}

.plan-box {
  padding: 20px 0;
  text-align: center;
  background: #fff;
  border: 1px solid;
  border-top: none;
  border-radius: 0 0 12px 12px;
  box-sizing: border-box;
}

.plan-box.standard {
  border-color: #5c9eff;
}

.plan-box.extra {
  border-color: #fcb000;
}

.plan-name {
  font-weight: bold;
  font-size: 1rem;
}

.plan-detail {
  font-size: 0.8rem;
  line-height: 1.9;
  margin-bottom: 20px;
}

.plan-rate {
  font-size: 3rem;
  font-weight: bold;
  color: #ec0927;
}

.plan-rate span{
  font-size: 1.1rem;
  font-weight: bold;
  color: #333!important;
}

/*----------------------------------

Wチャンス

---------------------------------- */

.w-overlap{
  position: relative;
  text-align: center;
}

.w-overlap img{
  width: 80% !important;
  opacity: 0.7;
}

.w-overlap div{
  position: absolute;
  top:50%;
  left: 50%;
 -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin: 0!important;
  padding: 0!important;
  width: 100%;
  text-align: center;
  color: #f93c3c;
  font-size: 1.35rem;
  font-weight: bold;

  -webkit-text-stroke: 3px #fff;
   text-stroke: 3px #fff;
   paint-order: stroke;

}

/*----------------------------------

セキュリティ

---------------------------------- */

.grid-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  padding: 30px 0;
}

.item {
  width: calc(50% - 6px);
}

.item:hover {
  transform: translateY(-5px);
}

.item img {
  width: 100%;
  height: auto;
  display: block;
}

.text-box {
  text-align: center;
  font-weight: bold;
  font-size: 1rem;
}

/*----------------------------------

かんたん登録

---------------------------------- */


.step{
  text-align: center;
  padding: 10px 0 10px;
}

.step img{
  width: 100%;
}

.step_number{
  font-size: 1.3rem;
  font-weight: bold;
  color: #3370fd;
  margin-bottom: 10px;
}



.step_titl{
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

.step_text{
  font-size: 1rem;
}

.arrow{
  text-align: center;
  margin: 20px 0;
}

.arrow img{
  width: 70%;
}

/*----------------------------------

比較

---------------------------------- */

.cuz-section {
  background: linear-gradient(to right, #5fa9ff, #92e6ff, #5fa9ff);
  padding: 30px 10px 30px;
}

.comparison_img{
  display: block;
  text-align: center;
  margin-left: -10px;
  margin-right: -10px;
}

.comparison_img img{
  width: 100%;
}

/*----------------------------------

用語集

---------------------------------- */

.title_term{
 font-size: 1.2rem;
 font-weight: bold;
 text-align: center;
 margin: 20px -20px;
 padding: 20px 0;
 background: #3370fd;
 color: #fff;
 display: block;
}

.icon-text {
  display: flex;
  align-items: center;
  gap: 0.5em;
}

.icon-text span{
  font-size: 1.2rem;
  font-weight: bold;
  color: #3370fd;
}

.icon-text p{
  font-size: 0.9rem;
}

.font-weight{
  font-size: 1rem;
  font-weight: bold;
}

.icon-text img {
  width: 24px;
  height: auto;
  vertical-align: middle;
}

.font-color{
  color: #fd3333;
  font-weight: bold;
}

/*----------------------------------

お客様の声

---------------------------------- */

/* ▼ レビュー全体を中央寄せ縦並び */
.review-container {
  display: flex;
  justify-content: center;
  margin: 20px 0;
}

/* ▼ 1つのレビュー全体ボックス */
.reviewer {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 400px;
  background: #f9f9f9;
  border-radius: 12px;
  padding: 16px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
}

/* ▼ アイコン */
.review-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #ccc;
}

/* ▼ 星評価＋スコア横並び */
.star-rating-wrapper {
  display: flex;
  align-items: center;
  gap: 4px; /* 星と数字の間に余白 */
  margin: 8px 0 4px;
}

/* ▼ 星評価（CSSのみで塗りつぶし） */
.star-rating {
  position: relative;
  display: inline-block;
  font-size: 1.3rem;
  color: #ccc;
}

.star-rating::before {
  content: "★★★★★";
  color: #ffc107;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(var(--rating) * 1%);
  overflow: hidden;
  white-space: nowrap;
}

.star-rating::after {
  content: "★★★★★";
  color: #ccc;
}

/* ▼ スコア数字 */
.rating-score {
  font-size: 1.3rem;
  font-weight: bold;
}

/* ▼ 年代性別 */
.reviewer-age {
  font-size: 0.85rem;
  margin-bottom: 8px;
}

/* ▼ 口コミ部分 */
.review-bubble {
  width: 100%;
}

.review-bubble p {
  margin: 0;
  font-size: 0.9rem;
  line-height: 1.5;
}



/*----------------------------------

よくあるご質問

---------------------------------- */
.accordion-area{
  list-style: none;
  text-align: left;
  padding-left: 0;
}

.accordion-area li{
  margin: 10px 0;
}

.accordion-area section {
  border: 1px solid #ccc;
  padding: 8px 0;
  border-radius: 10px;
}

.q_title {
  position: relative;
  cursor: pointer;
  font-size:1rem;
  font-weight: normal;
  padding: 8px 40px 8px 4px;
  transition: all .5s ease;
}

.q_title > div{
  position: relative;
}

.q_title > div .qp{
    position: absolute;
    top: 50%;
    transform: translate(0% , -50%);
}

.q_title > div::before{
  content: '';
  display: inline-block;
  width: 28px;
  height: 28px;
  background-image: url(images/icon_qanda.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  padding-right: 4px;
}

.q_title::before,
.q_title::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 2px;
    background-color: #333;
}

.q_title::before{
  top:48%;
  right: 15px;
  transform: rotate(0deg);
}

.q_title::after{
  top:48%;
  right: 15px;
  transform: rotate(90deg);
}

.q_title.close::before{
  transform: rotate(45deg);
}

.q_title.close::after{
  transform: rotate(-45deg);
}

.a_box {
  display: none;
  background: #37c4fb;
  color: #fff;
  margin:0 3% 3% 3%;
  padding: 3%;
  margin-top: 8px;
  border-radius: 10px;
  font-size: 0.9rem;
}


/*----------------------------------

追従バナー

---------------------------------- */

.floating-banner_only {
  position: fixed;
  z-index: 88888;
  bottom: 0;
  background-color: rgba(0, 0, 0, .5);
  margin: auto;
  text-align: center;
  padding: 5px 0;

  /*デフォルトで非表示にする*/
  cursor: pointer;
  transition: .3s;
  opacity: 0;
  visibility: hidden;
}


/*このクラスが付与されると表示する*/
.active{
  opacity: 1;
  visibility: visible;
}

.floating-banner img{
  width: 95%;
}

.floating-banner:hover {
    opacity: .9;
}

.sp {
    display: none;/* PCではスマホ用のバナーは非表示に */
}

@media screen and (max-width: 560px) {
    .sp {
        display: inline-block;/* 消していたスマホ用のバナーを表示させる */
        width: 100%;
    }
    .sp_web_only {
        display: inline-block;/* 消していたスマホ用のバナーを表示させる */
        width: 100%;
    }
}

@media screen and (max-width: 990px) {
    .pc {
        display: none;/* タブレットサイズ以下でPC用のバナーを非表示に */
    }
}

/*----------------------------------

申し込みカウント

---------------------------------- */

.signup-counter {
  font-weight: bold;
  text-align: center;
  margin: 10px 0;
}

.count {
  font-size: 1.3rem;
  color: #ff4081;
  transition: all 0.4s ease-in-out;
}



/*----------------------------------

CV文言

---------------------------------- */

.cv_text{
  text-align: center;
  font-size: 1.2rem;
  font-weight: bold;
  color:#3370fd;
  margin-bottom: 10px;
}

/*----------------------------------

暗号資産レート

---------------------------------- */

.crypto-list {
  max-width: 750px;
  margin: 40px 10px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  overflow: hidden;
}

.crypto-header {
  color: #3370fd;
  padding: 10px 0;
  font-size: 1.3em;
  font-weight: bold;
  text-align: center;
}

.crypto-item {
  display: flex;
  align-items: center;
  padding: 10px 20px;
  border-bottom: 1px solid #eee;
}
.crypto-item:last-child {
  border-bottom: none;
}
.crypto-col {
  flex: 1;
}
.crypto-symbol {
  display: flex;
  align-items: center;
  justify-content: flex-start; /* 左寄せ */
  font-weight: bold;
}
.crypto-symbol img {
  vertical-align: middle;
  margin-right: 5px;
}
.crypto-price,
.crypto-change {
  text-align: right; /* 右寄せ */
}
.change-up {
  color: green;
}
.change-down {
  color: red;
}

/*----------------------------------

お友達紹介キャンペーン

---------------------------------- */

.campaign_header {
  display: block;
  align-items: center;
  padding: 16px;
  background-color: #2b66fd;
}

.campaign_header img {
  width: 100%;
}

.campaign_section{
  background: linear-gradient(to right, #5fa9ff, #92e6ff, #5fa9ff);
  padding: 60px 10px 30px;
}

.campaign-inner{

}

.campaign-header {
  background: #2b66fd;
  color: #fff;
  padding: 10px 20px;
  border-radius: 4px;
  display: block;
  align-items: center;
  font-weight: bold;
  font-size: 1.5rem;
  margin-bottom: 20px;
  transform: skew(-15deg);
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 70%;
}

.campaign-catch {
  text-align: center;
  font-size: 1.5rem;
}

.campaign-card {
  background: #fff;
  max-width: 960px;
  margin: 0 auto;
  padding: 40px 20px;
  border-radius: 12px;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
  position: relative;
}

.campaign-text {
  margin-top: 50px;
  /*font-size: 0.9rem;*/
}

.you_color{
  color: #3370fd;
  font-weight: bold;
  font-size: 1.1rem;
}

.friend_color{
  color: #fd6d03;
  font-weight: bold;
  font-size: 1.1rem;
}

ul.note-list {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 40px;
}

ul.note-list li {
  position: relative;
  padding-left: 1.2em;
  font-size: 0.85rem;
  margin-bottom: 10px;
}

ul.note-list li::before {
  content: "※";
  position: absolute;
  left: 0;
  top: 0;
}

/* ==================================================================================== */
/*  PC用&タブレット
/* ==================================================================================== */


@media screen and (min-width:768px){

  body {
    font-size: 1.2rem;
  }

  .header {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px 30px;
  }

  .cv-button {
    align-self: auto;
  }

  .br_::before,
  .bnr_sp{
    display: none;
  }

  .bnr_pc,
  .section-angled,
  .section-next,
  .hero,
  .safe-section,
  .mcl-section,
  .one-section,
  .cuz-section,
  .campaign_section,
  .title_back{
    display: block;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
  }

  .bnr_pc{
    width: 100vw!important;
  }

  #main_content{
    margin: 0 auto;
    max-width: 750px;
  }

  .hero-inner,
  .safe-inner,
  .mcl-inner,
  .campaign-inner {
    margin: 0 auto;
    max-width: 750px;
  }

  .signup-counter {
    font-size: 1.4rem;
  }

  .count {
    font-size: 1.7rem;
  }

  .title_back,
  .safe-note strong{
    font-size: 1.8rem;
  }

  .box-title {
    font-size: 1.3rem;
  }

  .section-next {
    margin-top: -55px; /* ▼のくぼみにかぶせる */
    padding: 300px 10px;
  }

  .section-next .inner{
    padding-top: 400px;
  }

  .text-stroke-fat_large,
  .text-stroke-fat_small {
    -webkit-text-stroke: 5px #000;
    text-stroke: 5px  #000;
  }

  .text-stroke-fat_large {
    font-size: 2.8rem;
  }

  .text-stroke-fat_small {
    font-size: 1.3rem;
  }

  .hero-top {
    text-align: center;
    padding: 60px 10px 40px;
  }

  .headline {
    font-size: 5rem;
  }

  .message-blue,
  .message-red,
  .step_number span {
    font-size: 2.5rem;
  }

  .hero-box {
    text-align: center;
  }

  .service-box img {
    width: 40%;
  }

  .hero-person {
    right: 0;
    width: 250px;
  }

  .beginner-icon {
    width: 10%;
    margin-right: -10px;
  }

  .safe-header {
    font-size: 1.8rem;
    top: -40px;
  }

  .safe-catch,
  .logo-text-image {
    width: 100%;
  }

  .logo-text-image img {
    width: 50%;
    height: auto;
    margin: 60px 0 0;
  }

  .safe-title {
    text-align: center;
  }

  .safe-number {
    font-size: 12rem;
  }

  .safe-label {
    font-size: 3rem;
  }

  .safe-note {
    text-align: center;
    margin-top: 40px;
  }

  .safe-note span {
    font-size: 1.3rem;
  }

  .woman-image {
    right: -20px;
    width: 260px;
  }

  .safe-three img {
    width: 55%;
  }

  .title_back_safe{
    font-size: 2.2rem;
  }

  .safe-catch3 span {
    font-size: 2.5rem;
  }

  .safe-text {
    font-size: 1.5rem;
  }

  .overlap div{
    font-size: 1.5rem;
  }

  .mcl-catch {
    font-size: 2.2rem;
  }

  .mcl-text{
    margin-top: 30px;
    font-size: 1.1rem;
    text-align: center;
    width: 70%;
    margin: 30px auto 0;
  }

  .mcl-catch img {
    width: 50%;
  }

  .one_img_box img {
    width: 50% !important;
  }

  .top_img_box{
    width: 30% !important;
  }

  .w-overlap img {
    width: 50% !important;
  }

  .img_box img{
    width: 40%;
  }

  .step img {
    width: 50%;
  }

  .comparison_img img {
    width: 80%;
  }

  .arrow img {
    width: 20%;
  }

  .one-text {
    font-size: 1.3rem;
  }

  .plan-title {
    font-size: 1.5rem;
  }

  .plan-name {
    font-weight: bold;
    font-size: 1.3rem;
  }

  .plan-detail {
    font-size: 1.1rem;
  }

  .kinds_text,
  .currency_text{
    font-size: 8rem;
  }

  .currencys_mid_text{
    font-size: 6rem;
  }

  .kinds_sub_text,
  .currency_sub_text{
    font-size: 4rem;
  }

  .grid-container {
    flex-wrap: nowrap;
  }

  .step_number {
    font-size: 1.8rem;
    text-align: center;
  }

  .step_text {
    font-size: 1rem;
    text-align: center;
  }

  .br_pc::before {
    content: "\A";
    white-space: pre;
  }

  .review-container {

  }

  .reviewer {
    max-width: 600px;
  }



  .review-icon {
    width: 80px;
    height: 80px;
  }

  .star-rating {
    font-size: 1.8rem;
  }

  .rating-score {
    font-size: 1.8rem;
  }

  .reviewer-age {
    font-size: 1rem;
  }

  .review-bubble {
    width: 100%;
  }

  .review-bubble p {
    font-size: 1.1rem;
  }

  .cv_text {
    font-size: 1.8rem;
  }

  .margin-top100{
    margin-top: 100px;
  }

  .icon-text span {
    font-size: 1.4rem;
  }

  .font-weight {
    font-size: 1.2rem;
  }

  .title_term {
    font-size: 1.5rem;
  }

  .campaign_header img {
    width: 30%;
  }

  .campaign-text {
    width: 80%;
    margin: 0 auto;
  }

  .campaign-header{
    font-size: 1.8rem;
  }

  ul.note-list {
    width: 70%;
    margin: 40px auto!important;
  }


}
