/* ===== head style ===== */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0;word-wrap:break-word}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],/* 1 */

/* ===== head style ===== */
body{font-size:17px;background-color:#F4F4F4;user-select:none;-webkit-user-select:none;-ms-user-select:none;-moz-user-select:none;-khtml-user-select:none;-webkit-user-drag:none;-khtml-user-drag:none}@media screen and (min-width: 920px){body{width:620px;margin:0 auto}}body .article-header-wrapper img{max-width:100%}body .article-body{position:relative;font-size:17px;line-height:1.8;padding:15px 20px;background-color:#ffffff}body .article-body span,body .article-body p,body .article-body div,body .article-body h1,body .article-body h2,body .article-body h3,body .article-body h4,body .article-body h5,body .article-body h6{max-width:100%}body .article-body .sb-font-bold{font-weight:bold}body .article-body .sb-color-black{color:#000}body .article-body .sb-color-red{color:#ff0000}body .article-body .sb-color-blue{color:#0000ff}body .article-body .sb-align-left{display:block;text-align:left}body .article-body .sb-align-center{display:block;text-align:center}body .article-body .sb-align-right{display:block;text-align:right}body .article-body .sb-bg-gray{background:linear-gradient(to right, #eee 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #eee 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-bg-white{background:linear-gradient(to right, #fff 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #fff 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-bg-black{background:linear-gradient(to right, #000 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #000 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-bg-red{background:linear-gradient(to right, red 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, red 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-bg-green{background:linear-gradient(to right, lime 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, lime 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-bg-yellow{background:linear-gradient(to right, #ffee57 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #ffee57 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-bg-blue{background:linear-gradient(to right, blue 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, blue 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out;background-position:bottom 0 right 100%}body .article-body .sb-fs-10{font-size:10px}body .article-body .sb-fs-13{font-size:13px}body .article-body .sb-fs-15{font-size:15px}body .article-body .sb-fs-17{font-size:17px}body .article-body .sb-fs-19{font-size:19px}body .article-body .sb-fs-21{font-size:21px}body .article-body .sb-fs-23{font-size:23px}body .article-body .sb-fs-25{font-size:25px}body .article-body .sb-fs-27{font-size:27px}body .article-body .sb-fs-29{font-size:29px}body .article-body h2{font-size:27px;margin:0}body .article-body p{margin:0}body .article-body a{text-decoration:underline;color:#4682b4}body .article-body iframe{display:block;max-width:100%;margin-top:20px !important;margin-bottom:20px !important}body .article-body video{display:block;max-width:100%;margin-top:20px !important;margin-bottom:20px !important}body .article-body video:not(.lazyload){height:auto !important}body .article-body img:not(.lazyload){height:auto !important}body .article-body img{display:block;max-width:100%;margin-top:20px !important;margin-bottom:20px !important}body .article-body img.sb-fl{float:left;margin-right:10px}body .article-body img.sb-fc{display:block;float:none;margin:0 auto}body .article-body img.sb-fr{float:right;margin-left:10px}body .article-body img.sb-img-move-side{animation:sb_img_move_side 1s ease-in-out infinite alternate !important}@keyframes sb_img_move_side{0%{transform:translateX(-5px)}100%{transform:translateX(5px)}}body .article-body .sb-bg-gum-marker,body .article-body .sb-bg-gum-marker-animated{background:linear-gradient(to right, #ffee57 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #ffee57 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.animated,body .article-body .sb-bg-gum-marker-animated.animated{background-position:bottom 0 right 100% !important}body .article-body .sb-bg-gum-marker.sb-bg-gray,body .article-body .sb-bg-gum-marker-animated.sb-bg-gray{background:linear-gradient(to right, #eee 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #eee 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-gray.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-gray.animated{background-position:bottom 0 right 100%}body .article-body .sb-bg-gum-marker.sb-bg-white,body .article-body .sb-bg-gum-marker-animated.sb-bg-white{background:linear-gradient(to right, #fff 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #fff 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-white.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-white.animated{background-position:bottom 0 right 100%}body .article-body .sb-bg-gum-marker.sb-bg-black,body .article-body .sb-bg-gum-marker-animated.sb-bg-black{background:linear-gradient(to right, #000 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #000 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-black.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-black.animated{background-position:bottom 0 right 100%}body .article-body .sb-bg-gum-marker.sb-bg-red,body .article-body .sb-bg-gum-marker-animated.sb-bg-red{background:linear-gradient(to right, red 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, red 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-red.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-red.animated{background-position:bottom 0 right 100%}body .article-body .sb-bg-gum-marker.sb-bg-green,body .article-body .sb-bg-gum-marker-animated.sb-bg-green{background:linear-gradient(to right, lime 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, lime 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-green.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-green.animated{background-position:bottom 0 right 100%}body .article-body .sb-bg-gum-marker.sb-bg-yellow,body .article-body .sb-bg-gum-marker-animated.sb-bg-yellow{background:linear-gradient(to right, #ffee57 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, #ffee57 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-yellow.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-yellow.animated{background-position:bottom 0 right 100%}body .article-body .sb-bg-gum-marker.sb-bg-blue,body .article-body .sb-bg-gum-marker-animated.sb-bg-blue{background:linear-gradient(to right, blue 50%, transparent 50%) 100% 0%/200% 70% no-repeat;background:-webkit-linear-gradient(left, blue 50%, transparent 50%) 100% 0%/200% 70% no-repeat;transition:background-position 1s ease-out;-webkit-transition:background-position 1s ease-out}body .article-body .sb-bg-gum-marker.sb-bg-blue.animated,body .article-body .sb-bg-gum-marker-animated.sb-bg-blue.animated{background-position:bottom 0 right 100%}body .article-body .article-body-comment{display:table;margin-bottom:1.5em;padding-bottom:1em;width:100% !important;max-width:100% !important}body .article-body .article-body-comment .comment-image,body .article-body .article-body-comment .comment-content{display:table-cell;vertical-align:top}body .article-body .article-body-comment .comment-image{padding-right:1em}body .article-body .article-body-comment .comment-image>img{display:block;height:auto;max-width:none;margin-top:0 !important;margin-bottom:0 !important}body .article-body .article-body-comment .comment-content{width:100%}body .article-body .article-body-comment .comment-content .comment-title{font-size:1em;margin:0 0 0.5em 0;font-weight:bold}body .article-body .article-body-comment .comment-content p{line-height:1.5em;margin-bottom:0.5em}body .article-body .article-body-comment .comment-content p.comment-detail{color:rgba(51,51,51,0.5);font-size:0.9em;font-style:italic}body .article-body .sb-custom img{display:block !important}body .article-body .sb-form iframe{height:0;margin:0 auto !important}

/* ===== inline part style ===== */


/* ===== inline part style ===== */

  body {
  
  
}




  .article-body {
  
    font-size: 17px !important;
  
  
    font-family: Hiragino Sans, Arial, sans-serif !important;
  
  
    color: #000000 !important;
  
  
    line-height: 1.8 !important;
  
  
  
    padding-top: 15px !important;
  
  
    padding-bottom: 15px !important;
  
  
    padding-left: 20px !important;
  
  
    padding-right: 20px !important;
  
  
  
  
}

  body .article-body iframe {
  
}

        body .article-body img {
        display: unset !important;
        
          margin-top: 0px !important;
        
        
          margin-bottom: 0px !important;
        
      }

        body .article-body video {
        display: unset !important;
      }

        body .article-body .sb-custom  {
        
          font-size: 17px !important;
        
        
          font-family: Hiragino Sans, Arial, sans-serif !important;
        
        
          color: #000000 !important;
        
        
          line-height: 1.8 !important;
        
      }

        body .article-body .sb-custom img {
        
          margin-top: 0px !important;
        
        
          margin-bottom: 0px !important;
        
      }



/* ===== inline part style ===== */
#sb-part-15841.sb-custom-part-mob0gcnzmn346lgztg

/* 動画を横幅いっぱいにする際は下の「.w100」を削除してください */
.w100.main {
  margin: 0 -20px -20px !important;
  /*-20pxはversion設定の左右余白を変更していない場合のみです、左右余白と同じサイズを-(マイナス)で打ち消してください*/
  max-width: unset;
}

#sb-part-15841.sb-custom-part-mob0gcnzmn346lgztg img,
#sb-part-15841.sb-custom-part-mob0gcnzmn346lgztg video {
  width: 100%;
  height: auto;
}

