@charset "UTF-8";
:root {
  --dblue: #173c8a;
  --blue: #65a1cd;
  --aqua1: #4ca2d1;
  --aqua2: #cbeffd;
  --aqua3: #f8fdff;
}

body.fixed {
  width: 100%;
  height: 100%;
  position: fixed;
}

body {
  color: #242424;
  text-align: center;
  word-wrap: normal;
  background: var(--aqua3);
  overflow-wrap: normal;
}

body * {
  min-width: unset;
}

@media screen and (max-width: 768px) {
  body {
    min-width: 100%;
  }
}
a {
  color: #111;
  text-decoration: none;
  transition: all 0.2s;
}

.fs-body-top .top12 a:visited {
  color: #111 !important;
}

a:hover {
  opacity: 0.7 !important;
  text-decoration: none;
}

.underline {
  text-decoration: underline;
}

.gothic {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

.mincho {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}

.bg-white {
  background: #fff;
}

.bg-aqua1 {
  background: var(--aqua1);
}

.bg-aqua2 {
  background: var(--aqua2);
}

.bg-aqua3 {
  background: var(--aqua3);
}

.bg-aqua4 {
  background: #e2f6fe;
}

.white {
  color: #fff;
}

.red {
  color: #c00;
}

.f-black {
  color: #000;
}

.f-gray {
  color: #a3a3a3;
}

.f-dblue {
  color: var(--dblue);
}

.f-blue {
  color: var(--blue);
}

.f-aqua1 {
  color: var(--aqua1);
}

.f-aqua2 {
  color: var(--aqua2);
}

.f-aqua3 {
  color: var(--aqua3);
}

.f-aqua4 {
  color: #70bcde;
}

.f-yellow {
  color: #fffdcb;
}

.f-pink {
  color: #dd7fb1;
}

.f-green {
  color: #5cc7aa;
}

@media screen and (max-width: 768px) {
  a:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 375px) {
  html {
    font-size: 50%;
  }
}
#wrapper {
  padding-top: 0;
}

#wrapper.top-wrapper {
  background: url("../img/main-bg-pc.svg") left -10% top 184px/120% auto no-repeat;
}

@media screen and (max-width: 768px) {
  body {
    background: url("../img/main-bg-sp.svg") left 55% top/255.5% auto no-repeat;
  }
  #wrapper {
    padding-top: 0;
    background: none;
  }
  #wrapper.top-wrapper {
    background: none;
  }
}
header {
  width: 100%;
  position: sticky;
  top: 0;
  left: 0;
  text-align: left;
  background: #fff;
  z-index: 99;
}

@media screen and (max-width: 768px) {
  header {
    position: sticky;
  }
}
header::after {
  width: 100%;
  position: absolute;
  background-image: url(/common/img/nav_bg.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  content: "";
}

header .headerwrap {
  display: flex;
  padding: 15px 0 12px;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 768px) {
  header .headerwrap {
    box-sizing: border-box;
    width: 100%;
    top: 0;
    left: 0;
    background: #fff;
  }
  header .headerwrap.top-fix {
    background: none;
  }
  header .headerwrap.m_fixed {
    position: sticky;
  }
}
header .headerwrap .leftcol {
  display: flex;
  align-items: center;
}

header .headerwrap .leftcol .logo {
  margin-right: 28px;
}

header .headerwrap .leftcol .spmenu {
  display: none;
}

header .headerwrap .leftcol dl {
  color: var(--dblue);
  line-height: 1.4;
}

header .head_band dt {
  font-size: 11px;
  font-weight: 700;
}

header .head_band dd {
  font-size: 20px;
  font-weight: 900;
}

header .headerwrap .rightcol {
  display: flex;
  padding-right: 8px;
  align-items: center;
}

header .headerwrap .rightcol a {
  display: block;
  position: relative;
}

header .headerwrap .rightcol a:last-child {
  margin-left: 35px;
}

header .headerwrap .rightcol a span {
  width: 19px;
  position: absolute;
  top: -5px;
  right: -8px;
  padding: 0;
  border-radius: 50%;
  color: #fff;
  line-height: 19px;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  background: #d6556e;
}

.bg-darkblue {
  width: 100%;
  position: static;
  position: relative;
  top: 0;
  left: 0;
  padding-bottom: 2px;
  color: #fff;
  line-height: 21px;
  font-size: 12px;
  font-weight: 700;
  background: var(--dblue);
  z-index: 50;
}

.bg-darkblue a {
  color: #fff;
}

.bg-darkblue .wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.bg-darkblue .wrap .nav1 ul {
  display: flex;
}

.bg-darkblue .wrap .nav1 ul li {
  margin-left: 30px;
}

.nav2 {
  position: relative;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.3);
  background: var(--blue);
  z-index: 10;
}

@media screen and (min-width: 768px) {
  .nav2 {
    position: sticky;
    top: 75px;
  }
}
.nav2 div {
  display: flex;
  padding: 10px 3%;
  justify-content: space-between;
  align-items: center;
}

.nav2 div a {
  display: block;
  margin-left: 3px;
  padding: 7px 13px;
  border-radius: 99px;
  box-shadow: 0 5px 21px 0 rgba(0, 87, 175, 0.3) inset;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  background: #5394c4;
  letter-spacing: 0;
  white-space: nowrap;
}

.nav2 div a:first-child {
  margin-left: 0;
}

.nav2 div a.active,
.nav2 div a:hover {
  opacity: 1;
  background: var(--dblue);
}

@media screen and (max-width: 1020px) {
  .nav2 div {
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    word-break: keep-all;
  }
}
@media screen and (max-width: 768px) {
  header {
    height: auto;
    background: none;
  }
  header.open {
    position: fixed;
  }
  header .headerwrap {
    padding: 5% 5% 1%;
  }
  header.open .headerwrap {
    position: relative;
    box-shadow: 0 5px 20px 0 rgba(0, 81, 175, 0.3);
    z-index: 99;
  }
  header .headerwrap .leftcol {
    padding: 0;
    justify-content: space-between;
  }
  header .headerwrap .leftcol .logo {
    width: 140px;
    position: absolute;
    top: 14px;
    right: 0;
    left: 0;
    margin: 0 auto;
    z-index: 99;
  }
  .head_band {
    display: flex;
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    padding: 1.6% 1%;
    color: #173c8a;
    background: #fff;
    z-index: 10;
    align-items: center;
    justify-content: center;
  }
  .head_band {
    font-size: 10px;
  }
  .head_band dd {
    margin-left: 5px;
    font-size: 14px;
    font-weight: 600;
  }
  header .bg-darkblue {
    position: static;
  }
  header .bg-darkblue .wrap {
    display: block;
    padding-right: 2%;
    padding-left: 2%;
    text-align: center;
  }
  header .headerwrap .leftcol .spmenu {
    display: block;
    width: 45px;
    height: 45px;
    position: relative;
    padding-top: 20px;
    color: #fff;
    font-size: 0.9rem;
    text-align: center;
    cursor: pointer;
    z-index: 101;
  }
  header .headerwrap.top-fix .leftcol .spmenu {
    color: #fff;
  }
  header.open .headerwrap.top-fix .leftcol .spmenu {
    color: #65a1cd;
    bottom: -5px;
  }
  header .headerwrap .leftcol .spmenu span,
  header .headerwrap .leftcol .spmenu span:after {
    display: block;
    width: 30px;
    height: 2px;
    position: absolute;
    border-radius: 2px;
    background: #65a1cd;
    transition: all 0.5s;
  }
  header .headerwrap .leftcol .spmenu {
    color: #65a1cd;
    transition: color 0.6s;
  }
  header .headerwrap.top-fix .leftcol .spmenu span,
  header .headerwrap.top-fix .leftcol .spmenu span:after {
    background: #fff;
  }
  header .headerwrap .leftcol .spmenu span {
    top: 5px;
    left: 7.5px;
  }
  header .headerwrap .leftcol .spmenu span:after {
    top: 7px;
    left: 0;
    content: "";
  }
  header.open .headerwrap .leftcol .spmenu span {
    top: -13px;
    background: #65a1cd;
    transform: translateY(20px) rotate(-315deg);
  }
  header.open .headerwrap .leftcol .spmenu span:after {
    top: 20px;
    background: #65a1cd;
    transform: translateY(-20px) rotate(90deg);
  }
  .bg-darkblue .nav1 {
    width: 100%;
    position: fixed;
    top: 0;
    right: 0;
    float: none;
    background-color: #fff;
    z-index: 10;
  }
  .bg-darkblue .nav1 ul {
    display: block;
    overflow: auto;
    width: 100%;
    height: calc(100vh - 75px);
    position: absolute;
    top: 66px;
    left: 0;
    opacity: 0;
    box-shadow: 0 0 0 100vh #fff;
    background: #fff;
    pointer-events: none;
    transition-delay: 0s, 0.5s, 0.5s;
    transition-duration: 0.5s, 0s, 0s;
    transition-property: opacity, transform;
    transform-origin: center top;
    z-index: 1;
  }
  .fixed .bg-darkblue .nav1 ul {
    padding: 5% 0 20%;
    opacity: 1;
    pointer-events: all;
    transition-delay: 0s, 0s, 0s;
    transform: scale(1);
  }
  .bg-darkblue .nav1 ul li {
    margin-left: 0;
  }
  .bg-darkblue .nav1 ul li a {
    display: block;
    padding: 4% 3%;
    color: var(--aqua1);
    font-size: 5.333vw;
  }
  .bg-darkblue .nav1 ul li a.f-dblue {
    color: var(--dblue);
  }
  .bg-darkblue .nav1 ul li a.tellink {
    display: inline-block;
  }
  .bg-darkblue .nav1 ul li.nav-btm {
    padding-top: 5%;
    color: #000;
  }
  .bg-darkblue .nav1 ul li.nav-btm a {
    padding: 1% 2%;
    color: #000;
    font-size: 3.2vw;
  }
  .bg-darkblue .nav1 ul li.nav-btm a.tellink {
    display: inline-block;
    color: var(--dblue);
    font-size: 10.66vw;
    font-weight: 700;
  }
  .bg-darkblue .nav1 ul li.nav-btm .ic-tel span {
    display: inline-block;
    padding-left: 45px;
    text-align: left;
    background: url("../img/ic-tel-dblue.svg") left center no-repeat;
  }
  .bg-darkblue .nav1 ul li.nav-btm div {
    display: flex;
    justify-content: center;
  }
  .bg-darkblue .nav1 ul li.nav-btm div a {
    display: block;
  }
  header .headerwrap .rightcol {
    width: 17.3%;
    position: relative;
    padding-right: 0;
    z-index: 99;
    justify-content: flex-end;
  }
  header .headerwrap .rightcol a {
    width: 40%;
  }
  header .headerwrap .rightcol a:last-child {
    margin-left: 18%;
  }
  .nav2 div a {
    margin-left: 10px;
    padding: 2px 9px;
  }
  .nav2 div a.active,
  .nav2 div a:hover {
    background: #5394c4;
  }
  header.UpMove {
    width: 100%;
    position: fixed;
    animation: UpAnime 0.5s forwards;
  }
  header.DownMove {
    width: 100%;
    position: fixed;
    background: #fff;
    animation: DownAnime 0.5s forwards;
  }
  header.DownMove .headerwrap {
    padding: 15px 5%;
  }
  header.DownMove.UpMove .headerwrap {
    padding: 50px 5% 5%;
  }
  header.DownMove .headerwrap .leftcol .logo {
    top: 20px;
  }
  header.DownMove.UpMove .headerwrap .leftcol .logo {
    top: 43px;
  }
  header.DownMove .headerwrap .leftcol .spmenu {
    margin-top: 10px;
  }
  header.DownMove .headerwrap .leftcol dl,
  header.DownMove .bg-darkblue .wrap,
  header.DownMove .nav2,
  header.DownMove .bg-darkblue {
    display: none;
  }
  header.DownMove.UpMove .headerwrap .leftcol dl,
  header.DownMove.UpMove .bg-darkblue .wrap,
  header.DownMove.UpMove .nav2,
  header.DownMove.UpMove .bg-darkblue {
    display: block;
  }
  header.DownMove .headerwrap .leftcol .spmenu span,
  header.DownMove .headerwrap .leftcol .spmenu span:after {
    background: #65a1cd;
  }
}
@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}
@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.wrap {
  box-sizing: content-box;
  width: 1000px;
  clear: both;
  margin-right: auto;
  margin-left: auto;
  padding-right: 6%;
  padding-left: 6%;
}

.maxw528 {
  max-width: 528px;
}

.maxw666 {
  max-width: 666px;
}

.maxw700 {
  max-width: 700px;
}

.maxw800 {
  max-width: 800px;
}

.maxw938 {
  max-width: 938px;
}

.markar {
  background: linear-gradient(transparent 80%, #fffdcb 80%);
}

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

.markar3 {
  background: linear-gradient(transparent 50%, #fffdcb 50%);
}

body .btn {
  display: inline-block;
  min-width: 256px;
  position: relative;
  padding: 10px 40px 11px 30px;
  border: 3px solid #d94659;
  border-radius: 99px;
  box-shadow: 0 5px 20px 1px rgba(0, 87, 175, 0.3);
  color: #fff;
  line-height: 1.2;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
  background: #d94659;
}

.btn:after {
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1) inset;
  background: url("../img/arrow-right-white.svg") center/5.5px auto no-repeat #ce374b;
  content: "";
}

.btn:hover {
  opacity: 1;
  background: #fff;
}

.btn.btn-red {
  border: 3px solid #d94659;
  background: #d94659;
}

.btn.btn-red:hover {
  color: #d94659;
  background: #fff;
}

.btn.btn-red:after {
  background: url("../img/arrow-right-white.svg") center/7px auto no-repeat #ce374b;
}

.btn.btn-blue {
  border: 3px solid #4ca2d1;
  background: #4ca2d1;
}

.btn.btn-blue:hover {
  color: #4ca2d1;
  background: #fff;
}

.btn.btn-blue:after {
  background: url("../img/arrow-right-white.svg") center/7px auto no-repeat #2389c1;
}

.btn.btn-dblue {
  border: 3px solid #173c8a;
  background: #173c8a;
}

.btn.btn-dblue:hover {
  color: #173c8a;
  background: #fff;
}

.btn.btn-dblue:after {
  background: url("../img/arrow-right-white.svg") center/7px auto no-repeat #012167;
}

.btn.btn-white {
  border: 3px solid #fff;
  color: var(--blue);
  background: #fff;
}

.btn.btn-white:hover {
  border: 3px solid #70bcde;
  color: #fff;
  background: #70bcde;
}

.btn.btn-white:after {
  background: url("../img/arrow-right-aqua.svg") center/7px auto no-repeat #fff;
}

.btn.btn2.btn-blue {
  border: 5px solid #84bbda;
}

.btn.btn-m {
  padding: 15px 65px 16px 45px;
}

.btn.btn-m:after {
  width: 31px;
  height: 31px;
}

.btn.btn-m.btn-blue:after {
  background: url("../img/arrow-right-white.svg") center/9px auto no-repeat #2389c1;
}

.btn.btn-m.btn-red:after {
  background: url("../img/arrow-right-white.svg") center/9px auto no-repeat #d94659;
}

.btn.btn-m.btn-white:after {
  background: url("../img/arrow-right-aqua.svg") center/9px auto no-repeat #fff;
}

.btn.btn-l {
  min-width: 315px;
  padding: 24px 54px 24px 45px;
  font-size: 16px;
}

.btn.btn-l:after {
  width: 44px;
  height: 44px;
}

.btn.minw512 {
  min-width: 512px;
}

.btn.btn-l.btn-blue:after {
  background: url("../img/arrow-right-white.svg") center/12px auto no-repeat #2389c1;
}

.btn.btn-l.btn-red:after {
  background: url("../img/arrow-right-white.svg") center/12px auto no-repeat #d94659;
}

.btn.btn-l.btn-white:after {
  background: url("../img/arrow-right-aqua.svg") center/12px auto no-repeat #fff;
}

.btn.btn-bd-blue {
  border: 3px solid #84bbda;
}

.btn.btn2 {
  border-radius: 20px;
  text-align: left;
}

.btn.btn-l.btn2 {
  max-width: 390px;
  width: 100%;
  padding: 15px 45px 15px 20px;
  line-height: 1.4;
  font-size: 12px;
}

.btn.btn-l.btn2:after {
  width: 34px;
  height: 34px;
  background: url("../img/arrow-right-white.svg") center/10px auto no-repeat #2389c1;
}

a.btn-company {
  display: block;
  max-width: 543px;
  margin-right: auto;
  margin-left: auto;
  font-weight: 700;
  text-align: left;
}

a.btn-company dl {
  border-radius: 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.3);
}

a.btn-company dl dt {
  padding: 3px 18px 3px 45px;
  border-radius: 20px 20px 0 0;
  color: #4ca2d1;
  background: url("../img/ic-company.svg") left 18px center no-repeat #fff;
}

a.btn-company dl dd {
  position: relative;
  padding: 10px 58px 10px 20px;
  border-radius: 0 0 20px 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.3);
  color: #fff;
  background: #173c8a;
}

a.btn-company dl dd:after {
  display: block;
  width: 28px;
  height: 28px;
  position: absolute;
  top: 10px;
  right: 15px;
  border-radius: 50%;
  background: url("../img/arrow-right-white.svg") center/8.5px auto no-repeat #002167;
  content: "";
}

a.btn-company dl dd strong {
  display: inline-block;
  margin-left: 12px;
  font-weight: 900;
}

.course-btn {
  display: flex;
  padding-top: 50px;
  justify-content: center;
}

.course-btn a {
  display: block;
  width: 315px;
  position: relative;
  margin: 0 7px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.38);
}

.course-btn a.bg-pink {
  border: 3px solid #dd7fb1;
  background: #dd7fb1;
}

.course-btn a.bg-green {
  border: 3px solid #5cc7aa;
  background: #5cc7aa;
}

.course-btn a span {
  display: block;
  width: 430px;
  height: 131px;
  position: absolute;
  top: -80px;
  left: -60px;
  padding-top: 35px;
  color: #fff;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.05em;
  background: url("../img/top6-balloon-pc.png") center/430px auto no-repeat;
}

.course-btn a dl {
  padding: 10px 5px 1px;
  border-radius: 20px 20px 0 0;
  line-height: 1.4;
  background: #fff;
}

.course-btn a dl dt,
.course-btn a dl dt strong {
  font-weight: 900;
}

.course-btn a.bg-pink dl dt {
  color: #dd7fb1;
}

.course-btn a.bg-green dl dt {
  color: #5cc7aa;
}

.course-btn a dl dd {
  color: #4ca2d1;
  font-weight: 700;
}

.course-btn a dl dd strong {
  font-weight: 700;
}

.course-btn a dl dd strong.f-red {
  color: #d94659;
}

.course-btn a dl dd,
.course-btn a dl dd em {
  font-weight: 900;
}

.course-btn a p {
  padding-right: 15px;
  color: #fff;
  text-align: right;
}

.course-btn a p {
  padding-top: 3px;
  line-height: 1.4;
}

.course-btn a p:after {
  display: inline-block;
  width: 12px;
  height: 7px;
  margin: 0 0 2px 5px;
  vertical-align: middle;
  background: url("../img/arrow-bottom-white.svg") center no-repeat;
  content: "";
}

.course-btn.floatbnr {
  position: fixed;
  right: 0;
  bottom: 20px;
  left: 0;
  margin: 0 auto;
  padding-top: 0;
  transition: 0.5s;
  z-index: 20;
}

.course-btn.floatbnr a:hover {
  opacity: 0.85;
}

.course-btn.floatbnr a dl {
  padding: 0;
  border-radius: 20px 20px 18px 18px;
  letter-spacing: 0;
}

.course-btn.floatbnr a dl dt {
  border-radius: 18px 18px 0 0;
}

.course-btn.floatbnr a.bg-pink dl dt {
  color: #fff;
  background: #dd7fb1;
}

.course-btn.floatbnr a.bg-green dl dt {
  color: #fff;
  background: #5cc7aa;
}

.course-btn.floatbnr a.bg-pink dl dd {
  border-radius: 0 0 18px 18px;
}

.cart-btn.floatbnr {
  width: 375px;
  position: fixed;
  right: 0;
  bottom: 20px;
  left: 0;
  margin: 0 auto;
  padding-top: 0;
  box-shadow: 0 0 20px 0 rgba(0, 87, 175, 0.3);
  transition: 0.5s;
  z-index: 20;
}

.cart-btn .float-cart {
  padding: 0 3px 3px;
  background: #fff;
}

.cart-btn.btn-purple .float-cart {
  border: 4px solid #cf84af;
}

.cart-btn.btn-purple .float-cart p {
  color: #dd7fb1;
}

.cart-btn.btn-green .float-cart {
  border: 4px solid #5cc7aa;
}

.cart-btn.btn-green .float-cart p {
  color: #5cc7aa;
}

.cart-btn.btn-orange .float-cart {
  border: 4px solid #e4c263;
}

.cart-btn.btn-orange .float-cart p {
  color: #ecc14f;
}

.cart-btn.btn-aqua .float-cart {
  border: 4px solid #65a1cd;
}

.cart-btn.btn-aqua .float-cart p {
  color: #4ca2d1;
}

.cart-btn .float-cart table {
  margin: 0 auto;
}

.cart-btn .float-cart .FS2_figure_table .FS2_figure_table_td_input_cnt label input[type=text] {
  line-height: 1.8;
}

.cart-btn .float-cart-link {
  display: flex;
  text-align: left;
}

.cart-btn a {
  display: block;
  width: 100%;
  padding: 5px 52px 5px 23px;
}

.cart-btn .float-cart-link.clm2 a {
  padding-right: 35px;
  padding-left: 5px;
}

.cart-btn a:hover {
  opacity: 0.9;
}

.cart-btn.btn-purple a {
  background: url("../img/cart-btn-purple.svg") right 25px center no-repeat #9874bc;
}

.cart-btn.btn-green a {
  background: url("../img/cart-btn-green.svg") right 25px center no-repeat #158e8e;
}

.cart-btn.btn-orange a {
  background: url("../img/cart-btn-orange.svg") right 25px center no-repeat #db8547;
}

.cart-btn.btn-orange a.bg-blue {
  background: url("../img/cart-btn-blue.svg") right 25px center no-repeat #5a7bc3;
}

.cart-btn.btn-aqua a {
  background: url("../img/cart-btn-aqua.svg") right 25px center no-repeat #70bcde;
}

.cart-btn.btn-orange .float-cart-link.clm2 a,
.cart-btn .float-cart-link.clm2 a.bg-kake,
.cart-btn .float-cart-link.clm2 a.bg-shiki {
  background-position: right 5px center;
}

.cart-btn.btn-aqua a:first-child {
  border-right: 1px solid #65a1cd;
}

.cart-btn a .ic-repeat {
  padding-left: 25px;
  background: url("../img/ic-repeat.svg") left center no-repeat;
}

.cart-btn .float-cart-link.clm2 a.bg-blue .ic-repeat {
  padding-left: 5px;
  background: none;
}

.cart-btn a.bg-kake .ic-repeat {
  padding-left: 50px;
  background: url("../img/float-kake.svg") left 5px center no-repeat;
}

.cart-btn .float-cart-link.clm2 a.bg-blue.bg-shiki .ic-repeat {
  padding-left: 50px;
  background: url("../img/float-shiki.svg") left 2px center no-repeat;
}

.btnshine {
  overflow: hidden;
  position: relative;
}

.btnshine::before {
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  left: -75%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transform: skewX(-25deg);
  content: "";
}

.btnshine:hover::before {
  animation: shine 0.7s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}
ol.pan {
  display: flex;
  box-sizing: content-box;
  max-width: 1000px;
  margin: 0 auto 40px;
  padding: 15px 6% 0;
  flex-wrap: wrap;
}

ol.pan li {
  margin-right: 1em;
  color: #a3a3a3;
  line-height: 1.4;
  font-size: 11px;
}

ol.pan li:after {
  display: inline-block;
  margin-left: 1em;
  content: ">";
}

ol.pan li:last-child:after {
  content: none;
}

ol.pan li a {
  color: #a3a3a3;
}

ol.pan li strong {
  color: #4ca2d1;
}

.lower-ttl {
  min-height: 73px;
  padding: 10px 3% 0;
  color: #4ca2d1;
  line-height: 1.2;
  font-size: 25px;
  font-weight: 900;
  text-align: center;
  background: url("../img/lower-ttl.svg") center no-repeat;
}

