/*
 * 【はじめに】
 * 最終的には可能な限り、コメントは削除してください。
 * ここに記載しているコメントもほぼ不要です(auPay start / ecd は必要)
 * 変数の使い方
 * $ec_dir ･･･ それぞれ各ECの絶対パス(現状)
 * $ec_id ･･･ それぞれ各ECのID(CSVで設定している分)
 *
 * 例：background-image: url($ec_dir + '/img/bn_main_background_sp.jpg');
 *
 * SCSSについて
 * 例：if制御
 *  @if $shop == 1 {
 * 		#pc_header.ac img {
 *			width: initial;
 *		}
 *	}
 *
 * 今分かっている問題
 * 1.rgb()について
 *   rgba()を利用してください。うまく変換されません
 */
/* auPayについては、figureタグ等利用できないタグがあり、変換して利用する事になる
 * その変換されたタグ用にCSSを設定する必要があるので、下記コメントタグを利用し、
 * 開始・終了で閉じる事
 * また、if制御を利用して切り替えると楽
 * @if $shop == 5 {
 *	.studless .recommend > h3 > img {
 *		width: 100%;
 *	}
 * } @else {
 *	.studless .recommend > div img {
 *		width: 100%;
 *	}
 * }
 */
@charset "utf-8";
.studless_early {
  background-color: #f3f3f3;
  color: #233251; }

.studless_early * {
  font-family: "hiragino-kaku-gothic-pron", sans-serif; }

.studless_early main {
  background-color: #f3f3f3; }

.studless_early img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto; }

.studless_early br.pc {
  display: none; }

@media screen and (min-width: 768px) {
  .studless_early br.pc {
    display: block; }

  .studless_early br.sp {
    display: none; } }

.studless_early header {
  margin-bottom: 10vw;
  display: block;
  height: auto;
  padding: 0;
  border: none; }

@media screen and (min-width: 768px) {
  .studless_early header {
    margin-bottom: 5vw; } }

@media screen and (min-width: 1024px) {
  .studless_early header {
    margin-bottom: 30px; } }

.studless_early main > section {
  width: 95%;
  max-width: 960px;
  margin: 0 auto 10vw; }

.studless_early .catch h3 {
  font-size: 3.9vw;
  font-family: "source-han-sans-japanese", sans-serif;
  font-weight: 900;
  font-style: italic;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 3vw; }

.studless_early .catch h3 span {
  font-family: "source-han-sans-japanese", sans-serif;
  color: #e11f00;
  font-size: 1.2em; }

.studless_early .catch div {
  background-color: #ffe600; }

.studless_early .catch p {
  position: relative;
  padding: 10px 10px 10px 17vw;
  font-size: 14px;
  font-weight: bold;
  max-width: 700px;
  margin: 0 auto; }

.studless_early .catch p:before {
  content: '';
  position: absolute;
  background: url("/autoway/dp/lp/studless_early/img/icon_recommend.png") no-repeat;
  background-size: contain;
  left: calc(9vw - 26px);
  transform: translateY(-50%);
  top: 50%;
  width: 13vw;
  height: 13vw;
  max-width: 70px;
  max-height: 70px; }

.studless_early main > section > p {
  font-size: 4vw;
  font-weight: 600;
  width: 100%;
  margin: 0 auto; }

@media screen and (min-width: 768px) {
  .studless_early main > section {
    margin: 0 auto 5vw; }

  .studless_early .catch h3 {
    font-size: 2vw;
    margin-bottom: 0; }

  .studless_early main > section > p {
    font-size: 1.6vw;
    width: 95%; }

  .studless_early .catch > p {
    font-size: 2vw; }

  .studless_early .catch > p span {
    display: none; }

  .studless_early .catch div {
    max-width: 780px;
    margin: 20px auto 0; }

  .studless_early .catch p {
    padding-left: 130px; }

  .studless_early .catch p:before {
    width: 70px;
    height: 70px;
    left: 50px; } }

@media screen and (min-width: 1024px) {
  .studless_early main > section {
    margin: 0 auto 50px; }

  .studless_early .catch {
    padding: 20px 0; }

  .studless_early .catch h3 {
    font-size: 20px; }

  .studless_early main > section > p {
    font-size: 16px; }

  .studless_early .catch > p {
    font-size: 20px; }

  .studless_early .catch p {
    padding-left: 170px; }

  .studless_early .catch p:before {
    left: 90px; } }

.studless_early h4 {
  font-size: 4vw;
  font-weight: 600;
  color: #fff;
  text-align: center;
  background-color: #00529f;
  line-height: 1;
  padding: 0.5em 0;
  margin-bottom: 0.5em; }

.studless_early .target > p {
  width: 95%; }

.studless_early .target .mark {
  margin: 5vw auto 10vw;
  width: 95%; }

.studless_early .target .fukidashi {
  width: 90%;
  margin: 0 auto;
  background-color: #fff;
  border: 1vw solid #df2b13;
  padding: 3vw 0;
  line-height: 2;
  text-align: center;
  margin-top: 5px;
  position: relative; }

.studless_early .target .fukidashi::before {
  content: '';
  position: absolute;
  top: -10vw;
  left: 20%;
  border-bottom: 10vw solid #df2b13;
  border-left: 2vw solid transparent;
  border-right: 2vw solid transparent; }

.studless_early .target .fukidashi::after {
  content: '';
  position: absolute;
  top: -6vw;
  left: 20%;
  border-bottom: 10vw solid #fff;
  border-left: 2vw solid transparent;
  border-right: 2vw solid transparent; }

.studless_early p.caution {
  color: #df2b13; }

.studless_early .target .fukidashi p, .studless_early .target .fukidashi strong {
  font-size: 3.9vw;
  font-weight: 600; }

.studless_early .target .fukidashi p {
  position: relative;
  width: 12em;
  margin: 0 auto; }

.studless_early .target .fukidashi p::before, .studless_early .target .fukidashi p::after {
  content: '|'; }

.studless_early .target .fukidashi p::before {
  position: absolute;
  left: -0.5em;
  transform: skew(20deg); }

.studless_early .target .fukidashi p::after {
  position: absolute;
  right: -0.5em;
  transform: skew(-20deg); }

.studless_early .target .fukidashi strong {
  background-color: #df2b13;
  color: #fff;
  padding: 0.3em 1em; }

.studless_early .btn a {
  color: #fff;
  background-color: #e11f00;
  font-size: 4vw;
  font-weight: 600;
  display: block;
  width: 90%;
  margin: 0 auto 3vw;
  text-align: center;
  border-radius: 3vw;
  line-height: 1.5;
  padding: 0.3em 0;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.4); }

@media screen and (min-width: 768px) {
  .studless_early h4 {
    font-size: 2vw;
    padding: 0.7em 0;
    margin-bottom: 1em; }

  .studless_early .target .mark {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin: 3vw auto 4vw; }

  .studless_early .target .mark .picture {
    width: 60%; }

  .studless_early .target .fukidashi {
    width: 38%;
    box-sizing: border-box;
    margin-top: 0;
    border: 0.5vw solid #df2b13;
    padding: 2vw 0; }

  .studless_early .target .fukidashi::before {
    top: auto;
    bottom: 1vw;
    left: -22vw;
    border-top: 1vw solid transparent;
    border-bottom: 1vw solid transparent;
    border-left: none;
    border-right: 22vw solid #df2b13; }

  .studless_early .target .fukidashi::after {
    top: auto;
    bottom: 1vw;
    left: -15vw;
    border-top: 1vw solid transparent;
    border-bottom: 1vw solid transparent;
    border-left: none;
    border-right: 22vw solid #fff;
    z-index: 5; }

  .studless_early .target .fukidashi p, .studless_early .target .fukidashi strong {
    font-size: 1.6vw;
    position: relative;
    z-index: 10; }

  .studless_early .btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 70%;
    margin: 0 auto; }

  .studless_early .btn a {
    font-size: 1.6vw;
    width: 45%;
    margin: 0 auto;
    padding: 0.5em 0;
    height: 5em;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s; }

  .studless_early .btn a:hover {
    box-shadow: none;
    transform: translateY(2px); } }

@media screen and (min-width: 1024px) {
  .studless_early h4 {
    font-size: 20px; }

  .studless_early .target .mark {
    margin: 30px auto 40px; }

  .studless_early .target .fukidashi {
    padding: 20px 0;
    border: 4px solid #df2b13; }

  .studless_early .target .fukidashi::before {
    bottom: 10px;
    left: -225px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 225px solid #df2b13; }

  .studless_early .target .fukidashi::after {
    bottom: 10px;
    left: -150px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-right: 225px solid #fff; }

  .studless_early .target .fukidashi p, .studless_early .target .fukidashi strong {
    font-size: 16px; }

  .studless_early .btn a {
    font-size: 16px;
    border-radius: 30px; } }

.studless_early .flow > .caution::before {
  content: '※'; }

.studless_early .step {
  margin: 5vw auto 20vw;
  width: 90%;
  background-color: #fff;
  padding-bottom: 5vw;
  position: relative; }

.studless_early .step h5 {
  text-align: center;
  color: #fff;
  background-color: #1f8beb;
  font-weight: 600;
  font-size: 3.9vw;
  line-height: 1;
  padding: 0.5em 0; }

.studless_early .step p {
  width: 90%;
  margin: 5vw auto;
  font-size: 3.8vw;
  font-weight: 600; }

.studless_early .step img {
  width: 90%;
  margin: 0 auto; }

.studless_early .step:first-of-type::before {
  content: '';
  position: absolute;
  bottom: -17vw;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 0;
  height: 0;
  border-top: 7vw solid #1f8beb;
  border-right: 12vw solid transparent;
  border-left: 12vw solid transparent; }

.studless_early .step:first-of-type::after {
  content: '';
  position: absolute;
  bottom: -11vw;
  right: 0;
  left: 0;
  margin: 0 auto;
  width: 13vw;
  height: 6vw;
  background-color: #1f8beb; }

@media screen and (min-width: 768px) {
  .studless_early .flow {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: flex-start; }

  .studless_early .flow h4 {
    width: 100%; }

  .studless_early .step {
    width: 40%;
    padding-bottom: 2vw;
    margin: 5vw auto; }

  .studless_early .step h5 {
    font-size: 1.8vw;
    padding: 0.7em 0; }

  .studless_early .step p {
    font-size: 1.8vw;
    margin: 2vw auto; }

  .studless_early .step:first-of-type::before {
    top: 50%;
    bottom: 0;
    right: -8vw;
    left: auto;
    transform: translateY(-50%);
    margin: 0;
    width: 0;
    height: 0;
    border-top: 5vw solid transparent;
    border-bottom: 5vw solid transparent;
    border-right: none;
    border-left: 4vw solid #1f8beb; }

  .studless_early .step:first-of-type::after {
    top: 50%;
    bottom: 0;
    right: -5vw;
    left: auto;
    transform: translateY(-50%);
    margin: 0;
    width: 3vw;
    height: 6vw; } }

@media screen and (min-width: 1024px) {
  .studless_early .step {
    padding-bottom: 20px;
    margin: 50px auto; }

  .studless_early .step h5 {
    font-size: 18px; }

  .studless_early .step p {
    font-size: 18px;
    margin: 20px auto; }

  .studless_early .step:first-of-type::before {
    right: -80px;
    border-top: 50px solid transparent;
    border-bottom: 50px solid transparent;
    border-left: 40px solid #1f8beb; }

  .studless_early .step:first-of-type::after {
    right: -50px;
    width: 30px;
    height: 60px; } }

.studless_early .link a {
  display: block;
  width: 90%;
  margin: 0 auto; }

@media screen and (min-width: 768px) {
  .studless_early .link a:hover {
    opacity: 0.7; } }