#sb-part-15841.sb-custom-part-mob0gcnzmn346lgztg .w100.main video {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ===== inline part style ===== */
#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .balloon5 .faceicon {
  float: right;
  width: 80px;
  margin-right: 5px;
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #FFEDCC;
  border-radius: 50%;
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .balloon5 .chatting {
  width: 100%;
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .says {
  position: relative;
  margin: 5px 105px 0 0;
  padding: 20px;
  border-radius: 12px;
  background: #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  right: -24px;
  border: 12px solid transparent;
  border-left: 12px solid #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-lmyadycchzr90in3p8s .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .balloon5 .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #fde8ef;
  border-radius: 50%;
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .balloon5 .chatting {
  width: 100%;
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .says {
  position: relative;
  margin: 5px 0 0 105px;
  padding: 20px;
  border-radius: 12px;
  background: #fde8ef;
  /* カラーコードで背景の色指定*/
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #fde8ef;
  /* カラーコードで背景の色指定*/
}

#sb-part-1249.sb-custom-part-lnb55m2vyouodmzmpv .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-51.sb-custom-part-lnb4zdpscwo6sxjglt6 h2 {
  /*背景色*/
  background: #dfefff;
  /*ステッチ部分。線の種類｜線の太さ｜線の色*/
  border: dashed 1px #96c2fe;
  /*文字色*/
  color: #454545;
  box-shadow: 0px 0px 0px 5px #dfefff;
  /*内側余白。上下｜左右*/
  padding: 5px 10px;
  /*水平方向の字間のスペース*/
  letter-spacing: 0.05em
}

/* ===== inline part style ===== */
#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .balloon5 .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #fde8ef;
  border-radius: 50%;
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .balloon5 .chatting {
  width: 100%;
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .says {
  position: relative;
  margin: 5px 0 0 105px;
  padding: 20px;
  border-radius: 12px;
  background: #fde8ef;
  /* カラーコードで背景の色指定*/
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #fde8ef;
  /* カラーコードで背景の色指定*/
}

#sb-part-1249.sb-custom-part-lpglm7lb2gnhapoc5rc .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .balloon5 .faceicon {
  float: right;
  width: 80px;
  margin-right: 5px;
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #FFEDCC;
  border-radius: 50%;
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .balloon5 .chatting {
  width: 100%;
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .says {
  position: relative;
  margin: 5px 105px 0 0;
  padding: 20px;
  border-radius: 12px;
  background: #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  right: -24px;
  border: 12px solid transparent;
  border-left: 12px solid #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-lpgkdxbu2lata1jfcmp .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .balloon5 .faceicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #fde8ef;
  border-radius: 50%;
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .balloon5 .chatting {
  width: 100%;
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .says {
  position: relative;
  margin: 5px 0 0 105px;
  padding: 20px;
  border-radius: 12px;
  background: #fde8ef;
  /* カラーコードで背景の色指定*/
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #fde8ef;
  /* カラーコードで背景の色指定*/
}

#sb-part-1249.sb-custom-part-YF2sU561PDJApNuD .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .balloon5 .faceicon {
  float: right;
  width: 80px;
  margin-right: 5px;
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #FFEDCC;
  border-radius: 50%;
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .balloon5 .chatting {
  width: 100%;
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .says {
  position: relative;
  margin: 5px 105px 0 0;
  padding: 20px;
  border-radius: 12px;
  background: #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  right: -24px;
  border: 12px solid transparent;
  border-left: 12px solid #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-LHYp7w8dcSBpotJp .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .balloon5 {
  width: 100%;
  margin: 1.5em 0;
  overflow: hidden;
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .balloon5 .faceicon {
  float: right;
  width: 80px;
  margin-right: 5px;
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .balloon5 .faceicon img {
  width: 100%;
  height: auto;
  border: solid 3px #FFEDCC;
  border-radius: 50%;
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .name {
  font-size: 12px;
  color: gray;
  text-align: center;
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .balloon5 .chatting {
  width: 100%;
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .says {
  position: relative;
  margin: 5px 105px 0 0;
  padding: 20px;
  border-radius: 12px;
  background: #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .says:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px;
  right: -24px;
  border: 12px solid transparent;
  border-left: 12px solid #FFEDCC;
  /* カラーコードで背景の色指定*/
}

#sb-part-1550.sb-custom-part-O0IKi6DZaxPRN8Vn .says p {
  margin: 0;
  padding: 0;
}

/* ===== inline part style ===== */
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .calBox {
  background: url(images/641782_0f8daaa5.jpg) 0 0 repeat;
  padding: 30px 10px;
  background-size: 20%;
  -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  -ms-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .calBox img {
  display: block;
  width: 100%;
  height: auto;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .calBox form p {
  text-align: center;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .userInput {
  font-size: 0.9em;
  line-height: 1.3em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn input#inputButton {
  font-size: 1.2em;
  line-height: 1em;
  width: 3em;
  padding: 5px;
  border: solid 1px #ccc;
  margin: 0 5px 20px;
  box-shadow: none;
  font-weight: bold;
  text-align: center;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn input.savingsButton,
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn input#reset {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .dlBox {
  display: flex;
  flex-wrap: wrap;
  border: solid 2px #666;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .dlBox dt,
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .dlBox dd {
  font-weight: bold;
  padding: 5px;
  box-sizing: border-box;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .dlBox dt {
  width: 30%;
  background: #666;
  color: #fff;
  letter-spacing: 0.1em;
  text-align: center;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .dlBox dd {
  width: 70%;
  margin: 0;
  text-align: right;
  background: #fff;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn #year10Result {
  display: inline-block;
  padding-right: 0.5em;
  font-size: 1.3em;
  line-height: 1em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .openResultBox {
  -webkit-animation: 2s float ease-in-out infinite;
  animation: 2s float ease-in-out infinite;
}

@-webkit-keyframes float {
  50% {
    -webkit-transform: translateY(-10px);
  }
}

@keyframes float {
  50% {
    transform: translateY(-10px);
  }
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn #openResult {
  width: 100%;
  height: auto;
  display: block;
  background: linear-gradient(180deg, #ff5c85 0%, #e73562 60%, #c22449 100%);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 1px;
  border: none;
  border-radius: 14px;
  padding: 16px 8px;
  box-shadow: 0 4px 0 #8f1a35, 0 6px 14px rgba(231,53,98,.3);
  cursor: pointer;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .txt_further {
  font-size: 0.9em;
  line-height: 1.3em;
  padding: 0.5em 0;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .txt_great {
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  line-height: 1em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .txtIn {
  position: relative;
  display: inline-block;
  background: linear-gradient(transparent 50%, #fff799 50%);
  font-weight: bold;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .img_result {
  margin-top: 1em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .savingsButton {
  font-size: 1.5em;
  line-height: 1em;
  color: red;
  font-weight: bold;
  text-align: right;
  display: inline-block;
  max-width: 3em;
  padding: 0 0.5em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .txtIn::before {
  content: "約";
  font-size: 0.7em;
  font-weight: 500;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1em;
  height: 1em;
  display: block;
  line-height: 0em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .result,
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .result0,
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .result0199,
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .result200399,
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .resultother {
  display: none;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .result0 .txt_great {
  font-size: 1.1em;
  font-weight: nomal;
  line-height: 1.3em;
  margin-top: 1em;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .block {
  display: block;
}

#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .none {
  display: none !important;
}

/* ===== inline part style ===== */
#sb-part-15203.sb-custom-part-m7337zsaf9v923rqvzd .header_text {
  font-size: 18px;
  color: #f06666;
  text-align: center;
  font-weight: bold;
}

#sb-part-15203.sb-custom-part-m7337zsaf9v923rqvzd .sb-bg-under-marker {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #fffca1 0%) repeat scroll 0 0;
}

/* ===== inline part style ===== */
#sb-part-55.sb-custom-part-mfp4jv0zkrdfv2lh3ng .purupuru {
  animation: purupuru 0.8s linear 0s infinite;
}

@keyframes purupuru {
  0% {
    transform: skew(9deg);
  }

  10% {
    transform: skew(-8deg);
  }

  20% {
    transform: skew(7deg);
  }

  30% {
    transform: skew(-6deg);
  }

  40% {
    transform: skew(5deg);
  }

  50% {
    transform: skew(-4deg);
  }

  60% {
    transform: skew(3deg);
  }

  70% {
    transform: skew(-2deg);
  }

  80% {
    transform: skew(1deg);
  }

  90% {
    transform: skew(0deg);
  }

  100% {
    transform: skew(0deg);
  }
}

/* ===== inline part style ===== */
#sb-part-2442.sb-custom-part-lmtw72tc995t0fl6bma .box-contents {
  border: 1px solid #f48d91;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#sb-part-2442.sb-custom-part-lmtw72tc995t0fl6bma .box-contents .title {
  background-color: #f48d91;
  padding: 0.5em;
}

#sb-part-2442.sb-custom-part-lmtw72tc995t0fl6bma .box-contents .content {
  padding: 10px;
}

#sb-part-2442.sb-custom-part-lmtw72tc995t0fl6bma .box-contents .content>img+p {
  margin-top: 1em;
}

#sb-part-2442.sb-custom-part-lmtw72tc995t0fl6bma .title {
  line-height: 1.2em;
}

/* ===== inline part style ===== */
#sb-part-2442.sb-custom-part-lmtw7dzyfa2zhb94mxk .box-contents {
  border: 1px solid #f48d91;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#sb-part-2442.sb-custom-part-lmtw7dzyfa2zhb94mxk .box-contents .title {
  background-color: #f48d91;
  padding: 0.5em;
}

#sb-part-2442.sb-custom-part-lmtw7dzyfa2zhb94mxk .box-contents .content {
  padding: 10px;
}

#sb-part-2442.sb-custom-part-lmtw7dzyfa2zhb94mxk .box-contents .content>img+p {
  margin-top: 1em;
}

#sb-part-2442.sb-custom-part-lmtw7dzyfa2zhb94mxk .title {
  line-height: 1.2em;
}

/* ===== inline part style ===== */
#sb-part-4076.sb-custom-part-kx88shpiue2bum2c7z p {
  font-size: 10px;
  line-height: 1.3em;
  margin: 1em 0;
  text-align: right;
}

/* ===== inline part style ===== */
#sb-part-15203.sb-custom-part-m9c6mt1z8d529ms8tt3 .header_text {
  font-size: 18px;
  color: #f06666;
  text-align: center;
  font-weight: bold;
}

#sb-part-15203.sb-custom-part-m9c6mt1z8d529ms8tt3 .sb-bg-under-marker {
  background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #fffca1 0%) repeat scroll 0 0;
}

/* ===== inline part style ===== */
#sb-part-55.sb-custom-part-mfp4k3mxc6udcyq7v3b .purupuru {
  animation: purupuru 0.8s linear 0s infinite;
}

@keyframes purupuru {
  0% {
    transform: skew(9deg);
  }

  10% {
    transform: skew(-8deg);
  }

  20% {
    transform: skew(7deg);
  }

  30% {
    transform: skew(-6deg);
  }

  40% {
    transform: skew(5deg);
  }

  50% {
    transform: skew(-4deg);
  }

  60% {
    transform: skew(3deg);
  }

  70% {
    transform: skew(-2deg);
  }

  80% {
    transform: skew(1deg);
  }

  90% {
    transform: skew(0deg);
  }

  100% {
    transform: skew(0deg);
  }
}

/* ===== inline part style ===== */
#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 全体の設定 */
.map__area {
  /* 横幅 */
  width: 100%;
  /* 最大幅 */
  max-width: 600px;
  /* 外側の余白｜上下｜左右（センタリング）｜ */
  margin: 0 auto;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 日本地図DOM */
.japan_map {
  position: relative;
  box-sizing: border-box;
  /* 外側の余白 */
  margin: 0 auto;
  display: table;
  /* 背景色 */
  background-color: transparent;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 日本地図画像（スマホ対応用） */
.japan_map img {
  /*　最大幅 */
  max-width: 100%;
  /* 高さ */
  height: auto;
  /* 線｜太さ｜ */
  border: 0;
  /* chromeの画像ボケ対策 */
  -webkit-backface-visibility: hidden;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 日本地図ボタン */
.japan_map .area_btn {
  position: absolute;
  /* 表示順番 */
  z-index: 1;
  box-sizing: border-box;
  /* カーソルが対象物に触れた時に指マークになる */
  cursor: pointer;
  /* 線｜太さ｜線種｜色｜ */
  border: 3px solid #333333;
  /* 角丸 */
  border-radius: 5px;
  /* 背景色 */
  background-color: #FFF;
  /* 内側の余白 */
  padding: 0.2em auto;
  /* 文字の太さ */
  font-weight: bold;
  /* 文字の位置 */
  text-align: center;
  /* 折り返しの設定 */
  white-space: nowrap;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* ボタン配置（使用する日本地図画像により微調整）*/
/* 北海道 */
.japan_map .area_btn.area1 {
  /* 表示位置（上基準） */
  top: 7%;
  /* 表示位置（右基準） */
  right: 6%;
  /* 横幅 */
  width: 30%;
  height: 14%;
  color: #0a37c5;
  background: linear-gradient(to bottom, #eaf9ff, #a3b8f8);
  border-color: #4b73ef;

}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 東北 */
.japan_map .area_btn.area2 {
  /* 表示位置（上基準） */
  top: 25%;
  /* 表示位置（右基準） */
  right: 5%;
  /* 横幅 */
  width: 20%;
  height: 14%;
  color: #0a83c5;
  background: linear-gradient(to bottom, #e9f5ff, #b6dcff);
  border-color: #6bb6ff;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 関東 */
.japan_map .area_btn.area3 {
  /* 表示位置（上基準） */
  top: 58%;
  /* 表示位置（右基準） */
  right: 3.5%;
  /* 横幅 */
  width: 20%;
  height: 14%;
  color: #a89a19;
  background: linear-gradient(to bottom, #fff7e5, #ffdca1);
  border-color: #f3c467;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 北陸・信越 */
.japan_map .area_btn.area4 {
  /* 表示位置（上基準） */
  top: 42%;
  /* 表示位置（右基準） */
  right: 20%;
  /* 横幅 */
  width: 31%;
  height: 14%;
  color: #007810;
  background: linear-gradient(to bottom, #eaffea, #a1f8ad);
  border-color: #79d879;

}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 中部 */
.japan_map .area_btn.area5 {
  /* 表示位置（上基準） */
  top: 72%;
  /* 表示位置（右基準） */
  right: 26%;
  /* 横幅 */
  width: 20%;
  height: 14%;
  color: #d65520;
  background: linear-gradient(to bottom, #ffeedd, #f8d771);
  border-color: #ffb273;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 近畿 */
.japan_map .area_btn.area6 {
  /* 表示位置（上基準） */
  top: 56%;
  /* 表示位置（左基準） */
  left: 40%;
  /* 横幅 */
  width: 20%;
  height: 14%;
  color: #d65520;
  background: linear-gradient(to bottom, #ffeedd, #ffcf9b);
  border-color: #ffb273;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 中国 */
.japan_map .area_btn.area7 {
  /* 表示位置（上基準） */
  top: 48%;
  /* 表示位置（左基準） */
  left: 19%;
  /* 横幅 */
  width: 20%;
  height: 14%;
  color: #aa1515;
  background: linear-gradient(to bottom, #fff0f9, #fcbeb0);
  border-color: #f56868;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 四国 */
.japan_map .area_btn.area8 {
  /* 表示位置（上基準） */
  top: 72%;
  /* 表示位置（左基準） */
  left: 28.5%;
  /* 横幅 */
  width: 20%;
  height: 14%;
  color: #d620c9;
  background: linear-gradient(to bottom, #fff0f9, #ffb6e7);
  border-color: #d81bca;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 九州・沖縄 */
.japan_map .area_btn.area9 {
  /* 表示位置（上基準） */
  top: 63%;
  /* 表示位置（左基準） */
  left: -20;
  /* 横幅 */
  width: 32%;
  height: 14%;
  /* 色 */
  color: #8f00a1;
  background: linear-gradient(to bottom, #f5ecff, #decaff);
  border-color: #b28af9;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* オーバーレイ */
.japan_map .area_overlay {
  /* 初期非表示 */
  display: none;
  position: absolute;
  /* 表示順番 */
  z-index: 2;
  /* 表示位置（上基準） */
  top: 0;
  /* 表示位置（左基準） */
  left: 0;
  /* 最小幅 */
  min-width: 100%;
  /* 最小高さ */
  min-height: 100%;
  /* 横幅 */
  width: auto;
  /* 高さ */
  height: auto;
  /* 背景色 */
  background-color: #111;
  /* 透明度 */
  opacity: 0.5;
  /* カーソルが対象物に触れた時に指マークになる */
  cursor: pointer;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 選択前は表示を隠す */
.japan_map .pref_area {
  display: none;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 地域毎の都道府県リスト */
.japan_map .pref_list {
  position: absolute;
  /* 表示位置（上基準） */
  top: 50%;
  /* 表示位置（左基準） */
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  /* 表示順番 */
  z-index: 3;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  /* 横幅 */
  width: 90%;
  /* 背景色 */
  background-color: #FFF;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw .japan_map .pref_list>a {
  box-sizing: border-box;
  /* 横幅 */
  width: 50%;
  /* 線｜太さ｜線種｜色｜ */
  border: 1px solid #CCC;
  /* 文字の太さ */
  font-weight: bold;
  /* 文字の位置 */
  text-align: center;
  /* 内側の余白 */
  padding: 0.5em;
  /* カーソルが対象物に触れた時に指マークになる */
  cursor: pointer;
  /* 文字色 */
  color: #066dc4;
  /* 下線 */
  text-decoration: none;
  /* 背景色 */
  background: #fff;
  /* アニメーションの対象と速さ */
  transition: background 0.2s;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw .japan_map .pref_list>a:hover {
  /* 背景色 */
  background: #d7edee;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* 北海道など1つしか表示されない地域の設定 */
.japan_map .pref_list.contentOne {
  /* 横幅 */
  width: 45%;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw .japan_map .pref_list.contentOne a {
  /* 横幅 */
  width: 100%;
}

@media screen and (max-width: 600px) {
  #sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

  /* スマホユーザー向けにボタン文字サイズを調整 */
  .japan_map .area_btn {
    font-size: 4vw;
  }
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* ===== 共通：立体ボタン用スタイル ===== */
.japan_map .area_btn {
  position: absolute;
  z-index: 1;
  cursor: pointer;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  padding: 0.5em 0.7em;

  border-radius: 12px;
  border: 2px solid rgba(0, 0, 0, 0.15);

  /* --- 立体感を作るレイヤー --- */

  /* 下が濃くなるグラデーション（後で各エリアで個別指定） */
  background: linear-gradient(to bottom, #fff, #ccc);

  /* 外側の影（浮いて見える） */
  box-shadow:
    0 3px 6px rgba(0, 0, 0, 0.25),
    /* 外側ふんわり影 */
    inset 0 2px 2px rgba(255, 255, 255, 0.7),
    /* 上部の光（ハイライト） */
    inset 0 -3px 4px rgba(0, 0, 0, 0.15);
  /* 下部の濃い影（凹凸） */

  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    background 0.25s ease;
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* --- ホバー時：少し浮かせる --- */
.japan_map .area_btn:hover {
  transform: translateY(-3px);
  box-shadow:
    0 6px 12px rgba(0, 0, 0, 0.32),
    inset 0 2px 2px rgba(255, 255, 255, 0.7),
    inset 0 -3px 4px rgba(0, 0, 0, 0.15);
}

#sb-part-4095.sb-custom-part-mifo7jalpo1cf1pjyw

/* --- 押す時：沈む --- */
.japan_map .area_btn:active {
  transform: translateY(1px);
  box-shadow:
    0 2px 3px rgba(0, 0, 0, 0.2),
    inset 0 1px 1px rgba(255, 255, 255, 0.6),
    inset 0 -1px 2px rgba(0, 0, 0, 0.12);
}
/* ================================================================
   StudyIn WH本気プラン 追加スタイル（st- プレフィックス）
   クローン元CSSは上に温存。ここから下が我々の追記。
   ================================================================ */

:root {
  --st-pink: #e73562;
  --st-pink-dark: #c22449;
  --st-yellow: #ffe14d;
  --st-ink: #333;
}

/* 見出し */
body .article-body h2.st-h2 {
  font-size: 22px;
  line-height: 1.4;
  color: var(--st-ink);
  border-left: 6px solid var(--st-pink);
  padding: 4px 0 4px 12px;
  margin: 10px 0;
}

/* 数式バナー（仕事の獲得＝英語力×事前準備） */
.st-formula {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #fff3f6;
  border: 2px solid var(--st-pink);
  border-radius: 12px;
  padding: 14px 8px;
  font-size: 16px;
}
.st-formula span {
  background: #fff;
  border-radius: 8px;
  padding: 6px 8px;
  font-weight: bold;
  color: var(--st-pink-dark);
  box-shadow: 0 1px 3px rgba(0,0,0,.12);
  white-space: nowrap;
  font-size: 14px;
}
.st-formula b { color: var(--st-ink); font-size: 20px; }

/* 比較表・実績表 */
table.st-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.5;
  background: #fff;
}
table.st-table th {
  background: var(--st-pink);
  color: #fff;
  padding: 8px 6px;
  border: 1px solid #e3a7b6;
  font-size: 13px;
}
table.st-table td {
  border: 1px solid #e3c9d1;
  padding: 8px 6px;
  text-align: center;
}
table.st-table tr.st-hl td {
  background: #fff3d6;
  color: var(--st-pink-dark);
}
table.st-table tr.st-hl td b { font-size: 16px; }
.st-small { font-size: 10px; color: #888; }

/* サポート4カード */
.st-cards { display: grid; grid-template-columns: 1fr; gap: 10px; }
.st-card {
  border: 2px solid var(--st-pink);
  border-radius: 12px;
  background: #fff;
  padding: 12px 14px;
  font-size: 14px;
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 12px;
  align-items: start;
}
/* サポートカードの実写真。出典は deck.pdf p.7「ワーホリ専門コーチングで4つの不安を解消！」で、
   SUPPORT 01〜04 の文言と同じスライドに載っている写真を pdfimages で抽出して使っている。
   （当初は honki LP の面談・体験談用写真を転用していたが、deck p.7 に本来の写真が
     揃っていたため 2026-08-20 に差し替え。文言と写真の出典がこれで一致した）
   マゼンタの縁はスライドの装飾なので、色で判定してトリミング済み。 */
.st-card-photo {
  width: 96px; height: 96px;
  object-fit: cover;
  border-radius: 8px;
  display: block;
}
@media (min-width: 560px) {
  .st-card { grid-template-columns: 132px 1fr; }
  .st-card-photo { width: 132px; height: 132px; }
}
.st-card-no {
  display: inline-block;
  background: var(--st-pink);
  color: #fff;
  font-size: 11px;
  font-weight: bold;
  border-radius: 10px;
  padding: 2px 10px;
  margin-bottom: 6px;
}
/* 写真が入って本文カラムが狭くなったぶん、見出しがバッジの右で折り返して
   2行目だけ左端に落ちるので、見出しは必ずバッジの下の行から始める。2026-08-20 */
.st-card b { font-size: 15px; color: var(--st-pink-dark); display: block; }
.st-card p { margin: 6px 0 0 !important; line-height: 1.6; font-size: 13px; }

/* 全額返金保証 */
.st-guarantee {
  border: 3px solid var(--st-pink);
  border-radius: 14px;
  background: #fff;
  text-align: center;
  padding: 16px 14px;
}
.st-guarantee-head { color: var(--st-pink); font-weight: bold; font-size: 15px; }
.st-guarantee-main {
  font-size: 20px;
  font-weight: bold;
  margin: 6px 0 10px;
  line-height: 1.5;
}
.st-guarantee-main span {
  font-size: 28px;
  color: var(--st-pink);
  background: linear-gradient(transparent 65%, var(--st-yellow) 0%);
}
/* 表の数値列は折り返さない。375pxで「$31〜」/「35」と割れて読みにくかった
   （2026-08-20 Kosei「時給もイメージつきやすく」の検証中に発見）。
   店名の列だけ折り返させれば表幅335pxに収まり、横スクロールも出ない。
   比較表は <br> による明示改行なので、この指定の影響を受けない（実測で確認済み） */
.st-table tr > *:nth-child(2),
.st-table tr > *:nth-child(3) { white-space: nowrap; }

.st-guarantee-main span sup {
  font-size: 11px;
  vertical-align: super;   /* normalize.css が sup を top:-.5em だけで持ち上げていて、
                              大きい文字（28px）の中では※が「ど真ん中」に来る。
                              .st-huge sup と同じ補正。※の上端が本文の上端に揃う */
}
.st-guarantee p { font-size: 13px; margin: 0 0 6px !important; text-align: left; line-height: 1.7; }
.st-guarantee p.st-small { font-size: 10px; color: #888; }

/* 現地オフィスチップ */
.st-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; }
.st-chips span {
  background: #eef6f3;
  border: 1px solid #5fb3a3;
  color: #23705f;
  border-radius: 14px;
  font-size: 12px;
  padding: 4px 10px;
  font-weight: bold;
}

/* シミュレーター微調整（元のcalBox CSSを継承） */
.st-sim-head { text-align: center; font-size: 16px; }
.st-sim-head b { color: var(--st-pink); font-size: 20px; }
.st-reset-row { text-align: right; }
.st-reset-row input { background: none; color: #666; font-size: 14px; text-decoration: underline; cursor: pointer; }
.calBox .savingsButton {
  border: none;
  background: none;
  color: var(--st-pink);
  font-weight: bold;
  font-size: 28px;
  width: 90px;
  text-align: right;
}

/* カウンセリングの中身 */
.st-counsel {
  border: 2px dashed var(--st-pink);
  border-radius: 12px;
  background: #fff8fa;
  padding: 14px;
}
.st-counsel-head {
  text-align: center;
  font-weight: bold;
  color: var(--st-pink-dark);
  font-size: 17px;
  margin-bottom: 8px;
}
.st-counsel ol { margin: 0; padding-left: 22px; font-size: 14px; line-height: 1.9; }
.st-badges { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin-top: 10px; }
.st-badges span {
  background: #fff;
  border: 1px solid var(--st-pink);
  color: var(--st-pink-dark);
  border-radius: 14px;
  font-size: 12px;
  padding: 4px 10px;
  font-weight: bold;
}

/* CTAボタン（purupuru アニメは元CSSを継承） */
a.st-cta {
  display: block;
  text-decoration: none !important;
  background: linear-gradient(180deg, #ff5c85 0%, var(--st-pink) 60%, var(--st-pink-dark) 100%);
  border-radius: 16px;
  box-shadow: 0 5px 0 #8f1a35, 0 8px 18px rgba(231,53,98,.35);
  text-align: center;
  padding: 16px 12px 14px;
  color: #fff !important;
}
a.st-cta .st-cta-top { display: block; font-size: 13px; font-weight: bold; color: var(--st-yellow); }
a.st-cta .st-cta-main { display: block; font-size: 21px; font-weight: bold; line-height: 1.4; margin: 6px 0; }
a.st-cta .st-cta-sub { display: block; font-size: 12px; color: #ffd6e0; }

/* 国セレクタ（元 .js-map のフックだけ流用し、見た目は独自） */
.st-map { position: relative; }
.st-map-areas { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.st-area {
  border: none;
  border-radius: 14px;
  padding: 22px 8px;
  font-size: 17px;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
  box-shadow: 0 3px 0 rgba(0,0,0,.18);
}
.st-area1 { background: #f5a623; }
.st-area2 { background: #4a90d9; }
.st-area3 { background: #5fb3a3; }
.st-area4 { background: #9b8ec4; }
.st-map-bg {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 40;
}
.st-map-pref {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 82%;
  max-width: 420px;
  z-index: 41;
}
.st-preflist {
  display: none;
  flex-direction: column;
  gap: 10px;
  background: #fff;
  border-radius: 14px;
  padding: 18px 16px;
}
.st-preflist a {
  display: block;
  text-align: center;
  background: var(--st-pink);
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 10px;
  padding: 13px 8px;
  font-weight: bold;
  font-size: 16px;
}

/* シミュレーター表示微調整（クローン元CSSの上書き） */
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .dlBox dt {
  font-size: 13px;
  letter-spacing: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .txtIn::before {
  position: static;
  display: inline;
  width: auto;
  height: auto;
}
#sb-part-1885.sb-custom-part-m9wfm39podhts6khxpn .txt_great {
  font-size: 20px;
}

/* ページ内フォーム */
html { scroll-behavior: smooth; }
.st-form {
  border: 3px solid var(--st-pink);
  border-radius: 16px;
  background: #fff;
  padding: 18px 16px;
}
.st-form-head { text-align: center; color: var(--st-pink); font-weight: bold; font-size: 15px; }
.st-form-title { text-align: center; font-size: 18px; font-weight: bold; line-height: 1.6; margin: 6px 0 14px; }
.st-form-title span { color: var(--st-pink); background: linear-gradient(transparent 65%, var(--st-yellow) 0%); }
.st-form-label { font-size: 14px; font-weight: bold; margin: 12px 0 6px !important; }
.st-req {
  background: var(--st-pink);
  color: #fff;
  font-size: 10px;
  border-radius: 4px;
  padding: 2px 6px;
  vertical-align: 2px;
}
.st-form-countries { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.st-form-countries label { display: block; cursor: pointer; }
.st-form-countries input { display: none; }
.st-form-countries span {
  display: block;
  text-align: center;
  border: 2px solid #ddd;
  border-radius: 10px;
  padding: 10px 4px;
  font-size: 13px;
  font-weight: bold;
  color: #555;
  background: #fafafa;
}
.st-form-countries input:checked + span {
  border-color: var(--st-pink);
  background: #fff3f6;
  color: var(--st-pink-dark);
}
.st-input {
  width: 100%;
  box-sizing: border-box;
  border: 2px solid #ddd;
  border-radius: 10px;
  padding: 12px;
  font-size: 16px;
}
.st-input.st-error { border-color: #e60000; background: #fff5f5; }
.st-form-agree { text-align: center; font-size: 11px; color: #888; margin: 14px 0 8px !important; }
.st-submit {
  display: block;
  width: 100%;
  border: none;
  cursor: pointer;
  background: linear-gradient(180deg, #ff5c85 0%, var(--st-pink) 60%, var(--st-pink-dark) 100%);
  box-shadow: 0 4px 0 #8f1a35;
  color: #fff;
  font-size: 19px;
  font-weight: bold;
  border-radius: 14px;
  padding: 16px 8px;
}
.st-form-note { text-align: center; font-size: 12px; color: #888; margin-top: 8px !important; }

/* マンガパネル＋HTML吹き出し（セリフは画像に焼かず、ここで編集する） */
.st-panel { position: relative; margin: 20px 0; border: 3px solid #2a2a2a; border-radius: 4px; overflow: hidden; }
.st-panel img { display: block; margin: 0 !important; width: 100%; height: auto; }
.st-bub {
  position: absolute;
  background: rgba(255,255,255,.96);
  border: 2px solid #2a2a2a;
  border-radius: 14px;
  padding: 7px 10px;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.55;
  box-shadow: 2px 2px 0 rgba(0,0,0,.18);
}
.st-bub b { color: #d63757; }
.st-nar { border-radius: 3px; background: #fffef4; font-size: 12px; }
.st-mono { border-style: dashed; background: rgba(255,255,255,.9); }
.st-em { color: #d63757; font-size: 16px; }
.st-note { border: none; box-shadow: none; background: rgba(255,255,255,.85); font-size: 9px; color: #666; padding: 2px 6px; }
.st-big { font-size: 15px; }
.st-huge { font-size: 24px; color: #d63757; white-space: nowrap; }
.st-huge sup {
  font-size: 11px;
  vertical-align: super;   /* リセットCSSが sup を baseline に戻していて、
                              ※が数字の「ど真ん中」（中心との差1px）に来ていた。
                              super にすると ※の上端が数字の上端とぴったり揃う（差0px）。
                              top だと17px行き過ぎて文字の上に浮く。2026-08-20 Kosei指摘 */
}

/* ヒーロー（見出しはHTML・作画は下） */
.st-hero { background: var(--st-pink); border-radius: 0 0 14px 14px; overflow: hidden; }
.st-hero-copy { text-align: center; padding: 16px 10px 12px; color: #fff; }
.st-hero-badge {
  display: inline-block;
  background: #fff;
  color: var(--st-pink);
  font-size: 12px;
  font-weight: bold;
  border-radius: 14px;
  padding: 4px 12px;
}
.st-hero-badge sup { font-size: 8px; }
.st-hero-line1 { font-size: 21px; font-weight: bold; margin-top: 10px; }
.st-hero-line2 { font-size: 38px; font-weight: bold; color: var(--st-yellow); line-height: 1.3; }
.st-hero-line2 sup { font-size: 13px; }
.st-hero-line3 { font-size: 15px; font-weight: bold; }
.st-hero-art { position: relative; }
.st-hero-art img { display: block; margin: 0 !important; width: 100%; height: auto; }
.st-hero-tag {
  position: absolute;
  bottom: 6%;
  font-size: 12px;
  font-weight: bold;
  border-radius: 12px;
  padding: 4px 10px;
  box-shadow: 1px 1px 0 rgba(0,0,0,.25);
}
.st-hero-tag-l { left: 4%; background: rgba(90,100,115,.92); color: #fff; }
.st-hero-tag-r { right: 4%; background: rgba(255,225,77,.95); color: #8a5a00; }
.st-hero-notes { color: #ffc2d1; font-size: 9px; text-align: center; padding: 8px 10px 12px; margin: 0 !important; line-height: 1.6; }

/* 縦書き吹き出し・ナレーション枠・効果音（LIFULL様式の踏襲） */
.st-vbub, .st-vth {
  position: absolute;
  writing-mode: vertical-rl;
  background: #fff;
  border: 2.5px solid #2a2a2a;
  border-radius: 50% / 46%;
  padding: 12px 8px;
  font-size: clamp(10px, 3.4vw, 15px);
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 1px;
  box-shadow: 2px 2px 0 rgba(0,0,0,.14);
  max-height: 88%;
}
.st-vth b, .st-vbub b { color: #d63757; }
.st-vth .tcy { text-combine-upright: all; }
.st-vbub {
  position: absolute;
  writing-mode: vertical-rl;
  background: #fff;
  border: 2.5px solid #2a2a2a;
  border-radius: 50% / 46%;
  padding: 1.35em 0.88em;   /* px固定にすると画面幅で破綻する。文字は clamp(...,15px) で
                              広い画面ほど大きくなるのに padding が固定だと、楕円への
                              食い込みが増える（375pxで0px / 1280pxで1.1px。2026-08-20 検出）。
                              em にして文字に比例させると全幅で0pxになる。
                              1.35em/0.92em は 1280pxで食い込み0pxになる最小値(1.25/0.86)に余裕を足した値 */   /* 縦は18→16px。吹き出しの高さ137→133pxで、コマ内で置ける位置が
                          1段下がる（上端17.07%→18.29%）。2026-08-20 Kosei「もっと全体を下に」。
                          文字サイズは12.75pxのまま。楕円への食い込みは0pxを維持 */   /* 12px だと幅26.9%で左端が0.716になり、ユイの顔矩形(右端0.72)を
                          1.3px かすって被覆4%になる。11px で幅26.3%・左端0.726＝被覆0%
                          （2026-08-20 Kosei「顔にかからないくらいに」）。
                          10px まで削ると今度は楕円に文字が0.37px食い込むので11pxが最適点 */   /* 楕円(border-radius:50%/46%)の内接矩形に文字を収めるための余白。
                          12px 8px だと文字の角が曲線に食い込む（2026-08-20 Kosei指摘、
                          楕円の式で36隅を判定して3隅がNG・最大違反1.075）。
                          .st-vth は角丸長方形なので上の共通ルールの 12px 8px のまま */
  font-size: clamp(10px, 3.4vw, 15px);
  font-weight: bold;
  line-height: 1.6;    /* 縦書きでは line-height が「列の幅」を決める。文字を小さくせずに
                          幅だけ詰められる唯一のつまみ。1.75 だと3列で幅27.4%になり、
                          楕円に文字が0.37px食い込む／paddingを足すと今度はユイの顔を
                          15%覆う、という板挟みだった（2026-08-20 実測）。1.6 で幅26.9%、
                          はみ出し0px・顔0%・コマ余裕23px と全条件に余裕が出る */
  letter-spacing: 1px;
  box-shadow: 2px 2px 0 rgba(0,0,0,.14);
  max-height: 88%;
}
.st-vbub b { color: #d63757; }
.st-vbub .tcy { text-combine-upright: all; }
.st-vth { border-style: dashed; border-radius: 24px; background: rgba(255,255,255,.94); } /* 心の声 */
.st-vnar {
  position: absolute;
  writing-mode: vertical-rl;
  background: #fff;
  border: 2px solid #2a2a2a;
  border-radius: 2px;
  padding: 10px 7px;
  font-size: clamp(10px, 3.2vw, 14px);
  font-weight: bold;
  line-height: 1.75;
  letter-spacing: 1px;
  box-shadow: 2px 2px 0 rgba(0,0,0,.14);
  max-height: 90%;
}
.st-vnar .tcy { text-combine-upright: all; }
.st-sfx {
  position: absolute;
  font-size: clamp(15px, 5.6vw, 26px);
  font-weight: 900;
  color: #d63757;
  -webkit-text-stroke: 5px #fff;
  paint-order: stroke fill;
  transform: rotate(-8deg);
  letter-spacing: 2px;
  text-shadow: 2px 2px 0 rgba(0,0,0,.12);
}
.st-sfx-dark { color: #3a4a63; }
.st-final-box {
  position: absolute;
  background: rgba(255,255,255,.95);
  border: 3px solid #2a2a2a;
  border-radius: 10px;
  padding: 12px 18px;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.5;
}
.st-final-box .st-huge { font-size: 27px; }

/* FV: 見出しブロック → 実写2枚（踏襲元①の型） */
.st-fv { background: #fff; padding: 6px 0 4px; }
.st-fv-ribbon {
  width: fit-content;
  margin: 0 auto;
  background: #fff;
  color: var(--st-pink-dark);
  font-weight: bold;
  font-size: 15px;
  border: 2px solid var(--st-pink);
  border-radius: 18px;
  padding: 5px 16px;
  position: relative;
  z-index: 2;
}
.st-fv-ribbon b { font-size: 17px; }
.st-fv-ribbon sup { font-size: 9px; }
.st-fv-main {
  background: var(--st-pink);
  color: #fff;
  text-align: center;
  font-size: 27px;
  font-weight: 900;
  line-height: 1.35;
  border-radius: 18px;
  padding: 20px 10px 16px;
  margin: -14px 2px 0;
  letter-spacing: 1px;
}
.st-fv-accent { color: var(--st-yellow); }
.st-fv-dots {
  height: 8px;
  margin: 12px 0 10px;
  background-image: radial-gradient(var(--st-pink) 42%, transparent 46%);
  background-size: 14px 8px;
  background-repeat: repeat-x;
  background-position: center;
}
.st-fv-sub {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.8;
  white-space: nowrap;
}
.st-fv-face { width: 38px; height: 38px; border-radius: 50%; border: 2px solid #f3c7d2; flex-shrink: 0; }
.st-fv-marker {
  font-size: 17px;
  color: var(--st-pink-dark);
  background: linear-gradient(transparent 62%, var(--st-yellow) 0%);
}
.st-fv-photos { display: flex; gap: 6px; margin-top: 12px; }
.st-fv-photos img { width: calc(50% - 3px); height: auto; display: block; margin: 0 !important; border-radius: 4px; }
.st-fv-notes { font-size: 9px; color: #999; text-align: center; margin: 8px 0 0 !important; line-height: 1.6; }

/* 英語コーチングの強調カットイン（ストーリー上の"種明かし"なので目立たせる） */
.st-coach {
  background: #fffbe8 !important;
  border: 3px solid var(--st-pink) !important;
  border-radius: 12px !important;
  box-shadow: 3px 3px 0 rgba(231,53,98,.25) !important;
  padding: 8px 12px !important;
  line-height: 1.5;
}
.st-coach b {
  display: block;
  font-size: clamp(14px, 4.4vw, 19px);
  color: var(--st-pink-dark);
  background: linear-gradient(transparent 62%, var(--st-yellow) 0%);
}
.st-coach span {
  display: block;
  margin-top: 3px;
  font-size: clamp(9px, 2.9vw, 12px);
  color: #666;
  font-weight: bold;
}