.lower-ttl.line1 {
  padding-top: 0;
}

.subttl {
  min-height: 27px;
  padding-left: 35px;
  color: #4ca2d1;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 900;
  text-align: left;
}

.subttl2 {
  padding: 24px 0 20px 25px;
  color: #173c8a;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 900;
  text-align: left;
  background: url("../img/subttl2.svg") left top no-repeat;
}

.subttl3 {
  min-height: 56px;
  padding: 15px 0 20px 25px;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 700;
  text-align: left;
  background: url("../img/subttl3.svg") left top no-repeat;
}

.subttl3.line2 {
  min-height: 72px;
  padding-top: 0;
  background: url("../img/subttl3.svg") left top 15px no-repeat;
}

.subttl3.line2 small {
  display: inline-block;
  margin-bottom: 5px;
  font-size: 14px;
}

.subttl4 {
  padding: 10px 0 0 30px;
  line-height: 1.56;
  font-size: 16px;
  font-weight: 700;
  text-align: left;
  background: url("../img/subttl4.svg") left top 13px no-repeat;
}

.subttl5 span {
  display: inline-block;
  padding: 19px 0 21px 25px;
  color: #173c8a;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 900;
  background: url("../img/subttl2.svg") left top no-repeat;
}

.bg-aqua4 .subttl5 span {
  background: url("../img/subttl2-white.svg") left top no-repeat;
}

.subttl.ttl-pink {
  background: url("../img/subttl-pink.svg") left top no-repeat;
}

.subttl.ttl-purple1 {
  background: url("../img/subttl-purple1.svg") left top no-repeat;
}

.subttl.ttl-purple2 {
  background: url("../img/subttl-purple2.svg") left top no-repeat;
}

.subttl.ttl-blue1 {
  background: url("../img/subttl-blue1.svg") left top no-repeat;
}

.subttl.ttl-blue2 {
  background: url("../img/subttl-blue2.svg") left top no-repeat;
}

.subttl.ttl-blue3 {
  background: url("../img/subttl-blue3.svg") left top no-repeat;
}

.subttl.ttl-green1 {
  background: url("../img/subttl-green1.svg") left top no-repeat;
}

.subttl.ttl-green2 {
  background: url("../img/subttl-green2.svg") left top no-repeat;
}

.v-mid {
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .wrap {
    box-sizing: border-box;
    width: 100%;
  }
  .btn {
    padding: 9px 45px 10px 25px;
    line-height: 1.5;
    font-size: 3.9vw;
  }
  a.btn-company dl dt {
    border-radius: 15px 15px 0 0;
    background: url("../img/ic-company.svg") left 18px center/5.5% auto no-repeat #fff;
  }
  a.btn-company dl dd {
    padding: 10px 58px 10px 18px;
    border-radius: 0 0 15px 15px;
    line-height: 1.2;
  }
  a.btn-company dl dd:after {
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: url("../img/arrow-right-white.svg") center/8.5px auto no-repeat #002167;
  }
  a.btn-company dl dd strong {
    margin-left: 0;
    line-height: 1.2;
  }
  .btn.btn-m {
    padding: 14px 55px 15px 30px;
  }
  .btn.btn-l {
    min-width: 285px;
    width: 100%;
    padding: 17px 58px 17px 30px;
    font-size: 4.266vw;
  }
  .btn.btn-l.btn2 {
    padding: 10px 45px 10px 12px;
    line-height: 1.5;
    font-size: 3.2vw;
  }
  a.btn-company dl dd:after {
    width: 44px;
    height: 44px;
    background: url("../img/arrow-right-white.svg") center/12px auto no-repeat #002167;
  }
  .btn.minw512 {
    min-width: inherit;
  }
  .btn:hover {
    background: #d94659;
  }
  .btn.btn-red:hover {
    color: #fff;
    background: #d94659;
  }
  .btn.btn-blue:hover {
    color: #fff;
    background: #4ca2d1;
  }
  .btn.btn-dblue:hover {
    color: #fff;
    background: #173c8a;
  }
  .btn.btn-white:hover {
    border: 3px solid #fff;
    color: var(--blue);
    background: #fff;
  }
  .course-btn {
    display: block;
    padding-top: 21%;
  }
  .course-btn a {
    width: 100%;
    margin: 0 0 2.66%;
  }
  .course-btn a span {
    width: 100%;
    height: 30vw;
    top: -21vw;
    left: 0;
    padding-top: 3%;
    background: url("../img/top6-balloon-sp.png") center/100% auto no-repeat;
  }
  .course-btn a p {
    padding-right: 5%;
  }
  .course-btn a p {
    padding-top: 1%;
  }
  .course-btn.floatbnr {
    display: flex;
    bottom: 10px;
    padding: 0 5%;
    justify-content: space-between;
  }
  .course-btn.floatbnr a {
    width: 49%;
  }
  .course-btn.floatbnr a:hover {
    opacity: 1;
  }
  .cart-btn.floatbnr {
    width: 100%;
    bottom: 0;
  }
  .cart-btn a:hover {
    opacity: 1;
  }
  .cart-btn a.bg-kake .ic-repeat {
    padding-left: 42px;
    background: url("../img/float-kake.svg") left 3px center no-repeat;
  }
  .cart-btn .float-cart-link.clm2 a.bg-blue.bg-shiki .ic-repeat {
    padding-left: 45px;
  }
  img.sp-w100 {
    width: 100%;
  }
  .btnshine:hover::before {
    animation: shine 0s;
  }
  ol.pan {
    margin: 0 auto 20px;
  }
  ol.pan li {
    font-size: 2.933vw;
  }
  .subttl {
    padding-top: 2px;
    font-size: 16px;
  }
}
.footer-cont {
  padding-bottom: 35px;
  background-color: #f8fdff;
}

.footer-cont h2 span {
  display: inline-block;
  margin-bottom: 25px;
  padding: 0 5px;
  border: 1px solid #000;
  line-height: 1.4;
}

.footer {
  position: relative;
  padding-top: 25px;
  color: #fff;
  background: #242424;
}

.footer .pagetop p {
  position: fixed;
  right: 13%;
  z-index: 150;
}

.footer a {
  color: #fff;
}

.footer .fnav1 .wrap {
  display: flex;
  justify-content: space-between;
}

.footer .fnav1 .wrap a {
  display: block;
  padding: 15px 0;
}

.footer .fnav2 {
  background: #484848;
}

.footer .fnav2 .wrap {
  display: flex;
  justify-content: center;
}

.footer .fnav2 .wrap a {
  display: block;
  padding: 8px 12px;
}

.footer #copy {
  padding: 10px 5%;
}

@media screen and (max-width: 768px) {
  .footer .pagetop p {
    width: 70px;
    right: 5%;
  }
  .footer-cont {
    padding-bottom: 20%;
  }
  .footer-cont h2 span {
    margin-bottom: 8%;
  }
  .footer-cont a.tellink {
    text-decoration: underline;
  }
  .footer {
    padding-top: 20%;
  }
  .footer .pagetop p a {
    width: 35%;
    right: -5%;
    bottom: -5%;
  }
  .footer .fnav1 .wrap {
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer .fnav1 .wrap a {
    padding: 2.5% 6%;
  }
  .footer .fnav2 .wrap {
    padding: 2% 5%;
    flex-wrap: wrap;
  }
  .footer .fnav2 .wrap a {
    padding: 1% 5%;
  }
  .footer #copy {
    padding: 5% 5% 20%;
  }
}
.main {
  padding-bottom: 40px;
}

.main .main-visualwrap {
  overflow: auto;
  margin-bottom: 25px;
}

.main .main-visual {
  box-sizing: content-box;
  width: 1000px;
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.main .main-visual figure img {
  border-radius: 0 0 30px 30px;
}

.main .main-visual p {
  position: absolute;
  font-weight: 500;
  text-align: right;
}

.main .main-visual p.lead1 {
  top: 13.46%;
  right: 3.8%;
  color: #3e85b9;
  line-height: 1.56;
  font-weight: 700;
}

.main .main-visual p.lead2 {
  bottom: 8%;
  left: 4.6%;
  line-height: 1.4;
  text-align: left;
}

.main .main-visual p.lead2 span {
  padding: 0 15px;
  background: #fff;
}

.main .main-visual p.lead3 {
  width: 43.8%;
  right: 0.8%;
  bottom: 2%;
}

.main .main-visual p.lead4 {
  right: 3%;
  bottom: 2%;
  line-height: 1.4;
  font-size: 7px;
}

.main .balloon {
  display: inline-block;
  position: relative;
  margin-bottom: 5px;
  font-size: 12px;
  font-weight: 700;
}

.main .balloon:before,
.main .balloon:after {
  display: block;
  width: 4px;
  height: 12px;
  position: absolute;
  top: 0.4em;
  content: "";
}

.main .balloon:before {
  left: -10px;
  background: url("../img/main-balloon1.svg") center no-repeat;
}

.main .balloon:after {
  right: -10px;
  background: url("../img/main-balloon2.svg") center no-repeat;
}

.main .top-news {
  position: relative;
  padding: 20px 15px;
  border-radius: 15px;
  box-shadow: 0 5px 20px 1px rgba(0, 87, 175, 0.3);
  text-align: left;
  background: #fff;
}

.main .top-news dl dt {
  font-weight: 700;
}

.main .top-news dl dt span {
  display: inline-block;
}

.main .top-news dl dt em {
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 15px;
  right: 15px;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1) inset;
  background: url("../img/arrow-bottom-aqua.svg") center/14px auto no-repeat #f8fdff;
  cursor: pointer;
}

.main .top-news.open dl dt em {
  background: url("../img/arrow-top-aqua.svg") center/14px auto no-repeat #f8fdff;
}

.main .top-news dl dt .date {
  margin-right: 15px;
  color: var(--aqua1);
}

.main .top-news dl dd {
  overflow: hidden;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: 0.2s;
}

.main .top-news.open dl dd {
  white-space: normal;
}

.main .imgright {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.main .imgright dl {
  width: 50%;
  text-align: left;
}

.main .imgright dl dt {
  font-size: 26px;
  font-weight: 900;
}

.main .imgright dl dt {
  color: var(--aqua1);
  line-height: 1.73;
  font-size: 26px;
  font-weight: 900;
}

.main .imgright dl dt strong {
  line-height: 1.28;
  font-size: 35px;
  font-weight: 900;
  background: linear-gradient(transparent 80%, #fffdcb 80%);
}

.main .imgright dl dd {
  font-weight: 500;
}

.main .imgright figure {
  width: 44.1%;
  padding: 23px 6.7%;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

@media screen and (max-width: 768px) {
  .main {
    padding-bottom: 8.8%;
  }
  .main .main-visualwrap {
    margin-bottom: 0;
  }
  .main .main-visual {
    width: 100%;
    margin-bottom: 18.66%;
  }
  .main .main-visual figure img {
    border-radius: 0;
  }
  .main .main-visual p.lead1 {
    top: 4.46%;
    right: 9.6%;
    line-height: 1.35;
  }
  .main .main-visual p.lead2 {
    bottom: 22%;
    left: 7.6%;
  }
  .main .main-visual p.lead2 span {
    padding: 0 8px;
  }
  .main .main-visual p.lead3 {
    width: 100%;
    right: 0;
    bottom: -12%;
  }
  .main .main-visual p.lead4 {
    right: 6%;
    bottom: -13%;
    font-size: 1.866vw;
  }
  .main .balloon {
    margin-bottom: 2px;
  }
  .main .top-news {
    padding: 15px;
  }
  .main .top-news dl dt .date {
    margin-right: 2.66%;
  }
  .main .top-news dl dt em {
    top: 10px;
    right: 10px;
  }
  .main .top-news dl dd {
    display: -webkit-box;
    overflow: hidden;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .main .top-news.open dl dd {
    display: block;
  }
  .main .imgright {
    display: block;
  }
  .main .imgright dl {
    width: 100%;
    margin-bottom: 5%;
  }
  .main .imgright dl dt {
    line-height: 1.73;
    font-size: 6.266vw;
    letter-spacing: 0.15em;
  }
  .main .imgright dl dt strong {
    line-height: 1.28;
    font-size: 9.33vw;
  }
  .main .imgright figure {
    width: 100%;
    padding: 23px 6.7%;
    border-radius: 15px;
  }
}
.top2 {
  padding: 20px 5%;
  background: url("../img/top2-bg.svg") right top/auto 99% no-repeat #4ca2d1;
}

.top2 h2 {
  color: #fff;
  line-height: 1.6;
  font-weight: 900;
}

.top2 h2 strong {
  font-size: 29px;
}

@media screen and (max-width: 768px) {
  .top2 {
    padding: 5.33% 8% 4%;
    background: url("../img/top2-bg.svg") right center no-repeat #4ca2d1;
  }
  .top2 h2 strong {
    font-size: 7.733vw;
  }
}
.top3 {
  position: relative;
  padding: 35px 0 90px;
  background: url("../img/top3-bg-pc.svg") center bottom/100% auto no-repeat;
}

.top3:before {
  display: block;
  width: 100%;
  height: 2vw;
  position: absolute;
  top: -1px;
  left: 0;
  background: url("../img/top2-bottom.svg") center top/100% auto no-repeat;
  content: "";
}

.top3 h2 {
  line-height: 1.4;
  font-weight: 900;
}

.top3 h2 span {
  display: inline-block;
  position: relative;
}

.top3 h2 .sparkle:before {
  display: block;
  width: 70px;
  height: 70px;
  position: absolute;
  bottom: 0;
  left: -80px;
  background: url("../img/top3-ttl.svg") center no-repeat;
  content: "";
}

.top3 h2 strong {
  font-weight: 900;
  background: linear-gradient(transparent 80%, #fffdcb 80%);
}

.detail2.top3 h2 strong {
  background: linear-gradient(transparent 70%, #fffdcb 70%);
}

.top3 h2 strong.bd-no {
  background: none;
}

.top3 .abs {
  position: absolute;
  right: 0;
  bottom: -45px;
  left: 0;
  margin: 0 auto;
  z-index: 9;
}

.top3 ul {
  max-width: 910px;
  height: 158px;
  position: relative;
  margin: 0 auto;
}

.top3 ul li {
  width: 167px;
  position: absolute;
  top: 0;
}

.top3 ul li:nth-child(1) {
  left: 0;
}

.top3 ul li:nth-child(2) {
  top: 50px;
  left: 106px;
}

.top3 ul li:nth-child(3) {
  left: 214px;
}

.top3 ul li:nth-child(4) {
  top: 50px;
  left: 320px;
}

.top3 ul li:nth-child(5) {
  left: 424px;
}

.top3 ul li:nth-child(6) {
  top: 50px;
  left: 531px;
}

.top3 ul li:nth-child(7) {
  left: 639px;
}

.top3 ul li:nth-child(8) {
  top: 50px;
  left: 745px;
}

@media screen and (max-width: 768px) {
  .top3 {
    padding: 5% 1% 12%;
    background: url("../img/top3-bg-sp.svg") center no-repeat, url("../img/top3-bg2-sp.svg") center bottom/cover no-repeat;
  }
  .top3:before {
    height: 3vw;
    background: url("../img/top2-bottom.svg") center top/200% auto no-repeat;
  }
  .top3 h2 span:before {
    width: 40%;
    height: 80%;
    bottom: 20%;
    left: -38%;
    background: url("../img/top3-ttl.svg") center/100% auto no-repeat;
  }
  .top3 .abs {
    width: 88%;
    bottom: 5%;
    margin: 0 auto;
  }
  .top3 ul {
    padding-top: 124%;
  }
  .top3 ul li {
    width: 45%;
  }
  .top3 ul li:nth-child(1) {
    left: 0;
  }
  .top3 ul li:nth-child(2) {
    top: 16%;
    left: 27%;
  }
  .top3 ul li:nth-child(3) {
    top: 0;
    left: 54%;
  }
  .top3 ul li:nth-child(4) {
    top: 30%;
    left: 0;
  }
  .top3 ul li:nth-child(5) {
    top: 48%;
    left: 27%;
  }
  .top3 ul li:nth-child(6) {
    top: 30%;
    left: 54%;
  }
  .top3 ul li:nth-child(7) {
    top: 63%;
    left: 0;
  }
  .top3 ul li:nth-child(8) {
    top: 63%;
    left: 54%;
  }
}
.top4 {
  padding: 90px 0 0;
  background: #f8fdff;
}

.top4 h2 {
  display: inline-block;
  position: relative;
  line-height: 1.2;
  font-weight: 900;
}

.top4 h2:before {
  display: block;
  width: 99px;
  height: 109px;
  position: absolute;
  top: -10px;
  right: -115px;
  background: url("../img/char.png") center/99px auto no-repeat;
  content: "";
}

.top4 h2 small {
  background: linear-gradient(transparent 80%, #fffdcb 80%);
}

.top4 h2 strong {
  line-height: 1.2;
  font-weight: 900;
  background: linear-gradient(transparent 80%, #fffdcb 80%);
}

.top4 h2 em {
  font-weight: 900;
}

.top4 ol {
  display: flex;
  justify-content: space-between;
}

.top4 ol li {
  width: 32.8%;
  height: 526px;
  position: relative;
  padding: 30px 30px 160px;
  background: url("../img/top4-bg.png") center top/110% auto no-repeat;
}

.top4 ol li h3 {
  display: flex;
  color: #4ca2d1;
  line-height: 1.4;
  font-weight: 900;
  background: url("../img/top4-subt-bg.svg") center no-repeat;
  align-items: center;
  justify-content: center;
}

.top4 ol li h3 span {
  margin-right: 3px;
  line-height: 1.2;
}

.top4 ol li h3 em {
  margin-left: 0.5em;
  font-weight: 900;
}

.top4 ol li h3 strong {
  font-size: 57px;
  font-weight: 700;
}

.top4 ol li h4 {
  line-height: 1.6;
  font-weight: 900;
}

.top4 ol li p {
  font-weight: 500;
  text-align: left;
  letter-spacing: 0.08em;
}

.top4 ol li p strong {
  line-height: 1.2;
  font-weight: 700;
}

.top4 ol li figure {
  width: 92.2%;
  position: absolute;
  bottom: 70px;
  left: 4%;
}

@media screen and (max-width: 768px) {
  .top4 {
    padding: 10% 0 12%;
  }
  .top4:before {
    height: 2%;
    opacity: 0.5;
    background: url("../img/top3-bottom.svg") center top/200% auto no-repeat;
  }
  .top4 h2 {
    display: block;
    line-height: 1.4;
  }
  .top4 h2:before {
    width: 99px;
    height: 109px;
    position: static;
    margin: 0 auto;
    background: url("../img/char.png") center/99px auto no-repeat;
  }
  .top4 h2 strong {
    line-height: 1.1;
  }
  .top4 ol {
    display: block;
  }
  .top4 ol li {
    width: 100%;
    height: 135vw;
    padding: 12% 5% 5%;
    background: url("../img/top4-bg.png") center top/110% auto no-repeat;
  }
  .top4 ol li h3 {
    background: url("../img/top4-subt-bg.svg") center/15% auto no-repeat;
  }
  .top4 ol li h3 strong {
    font-size: 15.2vw;
  }
  .top4 ol li p {
    padding: 0 5%;
  }
  .top4 ol li figure {
    width: 92.6%;
    bottom: 7%;
    left: 3.7%;
  }
}
.top5 {
  position: relative;
  padding: 25px 0 40px;
  background: #fff;
}

.top5:before {
  display: block;
  width: 100%;
  height: 1vw;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/top4-bottom.svg") center top/100% auto no-repeat;
  content: "";
}

.top5 h2 {
  min-height: 95px;
  padding-top: 5px;
  background: url("../img/top5-ttl-bg.svg") center no-repeat;
}

.top5 h2 small {
  font-weight: 800;
}

.top5 h2 span,
.top5 h2 em,
.top5 h2 strong {
  line-height: 1.2;
  font-weight: 900;
  vertical-align: middle;
}

.top5 ol {
  display: flex;
  justify-content: space-between;
}

.top5 ol li {
  width: 16%;
  margin-bottom: 5px;
  padding: 0 10px;
}

.top5 ol li figure {
  position: relative;
  margin-bottom: 10px;
}

.top5 ol li figure:after {
  display: block;
  width: 43%;
  height: 2px;
  position: absolute;
  top: 49%;
  right: -47%;
  background: var(--blue);
  content: "";
}

.top5 ol li:last-child figure:after {
  content: none;
}

.top5 ol li figure img {
  width: 90%;
  border-radius: 50%;
}

.top5 ol li figure figcaption {
  position: absolute;
  top: 0;
  left: 0;
  color: #70bcde;
  line-height: 1;
  font-size: 44px;
  font-weight: 700;
}

.top5 ol li dl dd {
  text-align: left;
}

.top5 h3 span {
  display: inline-block;
  position: relative;
  padding: 0 30px;
}

.top5 h3 span:before,
.top5 h3 span:after {
  display: block;
  width: 20px;
  height: 22px;
  position: absolute;
  top: 5px;
  content: "";
}

.top5 h3 span:before {
  left: 0;
  background: url("../img/top5-balloon1.svg") center no-repeat;
}

.top5 h3 span:after {
  right: 0;
  background: url("../img/top5-balloon2.svg") center no-repeat;
}

.top5 .movie-cont {
  max-width: 534px;
  margin-right: auto;
  margin-left: auto;
}

.top5 .movie-cont iframe {
  border-radius: 15px;
}

@media screen and (max-width: 768px) {
  .top5 {
    padding: 16% 0 15%;
  }
  .top5:before {
    height: 8vw;
    background: url("../img/top4-bottom.svg") center top/300% auto no-repeat;
  }
  .top5 h2 {
    padding: 6% 0 9%;
    background: url("../img/top5-ttl-bg.svg") center/40% auto no-repeat;
  }
  .top5 ol {
    display: block;
  }
  .top5 ol li {
    display: flex;
    width: 100%;
    margin-bottom: 40px;
    padding: 0;
    justify-content: space-between;
  }
  .top5 ol li figure {
    width: 30%;
    margin-bottom: 0;
  }
  .top5 ol li figure:after {
    width: 2px;
    height: calc(100% - 62px);
    top: inherit;
    right: 49%;
    bottom: -35px;
  }
  .top5 ol li figure figcaption {
    font-size: 11.733vw;
  }
  .top5 ol li dl {
    width: 65%;
  }
  .top5 ol li dl dt {
    text-align: left;
  }
  .top5 h3 span {
    padding: 0 9%;
  }
  .top5 h3 span:before,
  .top5 h3 span:after {
    width: 15px;
    height: 16px;
    top: 1px;
  }
  .top5 h3 span:before {
    background: url("../img/top5-balloon1.svg") center/15px auto no-repeat;
  }
  .top5 h3 span:after {
    background: url("../img/top5-balloon2.svg") center/15px auto no-repeat;
  }
}
.top6 {
  overflow: hidden;
  padding-bottom: 45px;
  background: #70bcde;
}

.top6 h2 {
  padding-top: 25px;
  line-height: 1.4;
  font-weight: 900;
}

.top6 h2 span {
  display: inline-block;
  position: relative;
  padding: 0 110px;
}

.top6 h2 span:after {
  display: block;
  width: 98px;
  height: 98px;
  position: absolute;
  top: -25px;
  right: 0;
  background: url("../img/top6-ttl-fig.svg") center no-repeat;
  content: "";
}

.top6 h3 span {
  display: inline-block;
  border-bottom: 2px solid #fffdcb;
  line-height: 1.4;
  font-weight: 900;
}

.top6 h3 strong {
  color: #fffdcb;
  font-weight: 900;
}

.top6 figure {
  background: url("../img/top6-bg.svg") center no-repeat;
}

.top6 .lead {
  font-weight: 900;
  letter-spacing: 0.2em;
}

.top6 .lead strong {
  display: inline-block;
  position: relative;
}

.top6 .lead strong:before {
  position: absolute;
  top: -0.7em;
  right: 0;
  left: 0;
  margin: 0 auto;
  font-size: 10px;
  content: "・";
}

.top6 p .btn-m.btn-white strong {
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .top6 {
    padding-bottom: 17.33%;
  }
  .top6 .wrap {
    padding: 0;
  }
  .top6 h2 {
    padding-top: 8%;
  }
  .top6 h2 span {
    padding: 0;
  }
  .top6 h2 span:after {
    width: 40%;
    height: 110%;
    top: -30%;
    right: -28%;
    background: url("../img/top6-ttl-fig.svg") center/100% auto no-repeat;
  }
  .top6 h3 span {
    display: inline;
  }
  .top6 h3 strong {
    line-height: 1.2;
  }
  .top6 figure {
    background: url("../img/top6-bg.svg") right 5% center/104% auto no-repeat;
  }
  .top6 .spcont {
    padding: 0 6%;
  }
  .top6 .btn {
    line-height: 1.5;
  }
  .top6 p .btn-m.btn-white {
    width: 100%;
    text-align: left;
  }
}
.top7 {
  padding: 20px 0 1px;
}

.top7 .top7-ttl div {
  display: inline-block;
}

.top7 .top7-ttl h2,
.top7 .top7-ttl h2 em,
.top7 .top7-ttl h2 strong {
  line-height: 1.2;
  font-weight: 900;
}

.top7 .top7-ttl h2 .ttl-bg {
  display: inline-block;
  background: url("../img/top5-ttl-bg.svg") center/42px auto no-repeat;
}

.top7 .top7-ttl p {
  text-align: right;
}

.top7 .course {
  position: relative;
  margin-bottom: 55px;
  padding: 45px 50px 55px;
  border-radius: 20px;
  background: #fff;
}

.top7 .course.course-pink {
  border: 4px solid #dd7fb1;
}

.top7 .course.course-green {
  border: 4px solid #5cc7aa;
}

.top7 .course h3 {
  width: 340px;
  height: 105px;
  position: absolute;
  top: -48px;
  right: 0;
  left: 0;
  margin: 0 auto;
  padding-top: 17px;
}

.top7 .course.course-pink h3 {
  background: url("../img/top7-balloon1-pc.png") center/375px auto no-repeat;
}

.top7 .course.course-green h3 {
  background: url("../img/top7-balloon2-pc.png") center/375px auto no-repeat;
}

.top7 .course .btn-list {
  display: flex;
  margin-bottom: 60px;
  justify-content: space-around;
  align-items: flex-start;
}

.top7 .course.course-green .btn-list {
  margin-bottom: 30px;
}

.top7 .course .btn-list li {
  min-width: inherit;
  width: 31%;
  position: relative;
}

.top7 .course .btn-list .btn.btn-m {
  min-width: inherit;
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  border: none;
  border-radius: 20px;
  box-shadow: none;
  text-align: left;
  letter-spacing: 0;
}

.top7 .course .btn-list .btn.btn-m:hover {
  color: #fff;
  background: #4ca2d1;
}

.top7 .course .btn-list .btn strong {
  line-height: 1.1;
}

.top7 .course .btn-list .btn strong.f-yellow {
  margin-left: 0.3em;
}

.top7 .course .btn-list .balloon {
  width: 266px;
  height: 70px;
  position: absolute;
  bottom: -50px;
  left: -5px;
  padding-top: 20px;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05em;
  background: url("../img/top7-balloon3-pc.png") center/300px auto no-repeat;
}

.top7 .course .box-bd {
  display: block;
  padding: 3px 20px;
  border: 1px solid #000;
}

.top7 .course figure.rtb {
  display: inline-block;
  position: relative;
  padding-bottom: 25px;
}

.top7 .course figure.rtb figcaption {
  position: absolute;
  right: -30px;
  bottom: 0;
}

.top7 .course .inner {
  max-width: 675px;
  margin: 0 auto;
}

.top7 .course .imgright1 {
  display: flex;
  justify-content: space-between;
}

.top7 .course .imgright1 div {
  width: 66.6%;
  text-align: left;
}

.top7 .course .imgright1 figure {
  width: 27%;
}

.top7 .course dl.dblue-box dt {
  padding: 5px;
  background: #173c8a;
}

.top7 .course dl.dblue-box dd {
  padding: 10px;
  border: 2px solid #173c8a;
  background: #f8fdff;
}

.top7 .course dl.dblue-box dd p {
  display: inline;
  padding-right: 15px;
}

.top7 .course dl.dblue-box dd p:before {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin: 0 5px 2px 0;
  vertical-align: middle;
  background: url("../img/ic-batsu.svg") center no-repeat;
  content: "";
}

.top7 .course .imgright2 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top7 .course .imgright2 dl {
  width: 46.2%;
  text-align: left;
}

.top7 .course .imgright2 figure {
  width: 40.6%;
}

.top7 .course .box-bd2 {
  display: flex;
  padding: 20px 50px;
  border: 1px solid #000;
  justify-content: space-around;
  align-items: center;
}

.top7 .course .box-bd2 ul {
  text-align: left;
}

.top7 .course .meyasu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.top7 .course .meyasu figure {
  margin-right: 42px;
  margin-left: 42px;
}

.top7 .course .meyasu figure.clm1 {
  width: 100%;
}

.top7 .course .meyasu figure figcaption {
  margin-bottom: 15px;
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .top7 {
    padding: 5.3% 0 1px;
  }
  .top7 .top7-ttl h2,
  .top7 .top7-ttl h2 em,
  .top7 .top7-ttl h2 strong {
    line-height: 1;
  }
  .top7 .top7-ttl h2 .ttl-bg {
    background: url("../img/top5-ttl-bg.svg") center/80% auto no-repeat;
  }
  .top7 .course {
    margin-bottom: 14.6%;
    padding: 13.3% 6% 13%;
  }
  .top7 .course h3 {
    width: 100%;
    height: 5%;
    top: -12vw;
    padding-top: 7%;
  }
  .top7 .course.course-pink h3 {
    background: url("../img/top7-balloon1-sp.png") center/110% auto no-repeat;
  }
  .top7 .course.course-green h3 {
    padding-top: 7%;
    background: url("../img/top7-balloon2-sp.png") center/110% auto no-repeat;
  }
  .top7 .course ul.btn-list {
    display: block;
    margin-bottom: 26.66%;
  }
  .top7 .course .btn-list li {
    width: 100%;
  }
  .top7 .course .btn-list .btn {
    width: 100%;
    margin-bottom: 3%;
  }
  .top7 .course .btn-list .btn.btn-m {
    padding-top: 3%;
    padding-bottom: 3%;
  }
  .top7 .course .btn-list .balloon {
    width: 100%;
    height: 22vw;
    bottom: -13vw;
    left: 0;
    padding-top: 6.6vw;
    background: url("../img/top7-balloon3-pc.png") center/110% auto no-repeat;
  }
  .top7 .course .box-bd {
    padding: 3% 1%;
    line-height: 1.5;
  }
  .top7 .course figure.rtb {
    padding-bottom: 10%;
  }
  .top7 .course figure.rtb figcaption {
    right: 0;
  }
  .top7 .course .imgright1 {
    display: block;
  }
  .top7 .course .imgright1 div {
    width: 100%;
  }
  .top7 .course .imgright1 figure {
    width: 100%;
  }
  .top7 .course dl.dblue-box dd {
    text-align: left;
  }
  .top7 .course .imgright2 {
    display: block;
  }
  .top7 .course .imgright2 dl {
    width: 100%;
    margin-bottom: 4.6%;
  }
  .top7 .course .imgright2 figure {
    width: 100%;
  }
  .top7 .course .box-bd2 {
    display: block;
    padding: 2.3%;
  }
  .top7 .course .box-bd2 ul {
    margin-bottom: 2.3%;
    text-align: center;
  }
  .top7 .course .meyasu figure {
    width: 50%;
    margin-right: 0;
    margin-left: 0;
  }
  .top7 .course .meyasu figure.clm1 {
    width: 100%;
  }
  .top7 .course p .btn {
    padding: 9px 45px 10px 45px;
  }
}
.top8 {
  padding: 50px 0 40px;
  color: #fff;
  background: url("../img/top8-bg-pc.svg") center top 15px no-repeat #4ca2d1;
}

.top8 .wrap {
  max-width: 540px;
}

.top8 .top8-ttl {
  display: inline-block;
  position: relative;
}

.top8 h2 .uline {
  display: inline-block;
  border-bottom: 3px solid #fffdcb;
}

.top8 h2 span.f-yellow {
  display: inline-block;
  padding-top: 8px;
}

.top8 .balloon {
  width: 279px;
  height: 165px;
  position: absolute;
  top: -90px;
  right: -260px;
  padding-top: 50px;
  background: url("../img/top8-balloon.png") center/279px auto no-repeat;
}

.top8 .balloon span {
  display: inline-block;
  line-height: 1.2;
  transform: rotate(8deg);
}

.top8 ul.clm2 {
  display: flex;
  justify-content: center;
}

.top8 ul.clm2 li {
  margin-right: 15px;
  margin-left: 15px;
}

.top8 ul.clm2 li figure {
  background: url("../img/top8-arrow.svg") center bottom 12px no-repeat;
}

@media screen and (max-width: 768px) {
  .top8 {
    padding: 10vw 0;
    background: url("../img/top8-bg-sp.svg") center top 3vw/87% auto no-repeat #4ca2d1;
  }
  .top8 h2 span.f-yellow {
    padding-top: 5px;
  }
  .top8 .balloon {
    width: 80%;
    height: 30vw;
    top: -22vw;
    right: -18%;
    padding-top: 6vw;
    background: url("../img/top8-balloon.png") center/120% auto no-repeat;
  }
  .top8 ul.clm2 li {
    width: 48%;
    margin: 0 1%;
  }
  .top8 ul.clm2 li figure {
    width: 114%;
    position: relative;
    left: -7%;
    background: url("../img/top8-arrow.svg") center bottom 8px/70% auto no-repeat;
  }
}
.top9 {
  position: relative;
  padding: 70px 0 130px;
}

.top9 .youtube {
  padding-top: 0;
}

.top9 .bd-yellow {
  position: relative;
  border: 4px solid #efbf40;
  border-radius: 20px;
  background: #fff;
}

.top9 .bd-yellow .f-yellow2 {
  padding: 10px;
  color: #efbf40;
}

.top9 .bd-yellow h2 {
  padding: 40px 5%;
  color: #fffdcb;
  line-height: 1.4;
  background: url("../img/top9-bd.svg") center top 5px/90% auto no-repeat, url("../img/top9-bd.svg") center bottom 5px/90% auto no-repeat #efbf40;
}

.top9 .bd-yellow h2 small {
  display: inline-block;
  position: relative;
  padding: 0 12px;
}

.top9 .bd-yellow h2 small:before,
.top9 .bd-yellow h2 small:after {
  display: block;
  width: 6px;
  height: 17px;
  position: absolute;
  top: 2px;
  content: "";
}

.top9 .bd-yellow h2 small:before {
  left: 0;
  background: url("../img/top9-balloon1.svg") center no-repeat;
}

.top9 .bd-yellow h2 small:after {
  right: 0;
  background: url("../img/top9-balloon2.svg") center no-repeat;
}

.top9 .bd-yellow h2 strong {
  background: url("../img/top9-wave.png") center bottom/100% auto no-repeat;
}

.top9 .bd-yellow .lead {
  padding: 25px 5% 35px;
}

.top9 .bd-yellow .lead span {
  display: inline-block;
  max-width: 678px;
  text-align: left;
}

.top9 .bd-yellow .abs {
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  margin: 0 auto;
}

.top9 .movie-cont {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top9 .movie-cont .leftcol {
  width: 51%;
  line-height: 1.6;
  text-align: left;
}

.top9 .movie-cont .leftcol .fig {
  display: inline-block;
  padding-top: 50px;
  padding-right: 100px;
  line-height: 1.6;
  background: url("../img/char.png") right center/88px auto no-repeat;
}

.top9 .movie-cont .leftcol em {
  display: inline-block;
  padding-top: 10px;
}

.top9 .movie-cont .rightcol {
  width: 48%;
}

.top9 .movie-cont .rightcol iframe {
  border-radius: 50px;
}

@media screen and (max-width: 768px) {
  .top9 {
    padding: 10% 0 12%;
  }
  .top9:before {
    height: 5vw;
    background: url("../img/top2-bottom.svg") right top/300% auto no-repeat;
    background-size: 102%;
  }
  .top9 .bd-yellow .f-yellow2 {
    padding: 3%;
  }
  .top9 .bd-yellow h2 {
    position: relative;
    padding: 12% 5% 15%;
    color: #fff;
    background: url("../img/top9-bd.svg") center top 7%/240% auto no-repeat, url("../img/top9-bd.svg") center bottom 7%/240% auto no-repeat #efbf40;
  }
  .top9 .bd-yellow h2 .inner {
    display: block;
  }
  .top9 .bd-yellow h2 .inner:before,
  .top9 .bd-yellow h2 .inner:after {
    display: block;
    width: 20px;
    height: 100%;
    position: absolute;
    top: 0;
    background: #efbf40;
    content: "";
  }
  .top9 .bd-yellow h2 .inner:before {
    left: 0;
  }
  .top9 .bd-yellow h2 .inner:after {
    right: 0;
  }
  .top9 .bd-yellow h2 small:before,
  .top9 .bd-yellow h2 small:after {
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  .top9 .bd-yellow .lead {
    padding: 5% 5% 10%;
    line-height: 1.6;
    font-size: 4.2vw;
  }
  .top9 .movie-cont {
    display: block;
  }
  .top9 .movie-cont .leftcol {
    width: 100%;
    margin-bottom: 8%;
  }
  .top9 .movie-cont .leftcol em {
    padding-top: 5px;
  }
  .top9 .movie-cont .leftcol .fig {
    display: block;
    padding-top: 10%;
    padding-right: 25%;
    line-height: 1.8;
    background: url("../img/char.png") right center/24% auto no-repeat;
  }
  .top9 .movie-cont .rightcol {
    width: 100%;
  }
}
.top10 {
  padding: 40px 0 25px;
  color: #fff;
  background: url("../img/top10-bg.svg") center top 50px no-repeat #4ca2d1;
}

.top10 .wrap {
  max-width: 865px;
}

.top10 .slick-track {
  display: flex;
}

.slick-slide {
  height: auto !important;
}

.top10 .slide .slick-list {
  padding-top: 10px !important;
}

.top10 .slide .slick-slide {
  position: relative;
  margin: 0 10px;
  padding: 20px 20px 50px;
  border-radius: 20px;
  color: #000;
  text-align: left;
  background: #fff;
}

.top10 .slide .slick-slide h3 {
  display: flex;
  min-height: 3em;
  position: relative;
  padding-left: 70px;
  line-height: 1.4;
  align-items: center;
}

.top10 .slide .slick-slide h3:before {
  display: block;
  width: 81px;
  height: 81px;
  position: absolute;
  bottom: 0;
  left: -10px;
  content: "";
}

.top10 .slide .slick-slide h3.img1:before {
  background: url("../img/top10-img1.svg") center no-repeat;
}

.top10 .slide .slick-slide h3.img2:before {
  background: url("../img/top10-img2.svg") center no-repeat;
}

.top10 .slide .slick-slide h3.img3:before {
  background: url("../img/top10-img3.svg") center no-repeat;
}

.top10 .slide .slick-slide h3.img4:before {
  background: url("../img/top10-img4.svg") center no-repeat;
}

.top10 .slide .slick-slide .name {
  position: absolute;
  right: 20px;
  bottom: 18px;
}

.top10 .slick-dotted.slick-slider {
  margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .top10 {
    margin-bottom: 1px;
    padding: 10% 0 8%;
  }
  .top10 .wrap {
    padding: 0;
  }
  .top10 .slide .slick-slide {
    padding: 5vw 5vw 10vw;
  }
}
.top11 {
  position: relative;
  padding: 100px 0 50px;
  background: #fff;
}

.top11:before {
  width: 100%;
  height: 72px;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/top10-bottom.png") center top/12px auto repeat-x;
  content: "";
}

dl.faq {
  position: relative;
  padding: 0;
  border: 3px solid #4ca2d1;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  text-align: left;
  background: #fff;
}

dl.faq dt {
  padding: 15px 120px;
  color: #4ca2d1;
  font-weight: 900;
  cursor: pointer;
}

dl.faq dt:before {
  position: absolute;
  top: 0.2em;
  left: 55px;
  color: #70bcde;
  line-height: 1;
  font-family: "Poppins", sans-serif;
  font-size: 39px;
  font-weight: 800;
  content: "Q";
}

dl.faq dt:after {
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  right: 20px;
  bottom: 17px;
  border-radius: 50%;
  background: url("../img/arrow-bottom-white.svg") left 6px top 9px no-repeat var(--aqua1);
  content: "";
}

dl.faq dt.open:after {
  background: url("../img/arrow-top-white.svg") center no-repeat var(--aqua1);
}

dl.faq dd {
  display: none;
  padding: 0 120px 25px;
}

@media screen and (max-width: 768px) {
  .top11 {
    padding: 23vw 0 15vw;
  }
  .top11:before {
    top: -1px;
    background: url("../img/top10-bottom.png") center top/12px auto repeat-x;
  }
  dl.faq dt {
    padding: 5% 25px 5% 50px;
    font-size: 4.466vw;
  }
  dl.faq dt:before {
    top: 0.6em;
    left: 5%;
    font-size: 31px;
  }
  dl.faq dt:after {
    width: 24px;
    height: 24px;
    right: 15px;
    bottom: 10px;
    background: url("../img/arrow-bottom-white.svg") left 6px top 9px no-repeat var(--aqua1);
  }
  dl.faq dt.open:after {
    background: url("../img/arrow-top-white.svg") left 6px top 9px no-repeat var(--aqua1);
  }
  dl.faq dd {
    padding: 0 5% 30px;
  }
}
.top12 {
  position: relative;
  padding: 50px 0 130px;
  background: url("../img/top12-bg-lead.svg") center top 23px no-repeat #cbeffd;
}

.top12:after {
  width: 100%;
  height: 72px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("../img/top12-bottom.png") center bottom/12px auto repeat-x;
  z-index: 1;
  content: "";
}

.top12 .wrap {
  max-width: 1080px;
}

.top12 .lead {
  display: table;
  max-width: 750px;
  margin-right: auto;
  margin-left: auto;
}

.top12 ul {
  display: flex;
  justify-content: center;
}

.top12 ul li {
  margin-right: 10px;
  margin-left: 10px;
}

.top12 .bg-white1 {
  height: 428px;
  position: relative;
  padding: 92px 5% 60px;
  background: url("../img/top12-bg.png") center/1060px auto no-repeat;
}

.top12 .bg-white1 .ic-tel {
  display: inline-block;
  min-height: 39px;
  padding-top: 8px;
  padding-left: 45px;
  background: url("../img/ic-tel.svg") left center no-repeat;
}

.top12 .bg-white1 .btn.btn-white {
  min-width: 534px;
  padding: 15px 65px 16px 65px;
}

.top12 .bg-white2 {
  max-width: 542px;
  position: relative;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 20px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

.top12 .bg-white2 div {
  display: flex;
  padding-right: 35px;
  justify-content: space-between;
  align-items: center;
}

.top12 .bg-white2 .balloon {
  display: flex;
  width: 205px;
  padding: 35px 0 45px 50px;
  color: #fff;
  line-height: 1.4;
  text-align: left;
  background: url("../img/top12-balloon-pc.png") right -30px center/231px auto no-repeat;
}

.top12 a.btn-company {
  position: absolute;
  right: 0;
  bottom: 20px;
  left: 0;
  margin: 0 auto;
  z-index: 5;
}

@media screen and (max-width: 768px) {
  .top12 {
    padding: 8% 0 15%;
  }
  .top12 .lead {
    text-align: left;
  }
  .top12 .bg-white1 {
    height: 140vw;
    margin-bottom: 10%;
    padding: 30% 5% 15%;
    background: url("../img/top12-bg-sp.png") center/116% auto no-repeat;
  }
  .top12 .bg-white1 .btn.btn-white {
    min-width: inherit;
  }
  .top12 .bg-white2 {
    margin-bottom: 8%;
    padding: 13% 5% 5%;
  }
  .top12 .bg-white2 div {
    display: block;
    padding-right: 0;
  }
  .top12 .bg-white2 .balloon {
    display: block;
    width: 100%;
    height: 20vw;
    position: absolute;
    top: -15%;
    right: 0;
    left: 0;
    margin: 0 auto;
    padding: 3% 0 3%;
    text-align: center;
    background: url("../img/top12-balloon-sp.png") center/110% auto no-repeat;
  }
  .top12 a.btn-company {
    position: relative;
    z-index: 10;
  }
  .btn.sp-t-left {
    text-align: left;
  }
  .top12 a.btn-company {
    bottom: 5px;
  }
  .top12 .bg-white1 .btn.btn-white {
    padding: 15px 65px 16px 25px;
  }
}
.top13 {
  position: relative;
  padding: 50px 0 60px;
  background: url("../img/top13-ttl.svg") center top 50px no-repeat #f8fdff;
}

.top13 .clm3 {
  display: flex;
  text-align: left;
  justify-content: space-between;
}

.top13 .clm3 .clm {
  width: 31%;
}

.top13 h3 {
  min-height: 27px;
  padding: 0 0 0 35px;
  line-height: 1.5;
  background: url("../img/top13-subt.svg") left center no-repeat;
}

.f-red {
  color: #d94659;
}

span.Today {
  display: block;
  color: #5685c8;
  font-weight: bolder;
}

.deli {
  color: #fff;
  background-color: #090;
}

li.openingsale {
  color: #fff;
  font-weight: bolder;
  background-color: red;
}

li.holyday {
  color: #fff;
  background: #ef8c81;
}

li.Sun {
  color: #fff;
  background: #ef8c81;
}

li.Sat {
  color: #fff;
  background: #ef8c81;
}

.cal_main li {
  width: 39px;
}

div.cal_wrapper {
  position: relative;
  margin: 0;
  margin-bottom: 0;
  padding: 10px 0 3px;
  font-family: Verdana, "ＭＳ Ｐゴシック", Osaka, sans-serif;
}

ul.cal_ui {
  width: 60px;
  float: right;
  margin: 0;
  padding: 0;
}

ul.cal_ui li {
  list-style: none;
  width: 20px;
  height: 15px;
  float: left;
  font-size: 10px;
  background-repeat: no-repeat;
  cursor: pointer;
}

li.cal_prev {
  background-image: url("../img/cal_01.gif");
}

li.cal_to {
  background-image: url("../img/cal_02.gif");
}

li.cal_next {
  background-image: url("../img/cal_03.gif");
}

div.cal_base p {
  margin: -6px 0 0;
  padding: 5px 0 0 0;
  border-bottom: solid 1px #ccc;
  font-size: 12px;
  font-weight: bold;
}

ul.cal_main {
  clear: both;
  margin: 0;
  padding: 0;
  border-right: solid 1px #ccc;
  border-left: solid 1px #ccc;
  background: #fff;
}

ul.cal_main li {
  overflow: hidden;
  list-style: none;
  width: 14.2857142857%;
  float: left;
  border-bottom: solid 1px #ccc;
  font-size: 10px;
  text-align: center;
}

ul.cal_main li span {
  display: block;
  padding: 1px 3px;
}

li.cal_headline {
  color: #fff;
  font-weight: bold;
  background: #888;
}

.calmemo {
  margin: 0 5px 10px 7px;
  font-size: 83%;
}

.cal_base p {
  margin: 0;
  padding: 0;
  padding-bottom: 0;
}

.calmemo {
  font-size: 100%;
}

.cal_main li {
  width: 39px;
}

ul.cal_main:after {
  display: block;
  visibility: hidden;
  height: 0;
  clear: both;
  content: ".";
}

ul.cal_main {
  display: inline-table;
  min-height: 1%;
}

* html ul.cal_main {
  height: 1%;
}

ul.cal_main {
  display: block;
}

@media screen and (max-width: 768px) {
  .top13 {
    padding: 5% 0 15%;
    background: url("../img/top13-ttl.svg") center top 5vw no-repeat #f8fdff;
  }
  .top13 .clm3 {
    display: block;
  }
  .top13 .clm3 .clm {
    width: 100%;
    margin-bottom: 5%;
  }
}
.contents-ttl {
  padding-bottom: 50px;
  background: url("../img/bg-ring.svg") right -70px top 20px no-repeat #f8fdff;
}

.contents-ttl .lead span {
  display: inline-block;
  max-width: 716px;
  font-size: 14px;
  text-align: left;
}

.contents-ttl .contents-link {
  display: flex;
  flex-wrap: wrap;
}

.contents-ttl .contents-link a {
  display: block;
  width: 31.5%;
  position: relative;
  margin: 0 2.75% 20px 0;
  padding: 20px 35px 20px 15px;
  border-radius: 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.2);
  color: #4ca2d1;
  line-height: 1.4;
  font-size: 16px;
  font-weight: 700;
  background: #fff;
}

.contents-ttl .contents-link a:nth-child(3n) {
  margin-right: 0;
}

.contents-ttl .contents-link a:after {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.05) inset;
  background: url("../img/arrow-bottom-aqua.svg") center/11px auto no-repeat;
  content: "";
}

.contents-ttl .contents-link a.bd-pink {
  border-left: 20px solid #dd7fb1;
}

.contents-ttl .contents-link a.bd-purple1 {
  border-left: 20px solid #c28ebc;
}

.contents-ttl .contents-link a.bd-purple2 {
  border-left: 20px solid #a79ec8;
}

.contents-ttl .contents-link a.bd-blue1 {
  border-left: 20px solid #8badd3;
}

.contents-ttl .contents-link a.bd-blue2 {
  border-left: 20px solid #70bcde;
}

.contents-ttl .contents-link a.bd-blue3 {
  border-left: 20px solid #69c0cd;
}

.contents-ttl .contents-link a.bd-green1 {
  border-left: 20px solid #63c3bb;
}

.contents-ttl .contents-link a.bd-green2 {
  border-left: 20px solid #5cc7aa;
}

.contents-wrap {
  padding-top: 50px;
  padding-bottom: 40px;
}

.contents-wrap .link-cont {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.contents-wrap .link-cont a {
  width: 48.7%;
  position: relative;
  margin-bottom: 20px;
  padding: 20px 20px 40px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  text-align: left;
  background: #fff;
}

.contents-wrap .link-cont a dl dt {
  margin-bottom: 12px;
  padding-bottom: 3px;
  font-size: 16px;
  font-weight: 700;
}

.contents-wrap .link-cont.bd-pink a dl dt {
  border-bottom: 3px solid #dd7fb1;
}

.contents-wrap .link-cont.bd-purple1 a dl dt {
  border-bottom: 3px solid #c28ebc;
}

.contents-wrap .link-cont.bd-purple2 a dl dt {
  border-bottom: 3px solid #a79ec8;
}

.contents-wrap .link-cont.bd-blue1 a dl dt {
  border-bottom: 3px solid #8badd3;
}

.contents-wrap .link-cont.bd-blue2 a dl dt {
  border-bottom: 3px solid #70bcde;
}

.contents-wrap .link-cont.bd-blue3 a dl dt {
  border-bottom: 3px solid #69c0cd;
}

.contents-wrap .link-cont.bd-green1 a dl dt {
  border-bottom: 3px solid #63c3bb;
}

.contents-wrap .link-cont.bd-green2 a dl dt {
  border-bottom: 3px solid #5cc7aa;
}

.contents-wrap .link-cont a dl dd .check {
  position: absolute;
  right: 20px;
  bottom: 20px;
  color: #4ca2d1;
  font-size: 12px;
  font-weight: 700;
  text-decoration: underline;
}

.contents-detail-box {
  margin-bottom: 70px;
  font-size: 14px;
  text-align: left;
}

.contents-detail-wrap {
  padding-bottom: 80px;
}

.contents-detail-wrap.wrap {
  max-width: 800px;
}

.contents-detail-wrap .imgleft,
.contents-detail-wrap .imgright {
  display: flex;
  margin-bottom: 40px;
  justify-content: space-between;
}

.contents-detail-wrap .imgleft {
  flex-direction: row-reverse;
}

.contents-detail-wrap .imgleft .rightcol,
.contents-detail-wrap .imgright .leftcol {
  width: 58.75%;
}

.contents-detail-wrap .imgleft .leftcol,
.contents-detail-wrap .imgright .rightcol {
  width: 36.25%;
}

.contents-detail-wrap p {
  margin-bottom: 30px;
}

.contents-detail-wrap figure {
  text-align: center;
}

.contents-detail-box .lead2 {
  padding: 30px 25px 0;
  color: #707070;
  background: url("../img/contents-detail-lead2-1.svg") left top no-repeat, url("../img/contents-detail-lead2-2.svg") right bottom 10px no-repeat;
}

.contents-detail-box .lead2 p {
  margin-bottom: 20px;
}

.contents-detail-box .lead2 p:last-child {
  margin-bottom: 0;
}

.contents-detail-box .lead2 small {
  font-size: 10px;
}

.contents-detail-box .bd-box {
  padding: 20px;
  border: 1px solid #707070;
  color: #707070;
  font-size: 10px;
}

.prev-next-btn {
  display: flex;
  justify-content: center;
}

.prev-next-btn a {
  position: relative;
  margin-right: 40px;
  margin-left: 40px;
  padding: 15px 30px;
  border-radius: 99px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.3);
  color: #fff;
  line-height: 1.4;
  font-size: 16px;
  font-weight: 700;
  background: #4ca2d1;
}

.prev-next-btn a:after {
  display: block;
  width: 35px;
  height: 35px;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1) inset;
  content: "";
}

.prev-next-btn a.prev {
  padding-left: 60px;
}

.prev-next-btn a.prev:after {
  left: 10px;
  background: url("../img/arrow-left-white.svg") center/7px auto no-repeat #2389c1;
}

.prev-next-btn a.next {
  padding-right: 60px;
}

.prev-next-btn a.next:after {
  right: 10px;
  background: url("../img/arrow-right-white.svg") center/7px auto no-repeat #2389c1;
}

@media screen and (max-width: 768px) {
  .contents-ttl {
    padding-bottom: 15%;
    background: url("../img/bg-ring.svg") right -70px top 20%/70% auto no-repeat #f8fdff;
  }
  .contents-ttl .contents-link {
    display: block;
  }
  .contents-ttl .contents-link a {
    width: 100%;
    margin: 0 0 3%;
  }
  .contents-wrap {
    padding-top: 10%;
    padding-bottom: 8%;
  }
  .contents-wrap .link-cont {
    display: block;
  }
  .contents-wrap .link-cont a {
    display: block;
    width: 100%;
    margin-bottom: 5%;
    padding: 20px 20px 40px;
  }
  .contents-wrap .link-cont a dl dt {
    margin-bottom: 2.33vw;
  }
  .contents-wrap .link-cont a dl dd {
    font-size: 14px;
  }
  .contents-wrap .link-cont a dl dd .check {
    bottom: 15px;
  }
  .contents-detail-box {
    margin-bottom: 40px;
  }
  .contents-detail-wrap .imgleft,
  .contents-detail-wrap .imgright {
    display: block;
    margin-bottom: 20px;
  }
  .contents-detail-wrap .imgleft .rightcol,
  .contents-detail-wrap .imgright .leftcol {
    width: 100%;
  }
  .contents-detail-wrap .imgleft .leftcol,
  .contents-detail-wrap .imgright .rightcol {
    width: 100%;
  }
  .contents-detail-wrap p {
    margin-bottom: 15px;
  }
  .contents-detail-box .lead2 {
    padding: 30px 0;
    background: url("../img/contents-detail-lead2-1.svg") left top no-repeat, url("../img/contents-detail-lead2-2.svg") right bottom 30px no-repeat;
  }
  .contents-detail-box .bd-box {
    padding: 12px 15px;
  }
  .prev-next-btn a {
    margin-right: 15px;
    margin-left: 15px;
    padding: 15px 30px;
  }
  .prev-next-btn a.prev {
    margin-left: 0;
  }
  .prev-next-btn a.next {
    margin-right: 0;
  }
}
.shopping1 {
  text-align: left;
  background: url("../img/bg-ring.svg") right -70px bottom 0 no-repeat;
}

.shopping1 .btn-link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.shopping1 .btn-link a {
  display: flex;
  width: 40%;
  min-height: 65px;
  position: relative;
  margin: 0 2.75% 10px 0;
  padding: 5px 35px 10px 35px;
  border-radius: 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.2);
  color: #173c8a;
  line-height: 1.4;
  font-size: 16px;
  font-weight: 700;
  background: #fff;
  align-items: center;
}

.shopping1 .btn-link a.order1 {
  order: 1;
}

.shopping1 .btn-link a.order2 {
  order: 3;
}

.shopping1 .btn-link a.order3 {
  order: 2;
}

.shopping1 .btn-link a.order4 {
  order: 4;
}

.shopping1 .btn-link a div {
  text-align: left;
}

.shopping1 .btn-link a:after {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  right: 12px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.05) inset;
  background: url("../img/arrow-bottom-aqua.svg") center/11px auto no-repeat;
  content: "";
}

.shopping1 .movie-right {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.shopping1 .movie-right p {
  width: 50%;
}

.shopping1 .movie-right .movie-cont {
  width: 48%;
}

.shopping-list {
  display: flex;
  justify-content: center;
}

.shopping-list dl {
  width: 31.5%;
  margin: 0 1.375% 10px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

.shopping-list dl:nth-child(3n+1) {
  margin-left: 0;
}

.shopping-list dl:nth-child(3n),
.shopping-list dl:last-child {
  margin-right: 0;
}

.shopping-list dl dt {
  position: relative;
  padding: 15px 20px;
  border-radius: 20px 20px 0 0;
  color: #fff;
}

.shopping-list dl dt a {
  display: block;
  color: #fff;
}

.shopping-list dl dt.minh106 {
  min-height: 106px;
}

.shopping-list dl dt.pt30 {
  padding-top: 30px;
}

.shopping-list dl dt.bg-pink {
  background: #dd7fb1;
}

.shopping-list dl dt.bg-lightgreen {
  background: #5cc7aa;
}

.shopping-list dl dt.bg-purple {
  background: #9874bc;
}

.shopping-list dl dt.bg-green {
  background: #158e8e;
}

.shopping-list dl dt.bg-yellow {
  background: #efbf40;
}

.shopping-list dl dt.bg-orange {
  background: #db8547;
}

.shopping-list dl dt.bg-blue {
  background: #5a7bc3;
}

.shopping-list dl dt.bg-dblue {
  background: #173c8a;
}

.shopping-list dl dt span {
  width: 158px;
  height: 109px;
  position: absolute;
  right: -41px;
  bottom: -18px;
  padding: 15px 0 0 70px;
  background: url("../img/plate.svg") center no-repeat;
  transform: rotate(-10deg);
}

.shopping-list dl dt span.abs-btm {
  bottom: -43px;
}

.shopping-list dl dt span.abs-top {
  bottom: 0;
}

.shopping-list dl dt span strong {
  display: inline-block;
  margin-right: 0.2em;
}

.shopping-list dl dd {
  padding: 25px 5px 20px;
  text-align: center;
}

.shopping-list dl dd .FS2_itemPrice_area .itemPrice {
  display: inline-block;
  margin: 0 0.1em;
}

.shopping-list dl dd .FS2_figure_table {
  margin-right: auto;
  margin-left: auto;
}

.FS2_figure_table td {
  padding-right: 5px;
  vertical-align: middle;
}

.FS2_figure_table tr td:last-child {
  padding-right: 0;
}

.FS2_figure_table .FS2_figure_table_td_input_cnt label {
  display: inline-block;
  padding: 0 15px 0 12px;
  border: 2px solid #d2eefb;
  border-radius: 99px;
  text-align: center;
  background: #fff;
}

.FS2_figure_table .FS2_figure_table_td_input_cnt label span {
  display: inline-block;
  vertical-align: middle;
}

.FS2_figure_table .FS2_figure_table_td_input_cnt label input[type=text] {
  width: 1.5em;
  height: inherit;
  padding: 0;
  border: none;
  font-size: 20px;
  font-weight: 600;
  text-align: right;
  vertical-align: middle;
  background: none;
}

.FS2_figure_table .FS2_figure_table_td_cart_btn {
  padding-left: 8px;
}

.FS2_figure_table .FS2_figure_table_td_updn_btn input,
.FS2_figure_table .FS2_figure_table_td_cart_btn input {
  transition: all 0.1s;
}

.FS2_figure_table .FS2_figure_table_td_updn_btn input:hover,
.FS2_figure_table .FS2_figure_table_td_cart_btn input:hover {
  opacity: 0.8;
}

.FS2_figure_table .FS2_figure_table_td_cart_btn input {
  border-radius: 99px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.3);
}

.shopping2 {
  padding: 40px 0 25px;
  text-align: left;
  background: url("../img/shopping2-bg-pc.svg") center top 260px no-repeat #e2f6fe;
}

.shopping-clm2 {
  display: flex;
  justify-content: space-between;
}

.shopping-clm2 dl {
  width: 49%;
  padding: 15px 18px 10px;
  border: 4px solid #65a1cd;
  text-align: center;
  background: #fff;
}

.shopping3 {
  padding: 35px 0 65px;
  text-align: left;
  background: #fff;
}

.shopping4 {
  padding: 100px 0 120px;
  background: url("../img/shopping4-bg-pc.svg") center no-repeat #e2f6fe;
}

.shopping4 .inner {
  display: flex;
  padding: 27px 32px;
  border: 4px solid #65a1cd;
  border-radius: 20px;
  background: #fff;
  justify-content: space-between;
}

.shopping4 .inner .leftcol {
  width: 43%;
}

.shopping4 .inner .rightcol {
  width: 56%;
}

@media screen and (max-width: 768px) {
  .shopping1 {
    background: url("../img/bg-ring.svg") right -170px top 80px no-repeat;
  }
  .shopping1 .wrap.maxw800 {
    padding: 0;
  }
  .shopping1 .wrap,
  .shopping2 .wrap,
  .shopping3 .wrap {
    padding: 0 8%;
  }
  .shopping1 .sp-cont {
    padding: 0 8%;
  }
  .shopping1 .sp-cont.top {
    margin-bottom: 0;
  }
  .shopping1 .btn-link {
    display: block;
  }
  .shopping1 .btn-link a {
    width: 100%;
  }
  .shopping1 .movie-right {
    display: block;
  }
  .shopping1 .movie-right p {
    width: 100%;
    margin-bottom: 15%;
  }
  .shopping1 .movie-right .movie-cont {
    width: 100%;
  }
  .shopping-list {
    display: block;
  }
  .shopping-list dl {
    width: 100%;
    margin: 0 0 5vw;
  }
  .shopping-list dl.mb2p {
    margin-bottom: 2vw;
  }
  .shopping-list dl dt {
    padding: 5% 6%;
  }
  .shopping-list dl dt.minh106 {
    min-height: inherit;
  }
  .shopping-list dl dt.pt30 {
    padding-top: 5%;
  }
  .shopping-list dl dt span {
    width: 43%;
    height: 20vw;
    right: -8%;
    bottom: 0;
    padding: 0.5% 0 0 20%;
    background: url("../img/plate.svg") left top 42%/110% auto no-repeat;
  }
  .shopping-list dl dt span.abs-btm.abs-sp-top {
    top: 8%;
    bottom: inherit;
  }
  .shopping-list dl dt span.abs-btm.abs-sp-btm {
    bottom: -16%;
  }
  .shopping-list dl dt span.abs-btm {
    bottom: 1%;
  }
  .shopping-list dl dt span strong {
    margin-right: 0.1em;
  }
  .shopping-list dl dd {
    padding: 8% 0 6%;
  }
  .cart-btn .FS2_figure_table .FS2_figure_table_td_cart_btn {
    padding-left: 5px;
  }
  .FS2_figure_table .FS2_figure_table_td_cart_btn input {
    width: 150px;
  }
  .FS2_figure_table .FS2_figure_table_td_updn_btn input:hover,
  .FS2_figure_table .FS2_figure_table_td_cart_btn input:hover {
    opacity: 1;
  }
  .shopping2 {
    padding: 10% 0 6%;
    background: url("../img/shopping2-bg-sp.svg") left -100px top 380px no-repeat #e2f6fe;
  }
  .shopping-clm2 {
    display: block;
  }
  .shopping-clm2 dl {
    width: 100%;
    margin-bottom: 6%;
    padding: 6% 5% 5%;
    text-align: left;
  }
  .shopping-clm2 dl dd figure {
    margin-bottom: 5%;
    text-align: center;
  }
  .shopping3 {
    padding: 7% 0 10%;
  }
  .shopping3 .wrap.maxw666 {
    padding: 0;
  }
  .shopping4 {
    padding: 24% 0 15%;
    background: url("../img/shopping4-bg-sp.svg") left -100px top 30px no-repeat #e2f6fe;
  }
  .shopping4 .inner {
    display: block;
    padding: 5% 0 10%;
  }
  .shopping4 .inner .leftcol {
    width: 100%;
  }
  .shopping4 .inner .rightcol {
    width: 100%;
  }
}
.detail1 {
  padding-bottom: 55px;
}

.detail1.pb30 {
  padding-bottom: 30px;
}

.detail1 .imgleft {
  display: flex;
  justify-content: space-between;
}

.detail1 .imgleft figure {
  width: 47%;
  max-width: 432px;
}

.detail1 .imgleft figure img {
  margin-bottom: 3px;
}

.detail1 .imgleft figure figcaption {
  text-align: right;
}

.detail1 .imgleft .rightcol {
  width: 46%;
  text-align: left;
}

.detail1 .imgleft .rightcol h2 .new {
  display: inline-block;
  padding: 3px 5px;
  color: #fff;
  line-height: 1.2;
  background: #d94659;
}

.detail1 .imgleft .rightcol .FS2_figure_table .FS2_figure_table_td_input_cnt label {
  padding: 5px 20px 5px 15px;
  background: #fff;
}

.detail1 .imgleft .rightcol .FS2_figure_table .FS2_figure_table_td_input_cnt label input[type=text] {
  font-size: 24px;
}

.detail1 .imgleft .rightcol .FS2_figure_table td {
  padding-right: 10px;
}

.detail1 .imgleft .rightcol .impossible {
  display: flex;
  align-items: flex-start;
}

.detail1 .imgleft .rightcol .impossible em {
  display: inline-block;
  width: 7.5em;
  text-align: center;
}

.detail1 .imgleft .rightcol .impossible span {
  flex: 1;
}

.detail1 .imgleft .rightcol .bd-red {
  display: inline-block;
  padding: 1px 0.3em;
  border: 1px solid #d94659;
  line-height: 1.4;
}

.btn-review {
  display: inline-block;
  max-width: 730px;
  width: 100%;
  padding: 10px;
  color: #fff;
  background: url("../img/review-bnr-pc.svg") center no-repeat #70bcde;
}

.btn-review .bd-btm {
  border-bottom: 2px solid #fffdcb;
}

.btn-review p:first-child {
  margin-bottom: 5px;
}

.detail2.top3 {
  padding-bottom: 40px;
  background: url("../img/detail2-bg-pc.svg") left 60px center no-repeat #cbeffd;
}

.detail2.top3:before {
  content: none;
}

.detail2.top3 ul {
  height: 220px;
}

.detail3.top5 {
  padding: 40px 0 85px;
}

.detail3.top5 h2 {
  min-height: 141px;
  padding-top: 12px;
  background: url("../img/top5-ttl-bg.svg") center/141px auto no-repeat;
}

.detail3.top5 h3 span {
  padding: 0 60px;
}

.detail3.top5 h3 span:before,
.detail3.top5 h3 span:after {
  width: 20px;
  height: 44px;
}

.detail3.top5 h3 span:before {
  background: url("../img/detail3-balloon1.svg") center no-repeat;
}

.detail3.top5 h3 span:after {
  background: url("../img/detail3-balloon2.svg") center no-repeat;
}

.detail3 .detail3-img {
  display: inline-block;
  padding: 32px 28px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

.detail3 .balloon-lead {
  position: relative;
  padding-top: 120px;
}

.detail3 .balloon-lead .sp-t-left {
  padding: 0 6%;
}

.detail3 .balloon-lead .balloon {
  display: block;
  width: 455px;
  height: 132px;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  margin: 0 auto;
  padding-top: 34px;
  color: #fff;
}

.detail3 .balloon-lead .balloon.bl-pink {
  background: url("../img/detail3-balloon-pink-pc.png") center/455px auto no-repeat;
}

.detail3 .balloon-lead .balloon.bl-green {
  background: url("../img/detail3-balloon-green-pc.png") center/455px auto no-repeat;
}

.detail3 .balloon-lead .balloon.bl-yellow {
  background: url("../img/detail3-balloon-yellow-pc.png") center/455px auto no-repeat;
}

.detail3 .clm2 {
  display: flex;
  max-width: 660px;
  margin-right: auto;
  margin-left: auto;
  justify-content: space-between;
}

.detail3 .clm2.maxw700 {
  max-width: 700px;
}

.detail3 .clm2 .leftcol {
  width: 47.7%;
}

.detail3 .clm2 .leftcol p {
  padding: 3px 30px;
  border: 1px solid #000;
}

.detail3 .clm2 .rightcol {
  width: 46%;
}

.detail3 .clm2 .rightcol .meyasu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.detail3 .clm2 .rightcol .meyasu figure {
  width: 50%;
  padding-right: 15px;
  padding-left: 15px;
}

.detail3 .clm2 .rightcol .meyasu figure figcaption {
  line-height: 1.2;
}

.detail3 .clm2 .rightcol .meyasu figure.clm1 {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
}

.detail3 .maxw672 {
  max-width: 672px;
  margin-right: auto;
  margin-left: auto;
}

.detail3 .bd-box {
  padding: 20px 20px 30px;
  border: 1px solid #242424;
}

.detail3 .bd-box .imgright {
  display: flex;
  max-width: 514px;
  margin: 0 auto;
  justify-content: space-between;
  align-items: center;
}

.detail3 .bd-box .imgright p {
  width: 51%;
}

.detail3 .bd-box .imgright figure {
  width: 43%;
}

.detail4.top2 {
  padding-bottom: 40px;
}

.detail5 {
  position: relative;
  padding: 65px 0 35px;
  background: #f8fdff;
}

.detail5:before {
  display: block;
  width: 100%;
  height: 2vw;
  position: absolute;
  top: -1px;
  left: 0;
  background: url("../img/top2-bottom.svg") center top/100% auto no-repeat;
  content: "";
}

.detail5.before-no:before {
  content: none;
}

.detail5 ol {
  display: flex;
  justify-content: space-between;
}

.detail5 .maxw700 ol {
  flex-wrap: wrap;
}

.detail5 ol li {
  width: 19.2%;
  position: relative;
  border: 4px solid #d3eefb;
  border-radius: 20px;
}

.detail5 .maxw700 ol li {
  width: 32%;
}

.detail5 .maxw700 ol li:nth-child(1),
.detail5 .maxw700 ol li:nth-child(2),
.detail5 .maxw700 ol li:nth-child(3) {
  margin-bottom: 35px;
}

.detail5 ol li:nth-child(2n) {
  border: 4px solid #84bbda;
}

.detail5 ol li h3 {
  position: absolute;
  top: -17px;
  left: 20px;
  padding: 0 8px;
  color: #70bcde;
  line-height: 1;
  background: #fff;
}

.detail5 ol li dl {
  padding: 20px 5px 10px 15px;
  border-radius: 15px 15px 0 0;
  text-align: left;
  background: #fff;
}

.detail5 ol li figure img {
  border-radius: 0 0 15px 15px;
}

.detail5 .link-list a {
  display: inline-block;
  margin: 0 7px 5px;
}

.detail5 ol.clm3 li {
  display: flex;
  width: 31.5%;
}

.detail5 ol.clm3 li dl {
  width: 65%;
  padding: 6% 0 5% 3%;
  border-radius: 15px 0 0 15px;
}

.detail5 ol.clm3 li dl dd {
  line-height: 1.4;
}

.detail5 ol.clm3 li figure {
  overflow: hidden;
  width: 0;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  padding-right: 35%;
}

.detail5 ol.clm3 li figure img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0 15px 15px 0;
  -o-object-fit: cover;
  object-fit: cover;
}

.detail6 {
  padding: 70px 0 65px;
}

.detail6 .wrap {
  display: flex;
  max-width: 890px;
  justify-content: space-between;
}

.detail6 .wrap p {
  width: 50%;
}

.detail6 .wrap p span {
  display: inline-block;
  line-height: 2.5;
  text-align: left;
}

.detail6 .wrap figure {
  width: 50%;
  padding-top: 20px;
}

.detail7.detail1 {
  padding: 50px 0 35px;
}

.detail7.detail1.pb0 {
  padding-bottom: 0;
}

.detail8 {
  padding: 0;
}

.detail8 .wrap {
  width: 1060px;
}

.detail8 .balloon {
  min-height: 173px;
  padding: 45px 0 0;
}

.detail8 .balloon.pt40 {
  padding-top: 40px;
}

.detail8 .balloon.line1 {
  padding-top: 57px;
}

.detail8 .balloon.bl-purple {
  background: url("../img/detail8-balloon-purple-pc.png") center/1060px auto no-repeat;
}

.detail8 .balloon.bl-green {
  background: url("../img/detail8-balloon-green-pc.png") center/1060px auto no-repeat;
}

.detail8 .balloon.bl-orange {
  background: url("../img/detail8-balloon-orange-pc.png") center/1060px auto no-repeat;
}

.detail8 .balloon.bl-blue {
  background: url("../img/detail8-balloon-blue-pc.png") center/1060px auto no-repeat;
}

.detail8 .balloon.bl-dblue {
  background: url("../img/detail8-balloon-dblue-pc.png") center/1060px auto no-repeat;
}

.detail8 .balloon.bl-aqua {
  background: url("../img/detail8-balloon-aqua-pc.png") center/1060px auto no-repeat;
}

.detail8 .caution-box {
  max-width: 500px;
  margin: 0 auto;
}

.detail8 dl.caution-box {
  padding: 20px 20px 25px;
  border: 1px solid #000;
}

.detail8 dl.caution-box dt {
  display: inline-block;
  padding-left: 25px;
  background: url("../img/caution.svg") left center no-repeat;
}

.detail8 dl.caution-box dd {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.detail8 dl.caution-box dd figure {
  width: 50%;
}

.detail8 dl.caution-box dd figure figcaption {
  text-align: right;
}

.detail8 dl.caution-box dd div {
  width: 46%;
  text-align: left;
}

.detail9.detail1 {
  padding: 50px 0 80px;
}

.detail9.detail1.pb0 {
  padding-bottom: 0;
}

.detail10 {
  padding: 95px 0 120px;
  background: url("../img/detail10-bg-pc.svg") center/cover no-repeat #e2f6fe;
}

.detail10 .movie-right {
  display: flex;
  flex-direction: row-reverse;
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
  padding: 25px 30px;
  border: 4px solid #65a1cd;
  border-radius: 20px;
  background: #fff;
  justify-content: space-between;
  align-items: center;
}

.detail10 .movie-right .rightcol {
  width: 55%;
}

.detail10 .movie-right .leftcol {
  width: 42%;
}

.detail10 .movie-right .leftcol .btn:after {
  width: 28px;
  height: 28px;
  right: 7px;
  background: url("../img/arrow-right-white.svg") center no-repeat #2389c1;
}

.wave {
  display: inline-block;
  padding-bottom: 3px;
  background: url("../img/wave.svg") center bottom no-repeat;
}

.detail11 {
  padding-top: 30px;
  padding-bottom: 60px;
}

.anc-btn {
  display: flex;
  justify-content: space-between;
}

.anc-btn a {
  display: flex;
  width: 31.5%;
  position: relative;
  padding: 5px 50px 5px 25px;
  border: 4px solid #65a1cd;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 87, 175, 0.2);
  line-height: 1.4;
  text-align: left;
  background: #fff;
  align-items: center;
  justify-content: space-between;
}

.anc-btn a:after {
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.16) inset;
  background: url("../img/arrow-bottom-aqua.svg") center no-repeat #f8fdff;
  content: "";
}

.detail11 ul.detail11-product {
  display: flex;
  justify-content: center;
}

.detail11 ul.detail11-product li {
  width: 22%;
  margin-right: 35px;
  margin-left: 35px;
}

.detail11 ul.detail11-product li figure {
  position: relative;
}

.detail11 ul.detail11-product li figure figcaption {
  display: flex;
  width: 177px;
  height: 181px;
  position: absolute;
  top: -55px;
  right: -60px;
  padding: 0 0 18px 5px;
  color: #fff;
  line-height: 1.3;
  font-weight: 700;
  background: url("../img/detail11-balloon.png") center/177px auto no-repeat;
  transform: rotate(5deg);
  justify-content: center;
  align-items: center;
}

dl.caution-cont {
  max-width: 745px;
  margin-right: auto;
  margin-left: auto;
}

dl.caution-cont dt {
  padding: 2px;
  color: #fff;
  background: #173c8a;
}

dl.caution-cont dd {
  padding: 10px 45px 20px;
  border: 2px solid #173c8a;
  background: #fff;
}

.detail12 ol li {
  display: flex;
  position: relative;
  padding-bottom: 110px;
  justify-content: space-between;
  align-items: center;
}

.detail12 ol li:last-child {
  padding-bottom: 65px;
}

.detail12 ol li:after {
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
  bottom: 20px;
  left: 0;
  margin: 0 auto;
  border-width: 30px 42.5px 0 42.5px;
  border-style: solid;
  border-color: #b5ddef rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
  content: "";
}

.detail12 ol li:last-child:after {
  content: none;
}

.detail12 ol li .leftcol {
  width: 45.85%;
  text-align: left;
}

.detail12 ol li .leftcol h3 {
  color: #70bcde;
}

.detail12 ol li .rightcol {
  width: 48.75%;
}

.detail12 ol li p.rightcol {
  padding: 15px 20px;
  border-radius: 20px;
  color: #fff;
  font-weight: 700;
  background: #70bcde;
}

@media screen and (max-width: 768px) {
  .detail1 {
    padding-bottom: 0;
  }
  .detail1 .pb30 {
    padding-bottom: 8%;
  }
  .detail1 .imgleft {
    display: block;
  }
  .detail1 .imgleft figure {
    width: 100%;
    margin-bottom: 5%;
  }
  .detail1 .imgleft figure img {
    margin-bottom: 1%;
  }
  .detail1 .imgleft .rightcol {
    width: 100%;
  }
  .detail1 .imgleft .rightcol .FS2_figure_table .FS2_figure_table_td_input_cnt label {
    padding: 0 15px 0 10px;
  }
  .detail1 .imgleft .rightcol .FS2_figure_table .FS2_figure_table_td_input_cnt label input[type=text] {
    font-size: 5.333vw;
  }
  .detail1 .imgleft .rightcol .FS2_figure_table td {
    padding-right: 5px;
  }
  .detail1 .imgleft .rightcol .FS2_figure_table td.FS2_figure_table_td_updn_btn input {
    width: 24px;
    height: auto;
  }
  .detail1 .imgleft .rightcol .FS2_figure_table td.FS2_figure_table_td_cart_btn {
    width: 60%;
  }
  .detail1 .imgleft .rightcol .FS2_figure_table td.FS2_figure_table_td_cart_btn input {
    width: 100%;
    height: auto;
  }
  .btn-review {
    padding: 5%;
    background: url("../img/review-bnr-sp.svg") left 10% center/88% auto no-repeat #70bcde;
  }
  .btn-review p:first-child {
    margin-bottom: 3%;
  }
  .detail2.top3 {
    padding-bottom: 10%;
    padding-top: 10.6vw;
    margin-top: 10.6vw;
    background: url("../img/detail2-bg-sp.svg") center top 30px no-repeat #cbeffd;
  }
  .detail2.top3 ul {
    height: 0;
  }
  .detail3.top5 {
    padding: 10% 0 14%;
  }
  .detail3.top5 h2 {
    min-height: inherit;
    padding-top: 5%;
    background: url("../img/top5-ttl-bg.svg") center/36% auto no-repeat;
  }
  .detail3.top5 h3 span {
    width: 100%;
    padding: 0 5%;
  }
  .detail3.top5 h3 span:before,
  .detail3.top5 h3 span:after {
    top: inherit;
    bottom: 0;
  }
  .detail3 .detail3-img {
    padding: 7% 6%;
  }
  .detail3 .balloon-lead {
    padding-top: 30vw;
  }
  .detail3 .balloon-lead .t-left {
    padding: 0 6%;
  }
  .detail3 .balloon-lead .balloon {
    width: 100%;
    height: 60%;
    padding-top: 7.4vw;
  }
  .detail3 .balloon-lead .balloon.bl-pink {
    background: url("../img/detail3-balloon-pink-sp.png") center/105% auto no-repeat;
  }
  .detail3 .balloon-lead .balloon.bl-green {
    background: url("../img/detail3-balloon-lightgreen-sp.png") center/105% auto no-repeat;
  }
  .detail3 .balloon-lead .balloon.bl-yellow {
    padding-top: 10vw;
    background: url("../img/detail3-balloon-yellow-sp.png") center top/105% auto no-repeat;
  }
  .detail3 .clm2 {
    display: block;
  }
  .detail3 .clm2 .leftcol {
    width: 100%;
    margin-bottom: 12%;
  }
  .detail3 .clm2 .leftcol p {
    padding: 3px 30px;
  }
  .detail3 .clm2 .rightcol {
    width: 100%;
  }
  .detail3 .bd-box {
    margin: 0 6%;
  }
  .detail4.top2 {
    padding-bottom: 10%;
  }
  .detail5:before {
    height: 3vw;
    background: url("../img/top2-bottom.svg") center top/200% auto no-repeat;
  }
  .detail5 {
    padding: 10% 0;
  }
  .detail5:before {
    display: block;
    width: 100%;
    height: 4vw;
    position: absolute;
    top: -1px;
    left: 0;
    background: url("../img/top2-bottom.svg") left top/330% auto no-repeat;
    content: "";
  }
  .detail5 ol {
    display: block;
  }
  .detail5 ol li {
    display: flex;
    width: 100%;
    margin-bottom: 9vw;
    justify-content: space-between;
  }
  .detail5 ol li:last-child {
    margin-bottom: 2%;
  }
  .detail5 .maxw700 ol li {
    width: 100%;
  }
  .detail5 .maxw700 ol li:nth-child(1),
  .detail5 .maxw700 ol li:nth-child(2),
  .detail5 .maxw700 ol li:nth-child(3) {
    margin-bottom: 7%;
  }
  .detail5 ol li h3 {
    top: -17%;
  }
  .detail5 ol li dl {
    width: 65%;
    padding: 6% 0 5% 3%;
    border-radius: 15px 0 0 15px;
  }
  .detail5 ol li dl dd {
    line-height: 1.4;
  }
  .detail5 ol li figure {
    overflow: hidden;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    padding-right: 35%;
  }
  .detail5 ol li figure img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0 15px 15px 0;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .detail6 {
    padding: 10% 0 0;
  }
  .detail6 .wrap {
    display: block;
    padding: 0;
  }
  .detail6 .wrap p {
    width: 100%;
    padding: 0 6%;
  }
  .detail6 .wrap figure {
    width: 100%;
    padding-top: 5%;
  }
  .detail7.detail1 {
    padding: 10% 0 0;
  }
  .detail8 {
    padding: 0;
  }
  .detail8 .wrap {
    padding: 0;
  }
  .sp-cont {
    padding-right: 6%;
    padding-left: 6%;
  }
  .detail8 .wrap {
    width: 100%;
  }
  .detail8 .balloon {
    min-height: inherit;
    margin-bottom: 5%;
    padding: 4% 1% 16%;
    line-height: 1.8;
  }
  .detail8 .balloon.pt40 {
    margin-bottom: 3%;
    padding-top: 5.5%;
    padding-bottom: 14%;
  }
  .detail8 .balloon.line1 {
    padding-top: 8%;
  }
  .detail8 .balloon .lh12 {
    line-height: 1.5;
  }
  .detail8 .balloon.bl-purple {
    background: url("../img/detail8-balloon-purple-sp.png") center/135% auto no-repeat;
  }
  .detail8 .balloon.bl-green {
    background: url("../img/detail8-balloon-green-sp.png") center/135% auto no-repeat;
  }
  .detail8 .balloon.bl-orange {
    background: url("../img/detail8-balloon-orange-sp.png") center/135% auto no-repeat;
  }
  .detail8 .balloon.bl-blue {
    background: url("../img/detail8-balloon-blue-sp.png") center/135% auto no-repeat;
  }
  .detail8 .balloon.bl-dblue {
    background: url("../img/detail8-balloon-dblue-sp.png") center/135% auto no-repeat;
  }
  .detail8 .balloon.bl-aqua {
    background: url("../img/detail8-balloon-aqua-sp.png") center/135% auto no-repeat;
  }
  .detail8 dl.caution-box {
    padding: 3% 5% 6%;
  }
  .detail8 dl.caution-box dd {
    display: block;
  }
  .detail8 dl.caution-box dd figure {
    width: 100%;
    margin-bottom: 5%;
  }
  .detail8 dl.caution-box dd div {
    width: 100%;
  }
  .detail9.detail1 {
    padding: 10% 0 0;
  }
  .detail10 {
    padding: 10% 0;
    background: #fff;
  }
  .detail10 .movie-right {
    display: block;
    padding: 5% 0 10%;
  }
  .detail10 .movie-right .rightcol {
    width: 100%;
    margin-bottom: 3%;
  }
  .detail10 .movie-right .leftcol {
    width: 100%;
    padding: 0 2%;
  }
  .detail11 {
    padding-top: 3%;
    padding-bottom: 10%;
  }
  .anc-btn {
    display: block;
  }
  .anc-btn a {
    width: 100%;
    min-height: 80px;
    margin-bottom: 5%;
    padding: 5px 50px 5px 15px;
  }
  .detail11 ul.detail11-product {
    display: block;
  }
  .detail11 ul.detail11-product li {
    width: 100%;
    margin: 0 0 12%;
  }
  .detail11 ul.detail11-product li figure {
    width: 60%;
    margin-right: auto;
    margin-left: auto;
  }
  .detail5 ol.clm3 li {
    width: 100%;
  }
  dl.caution-cont dt {
    padding: 1vw;
  }
  dl.caution-cont dd {
    padding: 3vw;
  }
  .detail12 ol li {
    display: block;
    padding-bottom: 85px;
  }
  .detail12 ol li:last-child {
    padding-bottom: 80px;
  }
  .detail12 ol li .leftcol {
    width: 100%;
    margin-bottom: 9vw;
  }
  .detail12 ol li .rightcol {
    width: 100%;
    line-height: 1.4;
  }
  .detail12 ol li p.rightcol {
    padding: 3vw 5vw;
    text-align: left;
  }
}
.pager {
  display: flex;
  margin-bottom: 30px;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.pager span,
.pager a {
  margin: 0 10px;
  color: #4ca2d1;
  font-weight: 600;
}

.pager a.FS2_pager_link_prev {
  margin-left: 0;
}

.pager a.FS2_pager_link_next {
  margin-right: 0;
}

.pager span.FS2_pager_stay {
  text-decoration: underline;
}

.pager span.FS2_pager_text {
  width: 100%;
  margin-bottom: 10px;
  color: #000;
  font-size: 10px;
  font-weight: 400;
}

.pager a {
  display: block;
  text-decoration: underline;
}

.pager a img {
  width: 34px;
}

.pager span.dot {
  font-weight: 300;
}

.pager span.prev,
.pager span.prev a,
.pager span.next,
.pager span.next a {
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1) inset;
}

.pager .FS2_pager_link_first,
.pager .FS2_pager_link_last {
  display: none;
}

.voice-list table {
  display: flex;
  max-width: 800px;
  margin: 0 auto 20px;
  padding: 25px 40px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
  justify-content: space-between;
  align-items: center;
}

.voice-list table:last-of-type {
  margin-bottom: 40px;
}

.voice-list table .FS2_Review_Detail_td {
  position: relative;
}

.voice-list table .FS2_MyReviewStatus {
  float: left;
  padding-left: 130px;
}

.voice-list table .FS2_MyReviewStatus img {
  width: 73px;
  margin-right: 5px;
  vertical-align: middle;
}

.voice-list table .FS2_MyReviewStatus .FS2_MyReviewStatus_text {
  margin-right: 5px;
  vertical-align: middle;
}

.voice-list table .FS2_Review_Detail_name {
  display: none;
  margin-left: 5px;
}

.voice-list table .itemRight {
  position: absolute;
  top: 6px;
  left: 350px;
  color: #a3a3a3;
  font-size: 10px;
}

.voice-list table .FS2_Review_User_Status {
  padding: 1px 7px;
  border-radius: 30px;
  color: #fff;
  line-height: 1.1;
  font-size: 10px;
  vertical-align: middle;
  background: #d94659;
}

.voice-list table .FS2_GoodsImage_td {
  width: 12.25%;
  vertical-align: middle;
}

.voice-list table .FS2_GoodsImage_td img {
  width: 87px;
}

.voice-list table .FS2_MyReviewList_Detail_td {
  width: 93.75%;
  padding-left: 6%;
}

.voice-list table .FS2_Review_Detail_itemname {
  margin-bottom: 10px;
  color: #4ca2d1;
  font-size: 16px;
  font-weight: 700;
}

.voice-list table .FS2_Review_Detail_itemname a {
  color: #4ca2d1;
  text-decoration: underline;
}

@media screen and (max-width: 768px) {
  .pager span.FS2_pager_text {
    margin-bottom: 2%;
    text-align: right;
  }
  .voice-list table {
    padding: 20px;
  }
  .voice-list table tr {
    position: relative;
  }
  .voice-list table th,
  .voice-list table td {
    display: block;
  }
  .voice-list table .FS2_MyReviewStatus {
    float: none;
    padding-left: 0;
  }
  .voice-list table .itemRight {
    position: static;
    font-size: 2.133vw;
  }
  .voice-list table .FS2_MyReviewStatus .FS2_MyReviewStatus_text {
    margin-right: 1%;
  }
  .voice-list table .FS2_MyReviewStatus_text {
    font-size: 3.2vw;
  }
  .voice-list table .FS2_GoodsImage_td {
    width: 22%;
    position: absolute;
    top: -3em;
    right: 0;
  }
  .voice-list table .FS2_Review_User_Status {
    font-size: 2.133vw;
  }
  .voice-list table .FS2_MyReviewList_Detail_td {
    width: 100%;
    padding: 0;
  }
  .voice-list table .FS2_Review_Detail_itemname a {
    font-size: 4.266vw;
  }
  .voice-list table .FS2_Review_Detail_itemname {
    padding: 2% 24% 0 0;
    line-height: 1.4;
  }
  .voice-list table .FS2_Review_Detail_text {
    font-size: 3.77vw;
  }
}
.anc-btn2 {
  display: flex;
  justify-content: space-around;
}

.anc-btn2.clm2 {
  justify-content: center;
  flex-wrap: wrap;
}

.anc-btn2 a {
  width: 315px;
  position: relative;
  padding: 15px 45px 15px 22px;
  border-radius: 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.2);
  color: #173c8a;
  font-weight: 900;
  background: #fff;
}

.anc-btn2.clm2 a {
  margin: 0 6px 10px;
}

.anc-btn2 a.line2 {
  padding: 5px 45px 5px 22px;
  line-height: 1.4;
}

.anc-btn2 a:after {
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.05) inset;
  background: url("../img/arrow-bottom-aqua.svg") center no-repeat #fff;
  content: "";
}

.attention1 .box {
  padding: 35px 0;
  border-radius: 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.2);
  text-align: left;
  background: #fff;
}

.attention1 .box ul li {
  min-height: 27px;
  margin-bottom: 10px;
  padding-left: 35px;
  font-size: 16px;
  font-weight: 700;
  background: url("../img/ic-check.svg") left top 0.2em no-repeat;
}

.attention1 .box ul li:last-child {
  margin-bottom: 0;
}

.attention2 {
  padding: 45px 0 70px;
}

.attention2 .box {
  padding: 30px 0 40px;
  border-radius: 20px;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.2);
  background: #fff;
}

.attention2 .box .clm2 {
  display: flex;
  justify-content: space-between;
}

.attention2 .box .leftcol {
  width: 45%;
}

.attention2 .box .rightcol {
  width: 50%;
}

.attention2 .box .rightcol .imgright {
  display: flex;
  width: 85%;
  justify-content: space-between;
  align-items: center;
}

.attention2 .box .rightcol .imgright p {
  width: 70%;
}

.attention2 .box .rightcol .imgright figure {
  width: 24%;
}

.attention3 {
  padding: 50px 0 55px;
}

.attention3 .clm2 {
  display: flex;
  justify-content: space-between;
}

.attention3 .clm2 .clm {
  width: 50%;
  text-align: left;
}

.attention3 .clm2 .clm .subttl4 {
  margin-left: 10%;
}

.attention3 .clm2 .clm .minh2 {
  min-height: 3.6em;
  margin-left: 15%;
}

.attention3 .clm2 .clm dl,
.attention3 .clm2 .clm p {
  margin-right: 10%;
  margin-left: 10%;
}

.attention3 .clm2 .clm dl p {
  margin-right: 0;
  margin-left: 0;
}

.attention3 .clm2 .clm dl,
.attention3 .clm2 .clm figure {
  text-align: center;
}

.attention3 .clm2 .clm dl dt {
  padding: 8px;
  color: #fff;
  background: #173c8a;
}

.attention3 .clm2 .clm dl dd {
  padding: 24px 18px;
  border: 2px solid #173c8a;
  background-color: #f8fdff;
}

.attention3 .clm2 .clm dl dd ul li {
  margin-bottom: 7px;
  padding: 5px;
  border: 2px solid #82bbda;
  color: #4ca2d1;
  font-weight: 700;
}

.attention3 .clm2 .clm dl dd ul li.mb14 {
  margin-bottom: 14px;
}

.attention3 .clm2 .clm dl dd ul li.arrow {
  position: relative;
  margin-bottom: 42px;
}

.attention3 .clm2 .clm dl dd ul li.arrow:after {
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
  bottom: -33px;
  left: 0;
  margin: 0 auto;
  border-width: 25px 45.5px 0 45.5px;
  border-style: solid;
  border-color: #cbeffd rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
  content: "";
}

.attention3 .clm2 .clm dl dd ul li.shadow {
  box-shadow: 0 0 0 7px #cbeffd;
}

.attention3 .bd-box {
  position: relative;
  padding: 40px 105px;
  border: 4px solid #82bbda;
  border-radius: 20px;
}

.attention3 .bd-box figure {
  position: absolute;
  right: 20px;
  bottom: 0;
}

@media screen and (max-width: 768px) {
  .anc-btn2 {
    display: block;
  }
  .anc-btn2 a {
    display: block;
    width: 100%;
    margin-bottom: 4%;
  }
  .attention1 .box {
    padding: 6vw 0;
  }
  .attention1 .box ul li {
    margin-bottom: 4%;
    background: url("../img/ic-check.svg") left top 0.3em no-repeat;
  }
  .attention2 {
    padding: 12vw 0 10vw;
  }
  .attention2 .box {
    padding: 6vw 0 8vw;
  }
  .attention2 .box .clm2 {
    display: block;
  }
  .attention2 .box .sp-pl {
    padding-left: 30px;
  }
  .attention2 .box .leftcol {
    width: 100%;
    margin-bottom: 10%;
  }
  .attention2 .box .rightcol {
    width: 100%;
  }
  .attention2 .box .rightcol .sp-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .attention2 .box .rightcol .imgright {
    display: block;
    width: 48%;
    text-align: center;
  }
  .attention2 .box .rightcol .imgright:first-child {
    width: 100%;
  }
  .attention2 .box .rightcol .imgright p {
    width: 100%;
    margin-bottom: 5vw;
  }
  .attention2 .box .rightcol .imgright figure {
    width: 100%;
  }
  .attention3 {
    padding: 10vw 0 15vw;
  }
  .attention3 .clm2 {
    display: block;
  }
  .attention3 .clm2 .clm {
    width: 100%;
  }
  .attention3 .clm2 .clm .subttl4 {
    margin-left: 0;
  }
  .attention3 .clm2 .clm .minh2 {
    min-height: inherit;
    margin-bottom: 10px;
    margin-left: 30px;
  }
  .attention3 .clm2 .clm dl,
  .attention3 .clm2 .clm p {
    margin-right: 0;
    margin-left: 0;
  }
  .attention3 .clm2 .clm dl p {
    margin-right: 0;
    margin-left: 0;
  }
  .attention3 .clm2 .clm dl dt {
    padding: 6px;
  }
  .attention3 .bd-box {
    padding: 6% 46% 5% 5%;
  }
  .attention3 .bd-box p {
    line-height: 1.6;
    text-align: left;
  }
  .attention3 .bd-box figure {
    width: 35%;
    right: 10px;
  }
  .attention3 .bd-box figure img {
    width: 100%;
  }
}
.guide1 {
  padding: 35px 0 55px;
  background: url("../img/guide-bg.svg") center top 245px no-repeat #e2f6fe;
}

.guide1 .flow-anc {
  display: flex;
  justify-content: space-between;
}

.guide1 .flow-anc .box, .guide1 .flow-anc a {
  display: block;
  width: 19.2%;
  position: relative;
  margin-bottom: 10px;
  border: 4px solid #d3eefb;
  border-radius: 20px;
}

.guide1 .flow-anc .box:nth-child(2n), .guide1 .flow-anc a:nth-child(2n) {
  border: 4px solid #84bbda;
}

.guide1 .flow-anc .box h3, .guide1 .flow-anc a h3 {
  position: absolute;
  top: -17px;
  left: 20px;
  padding: 0 8px;
  color: #70bcde;
  line-height: 1;
  background: linear-gradient(transparent 50%, #fff 50%);
}

.guide1 .flow-anc .box dl, .guide1 .flow-anc a dl {
  padding: 20px 5px 10px 15px;
  border-radius: 15px 15px 0 0;
  text-align: left;
  background: #fff;
}

.guide1 .flow-anc .box figure img, .guide1 .flow-anc a figure img {
  border-radius: 0 0 15px 15px;
}

.detail5 .link-list a {
  display: inline-block;
  margin: 0 7px 5px;
}

.guide1 .bd-box {
  padding: 60px 0 80px;
  border: 4px solid #82bbda;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  text-align: left;
  background: #fff;
}

.guide1 .bd-box ol.step-flow > li {
  position: relative;
  padding-bottom: 60px;
}

.guide1 .bd-box ol.step-flow > li a {
  position: relative;
  z-index: 100;
}

.guide1 .bd-box ol.step-flow > li:last-child {
  padding-bottom: 0;
}

.guide1 .bd-box ol.step-flow > li:after {
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  margin: 0 auto;
  border-width: 25px 45.5px 0 45.5px;
  border-style: solid;
  border-color: #b7ddee rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0);
  content: "";
}

.guide1 .bd-box ol.step-flow > li:last-child:after {
  content: none;
}

.guide1 .bd-box ol.step-flow > li .imgright {
  display: flex;
  margin-bottom: 5px;
  padding: 20px 40px;
  border-top: 3px solid #d3eefb;
  border-bottom: 3px solid #d3eefb;
  justify-content: space-between;
}

.guide1 .bd-box ol.step-flow > li .imgright div {
  width: 54%;
}

.guide1 .bd-box ol.step-flow > li .imgright figure {
  width: 40%;
}

.guide1 .bd-box ol.step-flow > li ol.step2-ol li {
  display: flex;
  margin-bottom: 5px;
}

.guide1 .bd-box ol.step-flow > li ol.step2-ol li em {
  width: 20px;
  height: 20px;
  margin-right: 8px;
  border-radius: 50%;
  color: #fff;
  line-height: 20px;
  font-weight: 600;
  text-align: center;
  background: #70bcde;
}

.guide1 .bd-box ol.step-flow > li ol.step2-ol li span {
  display: inline-block;
  line-height: 1.4;
}

.guide1 .bd-box ol.step-flow > li .t-right {
  padding-right: 40px;
}

.guide1 .bd-box ol.step-flow > li ol.step3-ol {
  display: flex;
  justify-content: space-between;
}

.guide1 .bd-box ol.step-flow > li ol.step3-ol li {
  width: 30%;
  text-align: center;
}

.guide1 .bd-box ol.step-flow > li ol.step3-ol li p {
  margin-bottom: 5px;
}

.guide2 {
  padding-top: 35px;
}

.guide2 .imgright {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .guide1 {
    padding: 7vw 0 11vw;
    background: url("../img/guide-bg.svg") center top 245px no-repeat #e2f6fe;
  }
  .guide1 .flow-anc {
    display: block;
  }
  .guide1 .flow-anc .box, .guide1 .flow-anc a {
    display: flex;
    width: 100%;
    margin-bottom: 9vw;
    justify-content: space-between;
  }
  .guide1 .flow-anc .box:last-child, .guide1 .flow-anc a:last-child {
    margin-bottom: 2%;
  }
  .guide1 .flow-anc .box h3, .guide1 .flow-anc a h3 {
    top: -17%;
    background: linear-gradient(transparent 55%, #fff 55%);
  }
  .guide1 .flow-anc .box dl, .guide1 .flow-anc a dl {
    width: 65%;
    padding: 6% 5% 5% 3%;
    border-radius: 15px 0 0 15px;
  }
  .guide1 .flow-anc .box dd, .guide1 .flow-anc a dd {
    line-height: 1.4;
  }
  .guide1 .flow-anc .box figure, .guide1 .flow-anc a figure {
    overflow: hidden;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    padding-right: 35%;
  }
  .guide1 .flow-anc .box figure img, .guide1 .flow-anc a figure img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0 15px 15px 0;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .guide1 .bd-box {
    padding: 5vw 0 6vw;
  }
  .guide1 .bd-box ol.step-flow > li {
    margin-bottom: 2vw;
  }
  .guide1 .bd-box ol.step-flow > li .imgright {
    display: block;
    padding: 20px 0;
  }
  .guide1 .bd-box ol.step-flow > li .imgright div {
    width: 100%;
    margin-bottom: 7vw;
  }
  .guide1 .bd-box ol.step-flow > li .imgright figure {
    width: 75%;
    margin-right: auto;
    margin-left: auto;
  }
  .guide1 .bd-box ol.step-flow > li .t-right {
    padding-right: 0;
  }
  .guide1 .bd-box ol.step-flow > li ol.step3-ol {
    display: block;
  }
  .guide1 .bd-box ol.step-flow > li ol.step3-ol li {
    width: 100%;
    margin-bottom: 5vw;
  }
  .guide1 .bd-box ol.step-flow > li ol.step3-ol li figure {
    width: 75%;
    margin-right: auto;
    margin-left: auto;
  }
  .guide1 .bd-box ol.step-flow > li#step4 figure {
    width: 113.6%;
    margin-left: -6.7%;
  }
  .guide2 {
    padding-top: 8vw;
  }
  .guide2 .imgright {
    display: block;
  }
  .guide2 .imgright ul {
    margin-bottom: 6vw;
  }
}
.faq-bg {
  background: url("../img/faq-bg.svg") center top 73px no-repeat #f8fdff;
}

.about-process {
  display: flex;
  max-width: 686px;
  margin-right: auto;
  margin-left: auto;
}

.about-process .about-anc {
  display: flex;
}

.about-process .about-anc a {
  display: block;
  width: 125px;
  min-height: 122px;
  margin-right: 16px;
  padding: 15px 5px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  color: #173c8a;
  background: #fff;
}

.about-process .about-anc a dl dt {
  margin-bottom: 4px;
  line-height: 1;
}

.about-process .about-anc a dl dd {
  line-height: 1.4;
}

.about-process .process3 {
  width: 422px;
}

.about-process .process2 {
  width: 264px;
}

.about-process .process2 ol li:last-child {
  margin-right: 0;
}

.about1 ol li {
  padding: 20px 0 35px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

.about1 ol li .imgleft {
  display: flex;
  justify-content: space-between;
}

.about1 ol li .imgleft figure {
  width: 39.375%;
}

.about1 ol li .imgleft dl {
  width: 54.375%;
  text-align: left;
}

.about1 ol li h4 strong {
  display: inline-block;
  margin-right: 0.8em;
}

.about1 ol li .about1-bg {
  min-height: 153px;
  padding-top: 40px;
  border-top: 3px solid #d3eefb;
  background: url("../img/bg-circle-yellow.svg") center top 40px no-repeat;
}

.about1 .bd-pink {
  padding: 35px 0 55px;
  border: 4px solid #dd7fb1;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

.about1 .bd-pink .imgleft {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}

.about1 .bd-pink .imgleft figure {
  width: 34.375%;
}

.about1 .bd-pink .imgleft div {
  width: 57.125%;
  text-align: left;
}

.about2.top5 {
  background: #f8fdff;
}

.about2.top5:before {
  content: none;
}

.about3 {
  padding-top: 45px;
}

@media screen and (max-width: 768px) {
  .about-process {
    display: block;
    max-width: inherit;
  }
  .about-process .about-anc {
    justify-content: center;
  }
  .about-process .about-anc a {
    width: 32%;
    min-height: 100px;
    margin-right: 2%;
    padding: 4% 3% 6%;
  }
  .about-process .about-anc a dl dt {
    margin-bottom: 8%;
  }
  .about-process .about-anc a dl dd {
    line-height: 1.2;
  }
  .about-process .process3 {
    width: inherit;
  }
  .about-process .process2 {
    width: inherit;
  }
  .about-process .about-anc a:last-child {
    margin-right: 0;
  }
  .about1 ol li {
    padding: 4% 0;
  }
  .about1 ol li h4 {
    position: relative;
    padding-right: 24px;
  }
  .about1 ol li h4:after {
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto 0;
    background: url("../img/about-ac-open.svg") center no-repeat;
    content: "";
  }
  .about1 ol li .sp-btn.open h4:after {
    background: url("../img/about-ac-close.svg") center no-repeat;
  }
  .about1 ol li .imgleft {
    display: block;
  }
  .about1 ol li .imgleft figure {
    width: 113.4%;
    margin: 0 0 5% -6.7%;
  }
  .about1 ol li .imgleft dl {
    width: 100%;
  }
  .about1 ol li .about1-bg {
    padding-top: 14%;
  }
  .about1 ol li .sp-ac {
    display: none;
  }
  .about1 .bd-pink {
    padding: 8% 0 10%;
  }
  .about1 .bd-pink .imgleft {
    display: block;
  }
  .about1 .bd-pink .imgleft figure {
    width: 100%;
  }
  .about1 .bd-pink .imgleft div {
    width: 100%;
    margin-bottom: 15%;
  }
  .about2.top5 {
    padding-top: 10%;
  }
  .about3 {
    padding-top: 7%;
  }
}
.slick-slider {
  display: block;
  box-sizing: border-box;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.slick-list {
  display: block;
  overflow: hidden;
  position: relative;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  display: block;
  position: relative;
  top: 0;
  left: 0;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  min-height: 1px;
  height: 100%;
  float: left;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid rgba(0, 0, 0, 0);
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-prev,
.slick-next {
  display: block;
  width: 44px;
  height: 44px;
  position: absolute;
  top: 50%;
  padding: 0;
  border: none;
  outline: none;
  color: rgba(0, 0, 0, 0);
  line-height: 0;
  font-size: 0;
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
  transform: translate(0, -50%);
  z-index: 9;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  opacity: 0.75;
  color: #fff;
  line-height: 1;
  font-family: "slick";
  font-size: 20px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -55px;
  background: url("../img/prev.svg") center no-repeat;
}

.slick-prev:hover {
  opacity: 1;
  background: url("../img/prev-on.svg") center no-repeat;
}

[dir=rtl] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-prev:before {
  content: "";
}

[dir=rtl] .slick-prev:before {
  content: "";
}

.slick-next {
  right: -55px;
  background: url("../img/next.svg") center no-repeat;
}

.slick-next:hover {
  opacity: 1;
  background: url("../img/next-on.svg") center no-repeat;
}

[dir=rtl] .slick-next {
  right: auto;
  left: -25px;
}

.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  display: block;
  list-style: none;
  width: 100%;
  position: absolute;
  bottom: -35px;
  margin: 0;
  padding: 0;
  text-align: center;
}

.slick-dots li {
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  border: 0;
  outline: none;
  color: rgba(0, 0, 0, 0);
  line-height: 0;
  font-size: 0;
  background: rgba(0, 0, 0, 0);
  cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  line-height: 20px;
  font-family: "slick";
  font-size: 12px;
  text-align: center;
  content: "●";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: #173c8a;
}

@media screen and (max-width: 768px) {
  .slick-prev {
    left: 5%;
  }
  .slick-next {
    right: 5%;
  }
}
.slick-dots li button:before {
  font-size: 9px;
}

.character {
  display: inline-block;
}

.character {
  border: none !important;
}

@media screen and (max-width: 768px) {
  .contents-ttl {
    background: url("/common/img/bg-ring.svg") right -40vw top 80vw/92vw auto no-repeat #f8fdff;
  }
}
.contents-detail-box {
  margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
  .contents-detail-box {
    margin-bottom: 21.334vw;
  }
}
.pageLink {
  margin-top: -150px;
  padding-top: 150px;
}

@media screen and (max-width: 768px) {
  .pageLink {
    margin-top: -26.667vw;
    padding-top: 26.667vw;
  }
}
.contents-wrap .link-cont dl {
  overflow-wrap: break-word;
}

.contents-detail-wrap {
  padding-bottom: 70px;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap {
    padding-bottom: 10.6667vw;
  }
}
.contents-detail-wrap img {
  display: block;
  margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap img {
    margin-bottom: 5.3334vw;
  }
}
@media screen and (min-width: 769px) {
  .contents-detail-wrap img {
    width: 100%;
  }
}
.contents-detail-wrap .imgleft img,
.contents-detail-wrap .imgright img {
  display: block;
  margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .imgleft img,
  .contents-detail-wrap .imgright img {
    margin-bottom: 4vw;
  }
}
.contents-detail-wrap .rightcol h3,
.contents-detail-wrap .leftcol h3 {
  font-size: 18px;
}

.contents-detail-wrap h3 {
  margin-bottom: 26px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap h3 {
    margin-bottom: 6.9334vw;
  }
}
.contents-detail-wrap .subttl2 {
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .subttl2 {
    margin-bottom: 5.3334vw;
  }
}
.contents-detail-wrap .subttl3 {
  margin-top: 70px;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .subttl3 {
    height: 14.9334vw;
    margin-top: 10.6667vw;
    margin-bottom: 8vw;
  }
}
.contents-detail-wrap .subttl4 {
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .subttl4 {
    margin-bottom: 4vw;
  }
}
.contents-detail-wrap .lead2 {
  padding: 30px 25px 0;
  color: #707070;
  background: url("/common/img/contents-detail-lead2-1.svg") left top no-repeat, url("/common/img/contents-detail-lead2-2.svg") right bottom 10px no-repeat;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .lead2 {
    padding: 30px 0;
    background: url("/common/img/contents-detail-lead2-1.svg") left top no-repeat, url("/common/img/contents-detail-lead2-2.svg") right bottom 30px no-repeat;
  }
}
.contents-detail-wrap .lead2 p {
  margin-bottom: 20px;
}

.contents-detail-wrap .lead2 p:last-child {
  margin-bottom: 0;
}

.contents-detail-wrap .lead2 small {
  font-size: 10px;
}

.contents-detail-wrap .bd-box {
  padding: 20px;
  border: 1px solid #707070;
  color: #707070;
  font-size: 10px;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .bd-box {
    padding: 12px 15px;
  }
}
.contents-detail-wrap .img_column2 {
  display: flex;
  width: 100%;
  justify-content: center;
}

.contents-detail-wrap .img_column2 figure {
  margin-right: 20px;
}

.contents-detail-wrap .img_column2 figure:last-child {
  margin-right: 0;
}

.contents-detail-wrap .img_column3 {
  display: flex;
  justify-content: center;
}

.contents-detail-wrap .img_column3 figure {
  margin-right: 10px;
}

.contents-detail-wrap .img_column3 figure:last-child {
  margin-right: 0;
}

@media screen and (max-width: 768px) {
  .contents-detail-wrap .img_column2 {
    display: block;
  }
  .contents-detail-wrap .img_column2 figure {
    margin-right: auto;
    margin-bottom: 2.66666667vw;
    margin-left: auto;
  }
  .contents-detail-wrap .img_column2 figure:last-child {
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
  }
  .contents-detail-wrap .img_column3 {
    display: block;
  }
  .contents-detail-wrap .img_column3 figure {
    margin-right: auto;
    margin-bottom: 2.66666667vw;
    margin-left: auto;
  }
  .contents-detail-wrap .img_column3 figure:last-child {
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
  }
}
@media screen and (max-width: 768px) {
  .top12 {
    padding: 19.7334vw 0 15%;
    background: url("/common/img/top12-bg-lead.svg") center top 10.6667vw no-repeat #cbeffd;
  }
  .btn.t-left {
    text-align: left;
  }
  .footer-cont {
    padding-bottom: 20%;
    background-color: #f8fdff;
  }
  .footer .fnav1 .wrap a {
    padding: 0 4vw 4vw;
  }
  .footer .fnav1 .wrap a:last-child {
    padding: 0 0 4vw;
  }
  .footer .fnav2 .wrap a {
    padding: 0.8vw 10.6667vw;
  }
  .footer .fnav2 .wrap a:nth-child(n+3) {
    padding: 0.8vw 3.4667vw;
  }
}
.banner {
  max-width: 800px;
  margin: 0 auto 70px;
}

@media screen and (max-width: 768px) {
  .banner {
    max-width: 84vw;
    margin-bottom: 13.3334vw;
  }
}
.prev-next-btn {
  padding-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .prev-next-btn {
    padding-bottom: 16vw;
  }
}
.lower-ttl {
  display: flex;
  padding: 0 3%;
  align-items: center;
  justify-content: center;
}

.shopping3 {
  background: #f8fdff;
}

.shopping4 .inner {
  align-items: center;
}

.top2 h2 {
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .detail1 .imgleft .rightcol .impossible {
    display: block;
  }
  .detail1 .imgleft .rightcol .impossible span {
    display: block;
  }
}
.about_ttl {
  margin-bottom: 10px;
  color: #5cc7aa;
  font-size: 25px;
  font-weight: 900;
}

.about_ttlNum {
  font-size: 38px;
}

.about1 ol li .arrow_green:after {
  background: url(../img/ac-open02.svg) center no-repeat;
}

.about1 ol li .sp-btn.open .arrow_green:after {
  background: url(../img/ac-close02.svg) center no-repeat !important;
}

.faq-bg .anc-btn2 a {
  font-size: 16px;
}

@media screen and (max-width: 768px) {
  .faq-bg dl.faq dt:after {
    top: 20px;
    right: 8px;
  }
}
@media screen and (max-width: 768px) {
  .sp-t-left {
    text-align: left;
  }
}
.anc-btn2 a:after {
  background-color: #f8fdff;
}

.fs-l-cart {
  padding-bottom: 120px;
}

.fs-c-breadcrumb {
  display: flex;
  box-sizing: content-box;
  max-width: 1000px;
  margin: 0 auto 40px;
  padding: 15px 6% 0;
  flex-wrap: wrap;
}

.fs-c-breadcrumb li {
  margin-right: 1em;
  color: #4ca2d1;
  line-height: 1.4;
  font-size: 11px;
}

.fs-c-breadcrumb li a {
  color: #a3a3a3;
}

.fs-c-button--continueShopping.fs-c-button--standard {
  display: inline-block;
  min-width: 256px;
  position: relative;
  padding: 10px 40px 11px 30px;
  border: 3px solid #4ca2d1;
  border-radius: 99px;
  box-shadow: 0 5px 20px 1px rgba(0, 87, 175, 0.3);
  color: #fff;
  line-height: 1.2;
  font-size: 15px;
  font-weight: 700;
  text-align: center;
  background: #4ca2d1;
}

.fs-c-button--continueShopping.fs-c-button--standard:after {
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1) inset;
  background: url("../img/arrow-right-white.svg") center/7px auto no-repeat #2389c1;
  content: "";
}

.fs-c-cartTableContainer,
.fs-body-cart .fs-l-cart__sideColumn {
  padding: 0;
  border: none;
}

.fs-c-cartTable__productName__name {
  text-align: left;
}

.fs-c-cartTableContainer {
  background: #fff;
}

.fs-c-totalAndActions.fs-l-cart__sideColumn {
  padding: 30px;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
}

.fs-c-payWithAmazon__button {
  width: 100%;
}

.fs-c-cartTable__headerCell,
.fs-c-cartTable__dataCell {
  padding: 15px 10px;
  vertical-align: middle;
}

.fs-c-orderTotalTable > thead > tr th,
.fs-c-orderTotalTable > thead > tr td,
.fs-c-orderTotalTable > tfoot > tr th,
.fs-c-orderTotalTable > tfoot > tr td,
.fs-c-orderTotalTable > tbody > tr th,
.fs-c-orderTotalTable > tbody > tr td {
  border-top: none;
  border-bottom: 1px solid #b2b2b2;
}

.fs-l-pageMain {
  box-sizing: content-box;
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 6%;
  padding-left: 6%;
}

@media screen and (max-width: 768px) {
  .fs-l-pageMain {
    width: 100%;
    box-sizing: border-box;
  }
}
.fs-c-wishlistProduct__title {
  margin-bottom: 20px;
  padding-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .fs-c-wishlistProduct__title {
    margin-bottom: 20px;
    padding-bottom: 5px;
  }
}
@media screen and (max-width: 768px) {
  .fs-l-pageMain .fs-l-cart {
    padding-bottom: 0;
  }
}
.fs-c-cartTable__actionButton {
  white-space: nowrap;
}

.fs-l-header--min {
  border: none;
}

.fs-c-orderTotalTable th {
  font-size: 90%;
}

.fs-c-cartPayment,
.fs-c-payWithAmazon {
  font-size: 1.1rem;
}

.fs-c-button--primary,
.fs-c-button--secondary {
  max-width: 100%;
}

.fs-c-reviewList__item {
  margin: 0 auto 20px;
  padding: 30px;
  border-bottom: none;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
  justify-content: space-between;
  align-items: center;
}

.fs-c-reviewList__item:first-child {
  border: none;
}

.fs-c-reviewList__item__body {
  margin: 0;
  text-align: left;
}

.fs-c-listControl {
  margin-bottom: 20px;
  justify-content: center;
}

.fs-c-history {
  padding: 45px 0 120px;
}

.fs-c-pagination__item.is-active {
  border-radius: 20px;
  background: #4ca2d1;
}

#fs_PageNotFound .fs-l-pageMain {
  padding-top: 80px;
  padding-bottom: 120px;
}

@media screen and (max-width: 768px) {
  #fs_PageNotFound .fs-l-pageMain {
    padding-top: 10.6666666667vw;
    padding-bottom: 16vw;
    box-sizing: border-box;
  }
}
.fs-c-productName__copy,
.fs-c-productName__name,
.fs-c-productName__variation,
.fs-c-productReviewed__number {
  text-align: left;
}

.fs-c-aggregateRating {
  display: none;
}

.fs-p-returnPolicy {
  padding-bottom: 140px;
}

@media screen and (max-width: 768px) {
  .fs-p-returnPolicy {
    padding-bottom: 18.6666666667vw;
  }
}
.fs-c-documentColumn {
  margin-bottom: 60px;
}

.fs-c-documentColumn:last-child {
  margin-bottom: 0;
}

.fs-c-documentColumn p,
.fs-c-documentColumn li {
  line-height: 1.9;
  text-align: left;
}

.fs-c-documentColumn li {
  padding-left: 1em;
  text-indent: -1em;
}

.fs-c-subSection__title,
.fs-c-linkedServiceLogin__title {
  padding: 24px 0 20px 25px;
  border-bottom: none;
  color: #173c8a;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 900;
  text-align: left;
  background: url(../img/subttl2.svg) left top no-repeat;
}

.fs-c-newUsers__message.fs-c-subSection__message {
  margin: 24px auto;
  font-size: 13px;
  text-align: left;
}

.fs-c-inputInformation__field {
  margin: 0;
}

.fs-c-fsLogin.fs-c-inputInformation form {
  margin: 24px auto;
  padding: 30px;
  border-bottom: none;
  border-radius: 20px;
  box-shadow: 0 0 20px 0 rgba(0, 81, 175, 0.1);
  background: #fff;
  justify-content: space-between;
  align-items: center;
}

.fs-l-header {
  padding-top: 0;
}

.fs-c-breadcrumb__list {
  padding: 0;
}

.fs-c-breadcrumb__listItem:last-child {
  font-weight: 600;
}

.fs-c-breadcrumb__listItem:last-child:before {
  color: #a3a3a3;
}

.fs-c-breadcrumb__list {
  display: flex;
}

.fs-p-drawer__loginLogout__logout {
  margin-top: 10px;
}

@media screen and (max-width: 768px) {
  .inquiry .cont_wrapper {
    background-color: #fff;
  }
}
.inquiry .privacy_txt {
  padding: 20px 0;
  line-height: 1.7;
  font-size: 10px;
  text-align: center;
  letter-spacing: 0.05em;
}

.inquiry .privacy_txt a {
  text-decoration: underline;
}

.inquiry .privacy_txt a:hover {
  text-decoration: none;
}

@media screen and (max-width: 768px) {
  .inquiry .privacy_txt {
    padding: 5.33333333vw 0;
    font-size: 2.66666667vw;
  }
}
.inquiry .intro_txt {
  max-width: 750px;
  margin: 0 auto 30px;
  line-height: 1.78;
  font-size: 14px;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .inquiry .intro_txt {
    max-width: 100%;
    margin-bottom: 5.33333333vw;
    padding: 0 6%;
    font-size: 3.73333333vw;
  }
}
.inquiry .top12 {
  padding: 0 0 50px;
  background: none;
}

@media screen and (max-width: 768px) {
  .inquiry .top12 {
    padding: 0 0 13.33333333vw;
  }
  .inquiry .top12 ul {
    display: block;
    margin-bottom: 8vw;
    padding: 0 6%;
  }
  .inquiry .top12 ul li {
    margin-bottom: 6.66666667vw;
  }
  .inquiry .top12 ul li:last-child {
    margin-bottom: 0;
  }
}
.inquiry .top12 .txt01 {
  margin-bottom: 40px;
  font-size: 16px;
}

@media screen and (max-width: 768px) {
  .inquiry .top12 .txt01 {
    margin-bottom: 8vw;
    padding: 0 6%;
    font-size: 4.26666667vw;
    text-align: left;
  }
}
.inquiry .top12 .bg-white1 {
  height: 330px;
  position: relative;
  margin-bottom: 0;
  padding: 87px 0 0;
  background: url(../img/top12-inquiryBg.png) center top/1060px auto no-repeat;
}

@media screen and (max-width: 768px) {
  .inquiry .top12 .bg-white1 {
    height: 104vw;
    padding-top: 24.53333333vw;
    background: url(../img/top12-inquiryBg-sp.png) center/100% auto no-repeat;
  }
}
.inquiry .top12::after {
  content: none;
}

.inquiry .inquiry_wrap {
  position: relative;
  padding: 70px 0 120px;
  background-color: #e2f6fe;
  background-image: url(../img/shopping2-bg-pc.svg), url(../img/top12-bg-lead.svg);
  background-repeat: no-repeat;
  background-position: center top -60px, center top 36px;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap {
    padding: 18.66666667vw 0 120px;
    background-image: none, url(../img/top12-bg-lead.svg);
    background-position: center top 6.66666667vw;
  }
}
.inquiry .inquiry_wrap::after {
  width: 100%;
  height: 72px;
  position: absolute;
  bottom: 0;
  left: 0;
  background: url(../img/top12-bottom.png) center bottom/12px auto repeat-x;
  z-index: 1;
  content: "";
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap::after {
    height: 19.2vw;
    background: url(../img/top12-bottom.png) center bottom/3.2vw auto repeat-x;
  }
}
.inquiry .inquiry_wrap > .wrap {
  width: 550px;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap > .wrap {
    width: 100%;
  }
}
.inquiry .inquiry_wrap h2 {
  margin-bottom: 36px;
  font-size: 25px;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap h2 {
    margin-bottom: 5.33333333vw;
    font-size: 6.66666667vw;
  }
}
.inquiry .inquiry_wrap input::-moz-placeholder,
.inquiry .inquiry_wrap textarea::-moz-placeholder {
  color: #d9d9d9;
}

.inquiry .inquiry_wrap input::-moz-placeholder, .inquiry .inquiry_wrap textarea::-moz-placeholder {
  color: #d9d9d9;
}

.inquiry .inquiry_wrap input::placeholder,
.inquiry .inquiry_wrap textarea::placeholder {
  color: #d9d9d9;
}

.inquiry .inquiry_wrap input[type=checkbox],
.inquiry .inquiry_wrap input[type=radio] {
  display: none;
}

.inquiry .inquiry_wrap textarea {
  resize: vertical;
}

.inquiry .inquiry_wrap input[type=submit],
.inquiry .inquiry_wrap input[type=button],
.inquiry .inquiry_wrap label,
.inquiry .inquiry_wrap button,
.inquiry .inquiry_wrap select {
  cursor: pointer;
}

.inquiry .inquiry_wrap .inquiry_typeList {
  margin-bottom: 22px;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap .inquiry_typeList {
    margin-bottom: 5.86666667vw;
  }
}
.inquiry .inquiry_wrap .inquiry_typeListBtn {
  position: relative;
  margin-bottom: 5px;
  padding-left: 30px;
  color: #0d1d54;
  font-size: 14px;
  letter-spacing: 0.02em;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap .inquiry_typeListBtn {
    margin-bottom: 1.33333333vw;
    padding-left: 8vw;
    font-size: 3.73333333vw;
  }
}
.inquiry .inquiry_wrap .inquiry_typeListBtn:last-child {
  margin-bottom: 0;
}

.inquiry .inquiry_wrap .inquiry_typeListBtn .check {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  border: 1px solid #ddd;
  border-radius: 50%;
  background: #fff;
  transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap .inquiry_typeListBtn .check {
    width: 5.33333333vw;
    height: 5.33333333vw;
  }
}
.inquiry .inquiry_wrap .inquiry_typeListBtn .check::after {
  display: inline-block;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 3px;
  border-radius: 50%;
  opacity: 0;
  background: #0d1d54;
  transform: translateY(-50%);
  content: "";
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap .inquiry_typeListBtn .check::after {
    width: 3.2vw;
    height: 3.2vw;
    left: 0.8vw;
  }
}
.inquiry .inquiry_wrap .inquiry_typeListBtn.active .check::after {
  opacity: 1;
}

.inquiry .inquiry_wrap table {
  width: 100%;
}

.inquiry .inquiry_wrap dt.head,
.inquiry .inquiry_wrap td.head {
  display: block;
  width: 100%;
  margin-bottom: 10px;
  color: #0d1d54;
  font-size: 14px;
  font-weight: bold;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap dt.head,
  .inquiry .inquiry_wrap td.head {
    margin-bottom: 2.66666667vw;
    font-size: 3.73333333vw;
  }
}
.inquiry .inquiry_wrap td.data {
  display: block;
  width: 100%;
  margin-bottom: 14px;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap td.data {
    margin-bottom: 3.73333333vw;
  }
}
.inquiry .inquiry_wrap td select {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap .inquiry_type .attention {
    margin-top: 2.66666667vw;
    margin-left: 0;
  }
}
.inquiry .inquiry_wrap .attention {
  display: inline-block;
  margin-left: 10px;
  padding: 3px 6px 5px;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.05em;
  background-color: #d94659;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap .attention {
    margin-left: 2.66666667vw;
    padding: 0.8vw 1.6vw 1.33333333vw;
    font-size: 3.2vw;
  }
}
.inquiry .inquiry_wrap input,
.inquiry .inquiry_wrap textarea,
.inquiry .inquiry_wrap select {
  border: 1px solid #ddd;
  font-size: 14px;
  background-color: #fff;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap input,
  .inquiry .inquiry_wrap textarea,
  .inquiry .inquiry_wrap select {
    font-size: 3.73333333vw;
  }
}
.inquiry .inquiry_wrap textarea {
  min-height: 265px;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap textarea {
    min-height: 76vw;
  }
}
.inquiry .inquiry_wrap input[type=reset] {
  display: none;
}

.inquiry .inquiry_wrap input[type=submit] {
  display: block;
  min-width: 316px;
  height: 65px;
  margin: 0 auto;
  border: none;
  border-radius: 42px;
  box-shadow: 0 5px 20px 1px rgba(0, 87, 175, 0.3);
  color: #fff;
  line-height: 1.2;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.075em;
  background-image: url(/common/img/inquirybtn-bg-pc.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100%;
}

@media screen and (max-width: 768px) {
  .inquiry .inquiry_wrap input[type=submit] {
    min-width: 100%;
    height: 17.33333333vw;
    border-radius: 11.2vw;
    box-shadow: 0 1.33333333vw 5.33333333vw 1px rgba(0, 87, 175, 0.3);
    font-size: 4.8vw;
    background-image: url(/common/img/inquirybtn-bg-sp.png);
  }
}
.inquiry .inquiry_cntWrap {
  display: none;
}

.inquiry .inquiry_cntWrap.show {
  display: block;
}

@media screen and (max-width: 768px) {
  .confirm {
    background-color: #f8fdff;
    background-image: none;
  }
}
.confirm .confirm_wrap {
  margin-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .confirm .confirm_wrap {
    margin-bottom: 26.66666667vw;
  }
}
.confirm .wrap h1:not(.logo) {
  margin-bottom: 30px;
  color: #173c8a;
  font-size: 18px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .confirm .wrap h1:not(.logo) {
    margin-bottom: 8vw;
    font-size: 4.8vw;
  }
}
.confirm #formmailer_contents {
  margin-top: 40px;
  padding: 70px 40px;
  background-color: #e6f7fe;
}

@media screen and (max-width: 768px) {
  .confirm #formmailer_contents {
    margin-top: 10.66666667vw;
    padding: 18.66666667vw 5.33333333vw;
  }
}
.confirm #formmailer_table1 {
  width: 100%;
  margin-bottom: 30px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .confirm #formmailer_table1 {
    margin-bottom: 8vw;
  }
}
.confirm #formmailer_table2 {
  width: 700px;
  margin: 0 auto;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .confirm #formmailer_table2 {
    width: 100%;
  }
}
.confirm #formmailer_table2 tr {
  border-bottom: 2px solid #fff;
}

@media screen and (max-width: 768px) {
  .confirm #formmailer_table2 tr {
    border-bottom: 0.53333333vw solid #fff;
  }
}
.confirm #formmailer_table2 tr:first-child {
  border-top: 2px solid #fff;
}

@media screen and (max-width: 768px) {
  .confirm #formmailer_table2 tr:first-child {
    border-top: 0.53333333vw solid #fff;
  }
}
.confirm td.head {
  width: 200px;
  padding: 20px;
}

@media screen and (max-width: 768px) {
  .confirm td.head {
    display: block;
    width: 100%;
    padding: 5.33333333vw;
  }
}
.confirm td.data {
  padding-right: 20px;
}

@media screen and (max-width: 768px) {
  .confirm td.data {
    display: block;
    width: 100%;
    padding: 0 5.33333333vw 5.33333333vw;
  }
}
.confirm #formmailer_button {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .confirm #formmailer_button {
    margin-top: 10.66666667vw;
  }
}
.confirm input[type=submit],
.confirm input[type=button] {
  display: inline-block;
  min-width: 316px;
  height: auto;
  position: relative;
  margin: 0 auto;
  padding: 20px 0;
  border-radius: 42px;
  color: #fff;
  line-height: 1.2;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.075em;
}

@media screen and (max-width: 768px) {
  .confirm input[type=submit],
  .confirm input[type=button] {
    min-width: 100%;
    padding: 5.33333333vw 0;
    border-radius: 11.2vw;
    font-size: 4.8vw;
  }
}
.confirm input[type=submit],
.confirm input[type=button] {
  display: inline-block;
  min-width: 316px;
  height: 65px;
  border-radius: 42px;
  color: #fff;
  line-height: 1.2;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.075em;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100%;
}

@media screen and (max-width: 768px) {
  .confirm input[type=submit],
  .confirm input[type=button] {
    min-width: 100%;
    height: 17.33333333vw;
    border-radius: 11.2vw;
    font-size: 4.8vw;
  }
}
.confirm input[type=submit] {
  margin-right: 20px;
  box-shadow: 0 5px 20px 1px rgba(0, 87, 175, 0.3);
  background-image: url(/common/img/inquirybtn-bg-pc.png);
}

@media screen and (max-width: 768px) {
  .confirm input[type=submit] {
    margin: 0 auto 5.33333333vw;
    box-shadow: none;
    background-image: url(/common/img/inquirybtn-bg-sp.png);
  }
}
.confirm input[type=button] {
  box-shadow: 0 5px 20px 1px rgba(153, 153, 153, 0.3);
  background: #999;
}

@media screen and (max-width: 768px) {
  .confirm input[type=button] {
    box-shadow: 0 1.33333333vw 5.33333333vw 1px rgba(153, 153, 153, 0.3);
  }
}
.thanks .faq-bg {
  padding-bottom: 100px;
}

@media screen and (max-width: 768px) {
  .thanks .faq-bg {
    padding-bottom: 0;
  }
}
.thanks .thanks_message {
  width: 80%;
  margin: 0 auto;
  padding-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .thanks .thanks_message {
    width: 100%;
    padding-bottom: 13.33333333vw;
  }
}
.thanks .thanks_ttl {
  margin-bottom: 50px;
  font-size: 22px;
}

@media screen and (max-width: 768px) {
  .thanks .thanks_ttl {
    margin-bottom: 13.33333333vw;
    font-size: 5.86666667vw;
  }
}
.thanks .thanks_txt {
  line-height: 1.785;
  font-size: 14px;
}

@media screen and (max-width: 768px) {
  .thanks .thanks_txt {
    font-size: 3.73333333vw;
  }
}
.fs-l-main,
.fs-l-footer {
  margin: 0 auto;
  padding: 0;
  border: none;
}

.fs-l-footer {
  color: unset;
  background: none;
}

.bg-aqua3 {
  overflow: hidden;
}

.fs-c-inputInformation__field {
  margin: 0 auto;
}

.fs-c-documentColumn__heading {
  padding: 24px 0 20px 25px;
  border-bottom: none;
  border-left: none;
  color: #173c8a;
  line-height: 1.4;
  font-size: 18px;
  font-weight: 900;
  text-align: left;
  background: url(../img/subttl2.svg) left top no-repeat;
}

.fs-c-documentArticle__heading {
  padding: 14px 8px;
  font-size: 16px;
  font-weight: bold;
  background: #65a1cd;
}

.fs-l-pageMain {
  padding-bottom: 60px;
}

.fs-body-cart .course-btn,
.fs-body-login .course-btn,
.fs-body-register .course-btn,
.fs-body-my-top .course-btn,
.fs-body-my-reviews .course-btn,
.fs-body-my-addressbook .course-btn,
.fs-body-my-account-password .course-btn,
.fs-body-my-account-settings .course-btn,
.fs-body-my-wishlist .course-btn,
.fs-body-my-orders .course-btn,
.fs-body-my-points .course-btn,
.fs-body-cart-login .course-btn,
.fs-body-customerDetails .course-btn,
.fs-body-customerDetails .course-btn,
.fs-body-notfound .course-btn,
.fs-body-forgotPassword .course-btn,
.fs-body-notfound .course-btn,
.fs-body-checkout .course-btn,
.fs-body-my-account-delete .course-btn,
.fs-body-newsletter-subscribe .course-btn {
  display: none !important;
}

.fs-c-inputTable__headerCell,
.fs-c-inputTable__dataCell {
  padding: 0;
  padding: 5px 0;
  text-align: left;
}

.fs-c-continueShopping {
  display: none;
}

.fs-c-reviewList__item {
  align-items: normal;
}

.fs-c-reviewProduct__image,
.fs-c-productName,
.fs-c-productImage,
.fs-c-listedProductName,
.fs-c-listedProductName__name,
.fs-c-cartTable__productImag,
.fs-c-featuredProduct {
  pointer-events: none;
}

.fs-c-featuredProduct {
  display: none;
}

.campaign_banner {
  display: table;
  margin: 0 auto 40px;
}

.campaign_banner {
  margin: 0 auto 30px;
}

.bg-darkblue .nav1 ul li.nav-btm .sp_telTxt strong {
  font-size: 3.6vw;
}

.bg-darkblue .nav1 ul li.nav-btm .sp_telNum a.tellink {
  font-size: 8vw;
}

.main .top-news dl dd {
  height: 1.6em;
}

.main .top-news.open dl dd {
  height: auto;
}

.fs-body-top .top12 .btn:visited {
  color: #65a1cd !important;
}

.fs-body-top .top12 .btn:hover {
  color: #fff !important;
}

.details_list a {
  word-break: break-all;
}

.bg_white,
.cont_wrapper {
  background-color: #f8fdff;
}

.transaction_wrap .box02 {
  margin-bottom: 60px;
}

@media screen and (max-width: 768px) {
  .transaction_wrap .box02 {
    margin-bottom: 16vw;
  }
}
.fs-l-page .fs-c-breadcrumb::after {
  display: block;
}

@media screen and (max-width: 768px) {
  body {
    background: none;
  }
  header {
    background: url(../img/main-bg-sp_ver2.svg) no-repeat;
    background-position: left;
    background-size: auto 100%;
  }
  header.open {
    background: none;
  }
}
.end-bg {
  padding-bottom: 80px;
}

@media screen and (max-width: 768px) {
  .end-bg {
    padding-bottom: 8vw;
  }
}
.fs-body-top .top12 .scroll_animation04 .btn:visited {
  color: #fff !important;
}

.fs-body-top .top12 .scroll_animation04 .btn:hover {
  color: #84bbda !important;
}

.pure_white {
  background-color: #fff;
}

.recycling_btn {
  max-width: 395px;
  height: 63px;
  padding-left: 75px;
  background-color: #7fbe25;
  border: 3px solid #44a818;
  border-radius: 10px;
  display: flex;
  align-items: center;
  color: #fff;
  font-weight: 14px;
  font-weight: 600;
  line-height: 1.27;
  padding-bottom: 5px;
  background-image: url(/common/img/recycling_btnIco.png);
  background-size: 46px;
  background-position: 4% 50%;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 768px) {
  .recycling_btn {
    max-width: 100%;
    width: 100%;
    background-size: 9%;
    padding-left: 16%;
    font-size: 90%;
  }
}
.recycling_btn:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  background: url(../img/arrow-right-white.svg) center/10px auto no-repeat #44a818;
}
@media screen and (max-width: 768px) {
  .recycling_btn:after {
    width: 7vw;
    height: 7vw;
    background: url(../img/arrow-right-white.svg) center/2vw auto no-repeat #44a818;
  }
}

.noBag_btn {
  max-width: 395px;
  height: 63px;
  padding-left: 10px;
  background-color: #fff;
  border: 3px solid #7fbe25;
  border-radius: 10px;
  display: flex;
  align-items: center;
  color: #44a818;
  font-weight: 14px;
  font-weight: 600;
  line-height: 1.27;
  padding-bottom: 5px;
  background-image: url(/common/img/recycling_btnIco.png);
  background-size: 46px;
  background-position: 4% 50%;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 768px) {
  .noBag_btn {
    max-width: 100%;
    width: 100%;
    background-size: 9%;
    padding-left: 4%;
    margin-right: 4%;
    font-size: 90%;
  }
}
.noBag_btn:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  background: url(../img/arrow-right-white.svg) center/10px auto no-repeat #7fbe25;
}
@media screen and (max-width: 768px) {
  .noBag_btn:after {
    width: 7vw;
    height: 7vw;
    background: url(../img/arrow-right-white.svg) center/2vw auto no-repeat #44a818;
  }
}

.recycling_btnTxtnum {
  font-size: 150%;
}

.recycling_btnTxtBig {
  font-size: 128%;
  color: #fffdcb;
}

.recycling_btnTxtMiddle {
  font-size: 114%;
}

.userVoice_btn {
  margin-top: 13px;
  max-width: 395px;
  height: 63px;
  padding-left: 15px;
  background-color: #f8fdff;
  border: 3px solid #70bcde;
  border-radius: 10px;
  display: flex;
  align-items: center;
  color: #fff;
  font-weight: 14px;
  font-weight: 600;
  line-height: 1.27;
  padding-bottom: 5px;
  background-image: url(/common/img/recycling_btnIco.png);
  background-size: 46px;
  background-position: 4% 50%;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (max-width: 768px) {
  .userVoice_btn {
    max-width: 100%;
    width: 100%;
    font-size: 90%;
    height: 75px;
  }
}
.userVoice_btn:after {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  margin: auto 0;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  background: url(../img/arrow-right-white.svg) center/10px auto no-repeat #70bcde;
}
@media screen and (max-width: 768px) {
  .userVoice_btn:after {
    width: 7vw;
    height: 7vw;
    background: url(../img/arrow-right-white.svg) center/2vw auto no-repeat #70bcde;
  }
}
.userVoice_btn .userVoice_btnTxtTop {
  font-size: 12px;
  color: #4ca2d1;
  display: block;
}
@media screen and (max-width: 768px) {
  .userVoice_btn .userVoice_btnTxtTop {
    font-size: 85%;
    line-height: 1.4;
  }
}
.userVoice_btn .userVoice_btnTxtBottom {
  line-height: 1.2;
  margin-top: 5px;
  color: #173c8a;
  display: block;
}
@media screen and (max-width: 768px) {
  .userVoice_btn .userVoice_btnTxtBottom {
    font-size: 120%;
    margin-top: 2px;
  }
}

.note {
  margin-top: 10px;
  display: block;
  line-height: 1.6;
}

.seeVoc_additionallybox .seeVoc_additionallyboxTtl {
  font-size: 16px;
  color: #fff;
  font-weight: 600;
  margin-bottom: 20px;
}
.seeVoc_additionallybox .seeVoc_additionallyBtn {
  width: 256px;
  height: 40px;
  padding: 7px 35px 7px 15px;
}
.seeVoc_additionallybox .seeVoc_additionallyBtn::after {
  right: 4px;
}
.seeVoc_additionallybox .seeVoc_additionallyBtn:hover {
  opacity: 1 !important;
}

.detail1Bottom_linkWrap {
  display: flex;
  gap: 0 20px;
  justify-content: center;
}
.detail1Bottom_linkWrap .detail1Bottom_link a {
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
}
.detail1Bottom_linkWrap .detail1Bottom_link a:hover {
  text-decoration: none;
}

.price_remarks {
  text-align: right;
  line-height: 1.42;
  display: inline-block;
}

.balloon .balloonNum {
  font-size: 135%;
}
.balloon .balloonBig {
  font-size: 130%;
}
.balloon .balloonTxtYellow {
  color: #fffdcb;
}

.detail8 .balloon.bl-deepgreen {
  background: url(../img/detail3-balloon-deepgreen-pc.png) center/744px auto no-repeat;
}
@media screen and (max-width: 768px) {
  .detail8 .balloon.bl-deepgreen {
    background: url(../img/detail3-balloon-deepgreen-sp.png) center/100% auto no-repeat;
    min-height: 33vw;
    padding-top: 9vw;
    padding-bottom: 5vw;
  }
  .detail8 .balloon.bl-deepgreen p {
    font-size: 4vw;
    line-height: 1.2;
  }
}

.balloon.under-balloon-balloon {
  padding-top: 47px;
  min-height: 160px;
}

.text_pink {
  color: #dd7fb1;
}

.text_emerald_green,
.f-emerald_green {
  color: #5cc7aa;
}

.detail3 .balloon-lead .balloon .balloon_Txt {
  margin-top: -9px;
}

.detail3 .balloon-lead .balloon .balloon_Txt .komatome {
  margin: 0 6px 5px;
}

.detail3 .goods_Intro {
  margin: 20px 0 40px;
}

@media screen and (max-width: 768px) {
  .detail3 .balloon-lead .balloon .balloon_Txt {
    margin-top: -4vw;
  }
  .detail3 .goods_Intro {
    margin: 2vw 0 4vw;
  }
  .detail3 .balloon-lead .balloon .balloon_Txt .komatome {
    width: 22vw;
    margin: 0 1.2vw 0;
    vertical-align: -4%;
  }
  .detail3 .btn_pd {
    padding: 5.33% 8% 4%;
  }
}
.btn.other_productBtn {
  height: 67px;
  width: 524px;
  padding: 21px 65px 16px 45px;
}
@media screen and (max-width: 768px) {
  .btn.other_productBtn {
    width: 100%;
    padding: 7px 65px 16px 45px;
    line-height: 1.4;
  }
}
.btn.other_productBtn:after {
  width: 44px;
  height: 44px;
  background: url(../img/arrow-right-white.svg) center/12px auto no-repeat #012167;
}

header .headerwrap .rightcol a {
  padding-top: 5px;
}
@media screen and (max-width: 768px) {
  header .headerwrap .rightcol a {
    padding-top: 0;
  }
}

header .headerwrap .rightcol a:nth-child(2) {
  margin-left: 17px;
}
@media screen and (max-width: 768px) {
  header .headerwrap .rightcol a:nth-child(2) {
    margin-left: 18%;
  }
}

header .headerwrap .rightcol .forCorporate_Btn {
  width: 134px;
  height: 39px;
  background-color: #70bcde;
  border-radius: 39px;
  line-height: 1.25;
  font-size: 12px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  padding: 0;
  box-shadow: 0 0 12px 3px rgba(0, 87, 175, 0.2);
}
@media screen and (max-width: 768px) {
  header .headerwrap .rightcol .forCorporate_Btn {
    display: none;
  }
}

.bg-darkblue .nav1 ul li.nav-btm .forCorporate_Btn {
  width: 60%;
  height: 39px;
  background-color: #70bcde;
  border-radius: 39px;
  line-height: 1.25;
  font-size: 12px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  padding: 0;
  margin: 0 auto 4vw;
}

.btn.btn-redArrow {
  width: 354px;
}
@media screen and (max-width: 768px) {
  .btn.btn-redArrow {
    width: 80%;
  }
}

.btn.btn-redArrow:after {
  background: url(../img/arrow-right-red.svg) center/7px auto no-repeat #fff;
}

.btn.btn-redArrow:hover:after {
  background: url(../img/arrow-right-white.svg) center/7px auto no-repeat #d94659;
}

.highlighter {
  background: linear-gradient(transparent 80%, #fffdcb 80%);
}

.top_guide_ttl span {
  line-height: 0.5;
  padding-left: 40px;
}

.courseIntroduction_sec {
  /* margin-bottom: 130px; */
}

.courseIntroduction {
  padding: 60px 0 90px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction {
    padding: 12% 6%;
  }
}

.courseIntroduction_ttl {
  max-width: 731px;
  margin: 0 auto;
  border-radius: 20px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background-repeat: no-repeat;
  background-position: center top;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_ttl {
    display: block;
    margin-bottom: -2vw;
    width: 102vw;
    max-width: 100vw;
    left: -6vw;
    position: relative;
  }
}
.courseIntroduction_ttl .courseIntroduction_ttlLogo {
  width: 40%;
  margin: 2% auto;
  display: block;
}

.courseIntroduction_ttlNum {
  font-size: 28px;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_ttlNum {
    font-size: 6vw;
  }
}

.courseIntroduction_ttlLogo {
  margin-left: 12px;
}

.courseIntroduction_catch {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 15px;
  text-align: center;
}

.courseIntroduction_txt {
  font-size: 14px;
  line-height: 1.78;
  font-weight: 500;
  margin-bottom: 20px;
}

.courseIntroduction_thumListWrap {
  display: block;
  display: flex;
  justify-content: center;
  gap: 0 30px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_thumListWrap {
    flex-wrap: wrap;
    gap: 4vw;
  }
}

.courseIntroduction_thumList {
  width: 226px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_thumList {
    width: 45%;
  }
}

.courseIntroduction_thumList img {
  width: 100%;
}

.courseIntroduction_imgBoxTtl {
  font-size: 18px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_imgBoxTtl {
    font-size: 4vw;
  }
}

.courseIntroduction_imgBoxTtlContBig {
  font-size: 23px;
}

.courseIntroduction01 .courseIntroduction_txt {
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction01 .courseIntroduction_txt {
    margin-bottom: 8vw;
  }
}

.courseIntroduction02 .courseIntroduction_imgBoxTtl {
  color: #dd7fb1;
}

.courseIntroduction02 .courseIntroduction_img {
  width: 402px;
  margin: 10px auto 40px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction02 .courseIntroduction_img {
    width: 82vw;
  }
}

.courseIntroduction03 .courseIntroduction_imgBoxTtl {
  color: #5CC7AA;
}

.courseIntroduction03 .courseIntroduction_img {
  width: 550px;
  margin: 10px auto 40px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction03 .courseIntroduction_img {
    width: 100%;
  }
}

.courseIntroduction02 .courseIntroduction_imgBoxTtlCont,
.courseIntroduction03 .courseIntroduction_imgBoxTtlCont {
  color: #4ca2d1;
}

.courseIntroduction_indication {
  width: 760px;
  margin: 0 auto 50px;
  border: 2px solid #5CC7AA;
  display: flex;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_indication {
    display: block;
    width: 100%;
    margin-bottom: 6vw;
  }
}

.courseIntroduction_indicationTtl {
  width: 160px;
  color: #fff;
  background-color: #5CC7AA;
  display: flex;
  align-items: center;
  font-weight: 600;
  justify-content: center;
  text-align: left;
  font-size: 14px;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_indicationTtl {
    width: 100%;
  }
}

.courseIntroduction_indicationNum {
  font-size: 24px;
}

.courseIntroduction_indicationBoxTxt {
  font-weight: 500;
}

.courseIntroduction_indicationCont {
  display: flex;
  text-align: left;
  padding: 20px;
  height: 100px;
  justify-content: space-between;
  width: calc(100% - 160px);
  font-weight: 400;
  background-color: #fff;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_indicationCont {
    display: block;
    width: 100%;
    height: auto;
  }
}

.courseIntroduction_indicationBox {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_indicationBox .courseIntroduction_indicationBox {
    justify-content: space-between;
  }
  .courseIntroduction_indicationBox.top .courseIntroduction_indicationBoxImg {
    width: 24.5333333333vw;
  }
  .courseIntroduction_indicationBox.bottom {
    margin-top: 5.3333333333vw;
  }
  .courseIntroduction_indicationBox.bottom .courseIntroduction_indicationBoxImg {
    width: 21.3333333333vw;
    margin-right: 4vw;
  }
}

.courseIntroduction_indicationBox {
  justify-content: space-between;
}

.courseIntroduction_indicationBoxImg {
  width: 104px;
  margin-left: 15px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction_indicationBoxImg {
    margin-left: 6vw;
  }
}

.inner {
  width: 1000px;
  margin: 20px auto 0;
}
@media screen and (max-width: 768px) {
  .inner {
    width: 100%;
  }
}

.courseIntroduction_note {
  font-size: 14px;
  font-weight: 500;
  text-align: right;
}

.dedicated_course {
  height: 154px;
  border: 4px solid #5CC7AA;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .dedicated_course {
    height: auto;
    display: block;
    margin-top: 10.6666666667vw;
    border-radius: 10px;
    padding: 8vw 4vw;
  }
}

.dedicated_img {
  width: 110px;
  margin-right: 23px;
}
@media screen and (max-width: 768px) {
  .dedicated_img {
    width: 40vw;
    margin: 4vw auto;
  }
}

.dedicated_txt {
  font-size: 18px;
  text-align: left;
  line-height: 1.5;
  margin-right: 40px;
}
@media screen and (max-width: 768px) {
  .dedicated_txt {
    margin: 0 auto;
    font-size: 4.8vw;
    text-align: center;
  }
}

.dedicated_txt .dedicated_txtNum {
  font-size: 25px;
}
@media screen and (max-width: 768px) {
  .dedicated_txt .dedicated_txtNum {
    font-size: 6.6666666667vw;
  }
}

body .btn-orange {
  min-width: 230px;
  height: 50px;
  line-height: 1.4;
  background-color: #5CC7AA;
  border-color: #5CC7AA;
}

.dedicated_txt {
  font-weight: bold;
}
.dedicated_txt .dedicated_txtBig {
  font-size: 26px;
  color: #5CC7AA;
  background: linear-gradient(transparent 50%, #fffdcb 80%);
}
.dedicated_txt .dedicated_txtSmall {
  font-size: 20px;
}

body .btn-orange::after {
  background: url(../img/arrow-right-white.svg) center/5.5px auto no-repeat #45AD91;
}

body .btn-orange:hover {
  color: #fff;
  color: #5CC7AA;
}

.plusFresco_bnr {
  display: block;
  margin-top: 25px;
}

/* MV追加 */
.courseIntroduction01 {
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction01 {
    margin-bottom: 14vw;
  }
}

.courseIntroduction02 {
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .courseIntroduction02 {
    margin-bottom: 12vw;
  }
}

.main .main-visual02 .fuwarimo_lead1 {
  font-size: 20px;
  font-weight: 600;
  position: relative;
  text-align: left;
  margin-bottom: 22px;
  color: #3e85b9;
}
@media screen and (max-width: 768px) {
  .main .main-visual02 .fuwarimo_lead1 {
    font-size: 4.6vw;
    margin-bottom: 5vw;
  }
}
.main .main-visual02 .fuwarimo_logo {
  width: 250px;
  position: relative;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .main .main-visual02 .fuwarimo_logo {
    width: 65%;
    margin-bottom: 4vw;
  }
}
.main .main-visual02 .fuwarimo_txt {
  font-size: 16px;
  color: #4ca2d1;
  font-weight: 600;
  line-height: 2.5;
  text-align: left;
  position: relative;
}
@media screen and (max-width: 768px) {
  .main .main-visual02 .fuwarimo_txt {
    font-size: 3.6vw;
    line-height: 2;
  }
}
.main .main-visual02 .mv_fuwarimo {
  position: absolute;
  left: 8%;
  top: 43%;
  bottom: 0;
  margin: auto;
  z-index: 100;
  width: 100%;
  transform: translate(0%, -50%);
}
@media screen and (max-width: 768px) {
  .main .main-visual02 .mv_fuwarimo {
    top: 37%;
    width: auto;
  }
}

@media screen and (max-width: 768px) {
  .detail3 .balloon-lead .balloon {
    height: 35.2vw;
    padding-top: 10.8vw;
  }
}
.top9 {
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .top9 {
    padding-top: 0;
  }
}

.shopping_archive .plusfrescoBnr {
  display: table;
  margin: -15px auto 40px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .plusfrescoBnr {
    width: 84vw;
    margin: 0 auto 10vw;
  }
}
.shopping_archive .shopping1 .btn-link a {
  max-width: 315px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping1 .btn-link a {
    width: 100%;
    max-width: 100%;
  }
}
.shopping_archive .shopping1 .btn-link a:last-child {
  margin-right: 0;
}
.shopping_archive .bottom a {
  margin-right: 27px;
}
@media screen and (min-width: 768px) and (max-width: 900px) {
  .shopping_archive .bottom a.order2 {
    margin-right: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 900px) {
  .shopping_archive .bottom a:last-child {
    margin-top: 6%;
  }
}
.shopping_archive .btn_wrap .plus_frescoLogo {
  display: inline-block;
  width: 122px;
  position: relative;
  top: -2px;
}
.shopping_archive .subttl2 img {
  width: 100%;
}
.shopping_archive .subttl2 .fuwarimo_logo {
  width: 170px;
  display: inline-block;
  margin-left: 20px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .subttl2 .fuwarimo_logo {
    width: 40%;
    margin-left: 0;
  }
}
.shopping_archive .subttl2 .komatome_logo {
  width: 130px;
  margin-left: 5px;
  display: inline-block;
  vertical-align: 25%;
}
@media screen and (max-width: 768px) {
  .shopping_archive .subttl2 .komatome_logo {
    margin-left: 0;
    margin-top: 2%;
    width: 28vw;
  }
}
.shopping_archive .subttl2 .omatome_logo {
  width: 140px;
  margin-left: 5px;
  display: inline-block;
  vertical-align: 25%;
}
@media screen and (max-width: 768px) {
  .shopping_archive .subttl2 .omatome_logo {
    margin-left: 0;
    margin-top: 2%;
    width: 29vw;
  }
}
.shopping_archive .shopping_listWrap {
  display: flex;
  gap: 20px 32px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_listWrap {
    display: block;
  }
}
.shopping_archive .shopping_listWrap.center {
  justify-content: center;
}
.shopping_archive .shopping_listWrap .shopping_list a {
  max-width: 226px;
  display: block;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_listWrap .shopping_list a {
    margin-bottom: 30px;
    max-width: 100%;
    display: flex;
  }
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_list .shopping_listImg {
    width: 27%;
    display: block;
    margin-right: 4%;
  }
}
.shopping_archive .shopping_listImg.drop-shadow {
  filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.12));
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_list a {
    display: flex;
    justify-content: space-between;
  }
}
.shopping_archive .shopping_list:last-child a {
  margin-bottom: 0;
}
.shopping_archive .shopping_listBox {
  display: none;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_listBox {
    display: flex;
    text-align: left;
    width: 68%;
    align-items: flex-end;
  }
  .shopping_archive .shopping_listBox .shopping_listBox_inner {
    width: 100%;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxCatch {
    font-size: 14px;
    color: #d94659;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxName {
    font-size: 18px;
    line-height: 1.4;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxNameSmall {
    font-size: 14px;
    letter-spacing: 0;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxPrice {
    display: flex;
    align-items: baseline;
    width: 100%;
    margin: 0 0 0 auto;
    display: block;
    text-align: right;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxPrice .shopping_listBoxPriceNote {
    font-size: 10px;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxPrice .shopping_listBoxPriceNum {
    font-size: 24px;
  }
  .shopping_archive .shopping_listBox .shopping_listBoxPrice .shopping_listBoxPriceUnit {
    font-size: 16px;
  }
}
.shopping_archive .shopping_listTtl {
  font-size: 16px;
}
.shopping_archive .shopping_listTop {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_listTop {
    display: block;
  }
}
.shopping_archive .shopping_listTopLeft {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_listTopLeft {
    width: 100%;
  }
}
.shopping_archive .shopping_listTopRight {
  margin-top: -70px;
  width: 48%;
}
@media screen and (max-width: 768px) {
  .shopping_archive .shopping_listTopRight {
    width: 100%;
    margin-top: 0;
  }
}
.shopping_archive .shopping_listTopRightTtl {
  font-size: 18px;
  color: #4ca2d1;
  margin-bottom: 5px;
}
.shopping_archive .shopping_listTopRightTtlbig {
  font-size: 23px;
}
.shopping_archive .shopping_listTtl {
  margin-bottom: 20px;
}
.shopping_archive .shopping_listTtl.mb0 {
  margin-bottom: 0px;
}
.shopping_archive .sec_komatome {
  padding: 45px 0 60px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .sec_komatome {
    padding: 8% 0 6%;
  }
}
.shopping_archive .sec_omatome {
  padding: 45px 0 0px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .sec_omatome {
    padding: 8% 0 0%;
  }
}
.shopping_archive .sec_omatome .courseIntroduction_indicationTtl {
  background-color: #5cc7aa;
}
.shopping_archive .sec_omatome .courseIntroduction_indication {
  border-color: #5cc7aa;
}
.shopping_archive .omatome .shopping_listTopImg {
  max-width: 458px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .shopping_archive .omatome .shopping_listTopImg {
    width: 80vw;
    margin-left: auto;
    margin-right: auto;
  }
}
.shopping_archive .omatome .shopping_listTopImg img {
  width: 100%;
}
.shopping_archive .note {
  font-size: 70%;
}
.shopping_archive .plus_fresco {
  background-color: #fff;
  padding-bottom: 80px;
}
.shopping_archive .plus_fresco .plus_frescoTtl {
  margin-bottom: 40px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #1f316f;
}
@media screen and (max-width: 768px) {
  .shopping_archive .plus_fresco .plus_frescoTtl {
    height: 45px;
  }
}
.shopping_archive .plus_fresco .plus_frescoTtlInner {
  width: 337px;
  display: table;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .shopping_archive .plus_fresco .plus_frescoTtlInner {
    width: 60%;
  }
}
.shopping_archive .plus_fresco .plusFresco_secTtl {
  font-size: 22px;
  color: #5a7bc3;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .shopping_archive .plus_fresco .plusFresco_secTtl {
    font-size: 20px;
  }
}
.shopping_archive .plus_fresco .plusFresco_secTxt {
  margin-bottom: 40px;
}

.floatbnr {
  opacity: 0;
  transition: all 0.6s;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .floatbnr a.btn {
    margin: 0 auto;
    width: 100%;
    border-radius: 30px;
  }
}
.floatbnr.visible {
  opacity: 1;
  pointer-events: all;
}

.floatbnr.is-hidden {
  opacity: 0;
  pointer-events: none;
}

.plusFresco_bottom {
  margin-top: 60px;
}

.plusFresco_description {
  max-width: 770px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .plusFresco_description {
    width: 100%;
  }
}
.plusFresco_description .plusFresco_secTtl {
  margin-bottom: 35px;
}
.plusFresco_description .plusFresco_descriptionTxt {
  text-align: left;
  font-size: 14px;
  line-height: 1.78;
}
.plusFresco_description .plusFresco_descriptionImg {
  max-width: 243px;
}
@media screen and (max-width: 768px) {
  .plusFresco_description .plusFresco_descriptionImg {
    max-width: 100%;
    margin: 0 auto;
  }
}
.plusFresco_description .plusFresco_descriptionTop {
  display: flex;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .plusFresco_description .plusFresco_descriptionTop {
    display: block;
  }
}
.plusFresco_description .plusFresco_descriptionTop .plusFresco_descriptionImg {
  margin-left: 30px;
}
@media screen and (max-width: 768px) {
  .plusFresco_description .plusFresco_descriptionTop .plusFresco_descriptionImg {
    margin: 4% auto 6%;
  }
}
.plusFresco_description .plusFresco_descriptionBottom {
  display: flex;
  flex-direction: row-reverse;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  .plusFresco_description .plusFresco_descriptionBottom {
    display: block;
    margin-bottom: 6%;
  }
}
.plusFresco_description .plusFresco_descriptionBottom .plusFresco_descriptionImg {
  margin-right: 30px;
}
@media screen and (max-width: 768px) {
  .plusFresco_description .plusFresco_descriptionBottom .plusFresco_descriptionImg {
    margin: 4% auto 6%;
  }
}

.top_highlighter {
  display: inline-block;
  margin-top: 2%;
  line-height: 1;
}

.campaign_banner.shadow {
  filter: drop-shadow(0px 3px 5px rgba(0, 87, 175, 0.5));
}

.fs_p_scrollingCartButtonTxt {
  font-size: 11px;
  color: #4CA2D1;
  white-space: nowrap;
  width: 100%;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .fs_p_scrollingCartButtonTxt {
    font-size: 2.4vw;
    position: absolute;
    bottom: -33%;
    left: 50%;
    transform: translate(-50%, 0%);
  }
}

header .headerwrap .rightcol a img {
  display: table;
  margin: 0 auto 2px;
}

@media screen and (max-width: 768px) {
  header .headerwrap .rightcol {
    width: 25.3%;
    position: relative;
    top: -2vw;
  }
  header .headerwrap .rightcol a img {
    padding-bottom: 2vw;
  }
  header .headerwrap .rightcol a:nth-child(2) {
    margin-left: 14%;
  }
}
/**********add 2025 0701*/
.maxw896 {
  max-width: 896px;
}

.description_txt {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .description_txt {
    padding-left: 6%;
    padding-right: 6%;
  }
}

@media screen and (max-width: 768px) {
  .sp_order1 {
    order: 1;
  }
}

@media screen and (max-width: 768px) {
  .sp_order2 {
    order: 2;
  }
}

@media screen and (max-width: 768px) {
  .sp_order3 {
    order: 3;
  }
}

.mla {
  margin-left: auto;
}

.mra {
  margin-right: auto;
}

.lh17 {
  line-height: 1.78;
}

.column2_wrap {
  width: 1010px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .column2_wrap {
    width: 100%;
  }
  .column2_wrap .imgleft {
    padding-left: 6%;
    padding-right: 6%;
  }
}
.column2_wrap .maxw896 {
  margin-left: auto;
}
.column2_wrap .rightcol h1 {
  letter-spacing: 0.05em;
}
.column2_wrap .rightcol h1 strong {
  letter-spacing: 0.07em;
}

.detail1 .column2_wrap .imgleft .rightcol {
  width: 44%;
}
@media screen and (max-width: 768px) {
  .detail1 .column2_wrap .imgleft .rightcol {
    width: 100%;
    display: flex;
    flex-direction: column;
  }
}

.product_mainSlider {
  max-width: 432px;
  width: 100%;
}
.product_mainSlider img {
  width: 100%;
}

.detail1 .imgleft .product_mainSlider figure {
  width: 100%;
}

.product_thumbnailSlider .slick-track {
  transform: unset !important;
  display: flex;
  flex-wrap: wrap;
  gap: 9px 11px;
  width: 100% !important;
}
@media screen and (max-width: 768px) {
  .product_thumbnailSlider .slick-track {
    gap: 2.6666666667vw 4.2666666667vw;
  }
}
.product_thumbnailSlider .slick-track::before {
  content: none;
}
.product_thumbnailSlider .thumbnail-img {
  max-width: 70px;
  cursor: pointer;
  width: 100% !important;
  transition: all 0.2s;
}
.product_thumbnailSlider .thumbnail-img:hover {
  opacity: 0.7;
}

.select_wrap {
  max-width: 623px;
}
@media screen and (max-width: 768px) {
  .select_wrap {
    padding-left: 6%;
    padding-right: 6%;
  }
}
.select_wrap table {
  width: 100%;
}
.select_wrap table th {
  text-align: left;
  padding-left: 1em;
}
@media screen and (max-width: 768px) {
  .select_wrap table th {
    padding-left: 0;
  }
}
.select_wrap table th, .select_wrap table td {
  display: block;
  width: 100%;
}
.select_wrap table td {
  position: relative;
}
.select_wrap table td::after {
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 24px;
  border-radius: 50%;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1) inset;
  background: url(../img/arrow-bottom-white.svg) center/12px auto no-repeat #70BCDE;
  content: "";
}
@media screen and (max-width: 768px) {
  .select_wrap table td::after {
    width: 5.33333333vw;
    height: 5.33333333vw;
    right: 3.73333333vw;
    box-shadow: 0 0.8vw 1.6vw 0 rgba(0, 0, 0, 0.1) inset;
  }
}
.select_wrap select {
  width: 100%;
  color: inherit;
  height: 60px;
  -webkit-appearance: none;
  padding: 0 30px;
  line-height: 60px;
  -moz-appearance: none;
  appearance: none;
  border-radius: 10px;
  border: none;
  -webkit-text-fill-color: currentColor;
  box-shadow: 0 5px 20px 0 rgba(0, 87, 175, 0.3);
}
@media screen and (max-width: 768px) {
  .select_wrap select {
    height: 16vw;
    padding: 0 5.33333333vw;
    line-height: 16vw;
    border-radius: 2.66666667vw;
    box-shadow: 0 1.33333333vw 5.33333333vw 0 rgba(0, 87, 175, 0.3);
  }
}
.select_wrap select:focus {
  outline: none;
}

.count_wrap .FS2_figure_table td {
  padding-right: 8px;
}
.count_wrap .FS2_figure_table .FS2_figure_table_td_input_cnt label {
  min-width: 105px;
  padding: 5px 15px;
}
.count_wrap .FS2_figure_table .FS2_figure_table_td_input_cnt label input[type=text] {
  font-size: 24px;
}
@media screen and (max-width: 768px) {
  .count_wrap .FS2_figure_table .FS2_figure_table_td_cart_btn input {
    width: 180px;
  }
}

.accordion_wrap {
  padding: 66px 0 76px;
}
@media screen and (max-width: 768px) {
  .accordion_wrap {
    padding: 0 6%;
  }
}

.acc_head {
  transition: all 0.2s;
  cursor: pointer;
  background-color: #fff;
  padding: 18px 24px;
  max-width: 623px;
  border-radius: 30px;
  margin: 0 auto;
  box-shadow: 0 5px 20px 1px rgba(0, 87, 175, 0.3);
  position: relative;
}
@media screen and (max-width: 768px) {
  .acc_head {
    padding: 10px 40px 11px 30px;
    border-radius: 99px;
  }
}
.acc_head:hover {
  opacity: 0.7;
}
.acc_head.open span::after {
  transform: rotate(0);
}
.acc_head span {
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  position: absolute;
  right: 24px;
  bottom: 18px;
  border-radius: 50%;
  background: var(--aqua3);
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1) inset;
  content: "";
}
@media screen and (max-width: 768px) {
  .acc_head span {
    width: 5.33333333vw;
    height: 5.33333333vw;
    right: 3.73333333vw;
    bottom: 2.66666667vw;
  }
}
.acc_head span::before, .acc_head span::after {
  display: block;
  transition: all 0.2s;
  width: 12px;
  height: 2px;
  border-radius: 2px;
  content: "";
  background: var(--aqua1);
  position: absolute;
  top: 11px;
  left: 6px;
}
@media screen and (max-width: 768px) {
  .acc_head span::before, .acc_head span::after {
    width: 10px;
    top: 9px;
    left: 5px;
  }
}
.acc_head span::after {
  transform: rotate(90deg);
}

.acc_cont {
  display: none;
  margin-left: auto;
  margin-right: auto;
  max-width: 623px;
}/*# sourceMappingURL=base.css.map */