@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 100;
  src: url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-ExtraLight.woff") format("woff"), url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-ExtraLight.otf") format("opentype");
}

@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 200;
  src: url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-Light.woff") format("woff"), url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-Light.otf") format("opentype");
}

@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 400;
  src: url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-Regular.woff") format("woff"), url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-Regular.otf") format("opentype");
}

@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSerifCJKjp-Medium.woff") format("woff"), url("../fonts/NotoSerifCJKjp-Medium.otf") format("opentype");
}

@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 600;
  src: url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-SemiBold.woff") format("woff"), url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-SemiBold.otf") format("opentype");
}

@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSerifCJKjp-Bold.woff") format("woff"), url("../fonts/NotoSerifCJKjp-Bold.otf") format("opentype");
}

@font-face {
  font-family: "Noto Serif CJK JP";
  font-style: normal;
  font-weight: 900;
  src: url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-Black.woff") format("woff"), url("https://listing.biyougeka.jp/lp/simi_plan_e/fonts/NotoSerifCJKjp-Black.otf") format("opentype");
}

.noto-extralight {
  font-weight: 100;
  font-family: "Noto Serif CJK JP";
}

.noto-light {
  font-weight: 200;
  font-family: "Noto Serif CJK JP";
}

.noto-regular {
  font-weight: 400;
  font-family: "Noto Serif CJK JP";
}

.noto-medium {
  font-weight: 500;
  font-family: "Noto Serif CJK JP";
}

.noto-semibold {
  font-weight: 600;
  font-family: "Noto Serif CJK JP";
}

.noto-bold {
  font-weight: 700;
  font-family: "Noto Serif CJK JP";
}

.noto-black {
  font-weight: 900;
  font-family: "Noto Serif CJK JP";
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
caption,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1.4;
  letter-spacing: 0.04em; height: 100%; overflow-x:hidden;
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  
}

body * {
  box-sizing: border-box;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  color: #0e285e;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}
p{
  color: #0e295f;
}
/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

main {
  display: block;
}

ol,
li {
  list-style-type: none;
}

.cv__btn {
  transition: filter 0.3s;
}

.cv__btn:hover {
  filter: brightness(120%);
  transition: filter 0.3s;
}

/****************** position ******************/
.pa {position:absolute;}
.pr {position:relative;}
.pf {position:fixed;}
/****************** swiper ******************/
.swiper1,.swiper2 {overflow-x:hidden;}

/****************** accordion ******************/
.info {
  text-align:center;
}
.info_corona {
  padding: 10px 0;
}

.info_corona dl {
  width: 996px;
  display: inline-block;
}

#acMenu dt {
  text-align:center;
  border: #071742 1px solid;
  cursor:pointer;
  margin: 0 7px;
  padding: 7px;
  font-size: 16px;
  color: #071742;
}

#acMenu dd {
  text-align:center;
  display:none;
  margin: 0 7px;
  padding: 7px;
  font-size: 15px;
  color: #071742;
}

.info_corona  h3 {width:96%; max-width:1000px; text-align: center; border: #071742 1px solid; margin: 1em auto 0.5em auto; padding: 7px; font-size: 16px; color: #071742; font-weight:normal;}
.info_corona .cv_desc .ttl {display:inline-block; margin:1.5em auto 0.5em auto; padding: 0.25em 1em; font-size:21px; background-color: #071742; color:#FFF; letter-spacing: 0.05em;	position: relative;}
.info_corona .cv_desc .ttl::after {position: absolute; bottom: -14px; left: calc(50% - 14px); content: ""; width: 0; height: 0; border-style: solid; border-width: 14px 14.5px 0 14.5px; border-color: #071742 transparent transparent transparent;}
.info_corona .cv_desc .s_ttl {font-size: 30px; color:#3E5585; letter-spacing: 0.08em; margin-bottom:1em; line-height: 1.6em;}
.info_corona .cv_desc .txt {font-size:20px; letter-spacing: 0.05em; margin-bottom:1em;} 
.info_corona .m_box {width:96%; max-width:1000px;margin: 1.5em auto; background-color: #FFF;filter: drop-shadow(0px 0px 30px rgba(62, 86, 134, 0.2)); padding:1.75em 0; border-radius:7px;}
.info_corona .m_box:last-of-type {margin-bottom:2.75em;}
.info_corona .m_box dt {display:inline-block; font-size:23px;color:#3E5485;letter-spacing: 0.05em; border:1px solid #071742;margin-bottom: 1.1em; padding:0.15em 0.55em;} 
.info_corona .m_box dd {display:table; width:94%;  margin-left:auto; margin-right:auto;}
.info_corona .m_box dd.culumn3 {width:80%; max-width:560px;}
.info_corona .m_box dd.culumn4 {width:98%; max-width: 680px;}
.info_corona .m_box dd.culumn3 figure {width:calc(100% / 3); display:table-cell;}
.info_corona .m_box dd.culumn4 figure {width:calc(100% / 4); display:table-cell;}
.info_corona .m_box dd figure figcaption {font-size:18px; margin-top:0.85em; line-height: 1.3em;color:#3E5485;}
.info_corona .m_box .covid_i {width:124px;display:block; margin:0 auto;}	

.defalut_price { font-size:0.8em; }

@media screen and (min-width: 1080px) {
  .pc-none:not(:root) {
    display: none;
  }
  .noto-medium {
    font-size: 1.5vw;
  }
}

@media screen and (max-width: 1079px) {
  .sp-none:not(:root) {
    display: none;
  }

}

.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.accent1 {
  color: #071742;
}

.header {
  padding: 2.16667% 4%;
  background-color: #071742;
}
.sp_bk { display:block; }

@media screen and (min-width: 1080px) {
  .header {
    padding: 19px 0;
  }
  .sp_bk { display:none; }
}

.header__inner {
  max-width: 1080px;
  margin: 0 auto;
}

.header__lists {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

@media screen and (min-width: 1080px) {
  .header__lists {
    width: 750px;
  }
}

.header__list-left {
  width: 40.56667%;
}

@media screen and (min-width: 1080px) {
  .header__list-left {
    width: 281px;
  }
}

.header__list-right {
  width: 53.53333%;
  display: flex;
  align-items: center;
  position: relative;
}

@media screen and (max-width: 1079px) {
  .header__list-right {
    white-space: nowrap;
  }
}

@media screen and (min-width: 1080px) {
  .header__list-right {
    width: 349px;
  }
}

.header__list-right::after {
  content: "|";
  display: block;
  position: absolute;
  top: 0%;
  left: 28%;
  color: #fff;
  font-weight: 100;
  font-size: 4vw;
}

@media screen and (min-width: 1080px) {
  .header__list-right::after {
    top: 11%;
    left: 29%;
    font-size: 24px;
  }
}

.header__text {
  font-weight: bold;
  color: #fff;
  display: inline-block;
  font-size: 3.26667vw;
  letter-spacing: 0.05em;
}
.header__text:hover { opacity:0.8; }
@media screen and (min-width: 1080px) {
  .header__text {
    font-size: 26px;
  }
}

.header__text.center {
  margin-left: 13%;
}

@media screen and (min-width: 1080px) {
  .header__text.center {
    margin-left: 44px;
  }
}

.header__text-sm {
  font-weight: bold;
  font-size: 2.66667vw;
  color: #071742;
  text-align: center;
  letter-spacing: 0.05em;
  display: inline-block;
  border-radius: 22.5px;
  padding: 1% 1%;
  background-color: #fff;
  margin-left: 5%;
  width: 37%;
}
.header__text-sm:hover { opacity:0.8; }

@media screen and (min-width: 1080px) {
  .header__text-sm {
    font-size: 20px;
    padding: 3px 12px;
    margin-left: 12px;
  }
}

.header__text-lg {
  font-weight: bold;
  font-size: 4vw;
}

@media screen and (min-width: 1080px) {
  .header__text-lg {
    font-size: 26px;
  }
}

.fv {
  position: relative;
}

.fv__title {
  position: absolute;
  top: 13.43333%;
  left: 5.4%;
  width: 48.9%;
}

@media screen and (min-width: 1080px) {
  .fv__title {
    top: 7.1875%;
    left: 22.604%;
    width: 40.35%;
  }
}

.cv {
  background-size: 100% 7.3%;
  background-repeat: no-repeat;
  background-position: 0% 0%;
  padding: 10% 0% 7.8%;
}
.cv01 {
	background-size: 100% 12%;
  margin: auto;
}
.cv01_bg{
  margin-top: 13%;
  background-image: url(../img/sp/cv_bg1.png);
  background-size: 100% 100%; /* 横幅100%、縦方向は要素の高さに合わせて引き伸ばし */
  background-repeat: no-repeat; /* 画像が繰り返されないようにする */
  background-position: center; /* 画像を中央に配置 */
  width: 100%; /* 要素の幅を100%に設定 */
  height: auto; /* 要素の高さをコンテンツに合わせて自動調整 */
}
.cv01_img,.cv02_img{
  width: 90%;
}
.cv01_img{
  margin: 30px auto auto;
}
.cv02_img{
  margin: 20px auto auto;
}
.cv03_img{
  position: relative;
  z-index: -1;
  margin-top: -54px;
}
.nayami-title{
    position: relative;
    margin: auto;
}
.nayami-title p{
  position: absolute;
  top: -60px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}


@media screen and (min-width: 1080px) {
  .cv01_img{
    margin: 60px auto auto;
  }
  .cv01_bg.nayami{
    z-index: 2;
    position: relative;
  }
  .cv03_img{
    z-index: 1;
    margin-top: -77px;
  }
  .nayami-title p{
    top: -60px;
  }
  .cv {
    padding: 27px 0 58px;
  }
}

.cv.center {
  background-image: url(../img/sp/cv_bg01.png), url(../img/sp/cv_bg02.png);
  background-size: 100% 17.6%, cover;
  background-repeat: no-repeat;
  background-position: 0% 0%, 50% bottom;
  padding: 3.6% 0% 13.8%;
}

@media screen and (min-width: 1080px) {
  .cv.center {
    background-image: url(../img/sp/cv_bg01.png), url(../img/sp/cv_bg02.png);
    background-size: 1920px 200px, 1920px 989px;
    background-position: 50% 0%, 50% bottom;
    padding: 28px 0 68px;
  }
}
@media screen and (max-width: 1080px) {
  .cv.center {
    padding-bottom: 37.5%;
  }
}

.cv.bottom {
  background-image: url(../img/sp/cv_bg01.png), url(../img/sp/cv_bg02.png);
  background-size: 100% 30.25%, cover;
  background-repeat: no-repeat;
  background-position: 0% 0%, 50% bottom;
  padding: 3.6% 0% 0;
}

@media screen and (min-width: 1080px) {
  .cv.bottom {
    padding: 28px 0 68px;
  }
}

.cv__text1 {
  text-align: center;
  font-size: 5.4vw;
  letter-spacing: 0.1em;
  color: #0e295f;
}

@media screen and (min-width: 1080px) {
  .cv__text1 {
    font-size: 1.7vw;
  }
}

@media screen and (min-width: 1080px) {
  .cv__text1.bottom {
    font-size: 48px;
  }
}

.cv__text1-sm {
  font-size: 4vw;
  line-height: 1.3;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__text1-sm {
    font-size: 30px;
  }
}

.cv__text2 {
  margin-top: 3.93333%;
  color: #071742;
  text-align: center;
  font-size: 6.33333vw;
  letter-spacing: -0.02em;
  line-height: 1.4;
}
.cv__text3{
  margin-top: 3.93333%;
  color: #071742;
  text-align: center;
  font-size: 8.33333vw;
  letter-spacing: -0.02em;
  line-height: 1.4;
}

@media screen and (min-width: 1080px) {
  .cv__text2 {
    font-size: 2vw;
    margin: 50px 0;
  }
  .cv__text3{
    font-size: 2.33333vw;
  }
}

@media screen and (min-width: 1080px) {
	.price_img {
	margin-bottom: 40px;
	}

}

.price_img {
	margin: 30px 0 40px;
}


.hyal {
	  margin-bottom: 20px;
}

.hyal_point {
	background-color:#AB8C1F;
	color:#fff;
	font-size: 6vw;
	text-align: center;
	padding:0.5em 0 0.7em;
	line-height: 1.8;
	margin-block: 1em 3em;
}

span.hyal_st {
	color:#AB8C1F;
	background-color:#fff;
	padding: 0 0.2em 0.1em;
}
span.hyal_st02 {
	background-color: #ab8c1f;
	color: #fff;
	padding:0 0.2em 0.1em;
}
span.hyal_m_txt {
	color: #AB8C1F;
	border-bottom:1px solid;
	font-size: 8vw;
}
.hyal_sub {
	font-size: 8vw;
	color: #071742;
}
p.hyal_sub02 {
	font-size: 3.6vw;
	text-align: center;
	margin-bottom: 2em;
	line-height: 1.8;
}
a.link {
	max-width: 673px;
	margin:0 auto 40px;
	display: block;
	width: 90%;
}
.hyal_after {
	background-color:#071742;
	color:#fff;
	font-size: 4.8vw;
	text-align: center;
	padding:0.5em 0 0.7em;
	margin-block-start: 1em;
	line-height: 1.8;
}
.hyal_after02 {
	font-size: 6vw;
	text-align: center;
	line-height: 1.8;
	margin-block:1.5em;
	letter-spacing: 0;
}
span.hyal_af_txt {
	color:#D8B633;
	font-size:7vw;
}
.gold {
	color:#AB8C1F;
}
span.hyal_sm_sub{
	font-size: 4.8vw;
}
/*span.hyal_sub {
	font-size: 7vw;
}*/

@media screen and (min-width: 1080px) {
	.hyal {
	  margin-bottom: 40px;
	}
	.hyal_point {
		font-size: 1.9vw;
		margin-block-start: 1em;
	}
	span.hyal_m_txt {
		font-size: 3vw;
	}
	.hyal_sub {
		font-size: 2.7vw;
	}
	p.hyal_sub02 {
		font-size: 1.2vw;
	}
	.hyal_after {
		font-size: 1.9vw;
	}
	.hyal_after02 {
		font-size: 2.2vw;
	}
	span.hyal_af_txt {
		font-size:2.3vw;
	}
	span.hyal_sm_sub {
	font-size: 1.8vw;
	}

}

@media screen and (min-width: 1080px) {
  .cv__text2.center {
    padding-top: 56px;
  }
}

.cv__text-extra-lg {
  text-align: center;
  font-size: 10vw;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__text-extra-lg {
    font-size: 64px;
  }
}

.cv__text-lg {
  font-size: 10.4vw;
}

@media screen and (min-width: 1080px) {
  .cv__text-lg {
    font-size: 3.5vw;
  }
}

.cv__text-md {
  font-size: 5.86667vw;
  letter-spacing: -0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .menu-txt{
    font-size: 1.2vw;
  }
  .cv__text-md {
    font-size: 40px;
  }
}

.cv__text-sm {
  text-align: center;
  font-size: 5.66667vw;
}
.cv__text-sm.point-4{
  font-size: 5vw;
}

@media screen and (min-width: 1080px) {
  .cv__text-sm {
    font-size: 2vw;
  }
}

.cv__lists {
  margin: 3.73333% auto 0;
  width: 84%;
}

@media screen and (min-width: 1080px) {
  .cv__lists {
    margin-top: 33px;
    width: 997px;
    display: flex;
    justify-content: space-between;
  }
}

.cv__list {
  position: relative;
  border-radius: 8px;
  filter: drop-shadow(0px 0px 30px rgba(0, 0, 0, 0.2));
  padding: 5% 0% 0.5%;
  background-color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__list {
    width: 480px;
    padding: 36px 0 8px;
  }
}

.cv__list.top::after {
  position: absolute;
  top: 22.7%;
  left: 7%;
  content: "";
  display: block;
  width: 86%;
  height: 0.2%;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__list.top::after {
    top: 20.7%;
    left: 2%;
    content: "";
    display: block;
    width: 95%;
    height: 0.2%;
  }
}

.cv__list.bottom::after {
  position: absolute;
  top: 24.7%;
  left: 6%;
  content: "";
  display: block;
  width: 87.9%;
  height: 0.2%;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__list.bottom::after {
    top: 20.7%;
    left: 2%;
    content: "";
    display: block;
    width: 95%;
    height: 0.2%;
  }
}

.cv__list + .cv__list {
  margin-top: 8.13333%;
}

@media screen and (min-width: 1080px) {
  .cv__list + .cv__list {
    margin-top: 0;
  }
}

.cv__list-title {
  font-size: 4.26667vw;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__list-title {
    font-size: 28px;
    white-space: nowrap;
  }
}

.cv__list-menu {
  margin-top: 5%;
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .cv__list-menu {
    margin-top: 30px;
    text-align: left;
    padding-left: 15px;
  }
}

.cv__list-menu.align-left {
  text-align: left;
  padding-left: 4%;
  margin-top: 4%;
}

@media screen and (max-width: 1079px) {
  .cv__list-menu.align-left {
    display: none;
  }
}

@media screen and (min-width: 1080px) {
  .cv__list-menu.align-left {
    margin-top: 26px;
  }
}

.cv__list-menu-text {
  padding: 0.5% 1.8%;
  background: #EEB649;
  border-radius: 20.5px;
  font-size: 2.66667vw;
  line-height: 1.8;
  text-align: center;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__list-menu-text {
    font-size: 20px;
    padding: 4px 12px;
  }
}

@media screen and (min-width: 1080px) {
  .cv__list-menu-text + .cv__list-menu-text {
    margin-top: 6px;
  }
}

@media screen and (max-width: 1079px) {
  .cv__list-menu-text.mt-md {
    margin-top: 1%;
  }
}

.cv__desc {
  background-color: #071742;
  text-align: center;
  margin-top: 5%;
  padding: 4% 0 3.5%;
}

@media screen and (min-width: 1080px) {
  .cv__desc {
    margin-top: 16px;
    padding: 36px 0 23px;
  }
}

.cv__desc-inner {
  line-height: 1;
}

.cv__desc-md {
  font-size: 4.26667vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__desc-md {
    font-size: 29px;
  }
}

.cv__desc-extra-md {
  font-size: 4.66667vw;
}

@media screen and (min-width: 1080px) {
  .cv__desc-extra-md {
    font-size: 31px;
  }
}

.cv__desc-extra-sm {
  font-size: 2.66667vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__desc-extra-sm {
    font-size: 16px;
  }
}

.cv__desc-sm {
  font-size: 3.2vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__desc-sm {
    font-size: 20px;
  }
}

.cv__desc-lg {
  font-size: 6.66667vw;
  letter-spacing: 0.1em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__desc-lg {
    font-size: 42px;
  }
}

.cv__desc-extra-lg {
  font-size: 13.33333vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cv__desc-extra-lg {
    font-size: 92px;
  }
}

.cv__desc-extra-lg.letter-spacing {
  letter-spacing: -0.04em;
}

.cv__desc-caption {
  font-size: 2.66667vw;
  text-align: right;
  color: #071742;
  line-height: 1.5;
}

@media screen and (max-width: 1079px) {
  .cv__desc-caption {
    padding: 1% 4% 1% 0;
  }
}

@media screen and (min-width: 1080px) {
  .cv__desc-caption {
    font-size: 16px;
    margin-top: 10px;
    padding-right: 12px;
  }
}

.cv__cta-box {
  width: 88%;
  margin: 3.66667% auto 0;
}

@media screen and (min-width: 1080px) {
  .cv__cta-box {
    width: 660px;
    margin: 10px auto 0;
  }
}

@media screen and (min-width: 1080px) {
  .cv__cta-box.bottom {
    margin: 32px auto 0;
  }
}

.cv__btn {
  display: block;
  width: 88%;
  margin: 6.66667% auto 0;
}
.cv__btn.tell{
  margin: 3.66667% auto 0;
}

@media screen and (min-width: 1080px) {
  .cv__btn {
    width: 670px;
    margin: 38px auto 0;
  }
}

.cv__btn.center {
  width: 100%;
  margin: 0;
}

.cv__inner {
  margin: 3.03333% auto 0;
  width: 88%;
}

@media screen and (min-width: 1080px) {
  .cv__inner {
    width: 997px;
    margin: 32px auto 0;
  }
}

.cv__inner.center {
  margin: 4.03333% auto 0;
}

@media screen and (min-width: 1080px) {
  .cv__inner.center {
    margin: 56px auto 0;
  }
}

.cv__inner.bottom {
  margin: 4.03333% auto 0;
}

@media screen and (min-width: 1080px) {
  .cv__inner.bottom {
    margin: 16px auto 0;
  }
}

.cv__telbox {
  position: relative;
  text-align: center;
  padding: 6.5% 0 4.9%;
  border: 0.63333vw solid;
  border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
  border-image-slice: 1;
}

@media screen and (min-width: 1080px) {
  .cv__telbox {
    padding: 32px 0 38px;
    border: 4px solid;
    border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
    border-image-slice: 1;
  }
}

.cv__telbox::after {
  position: absolute;
  top: 1.4%;
  left: 1%;
  content: "";
  display: block;
  width: 97%;
  height: 94%;
  border: 0.53333vw solid;
  border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
  border-image-slice: 1;
}

@media screen and (max-width: 1079px) {
  .cv__telbox::after {
    pointer-events: none;
  }
}

@media screen and (min-width: 1080px) {
  .cv__telbox::after {
    top: 2.9%;
    left: 0.8%;
    content: "";
    display: block;
    width: 98%;
    border: 2px solid;
    border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
    border-image-slice: 1;
  }
}

.cv__telbox-link {
  color: #B58F39;
}

.cv__tel-icon {
  width: 11.73333%;
  vertical-align: baseline;
  margin-right: 1%;
}

@media screen and (min-width: 1080px) {
  .cv__tel-icon {
    width: 73px;
  }
}

.cv__telbox-text1 {
  font-size: 4.53333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__telbox-text1 {
    font-size: 30px;
  }
}

.cv__telbox-text2 {
  margin-top: 1.7%;
  font-size: 10.13333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #B58F39;
}

@media screen and (min-width: 1080px) {
  .cv__telbox-text2 {
    font-size: 76px;
    margin-top: -10px;
  }
}

.cv__telbox-text3 {
  font-size: 2.66667vw;
  text-align: center;
  line-height: 1;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__telbox-text3 {
    font-size: 20px;
    margin-top: 12px;
  }
}

.cv__caption {
  margin-top: 1.9%;
  font-size: 2.66667vw;
  line-height: 1.3;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cv__caption {
    font-size: 16px;
  }
}


.cv_campaign {
	border-radius: 8px;
	filter: drop-shadow(0px 0px 30px rgba(0, 0, 0, 0.2));
	background-color: #fff;
	width: min(997px,96%);
	margin: 2.2% auto 0;
	padding-bottom: 1em;
}
.c_last {
	margin: 4% auto 2%;
}
.camp_box {
	background-color: #071742;
	color: #fff;
	box-sizing: border-box;
	padding: 0.5em 1em 0.65em 1em;
	font-weight: 500;
	letter-spacing: 0.03em;
	border-radius: 0.5em 0.5em 0 0;
	margin-block-end: 1em;
}
strong.camp_mttl {
	font-size: 28px;
	white-space: nowrap;
}
.camp_ttl {
	font-weight: 600;
	font-family: Noto Serif JP;
	font-size: 2.8em;
	color:#071742;
	background: linear-gradient( transparent 0, transparent 80%, #EEB649 80%, #EEB649 100%);
}
.txt {
	padding-block-start: 0.5em;
}
p.exp {
	color: #071742;
	font-weight: 400;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 1.2em;
	line-height: 1.6;
}
@media screen and (min-width: 1080px) {
  p.exp {
    font-size: 1.5vw;
  }
}

.bold{
  font-weight: 600!important;
}
.under-line{
  text-decoration: underline;
}
em.red {
	font-style: normal;
	color: #071742;
}
.gold {
	font-style: normal;
	color: #ab8c1f;
}
.campaign_box {
	width: 720px;
	margin: 1em auto 2em;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	padding-inline: 2%;
}

.nayami_list{
  background: #ebebeb;
  width: 80%;
  margin: 24px auto;
  text-align: center;
  border-bottom-left-radius: 5px;
  border-top-right-radius: 5px;
  padding: 15px;
}
.nayami_lists{
  padding: 20% 0;
}
p.sub_txt {
	color: #071742;
	font-weight: 600;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	width: 720px;
	margin: 1em auto 0;
	text-align: right;
}
.cp_price {
	width: min(720px,96%);
	margin: 1em auto;
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
}
.price {
	border: 2px solid #071742;
	width: 60%;
	padding: 1em;
	box-sizing: border-box;
	position: relative;
}
.normal {
	width: 40%;
}
.nor_txt {
	background: #071742;
	color: #fff;
	font-size: 1.3em;
	text-align: center;
	padding: 1.1em;
}
em.nor_price {
	font-size:2em;
	font-style:normal;
}
span.point {
	position: absolute;
	top: -17%;
	background: #071742;
	color: #fff;
	left: 30%;
	padding: 0.1em 0.6em 0.25em;
	font-size: 1.2em;
	border-radius: 1em;
}
em.ap {
	background: #EDB143;
	color: #fff;
	padding: 0.7em 0.9em;
	border-radius: 5em;
	font-weight: 600;
	font-style: normal;
	font-size: 1.5em;
	line-height: 1.2;
	/*height: 16vh;*/
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
p.s_price {
	font-size: 4.8em;
	color: #071742;
	line-height: 1.2;
	font-weight: bold;
}
em.small {
	font-style: normal;
	font-size: 0.5em;
	color: #071742;
}
br.sp {
	display:none;
}



@media screen and (min-width: 768px) {
/*.cv_campaign {
	margin: 5% auto 0;
}
.campaign_box {
	display: block;
	text-align: left;
	inline-size: min(720px,96%);
	margin: 1em auto 1em;
}
.camp_ttl {
	text-align: center;
	display: block;
	width: 60%;
	margin: 0 auto;
	font-size: 42px;
}
p.exp {
	font-size: 0.97em;
}
.cp_price {
	display: block;
	padding-inline: 3%;
}
.price {
	width:100%;
}
span.point {
	top: 10%;
	left: 40%;
}
p.s_price {
	font-size: 3em;
	padding-top: 0.7em;
}*/
}

.problem {
  padding: 19.73333% 0 7.07%;
  background-image: url(../img/sp/problem_bg01b.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 0 0;
}

@media screen and (min-width: 1080px) {
  .problem {
    background-image: url(../img/sp/problem_bg01b.jpg), url(../img/sp/problem_bg02.jpg);
    background-repeat: no-repeat;
    background-size: 1920px 676px, 1920px 793px;
    background-position: 50% top, 50% bottom;
  }
}

@media screen and (min-width: 1080px) {
  .problem {
    padding: 103px 0 78px;
  }
}

.problem__inner {
  width: 71.6%;
  margin: 0 auto;
}

@media screen and (min-width: 1080px) {
  .problem__inner {
    width: 910px;
  }
}

.problem__title {
  position: relative;
  padding-left: 7vw;
  font-size: 6.666654vw;
  letter-spacing: 0.02em;
  color: #071742;
  text-shadow: 0px 0px 5px #F2F2F2;
}

.problem__title::before {
    content: "";
    background-image: url(../img/common/caution_img.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 30%;
    left: -4%;
    width: 100%;
    height: 1em;
  }

@media screen and (min-width: 1080px) {
  .problem__title {
    font-size: 43px;
    position: relative;
    padding-left: 80px;
  }

  .problem__title::before {
    content: "";
    background-image: url(../img/common/caution_img.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 7px;
    left: -7px;
    width: 100%;
    height: 64px;
  }
}

.problem__border {
  border-bottom: 0.13333vw solid #071742;
}

@media screen and (min-width: 1080px) {
  .problem__border {
    padding-bottom: 6px;
  }
}

@media screen and (max-width: 1079px) {
  .problem__shadow {
    text-shadow: 2px 2px 0px #FFF, -2px 2px 0px #FFF, 2px -2px 0px #FFF, -2px -2px 0px #FFF, 2px 0px 0px #FFF, 0px 2px 0px #FFF, -2px 0px 0px #FFF, 0px -2px 0px #FFF;
  }
}

.problem__text-list {
  margin-top: 6%;
  padding-left: 6.2%;
  background-image: url(../img/common/problem_icon01.png);
  background-size: 5.1% 89%;
  background-position: 0% 32%;
  background-repeat: no-repeat;
}

@media screen and (min-width: 1080px) {
  .problem__text-list {
    padding-left: 40px;
    margin-top: 34px;
    background-size: 24px 172px;
    background-position: 0% 50%;
  }
}

.problem__text {
  font-size: 3.6333vw;
  color: #071742;
  letter-spacing: 0.05em;
  line-height: 2;
}

@media screen and (min-width: 1080px) {
  .problem__text {
    font-size: 24px;
  }
}

.problem__bg-color {
  background: #DBE7FF;
}

.problem__text-box {
  margin-top: 14.2%;
  text-align: center;
  line-height: 1.5;
}

@media screen and (min-width: 1080px) {
  .problem__text-box {
    margin-top: 44px;
    text-align: left;
    padding-left: 98px;
  }
}

.problem__text-md {
  font-size: 3.46667vw;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .problem__text-md {
    font-size: 22px;
    padding-left: 32px;
  }
}

.problem__text-lg {
  margin-top: 1.7%;
  font-size: 5.6vw;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .problem__text-lg {
    font-size: 38px;
    margin-top: 8px;
  }
}

.problem__under-line {
  border-bottom: double 4px #071742;
}

@media screen and (min-width: 1080px) {
  .problem__under-line {
    margin-left: 22px;
  }
}

.problem__title-lg {
  font-size: 8.8vw;
  text-align: center;
  color: #071742;
  margin-top: 22.9%;
  letter-spacing: -0.03em;
}

@media screen and (min-width: 1080px) {
  .problem__title-lg {
    font-size: 62px;
    margin-top: 186px;
    padding-left: 52px;
  }
}

.problem__title-sm {
  font-size: 6.93333vw;
}

@media screen and (min-width: 1080px) {
  .problem__title-sm {
    font-size: 48px;
  }
}

.problem__lead {
  font-size: 3.73333vw;
  text-align: center;
  letter-spacing: 0.1em;
  color: #071742;
  margin-top: 2%;
}

@media screen and (min-width: 1080px) {
  .problem__lead {
    font-size: 24px;
    margin-top: 32px;
  }
}

.problem__text-list2 {
  margin-top: 6%;
}

@media screen and (min-width: 1080px) {
  .problem__text-list2 {
    margin: 48px auto 0;
    max-width: 1000px;
  }
}

.problem__text2 {
  font-size: 4vw;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #071742;
  padding: 3.33333% 0;
  margin-left: auto;
}

@media screen and (min-width: 1080px) {
  .problem__text2 {
    font-size: 26px;
  }
}

.problem__text2.top {
  text-align: right;
  padding-right: 5.6%;
}

@media screen and (min-width: 1080px) {
  .problem__text2.top {
    padding: 0px 250px 0px 100px;
  }
}

.problem__text2.center {
  width: 47.6%;
  margin-top: 3%;
}

@media screen and (min-width: 1080px) {
  .problem__text2.center {
    width: 100%;
    padding: 0 250px 0 0;
    text-align: right;
    margin-top: 72px;
  }
}

.problem__text2.bottom {
  text-align: right;
  padding-right: 5.2%;
  margin-top: 2%;
}

@media screen and (min-width: 1080px) {
  .problem__text2.bottom {
    width: 100%;
    padding: 0px 246px 0 0;
    text-align: right;
    margin-top: 68px;
  }
}

.problem_image {
	padding: 0 1.6rem 1.6rem;
	background-color: #f1f1f1;
	text-align: center;
}

@media screen and (min-width: 1080px) {
  .problem_image {
    margin-top: 0;
  }
  
  .problem_image img {
    max-width: 719px;
  }
}

.problem__inform {
    background-color: #f1f1f1;
}

.inform__inner {
    width: 92%;
    margin: 0 auto;
}

@media screen and (min-width: 1080px) {
.inform__inner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
 }
}

.inform__title {
    width: 90%;
    margin: 0 auto;
    font-size: 5.6vw;
    text-align: center;
    color: #3E5585;
    line-height: 1.6;
}

@media screen and (min-width: 1080px) {
.inform__title {
    width: 98%;
    font-size: 39px;
    text-align: center;
    color: #3E5585;
 }
}

.inform__border {
    display: inline;
    margin-bottom: 10px;
    border-bottom: 2px solid #071742;
}

.none {
    display: block;
}

@media screen and (min-width: 1080px) {
    .none {
      display: none;
     }
    }
    
.new_line {
    display: inline-block;
}

@media screen and (min-width: 1080px) {
    .new_line {
      display: inline-block;
     }
    }


.inform__text-bg {
    background: #F8F8C5;
    display: inline-block;
    line-height: 1.1;
}

.inform__imgbox {
    max-width: 720px;
    margin: 0 auto;
    padding: 5.945% 0 8.7%;
}

@media screen and (min-width: 1080px) {
  .inform__imgbox {
  max-width: 720px;
  margin: 0 auto;
  padding: 33px 0 60px;
}
}

.inform__box {
  position: relative;
  border: solid 1px #071742;
  padding: 4.365%;
  background-color: #fff;
  width: 90%;
  margin: 16px auto;  
}

@media screen and (min-width: 1080px) {
.inform__box {
    position: relative;
    border: solid 2px #071742;
    padding: 38px 0 38px 35px;
    background-color: #fff;
}
}

.inform__box h3 {
  padding-bottom: 5.76%;
  font-size: 5.0667vw;
  color: #3E5585;
}

@media screen and (min-width: 1080px) {
.inform__box h3 {
    padding-bottom: 35px;
    font-size: 32px;
    color: #3E5585;
}
}

.inform__mintext {
  font-size: 2.2vw;
  color: #0e295f;
  line-height: 1.6;
}

@media screen and (min-width: 1080px) {
.inform__mintext {
    max-width: 708px;
    font-size: 19px;
    line-height: 1.6;
}
}

.inform__box img {
  position: absolute;
  top: -25%;
  right: 4%;
  min-width: 85px;
  width: 25%;
}

@media screen and (min-width: 1080px) {
.inform__box img {
  position: absolute;
  top: 9%;
  right: 4%;
  max-width: 180px;
}
}

.inform__text {
  padding: 10.145% 0;
  font-size: 5.066656vw;
  color: #3E5585;
  text-align: center;
}

@media screen and (min-width: 1080px) {
.inform__text {
    padding: 52px 0;
    font-size: 32px;
    color: #3E5585;
    text-align: center;
}
}

.dib {
  display: inline-block;
}

.dot-text {
  position: relative;
}

@media screen and (min-width: 1080px) {
  .dot-text {
    position: relative;
  }
}

.dot-text::before {
  content: "・";
  position: absolute;
  top: -0.8em;
  left: 0;   
}

@media screen and (min-width: 1080px) {
  .dot-text::before {
    content: "・";
    position: absolute;
    top: -1em;
    left: 0;   
  }
}




.feature__title {
  font-size: 5.33333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
  line-height: 1.2;
}

@media screen and (min-width: 1080px) {
  .feature__title {
    font-size: 40px;
  }
}

.feature__title-sm {
  font-size: 7.46667vw;
}

@media screen and (min-width: 1080px) {
  .feature__title-sm {
    font-size: 56px;
  }
}

.feature__title-md {
  font-size: 8.8vw;
}

@media screen and (min-width: 1080px) {
  .feature__title-md {
    font-size: 66px;
  }
}

.feature__title-lg {
  font-size: 9.33333vw;
}

@media screen and (min-width: 1080px) {
  .feature__title-lg {
    font-size: 70px;
  }
}

.feature__title-extra-lg {
  font-size: 10.4vw;
}

@media screen and (min-width: 1080px) {
  .feature__title-extra-lg {
    font-size: 78px;
  }
}

.feature__lists {
	width: 92%;
	margin: 0 auto 3.6%;
}

	.sp_smr {
	display:block;
}
	.pc_smr {
	display:none;
}
	dl.feature__contents .que{
	text-indent: 0;
	line-height: 1.5;
	font-size: 1.1em;
	padding: 0 0 0 2em;
	color: #C36;
	position: relative;
	margin: 1em 0 0;
}
	dl.feature__contents .q2{
	color: #074995;
	margin-left: 0;
	padding: 0 0 0 2em;
	width: 100%;
	margin-bottom: 0;
}
	dl.feature__contents span.qt {
	font-size: 1.4em;
	position: absolute;
	top: -0.3em;
	left: 0;
}
	dl.feature__contents span.at {
	font-size: 1.4em;
	position: absolute;
	top: -0.3em;
	left: 0;
}
	dl.feature__contents {
	text-align:left;
}


@media screen and (min-width: 1080px) {
	.feature__lists {
	margin: 60px auto;
	width: 1000px;
}
	.sp_smr {
	display:none;
}
	.pc_smr {
	display:block;
}
	ul.sm_ttl2 {
	margin-top: 0;
}
	dl.feature__contents {
	text-align:left;
}
	dl.feature__contents .que{
	text-indent: 0;
	line-height: 1.5;
	font-size: 1.35em;
	color: #C36;
	position: relative;
	margin: 0 0 1em;
}
	dl.feature__contents .q2{
	color: #074995;
	margin-left: 0;
	width: 100%;
	margin-bottom: 0;
}
	dl.feature__contents span.qt {
	font-size: 1.4em;
	position: absolute;
	top: -0.3em;
	left: 0;
}
	dl.feature__contents span.at {
	font-size: 1.4em;
	position: absolute;
	top: -0.3em;
}

}

	h2.sm_ttl {
	margin: 0 auto;
}
	ul.sm_ttl2 {
	margin-top: 1em;
}

.feature__lists li.sm {
	padding-top: 1em;
}

.feature__list {
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
  padding: 16% 6.66667% 4.83333%;
  text-align: center;
  background-color: #fff;
}

@media screen and (min-width: 1080px) {
  .feature__list {
    padding: 36px 42px 49px 46px;
  }
}

.feature__list + .feature__list {
  margin-top: 4%;
}

@media screen and (min-width: 1080px) {
  .feature__list + .feature__list {
    margin-top: 33px;
  }
}

.feature__list.top {
  background-image: url(../img/common/feature_icon01.png);
  background-size: 12% 10%;
  background-repeat: no-repeat;
  background-position: 50% 3%;
}
.feature__list.topseason {
  background-size: 12% 10%;
  background-repeat: no-repeat;
  background-position: 50% 3%;
  background: #eef9ff;
  /* padding: 5% 6.66667% 4.83333%; */
}

@media screen and (min-width: 1080px) {
  .feature__list.top {
    background-size: 90px 92px;
    background-repeat: no-repeat;
    background-position: 21.8% 2%;
  }
}

.feature__list.center {
  background-image: url(../img/common/feature_icon02.png);
  background-size: 12% 10%;
  background-repeat: no-repeat;
  background-position: 50% 2%;
}

@media screen and (min-width: 1080px) {
  .feature__list.center {
    background-size: 90px 90px;
    background-repeat: no-repeat;
    background-position: 77.8% 4%;
  }
}

.feature__list.bottom {
  background-image: url(../img/common/feature_icon03.png);
  background-size: 12% 10%;
  background-repeat: no-repeat;
  background-position: 50% 2%;
}

@media screen and (min-width: 1080px) {
  .feature__list.bottom {
    background-size: 90px 92px;
    background-repeat: no-repeat;
    background-position: 21.8% 2%;
  }
}

@media screen and (min-width: 1080px) {
  .feature__inner {
    width: 912px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .feature__doctorcm {
    width: 912px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1080px) {
  .feature__inner.reverse {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 1080px) {
  .feature__contents {
    margin-top: 60px;
  }
  .doctor_cm {
	margin-top:30px;
  }
  .season {
    margin-top: unset;
  }
}

.feature__list-title {
  font-size: 6vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: 0.15em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .feature__list-title {
    font-size: 32px;
    width: 406px;
  }
}

.feature__list-img {
  margin-top: 6%;
}
.doc_img {
	margin-top:0;
}

@media screen and (min-width: 1080px) {
  .feature__list-img {
    margin-top: 0;
    width: 493px;
  }
}

.feature__list-lead {
  padding: 2.33333% 4%;
  background: #071742;
  font-size: 3.73333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #fff;
  margin: 3.3% auto 0;
}

@media screen and (min-width: 1080px) {
  .feature__list-lead {
    font-size: 24px;
    margin-top: 6px;
    padding: 8px 20px;
  }
}

.feature__list-desc {
  font-size: 3.2vw;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #071742;
  margin-top: 6%;
  text-align: left;
}

@media screen and (min-width: 1080px) {
  .feature__list-desc {
    margin-top: 46px;
    font-size: 20px;
  }
}

.feature__list-caption {
  font-size: 2.66667vw;
  line-height: 1.5;
  color: #071742;
  text-align: left;
  margin-top: 1em;
}

@media screen and (min-width: 1080px) {
  .feature__list-caption {
    font-size: 16px;
    margin-top: 30px;
  }
}

.media {
  text-align: center;
}

.media__box {
  padding: 9.33333% 0 2%;
  background-color: #071742;
}

@media screen and (min-width: 1080px) {
  .media__box {
    padding: 44px 0 15px;
  }
}

.media__inner {
  max-width: 1000px;
  margin: 0 auto;
}

.media__contents {
  padding: 13.86667% 0 8.4%;
  background: #F2F2F2;
  background-image: url(../img/common/media_bg01.png);
  background-repeat: no-repeat;
  background-size: 82% 21%;
  background-position: 50% 9.3%;
}

@media screen and (min-width: 1080px) {
  .media__contents {
    padding: 60px 0 20px;
    background-size: 610px 148px;
    background-position: 50% 7.1%;
  }
}

.media__img1 {
  width: 86.53333%;
}

@media screen and (min-width: 1080px) {
  .media__img1 {
    width: 649px;
  }
}

.media__img2 {
  width: 81.73333%;
  margin-top: 8.13333%;
}

@media screen and (min-width: 1080px) {
  .media__img2 {
    width: 488px;
    margin-top: 10px;
  }
}

.media__text {
  color: #fff;
  text-align: right;
  font-size: 2.66667vw;
  line-height: 1.3;
  padding-right: 3%;
}

@media screen and (min-width: 1080px) {
  .media__text {
    font-size: 16px;
  }
}

.media__text:first-of-type {
  margin-top: 5.1%;
}

@media screen and (min-width: 1080px) {
  .media__text:first-of-type {
    margin-top: 16px;
  }
}

.media__title {
  font-size: 10.26667vw;
  line-height: 1.5;
  text-align: center;
  letter-spacing: -0.03em;
  color: #112b61;
}

@media screen and (min-width: 1080px) {
  .media__title {
    font-size: 73px;
  }
}

.intro_menu{
  color: #0e285e;
}
.intro_menu ul {
  display: flex;
  transform: rotate(90deg);
  transform-origin: left bottom;
  font-size: 0.7rem;
}
@media screen and (min-width: 1080px) {
  .intro_menu ul {
    font-size: 1.3rem;
  }
}
.intro_menu ul li {
  white-space: nowrap; /* テキストの折り返しを防止 */
  padding: 10px;
}


.intro__title {
  font-size: 7.73333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
  line-height: 1;
}
.cv_ttl {
	font-size: 1.1em;
}
.cvttl_sb { 
	font-size: 0.6em;
}

@media screen and (min-width: 1080px) {
  .intro__title {
    font-size: 58px;
  }
}

.intro__list {
  width: 84%;
  margin: 4% 0 0 auto;
  padding: 2.4% 3.2% 2.3% 2.13333%;
  background: #fff;
}


	p.int_ttl {
	padding:0.1em 1em;
	font-size: 1.3em;
	margin: 0.3em auto 0.5em;
	display: inline-block;
  width: 100%;
  border-bottom: 2px solid #0e285e;
  text-align: left;
  }
  .int_ttl_ex{
    text-align: left;
    padding: 0.1em 1em;
    margin: 0.3em auto 0.5em;
  }
	.flex {
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
  }
	.laser_ph {
	margin-bottom: 5em;	  
	padding: 2em 5em;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	position:relative;
	width: 96%;
	padding: 1em;
  }
    p.laser_ttl {
	background:#071742;
	color:#fff;
	padding:0.4em 0.8em;
	font-size: 1.2em;
	float: none;
	text-align: left;
  }
    p.laser_sub {
	font-size:1.3em;
	border-left:8px solid #071742;
	text-align: left;
	margin: 0.7em 0 0;
	padding-left: 0.6em;
	}
	.cv_ttlsc {
	margin-bottom: 1.2em;
	}
	.c-both {
	clear:both;
	}
	.laser_ph dt.ope_bf,.laser_ph dt.ope_af {
	font-size: 1.1em;
	padding: 0.15em;
	width: 5em;
	text-align: center;
	border-radius: 2em;
	margin: 1em auto 0.5em;
	letter-spacing: 0.05em;
	}
	.laser_ph dt.ope_bf {
	border: 1px solid #000;
	}
	.laser_ph dt.ope_af {
	background: #EFB549;
	color: #fff;
	}
	.triangle {
	display:none;
	}
	.t_one {
	top: 36%;	
	}
	.t_two {
	top: 75%;	
	left: 4%;
	}
	.t_three {
	top: 75%;	
	}
	.ope_img {
	max-width: 160px;
	}





@media screen and (min-width: 1080px) {
	p.int_ttl {
	padding:0.1em 0.5em;
	font-size: 2.1em;
	margin: 0 auto 1em;
	display: inline-block;
  }
	.flex {
    display: flex;
    justify-content: space-between;
	flex-wrap: wrap;
  }
	.laser_ph {
	margin-bottom: 5em;	  
	padding: 2em 5em;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	position:relative;
  }
    p.laser_ttl {
	background:#071742;
	color:#fff;
	padding:0.4em 0.8em;
	font-size:1.563em;
	float: left;
  }
    p.laser_sub {
	font-size:1.563em;
	border-left:8px solid #071742;
	text-align: left;
	margin: 0.7em 0 0;
	padding-left: 0.6em;
	}
	span.laser_ttl_4050 {
	font-size: 1em;
	background-color: #fff;
	padding: 0 0.2em;
	display: inline-block;
	}
	
	.c-both {
	clear:both;
	}
	.laser_ph dt.ope_bf,.laser_ph dt.ope_af {
	font-size: 1.375em;
	padding: 0.15em;
	width: 5em;
	text-align: center;
	border-radius: 2em;
	margin: 1em auto 0.5em;
	letter-spacing: 0.05em;
	}
	.laser_ph dt.ope_bf {
	border: 1px solid #000;
	}
	.laser_ph dt.ope_af {
	background: #EFB549;
	color: #fff;
	}
	.triangle {
	width: 0;
	height: 0;
	border-left: 15px solid #17399D;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	margin-top: 1em;
	top: 58%;
	left: 49.5%;
	position: absolute;
	display: block;
	}
	.t_one {
	top: 33%;	
	}
	.t_two {
	top: 75%;	
	left: 4%;
	}
	.t_three {
	top: 78%;	
	}
	.ope_img {
	 max-width: unset;
	}
}


.intro__list + .intro__list {
  margin-top: 4%;
}
	span.laser_ttl_4050 {
	font-size: 1em;
	background-color: #fff;
	padding: 0 0.2em;
	display: inline-block;
	}


@media screen and (min-width: 1080px) {
  .intro__list + .intro__list {
    margin-top: 40px;
  }
}

@media screen and (min-width: 1080px) {
  .intro__list-img {
    width: 593px;
  }
  .intro__inner {
    margin-top: 3%;
  }
}


.intro__list-title {
  padding: 3% 3.2%;
  line-height: 1.5;
  width: 100%;
  text-align: left;
}

@media screen and (min-width: 1080px) {
  .intro__list-title {
    font-size: 1.4vw;
    padding: 4px 24px;
  }
}

@media screen and (min-width: 1080px) {
  .intro__list-title.mt-md {
    margin-top: 20px;
  }
}

.intro__list-desc {
  font-size: 3vw;
  line-height: 1.5;
  letter-spacing: 0.03em;
  color: #0e295f;
  margin-top: 1%;
  margin-left: 3%;
  text-align: left;
}
.intro__list-desc_tag .second{
  margin-top: 10px;
}
.intro__list-desc_tag ul{
  display: flex;
  gap: 5px;
  padding: 0 3.2%;
}
.intro__list-desc_tag ul li{
  background: #ab8c1f;
  color: #fff;
  font-size: 0.778em;
  width: fit-content;
  padding: 4px;
}
.intro__list-desc.intro-price p{
  text-align: left;
  margin: 3% 3% 1%;
  padding: 3%;
  border: 1px solid #0e295f;
}
.intro__inner .notice{
  font-size: 0.7em;
  text-align: right;
  margin-right: 3%;
}
.intro__inner .notice.left{
  text-align: left;    
  margin-left: 3%;
}
.intro .intro__list-desc-img{
  margin: 20px auto;
}
@media screen and (min-width: 1080px) {
  .intro__list-desc {
    font-size: 18px;
    margin-top: 4px;
  }
  .int_ttl_ex{
    font-size: 1.5vw;
  }
}

.intro__caption {
  margin: 3% auto 0;
  font-size: 2.8vw;
  line-height: 1.5;
  width: 90%;
}

@media screen and (min-width: 1080px) {
  .intro__caption {
    margin: 4px auto 5em;
    font-size: 16px;
    width: 999px;
    text-align: left;
    white-space: nowrap;
  }
}

.be-careful {
  background-image: url(../img/sp/be-careful_bg_sp.jpg);
  background-position: center;
  background-size: cover;
  padding: 50px 0;
}

@media screen and (min-width: 1080px) {
  .be-careful {
    background-image: url(../img/sp/be-careful_bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    padding: 69px 0 110px;
  }
}

.be-careful__inner {
  width: 96%;
  margin: 0 auto;
}

@media screen and (min-width: 1080px) {
  .be-careful__inner {
    max-width: 1000px;
    width: 92%;
    margin: 0 auto;
  }
}

.be-careful__flex {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 60px;
}

@media screen and (min-width: 1080px) {
  .be-careful__flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-direction: inherit;
    padding: 0;
  }
}

.be-careful__img01 {
  padding-bottom: 12.71%;
}

@media screen and (min-width: 1080px) {
  .be-careful__img01 {
    max-width: 447px;
    padding-bottom: 0;
  }
}

.be-careful__img02 {
}

@media screen and (min-width: 1080px) {
  .be-careful__img02 {
    max-width: 508px;
  }
}

.be-careful__text {
  font-size: 2.93335vw;
  padding: 5.14% 0 5.558%;
  line-height: 1.6;
}

@media screen and (min-width: 1080px) {
  .be-careful__text {
    font-size: 18px;
    padding: 72px 0 40px;
    line-height: 1.4;
  }
}

.be-careful__img03 {
  margin: 0 auto;
  padding: 0 5% 7.225%;
}

@media screen and (min-width: 1080px) {
  .be-careful__img03 {
    max-width: 529px;
    padding:0 0 40px;
  }
}

@media screen and (min-width: 1080px) {
  .be-careful__left {
    float: left;
    width: 48%;
    margin-right: 2%;
  }
}

@media screen and (min-width: 1080px) {
  .be-careful__right {
    float: left;
    width: 48%;
  }
}


.be-careful__list {
  position: relative;
  margin-bottom: 6.67%;
  font-size: 3.73332vw;
  padding-left: 8.8%;
}

@media screen and (min-width: 1080px) {
  .be-careful__list {
    position: relative;
    margin-bottom: 30px;
    font-size: 19px;
    padding-left: 45px;
  }
}

@media screen and (min-width: 1080px) {
  .be-careful__list:nth-of-type(3) {
    margin-bottom: 0;
  }
}

.be-careful__list::before {
  content: "";
  background-image: url(../img/common/be-careful_icon.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: -15%;
  left: 0;
  min-width: 25px;
  width: 5.4%;
  height: 5vh;
}

@media screen and (min-width: 1080px) {
  .be-careful__list::before {
    content: "";
    background-image: url(../img/common/be-careful_icon.png);
    position: absolute;
    top: -25%;
    left: 0;
    max-width: 36px;
    width: 100%;
    height: 36px;
  }
}

.be-careful__list:nth-of-type(3)::before {
  top: -2%;
}

@media screen and (min-width: 1080px) {
  .be-careful__list:nth-of-type(3)::before {
    top: -10%;
  }
}

@media screen and (min-width: 1080px) {
  .be-careful__clear {
    clear: both;
  }
}


.worries {
  padding: 18.73333% 0 12%;
  background-image: url(../img/sp/worries_bg01.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 0% 0%;
}

@media screen and (min-width: 1080px) {
  .worries {
    padding: 164px 0 94px;
    background-image: url(../img/sp/worries_bg01.jpg);
    background-size: 1920px 100%;
    background-repeat: no-repeat;
    background-position: 50% 0%;
  }
}

.worries__title {
  font-size: 7.46667vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .worries__title {
    font-size: 52px;
  }
}

.worries__notice {
  font-size: 6.66667vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .worries__notice {
    font-size: 46px;
  }
}

.worries__inner {
  width: 75.03333%;
  margin: 124.3% auto 0;
  background: #fff;
  box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.25);
  border-radius: 10px;
  padding: 10% 6.13333% 5.46667%;
  position: relative;
  background-image: url(../img/sp/worries_icon02.png);
  background-size: 80% 20%;
  background-repeat: no-repeat;
  background-position: 53% 52%;
}

@media screen and (min-width: 1080px) {
  .worries__inner {
    margin: 940px auto 0;
    width: 1000px;
    padding: 70px 38px 40px;
    background-size: 458px 64px;
    background-repeat: no-repeat;
    background-position: 91% 43%;
  }
}

.worries__icon {
  position: absolute;
  top: -9%;
  left: 37%;
  width: 27%;
}

@media screen and (min-width: 1080px) {
  .worries__icon {
    top: -13.9%;
    left: 42.4%;
    width: 150px;
  }
}

.worries__text {
  margin-top: 5.2%;
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .worries__text {
    margin-top: 34px;
  }
}

.worries__text-sm {
  font-size: 3.2vw;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .worries__text-sm {
    font-size: 24px;
  }
}

.worries__text-lg {
  font-size: 4.8vw;
  letter-spacing: 0.1em;
  color: #071742;
  background: linear-gradient(transparent 70%, #FFDE9E 70%);
}

@media screen and (min-width: 1080px) {
  .worries__text-lg {
    font-size: 32px;
  }
}

.solution {
  position: relative;
  padding: 10.66667% 0 14%;
  background-image: url(../img/sp/solution_bg01.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 0% 0%;
}

@media screen and (min-width: 1080px) {
  .solution {
    padding: 72px 0 138px;
    background-image: url(../img/sp/solution_bg01.png);
    background-size: 1920px 1375px;
    background-repeat: no-repeat;
    background-position: 50% 0%;
  }
}

.solution__notice {
  font-size: 3.73333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #fff;
  background: #EEB649;
  padding: 1% 1%;
  width: 56%;
  margin: 0 auto;
  position: relative;
  z-index: 10;
}

@media screen and (min-width: 1080px) {
  .solution__notice {
    font-size: 28px;
    width: 420px;
    padding: 6px 12px;
  }
}

.solution__notice:after {
  position: absolute;
  content: "";
  display: block;
  bottom: -38.6%;
  left: 47%;
  z-index: -1;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 10.5px 0 10.5px;
  border-color: #EEB649 transparent transparent transparent;
}

@media screen and (min-width: 767px) and (max-width: 1079px) {
  .solution .solution__notice::after {
    bottom: -30%;
  }
}

.solution__title {
  font-size: 7.46667vw;
  text-align: center;
  letter-spacing: 0.1em;
  color: #071742;
  margin-top: 4.4%;
}

@media screen and (min-width: 1080px) {
  .solution__title {
    font-size: 52px;
    margin-top: 42px;
  }
}

.solution__inner {
  max-width: 1080px;
  margin: 0 auto;
}

.solution__list {
  position: relative;
}

.solution__list.top {
  margin-top: 4%;
  padding-right: 20%;
}

@media screen and (min-width: 1080px) {
  .solution__list.top {
    margin-top: 24px;
    padding-right: 0;
  }
}

.solution__list.bottom {
  margin-top: 6.66667%;
  padding-left: 20%;
}

@media screen and (min-width: 1080px) {
  .solution__list.bottom {
    text-align: right;
    padding-left: 0;
    margin-top: 48px;
  }
}

@media screen and (min-width: 1080px) {
  .solution__list-img1 {
    width: 600px;
  }
}

@media screen and (min-width: 1080px) {
  .solution__list-img2 {
    width: 640px;
    padding-right: 42px;
  }
}

.solution__list-text {
  background: #071742;
  color: #fff;
  font-size: 3.73333vw;
  line-height: 1.8;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 1080px) {
  .solution__list-text {
    font-size: 28px;
  }
}

.solution__list-text.text1 {
  position: absolute;
  top: 61%;
  padding: 0 3.8%;
  left: 65%;
}

@media screen and (min-width: 1080px) {
  .solution__list-text.text1 {
    top: 62%;
    padding: 0 26px;
    left: 44.7%;
  }
}

.solution__list-text.text2 {
  position: absolute;
  top: 77%;
  left: 41%;
  padding: 0 3.1%;
}

@media screen and (min-width: 1080px) {
  .solution__list-text.text2 {
    top: 78.8%;
    padding: 0 20px;
    left: 28.7%;
  }
}

.solution__list-text.text3 {
  position: absolute;
  top: 59%;
  left: 4%;
  padding: 0 0.6%;
}

@media screen and (min-width: 1080px) {
  .solution__list-text.text3 {
    top: 59%;
    padding: 0 6px;
    left: 29.6%;
  }
}

.solution__list-text.text4 {
  position: absolute;
  top: 75%;
  padding: 0 0.5%;
  left: 4%;
}

@media screen and (min-width: 1080px) {
  .solution__list-text.text4 {
    top: 75%;
    padding: 0px 10px;
    left: 29.6%;
  }
}

.solution__list-text.text5 {
  position: absolute;
  top: 91%;
  left: 4%;
  padding: 0 0.5%;
}

@media screen and (min-width: 1080px) {
  .solution__list-text.text5 {
    top: 89.9%;
    padding: 0 10px;
    left: 29.6%;
  }
}

.solution__caption {
  font-size: 2.66667vw;
  line-height: 1.5;
  color: #071742;
  text-align: right;
  margin-top: 1.2%;
}

@media screen and (min-width: 1080px) {
  .solution__caption {
    font-size: 18px;
  }
}

.solution__text-box {
  text-align: center;
  margin-top: 8.4%;
}

@media screen and (min-width: 1080px) {
  .solution__text-box {
    margin-top: 76px;
  }
}

.solution__text-md {
  font-size: 4.8vw;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .solution__text-md {
    font-size: 36px;
  }
}

.solution__text-lg {
  font-size: 6.66667vw;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .solution__text-lg {
    font-size: 50px;
  }
}

.solution__text-sm {
  font-size: 5.33333vw;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .solution__text-sm {
    font-size: 40px;
  }
}

.plan {
  padding: 4.66667% 0 3.33333%;
  background: linear-gradient(180deg, #F1FAFF 0%, #FFFFFF 130.09%);
}

@media screen and (min-width: 1080px) {
  .plan {
    padding: 70px 0 32px;
  }
}

.plan__title {
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .plan__title {
    line-height: 1.2;
  }
}

.plan__title-sm {
  font-size: 3.73333vw;
  line-height: 1.4;
  letter-spacing: 0.1em;
  color: #071742;
  border-bottom: 0.13333vw solid #071742;
}

@media screen and (min-width: 1080px) {
  .plan__title-sm {
    font-size: 28px;
    padding: 0 16px;
  }
}

.plan__title-extra-lg {
  font-size: 11.46667vw;
  letter-spacing: 0.1em;
  color: #EEB649;
}

@media screen and (min-width: 1080px) {
  .plan__title-extra-lg {
    font-size: 86px;
  }
}

.plan__title-md {
  font-size: 7.46667vw;
  letter-spacing: 0.1em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .plan__title-md {
    font-size: 56px;
  }
}

.plan__title-lg {
  font-size: 8.53333vw;
  letter-spacing: 0.1em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .plan__title-lg {
    font-size: 64px;
  }
}

.plan__lists {
  width: 84%;
  margin: 2.93333% auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (min-width: 1080px) {
  .plan__lists {
    width: 630px;
    margin: 20px auto 0;
  }
}

.plan__list {
  border-radius: 8px;
  background-color: #fff;
  filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.3));
  width: calc(100%/2 - 6px);
  padding: 6.33333% 2.26667% 13.46667% 11.2%;
}

@media screen and (min-width: 1080px) {
  .plan__list {
    width: 300px;
    padding-right: 2.26667%;
  }
}

.plan__list:nth-of-type(n+3) {
  margin-top: 4%;
}

@media screen and (min-width: 1080px) {
  .plan__list:nth-of-type(n+3) {
    margin-top: 34px;
  }
}

.plan__list.plan1 {
  background-image: url(../img/sp/plan_bg01.png), url(../img/sp/plan_bg05.png);
  background-size: 100% 31.6%, 10% 40%;
  background-repeat: no-repeat;
  background-position: 0% bottom, 13% 26%;
}

.plan__list.plan2 {
  background-image: url(../img/sp/plan_bg02.png), url(../img/sp/plan_bg05.png);
  background-size: 100% 31.6%, 10% 40%;
  background-repeat: no-repeat;
  background-position: 0% bottom, 13% 26%;
}

.plan__list.plan3 {
  background-image: url(../img/sp/plan_bg03.png), url(../img/sp/plan_bg05.png);
  background-size: 100% 31.6%, 10% 40%;
  background-repeat: no-repeat;
  background-position: 0% bottom, 13% 26%;
}

.plan__list.plan4 {
  background-image: url(../img/sp/plan_bg04.png), url(../img/sp/plan_bg06.png);
  background-size: 100% 31.6%, 10% 30%;
  background-repeat: no-repeat;
  background-position: 0% bottom, 13% 22%;
}

.plan__list-text {
  font-size: 2.93333vw;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .plan__list-text {
    font-size: 22px;
  }
}

.plan__list-text + .plan__list-text {
  margin-top: 9%;
}

.cards {
  background-image: url(../img/sp/cv_bg01.png);
  background-size: 100% 7.3%;
  background-repeat: no-repeat;
  background-position: 0% 0%;
  padding: 3.6% 0% 7.8%;
}

.cards.center {
  background-image: url(../img/sp/cv_bg01.png);
  background-size: 100% 17.6%;
  background-repeat: no-repeat;
  background-position: 0% 0%;
  padding: 3.6% 0% 13.8%;
}

.cards__text1 {
  text-align: center;
  font-size: 6.4vw;
  letter-spacing: 0.1em;
  color: #fff;
}

.cards__text1-sm {
  font-size: 4vw;
  line-height: 1.3;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
}

.cards__text2 {
  margin-top: 8.93333%;
  text-align: center;
  font-size: 5.33333vw;
  letter-spacing: -0.02em;
  line-height: 1.4;
}

.cards__text-extra-lg {
  text-align: center;
  font-size: 10vw;
  color: #071742;
}

.cards__text-lg {
  font-size: 6.4vw;
}

.cards__text-md {
  font-size: 5.86667vw;
  letter-spacing: -0.02em;
  color: #071742;
}

.cards__text-sm {
  text-align: center;
  font-size: 2.66667vw;
}

.cards__lists {
  margin: 14.73333% auto 0;
  width: 84%;
}

@media screen and (min-width: 1080px) {
  .cards__lists {
    margin-top: 92px;
    width: 1000px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

.cards__list {
  position: relative;
  border-radius: 8px;
  filter: drop-shadow(0px 0px 30px rgba(0, 0, 0, 0.2));
  padding: 9.5% 0% 0.5%;
  background-color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__list {
    width: 480px;
    padding: 50px 0 8px;
  }
}

.cards__list.top::after {
  position: absolute;
  top: 25.7%;
  left: 7%;
  content: "";
  display: block;
  width: 86%;
  height: 0.2%;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__list.top::after {
    top: 22.7%;
    left: 2%;
    content: "";
    display: block;
    width: 95%;
    height: 0.1%;
  }
}

.cards__list.bottom::after {
  position: absolute;
  top: 23%;
  left: 6%;
  content: "";
  display: block;
  width: 87.9%;
  height: 0.2%;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__list.bottom::after {
    top: 22.7%;
    left: 2%;
    content: "";
    display: block;
    width: 95%;
    height: 0.1%;
  }
}

@media screen and (min-width: 767px) and (max-width: 1079px) {
  .cards__list .cards__list-menu-text.mt-md {
    margin-top: 1%;
  }
}

@media screen and (min-width: 1080px) {
  .cards__list.cards-3:not(:root) {
    width: 100%;
    margin-top: 80px;
    padding-top: 62px;
  }
}

.cards__list.cards-3:not(:root)::after {
  position: absolute;
  top: 10.9%;
  left: 7.3%;
  content: "";
  display: block;
  width: 88.9%;
  height: 0.15vw;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__list.cards-3:not(:root)::after {
    top: 20.3%;
    left: 27%;
    content: "";
    display: block;
    width: 45.9%;
    height: 0.2%;
    background: #071742;
  }
}

.cards__list.cards-4:not(:root) {
  padding-bottom: 6%;
}

@media screen and (min-width: 1080px) {
  .cards__list.cards-4:not(:root) {
    /*margin: 80px auto 0;*/margin-top: 80px;
  }
}

.cards__list.cards-4:not(:root)::after {
  position: absolute;
  top: 26.9%;
  left: 8%;
  content: "";
  display: block;
  width: 86.9%;
  height: 0.2%;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__list.cards-4:not(:root)::after {
    top: 21.3%;
    left: 3%;
    width: 93.9%;
    height: 0.2%;
  }
}

.cards__list + .cards__list {
  margin-top: 10.13333%;
}

@media screen and (min-width: 1080px) {
  .cards__list + .cards__list {
    margin-top: 0;
  }
}

.cards__list-title {
  font-size: 4.26667vw;
  line-height: 1.4;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__list-title {
    font-size: 28px;
    white-space: nowrap;
  }
}

.cards__list-title.spacing {
  letter-spacing: -0.08em;
}

.cards__list-menu {
  margin-top: 5%;
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .cards__list-menu {
    margin-top: 30px;
    text-align: left;
    padding-left: 15px;
  }
}

.cards__list-menu.align-left {
  text-align: left;
  padding-left: 4%;
  margin-top: 4%;
}

@media screen and (min-width: 1080px) {
  .cards__list-menu.align-left {
    margin-top: 26px;
  }
}

.cards__list-menu-text {
  padding: 0.5% 1.8%;
  background: #EEB649;
  border-radius: 20.5px;
  font-size: 2.66667vw;
  line-height: 1.8;
  text-align: center;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__list-menu-text {
    font-size: 20px;
    padding: 4px 12px;
  }
}

@media screen and (min-width: 1080px) {
  .cards__list-menu-text + .cards__list-menu-text {
    margin-top: 6px;
  }
}

@media screen and (min-width: 1080px) {
  .cards__list-menu-text.mt-md {
    margin-top: 8px;
  }
}

@media screen and (min-width: 1080px) {
  .cards__container {
    display: flex;
    justify-content: space-between;
    margin-top: 18px;
  }
}

@media screen and (min-width: 1080px) {
  .cards__inner {
    width: calc(100%/3 - 5px);
  }
}

.cards__desc {
  background-color: #071742;
  text-align: center;
  margin-top: 5.3%;
  padding: 4% 0 3.5%;
}

@media screen and (min-width: 1080px) {
  .cards__desc {
    margin-top: 12px;
    padding: 26px 0 23px;
  }
}

@media screen and (min-width: 1080px) {
  .cards__desc.extend-pt {
    padding-top: 48px;
  }
}

.cards__desc.extend-pt2 {
  background-image: url(../img/common/cards_bg01.jpg);
  background-size: 24% 28%;
  background-repeat: no-repeat;
  background-position: 76% 8%;
}

@media screen and (min-width: 1080px) {
  .cards__desc.extend-pt2 {
    background-size: 144px 57px;
    background-position: 96% 14%;
    padding-top: 26px;
    height: 247px;
  }
}

.cards__desc-inner {
  line-height: 1;
}

@media screen and (max-width: 1079px) {
  .cards__desc-inner {
    white-space: nowrap;
  }
}

@media screen and (min-width: 1080px) {
  .cards__desc-inner.extend-pt {
    padding-top: 24px;
  }
}

.cards__desc-md {
  font-size: 4.26667vw;
  letter-spacing: 0.02em;

  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__desc-md {
    font-size: 29px;
  }
}

.cards__desc-md.extend-pr {
  padding-right: 18%;
}

@media screen and (min-width: 1080px) {
  .cards__desc-md.extend-pr {
    padding-right: 142px;
  }
}

.cards__desc-extra-md {
  font-size: 4.66667vw;
}

@media screen and (min-width: 1080px) {
  .cards__desc-extra-md {
    font-size: 31px;
  }
}

.cards__desc-extra-sm {
  font-size: 2.66667vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__desc-extra-sm {
    font-size: 16px;
  }
}

.cards__desc-sm {
  font-size: 3.2vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__desc-sm {
    font-size: 20px;
  }
}

.cards__desc-lg {
  font-size: 6.66667vw;
  letter-spacing: 0.1em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__desc-lg {
    font-size: 42px;
  }
}

.cards__desc-extra-lg {
  font-size: 13.33333vw;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .cards__desc-extra-lg {
    font-size: 92px;
  }
}

.cards__desc-extra-lg.letter-spacing {
  letter-spacing: -0.04em;
}

.cards__desc-caption {
  font-size: 2.66667vw;
  text-align: right;
  color: #071742;
  line-height: 1.5;
}

@media screen and (max-width: 1079px) {
  .cards__desc-caption {
    padding: 1% 4% 1% 0;
  }
}

@media screen and (min-width: 1080px) {
  .cards__desc-caption {
    font-size: 15px;
    margin-top: 10px;
    padding-right: 12px;
  }
}

.cards__cta-box {
  width: 88%;
  margin: 3.66667% auto 0;
}

@media screen and (min-width: 1080px) {
  .cards__cta-box {
    width: 660px;
    margin: 10px auto 0;
  }
}

.cards__btn {
  display: block;
  width: 88%;
  margin: 6.66667% auto 0;
}

@media screen and (min-width: 1080px) {
  .cards__btn {
    width: 670px;
    margin: 38px auto 0;
  }
}

.cards__btn.center {
  width: 100%;
  margin: 0;
}

.cards__telbox {
  position: relative;
  text-align: center;
  padding: 6.5% 0 4.9%;
  border: 0.53333vw solid;
  border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
  border-image-slice: 1;
}

@media screen and (min-width: 1080px) {
  .cards__telbox {
    padding: 32px 0 38px;
    border: 4px solid;
    border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
    border-image-slice: 1;
  }
}

.cards__telbox::after {
  position: absolute;
  top: 1.4%;
  left: 1%;
  content: "";
  display: block;
  width: 97%;
  height: 94%;
  border: 0.53333vw solid;
  border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
  border-image-slice: 1;
}

@media screen and (min-width: 1080px) {
  .cards__telbox::after {
    top: 2.9%;
    left: 0.8%;
    content: "";
    display: block;
    width: 98%;
    border: 2px solid;
    border-image-source: linear-gradient(117.69deg, #7C5E32 -6.36%, #FBDE94 43.03%, #A57D24 102.65%);
    border-image-slice: 1;
  }
}

.cards__tel-icon {
  width: 11.73333%;
  vertical-align: baseline;
  margin-right: 1%;
}

@media screen and (min-width: 1080px) {
  .cards__tel-icon {
    width: 73px;
  }
}

.cards__telbox-text1 {
  font-size: 4.53333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
}

.cards__telbox-text2 {
  margin-top: 1.7%;
  font-size: 10.13333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #B58F39;
}

@media screen and (min-width: 1080px) {
  .cards__telbox-text2 {
    font-size: 76px;
    margin-top: -10px;
  }
}

.cards__telbox-text3 {
  font-size: 2.66667vw;
  text-align: center;
  line-height: 1;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__telbox-text3 {
    font-size: 20px;
    margin-top: 12px;
  }
}

.cards__caption {
  margin-top: 1.9%;
  font-size: 2.66667vw;
  line-height: 1.5;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .cards__caption {
    font-size: 16px; width: min(997px, 96%); margin: 1em auto 1em auto;
  }
}

.cards__icon01 {
  position: absolute;
  top: -7%;
  left: 45%;
  width: 12%;
}

@media screen and (min-width: 1080px) {
  .cards__icon01 {
    top: -6%;
    left: 44%;
    width: 14%;
  }
}

.cards__icon02 {
  position: absolute;
  top: -7%;
  left: 45%;
  width: 12%;
}

@media screen and (min-width: 1080px) {
  .cards__icon02 {
    top: -6%;
    left: 44%;
    width: 14%;
  }
}

.cards__icon03 {
  position: absolute;
  top: -3%;
  left: 45%;
  width: 12%;
}

@media screen and (min-width: 1080px) {
  .cards__icon03 {
    top: -5%;
    left: 46.7%;
    width: 7%;
  }
}

.cards__icon04 {
  position: absolute;
  top: -7%;
  left: 45%;
  width: 12%;
}

@media screen and (min-width: 1080px) {
  .cards__icon04 {
    top: -4.4%;
    left: 43.6%;
    width: 14%;
  }
}

.voice {
  position: relative;
  background-image: url(../img/sp/voice_bg01.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  padding-bottom: 4.53333%;
}

@media screen and (min-width: 1080px) {
  .voice {
    padding: 10px 0 41px;
  }
}

.voice__title {
  text-align: center;
  color: #fff;
}

.voice__title-md {
  font-size: 8.66667vw;
}

@media screen and (min-width: 1080px) {
  .voice__title-md {
    font-size: 60px;
  }
}

.voice__title-lg {
  font-size: 11.33333vw;
}

@media screen and (min-width: 1080px) {
  .voice__title-lg {
    font-size: 85px;
  }
}

.voice__lists {
  width: 86.66667%;
  margin: 1% auto 0%;
}


@media screen and (min-width: 1080px) {
  .voice__lists {
    max-width: 1000px;
    margin: 0 auto;
  }
}

.voice__list {
  padding: 6.06667% 2% 6.46667% 0;
  background-color: #fff;
}

.voice__list.top {
  background-image: url(../img/sp/voice_img01.jpg), url(../img/common/voice_bg01.png);
  background-size: 36% 77.6%, 55% 1%;
  background-repeat: no-repeat;
  background-position: 4% 53%, 95% 25.2%;
  padding: 6.06667% 2% 12.46667% 0;
}

@media screen and (min-width: 1080px) {
  .voice__list.top {
    background-image: url(../img/sp/voice_img01.jpg), url(../img/common/voice_bg01.png);
    padding: 62px 45px 75px 310px;
    background-size: 240px 251px, 370px 3px;
    background-repeat: no-repeat;
    background-position: 5% 53%, 49% 38.2%;
  }
}

.voice__list.center {
  padding: 10.06667% 0% 12.16667% 2%;
  margin-top: 5%;
  background-image: url(../img/sp/voice_img02.jpg), url(../img/common/voice_bg01.png);
  background-size: 36% 75.6%, 55% 1%;
  background-repeat: no-repeat;
  background-position: 93% 47%, 5% 33.2%;
}

@media screen and (min-width: 1080px) {
  .voice__list.center {
    background-image: url(../img/sp/voice_img02.jpg), url(../img/common/voice_bg01.png);
    padding: 62px 310px 75px 32px;
    margin-top: 32px;
    background-size: 240px 251px, 370px 3px;
    background-repeat: no-repeat;
    background-position: 95% 53%, 4% 38.2%;
  }
}

.voice__list.bottom {
  padding: 7.76667% 4% 12.16667% 2%;
  margin-top: 6.8%;
  background-image: url(../img/sp/voice_img03.jpg), url(../img/common/voice_bg01.png);
  background-size: 36% 73.6%, 55% 1%;
  background-repeat: no-repeat;
  background-position: 4% 46%, 95% 28.2%;
}

@media screen and (min-width: 1080px) {
  .voice__list.bottom {
    background-image: url(../img/sp/voice_img03.jpg), url(../img/common/voice_bg01.png);
    margin-top: 32px;
    padding: 60px 45px 72px 310px;
    background-size: 240px 251px, 370px 3px;
    background-repeat: no-repeat;
    background-position: 5% 53%, 49% 38.2%;
  }
}

.voice__list-inner {
  width: 56.73333%;
  margin-left: auto;
}

@media screen and (min-width: 1080px) {
  .voice__list-inner {
    margin-left: 0;
    width: 100%;
  }
}

.voice__list-inner.reverce {
  margin-right: auto;
  margin-left: 0;
}

@media screen and (min-width: 1080px) {
  .voice__list-inner.reverce {
    width: 642px;
  }
}

.voice__list-title {
  font-size: 5.33333vw;
  letter-spacing: 0.02em;
  color: #BF9B46;
}

@media screen and (min-width: 1080px) {
  .voice__list-title {
    font-size: 35px;
  }
}

.voice__list-desc {
  font-size: 3.2vw;
  line-height: 1.6;
  letter-spacing: 0.06em;
  margin-top: 8%;
}

@media screen and (min-width: 1080px) {
  .voice__list-desc {
    font-size: 20px;
    margin-top: 18px;
  }
}

.voice__list-caption {
  font-size: 2.66667vw;
  line-height: 1.5;
  text-align: right;
  margin-top: -4%;
}

@media screen and (min-width: 1080px) {
  .voice__list-caption {
    font-size: 14px;
    margin-top: -20px;
  }
}

.voice__list-caption.center {
  margin-top: 9%;
}

@media screen and (min-width: 1080px) {
  .voice__list-caption.center {
    margin-top: 14px;
  }
}

.voice__list-caption.bottom {
  margin-top: -6.9%;
}

@media screen and (min-width: 1080px) {
  .voice__list-caption.bottom {
    margin-top: 14px;
  }
}

.voice__caption {
  font-size: 2.66667vw;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .voice__caption {
    font-size: 18px;
    text-align: right;
  }
}

.statement {
  position: relative;
}

.statement__text {
  text-align: center;
  padding: 18% 0 68.73333%;
  background-image: url(../img/sp/statement_bg01.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 0% 0%;
}

@media screen and (min-width: 1080px) {
  .statement__text {
    padding: 98px 0 470px;
    background-image: url(../img/sp/statement_bg01.jpg);
    background-position: 50% 0%;
  }
}

.statement__text-lg {
  font-size: 5.33333vw;
  letter-spacing: 0.02em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .statement__text-lg {
    font-size: 36px;
  }
}

.statement__logo {
  width: 63.73333%;
  margin-top: 3%;
}

@media screen and (min-width: 1080px) {
  .statement__logo {
    width: 478px;
    margin-top: 8px;
  }
}

.statement__text-sm {
  font-size: 3.33333vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #071742;
  text-shadow: 0px 0px 6px #fff;
  margin-top: 3%;
}

@media screen and (min-width: 1080px) {
  .statement__text-sm {
    font-size: 25px;
    margin-top: 26px;
  }
}

.payment {
  margin: 6.13333% auto 0;
  padding: 0 8% 13.33333%;
}

@media screen and (min-width: 1080px) {
  .payment {
    padding-bottom: 70px;
  }
}

@media screen and (min-width: 1080px) {
  .payment {
    margin-top: 68px;
  }
}

.payment__title {
  font-size: 6.66667vw;
  text-align: center;
  letter-spacing: 0.1em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .payment__title {
    font-size: 46px;
  }
}

.payment__text {
  font-size: 3.2vw;
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: #071742;
  margin-top: 2.33333%;
}

@media screen and (min-width: 1080px) {
  .payment__text {
    font-size: 20px;
    text-align: center;
    margin-top: 14px;
  }
}

.payment__lists {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 3.46667%;
}

@media screen and (min-width: 1080px) {
  .payment__lists {
    margin: 24px auto 0;
    width: 630px;
  }
}

.payment__list {
  border: 2px solid #B58F39;
}

.payment__list.left {
  width: 43%;
}

@media screen and (min-width: 1080px) {
  .payment__list.left {
    width: 270px;
  }
}

.payment__list.right {
  width: 55%;
}

@media screen and (min-width: 1080px) {
  .payment__list.right {
    width: 345px;
  }
}

.payment__list.bottom {
  width: 100%;
  margin-top: 1.66667%;
}

@media screen and (min-width: 1080px) {
  .payment__list.bottom {
    margin-top: 15px;
  }
}

.payment__list-title {
  background: #B58F39;
  padding: 4.5% 0;
  color: #fff;
  font-size: 3.73333vw;
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .payment__list-title {
    font-size: 28px;
  }
}

.payment__list-title.bottom {
  padding: 1% 1%;
}

.payment__list-desc {
  text-align: center;
  padding-bottom: 5%;
}

@media screen and (min-width: 1080px) {
  .payment__list-desc {
    padding-bottom: 0px;
  }
}

.payment__list-desc.left {
  padding-top: 9%;
}

@media screen and (min-width: 1080px) {
  .payment__list-desc.left {
    padding-top: 23px;
  }
}

.payment__list-desc.right {
  padding-top: 2%;
}

@media screen and (min-width: 1080px) {
  .payment__list-desc.right {
    padding-top: 20px;
  }
}

.payment__list-img1 {
  width: 65%;
}

.payment__list-img2 {
  width: 83%;
}

.payment__list-desc {
  font-size: 2.66667vw;
  line-height: 1.5;
  letter-spacing: 0.06em;
  color: #071742;
  text-align: left;
}

@media screen and (min-width: 1080px) {
  .payment__list-desc {
    font-size: 20px;
  }
}

.payment__list-desc.left {
  text-align: center;
}

.payment__list-desc.right {
  text-align: center;
}

.payment__inner {
  padding: 2.6% 2% 3% 3%;
}

@media screen and (min-width: 1080px) {
  .payment__inner {
    padding: 15px 27px 20px;
  }
}

.payment__list-caption {
  background: #FFE4A7;
  background-color: rgba(255, 228, 167, 0.3);
  padding: 1% 1% 2% 3%;
  line-height: 1;
}

@media screen and (min-width: 1080px) {
  .payment__list-caption {
    margin-top: 26px;
    padding: 15px 5px 17px 10px;
  }
}

.payment__list-caption-sm {
  font-size: 2.66667vw;
  letter-spacing: 0.15em;
  color: #fff;
  line-height: 1.2;
}

@media screen and (min-width: 1080px) {
  .payment__list-caption-sm {
    font-size: 20px;
    line-height: 1.4;
  }
}

.payment__list-caption-sm.black {
  color: #071742;
  margin-top: 1%;
}

@media screen and (min-width: 1080px) {
  .payment__list-caption-sm.black {
    margin-top: 12px;
    font-size: 18px;
  }
}

.payment__list-caption-sm.title {
  padding: 1% 3% 1.5% 4%;
  background: #B58F39;
  border-radius: 23px;
}

.flow {
  position: relative;
  padding: 12.8% 0 8.6%;
}

@media screen and (max-width: 1079px) {
  .flow {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 0% 0%;
    background-image: url(../img/sp/flow_bg01.png);
  }
}

@media screen and (min-width: 1080px) {
  .flow {
    background-color: #f2f2f2;
    background-size: 1920px 100%;
    background-repeat: no-repeat;
    background-position: 50% 0%;
    background-image: url(../img/sp/flow_bg01.png);
  }
}

@media screen and (min-width: 1080px) {
  .flow {
    padding: 67px 0 67px;
  }
}

.flow__title {
  text-align: center;
  font-size: 7.73333vw;
  letter-spacing: 0.08em;
  color: #071742;
}

@media screen and (min-width: 1080px) {
  .flow__title {
    font-size: 54px;
  }
}

.flow__lead {
  margin-top: 0.66667%;
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .flow__lead {
    margin: 14px auto 0;
    max-width: 1170px;
  }
}

.flow__lead-md {
  font-size: 3.73333vw;
  text-align: center;
  letter-spacing: 0.02em;
}

@media screen and (min-width: 1080px) {
  .flow__lead-md {
    font-size: 24px;
  }
}

.flow__lead-sm {
  font-size: 3.2vw;
  line-height: 1.6;
  color: #071742;
  margin-top: 3.33333%;
  width: 86%;
  text-align: left;
}

@media screen and (min-width: 1080px) {
  .flow__lead-sm {
    font-size: 20px;
    margin-top: 23px;
    text-align: left;
  }
}

.flow__container {
  position: relative;
}

.flow__img {
  position: absolute;
  top: 7%;
  left: 3%;
  width: 13.3%;
}

@media screen and (min-width: 1080px) {
  .flow__img {
    top: 4%;
    left: calc(50% - 540px);
    width: 101px;
    height: 750px;
  }
}

.flow__lists {
  width: 84%;
  margin: 3.96667% auto 0%;
}

@media screen and (min-width: 1080px) {
  .flow__lists {
    max-width: 1000px;
    margin: 26px auto 0;
  }
}

.flow__list {
  padding: 3.4% 3% 4% 1%;
  background-color: #fff;
}

@media screen and (min-width: 1080px) {
  .flow__list {
    padding: 35px 40px 17px;
    height: 187px;
  }
}

.flow__list + .flow__list {
  margin-top: 4.66667%;
}

@media screen and (min-width: 1080px) {
  .flow__list + .flow__list {
    margin-top: 23px;
  }
}
.flow__list.bg-00 {
  background-image: url(../img/sp/flow_img01.jpg);
  background-size: 36% 86%;
  background-position: 6% 57%;
  background-repeat: no-repeat;
}
.flow__list.bg-01 {
  background-image: url(../img/sp/flow_img02.jpg);
  background-size: 36% 86%;
  background-position: 6% 57%;
  background-repeat: no-repeat;
}

@media screen and (min-width: 1080px) {
  .flow__list.bg-01 {
    background-image: url(../img/sp/flow_img01.jpg);
    background-size: 250px 155px;
    background-position: 41px 50%;
  }
}

.flow__list.bg-02 {
  background-image: url(../img/sp/flow_img03.jpg);
  background-size: 36% 86%;
  background-position: 6% 57%;
  background-repeat: no-repeat;
}

@media screen and (max-width: 1079px) {
  .flow__list.bg-02 {
    height: 30.7vw;
  }
}

@media screen and (min-width: 1080px) {
  .flow__list.bg-02 {
    background-image: url(../img/sp/flow_img02.jpg);
    background-size: 250px 155px;
    background-position: 41px 50%;
  }
}

.flow__list.bg-03 {
  background-image: url(../img/sp/flow_img04.jpg);
  background-size: 36% 86%;
  background-position: 6% 57%;
  background-repeat: no-repeat;
}

@media screen and (min-width: 1080px) {
  .flow__list.bg-03 {
    background-image: url(../img/sp/flow_img03.jpg);
    background-size: 250px 155px;
    background-position: 41px 50%;
  }
}

.flow__list.bg-04 {
  background-image: url(../img/sp/flow_img05.jpg);
  background-size: 36% 86%;
  background-position: 6% 57%;
  background-repeat: no-repeat;
}

@media screen and (min-width: 1080px) {
  .flow__list.bg-04 {
    background-image: url(../img/sp/flow_img04.jpg);
    background-size: 250px 155px;
    background-position: 41px 50%;
  }
}

.flow__list-inner {
  margin-left: auto;
  width: 53.9%;
}

@media screen and (min-width: 1080px) {
  .flow__list-inner {
    width: 634px;
  }
}

.flow__list-title {
  font-size: 3.46667vw;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 1080px) {
  .flow__list-title {
    font-size: 22px;
  }
}

.flow__list-desc {
  font-size: 3.2vw;
  letter-spacing: 0.06em;
  color: #071742;
  margin-top: 5%;
}

@media screen and (min-width: 1080px) {
  .flow__list-desc {
    font-size: 20px;
    margin-top: 24px;
  }
}

.flow__cards-container {
  width: 84%;
  margin: 6.66667% auto 0;
}

@media screen and (min-width: 1080px) {
  .flow__cards-container {
    margin: 45px auto 0;
  }
}

.flow__cards {
  padding: 5% 4.7% 7%;
  background-image: url(../img/sp/flow_icon01.png);
  background-size: 61% 8%;
  background-repeat: no-repeat;
  background-position: 51% 14%;
  background-color: #fff;
  border-radius: 10px;
}

@media screen and (min-width: 1080px) {
  .flow__cards {
    padding: 33px 40px;
    background-image: url(../img/sp/flow_icon01.png);
    background-size: 319px 25px;
    background-position: 50% 23%;
  }
}

.flow__cards-title {
  font-size: 4.26667vw;
  letter-spacing: 0.1em;
  color: #071742;
  text-align: center;
}

@media screen and (min-width: 1080px) {
  .flow__cards-title {
    font-size: 28px;
  }
}

.flow__cards-desc {
  font-size: 3.2vw;
  line-height: 1.6;
  letter-spacing: 0.06em;
  color: #071742;
  margin-top: 4%;
}

@media screen and (min-width: 1080px) {
  .flow__cards-desc {
    font-size: 20px;
    margin-top: 12px;
  }
}

.flow__caption {
  font-size: 2.66667vw;
  line-height: 1.5;
  color: #071742;
  text-align: right;
}

@media screen and (min-width: 1080px) {
  .flow__caption {
    font-size: 16px;
    margin-top: 8px;
  }
}

.clinic {
  padding: 0 0 9.66667%;
 /* border-bottom: 2.46667vw solid #EEB649;*/
}

@media screen and (min-width: 1080px) {
  .clinic {
    /*border-bottom: 20px solid #EEB649;*/
    padding-bottom: 70px;
  }
}

.clinic__title {
  padding: 2.4% 0 2.4%;
  font-size: 6.4vw;
  text-align: center;
  letter-spacing: 0.02em;
  color: #fff;
  background: #071742;
}

@media screen and (min-width: 1080px) {
  .clinic__title {
    font-size: 48px;
    padding: 17px 0 20px;
  }
}

.clinic__title.mt-md {
  margin-top: 10.66667%;
}

@media screen and (min-width: 1080px) {
  .clinic__title.mt-md {
    margin-top: 40px;
  }
}

.clinic__title-md {
  font-size: 4.26667vw;
  text-align: center;
  letter-spacing: 0.1em;
  color: #333;
  margin-top: 6.66667%;
}

@media screen and (min-width: 1080px) {
  .clinic__title-md {
    font-size: 28px;
    margin-top: 38px;
  }
}

.clinic__lists {
  background: #F4F6F8;
  width: 82.66667%;
  padding: 3.3% 0 4% 3%;
  border: 3px solid #E0E0E0;
  line-height: 1.7;
  margin: 0 auto;
}

@media screen and (min-width: 1080px) {
  .clinic__lists {
    padding: 14px 0 13px 101px;
    line-height: 1.5;
  }
}

.clinic__lists:first-of-type {
  margin-top: 2%;
  margin-bottom: 4%;
}

@media screen and (min-width: 1080px) {
  .clinic__lists:first-of-type {
    margin-top: 18px;
  }
}

.clinic__lists.bg-white {
  background-color: #fff;
  border: 3px solid #E0E0E0;
}

@media screen and (min-width: 1080px) {
  .clinic__lists.bg-white {
    line-height: 1.7;
  }
}

.clinic__list-inner {
  width: 83.26667%;
  display: flex;
  flex-wrap: wrap;
}

.clinic__list-inner.bottom {
  width: 98.26667%;
}

.clinic__list-title {
  font-size: 2.66667vw;
  color: #333;
  width: 20%;
}

@media screen and (min-width: 1080px) {
  .clinic__list-title {
    font-size: 20px;
    width: 20%;
  }
}

@media screen and (min-width: 1080px) {
  .clinic__list-title.bg-white {
    width: 11.6%;
  }
}

.clinic__list-desc {
  font-size: 2.66667vw;
  color: #333;
  width: 80%;
}

@media screen and (min-width: 1080px) {
  .clinic__list-desc {
    font-size: 20px;
  }
}

.reception {
  padding: 6.66667% 0 10.66667%;
}

.reception__container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 76%;
  margin: 0 auto;
  padding: 7% 0 0%;
}

@media screen and (min-width: 1080px) {
  .reception__container {
    padding-top: 45px;
    width: 570px;
  }
}

.reception__lists {
  width: 46%;
  margin-left:auto;
  margin-right:auto;	
}

@media screen and (min-width: 1080px) {
  .reception__lists {
    width: 260px;
  }
}

.reception__list-title {
  background: #EEB649;
  border-radius: 25px;
  padding: 1% 1% 1% 1%;
  font-size: 4.26667vw;
  text-align: center;
  letter-spacing: 0.1em;
  color: #071742;
  width: 100%;
}

@media screen and (min-width: 1080px) {
  .reception__list-title {
    font-size: 32px;
  }
}

.reception__list-desc {
  font-size: 5.33333vw;
  text-align: center;
  color: #071742;
  width: 100%;
  margin-top: 4%;
}

@media screen and (min-width: 1080px) {
  .reception__list-desc {
    font-size: 40px;
  }
}

.yt_outer {
  width: 88.93%;
  margin: 7% auto 0;
  top: 9.1%;
  left: 5.4%;
}

@media screen and (min-width: 1080px) {
  .yt_outer {
    width: 650px;
    margin-top: 50px;
  }
}

.yt_inner {
  position: relative;
  padding-top: 45%;
}

.yt_player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map {
  width: 90.93333%;
  margin: 4.4% auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (min-width: 1080px) {
  .map {
    width: 607px;
    margin-top: 30px;
  }
}

.map__title {
  background: #071742;
  border-radius: 25px;
  font-size: 3.2vw;
  line-height: 2;
  text-align: center;
  letter-spacing: -0.1em;
  color: #fff;
  width: 27%;
}

@media screen and (min-width: 1080px) {
  .map__title {
    width: 170px;
    font-size: 24px;
  }
}

.map__title.mt-md {
  margin-top: 2%;
}

@media screen and (min-width: 1080px) {
  .map__title.mt-md {
    margin-top: 31px;
  }
}

@media screen and (max-width: 1079px) {
  .map__title.extend {
    height: 6vw;
  }
}

@media screen and (min-width: 1080px) {
  .map__title.extend {
    height: 50px;
  }
}

.map__desc {
  font-size: 3.2vw;
  line-height: 1.9;
  color: #071742;
  width: 70%;
}

@media screen and (min-width: 1080px) {
  .map__desc {
    font-size: 24px;
    white-space: nowrap;
  }
}

.map__desc.extend:not(:root) {
  margin-top: 2%;
}

@media screen and (min-width: 1080px) {
  .map__desc.extend:not(:root) {
    margin-top: 31px;
  }
}

.map__desc.mt-md {
  margin-top: 3%;
}

@media screen and (min-width: 1080px) {
  .map__desc.mt-md {
    margin-top: 28px;
  }
}

.footer {
  background: #071742;
  text-align: center;
  padding: 9.33333% 0 0;
}

@media screen and (max-width: 1079px) {
  .footer {
    padding-bottom: env(safe-area-inset-bottom);
  }
}

@media screen and (min-width: 1080px) {
  .footer {
    padding: 58px 0 52px;
  }
}

.footer__logo {
  width: 69.86667%;
}

@media screen and (min-width: 1080px) {
  .footer__logo {
    width: 324px;
  }
}

.footer__text {
  margin-top: 8.6%;
  font-weight: 300;
  font-size: 2.66667vw;
  line-height: 1.5;
  text-align: center;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .footer__text {
    margin-top: 31px;
    font-size: 12px;
  }
}

@media screen and (min-width: 767px) and (max-width: 1079px) {
  .footer {
    padding-bottom: 4%;
  }
}

.floating {
  position: fixed;
  bottom: 0;
  left: auto;
  padding: 5% 1%;
  width: 100%;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #071740;
}

.floating p{
    color: #fff;
    text-align: center;
    padding-top: 5px;
}

@media screen and (min-width: 1080px) {
  .floating {
    background-color: rgba(7,23,64,0.45);
    right: 10px;
    width: fit-content;
    padding: 2% 1%;
    border-radius: 10px;
  }
  .floating p{
    color: #071740;
  }
}
.floating__left {
  width: 33%;
}

.floating__right {
  width: 100%;
  display: flex;
  gap:10px;
}
@media screen and (min-width: 1080px) {
  .floating__right{
    width: 100%;
    display: grid;
    gap: 10px;
    max-width: 300px;
    margin: auto;
  }
}


/****************** menu,intro ******************/
.menu {
  font-size: 14px;
}
.menu p {
  padding: 0.555em 0;
}
.menu .caution {
  color: #ee9f9c;
}
.menu ul {
  display: flex;
  max-width: 980px;
  margin: 0 auto;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-content: stretch;
}
.menu ul li {
  width: 32%;
  margin-right: 1%;
  position: relative;
  margin: 7px 4px;
  background: aliceblue;
  padding: 8px 0;
  vertical-align: middle;
}
.menu2 ul li {
  width: 32%;
  margin-right: 1%;
  position: relative;
  margin: 7px 4px;
  background: #f8e8e7;
  padding: 5px;
  vertical-align: middle;
}
.menu ul li:last-child {
  /*margin-right: 0;*/
}
.menu ul li a {
    background-color: #f8acac;
    color: #fff;
    font-size: 23px;
    padding: 10px 10px 30px;
    text-align: center;
    border-radius: 40px;
    display: block;
}
.menu ul li a:hover {
  opacity: 0.7;
}
.menu ul li a:after {
    content: '';
    width: 10px;
    height: 10px;
    border: 0px;
    border-top: solid 3px #fff;
    border-right: solid 3px #fff;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 74%;
    left: 48%;
}
.intro {
  text-align: center;
  position: relative;
}
.intro img {
  max-width: 100%;
}

@media screen and (max-width: 768px) {
.menu {
  font-size: 12px;
}
.menu p {
  padding: 0.555em 0;
}
.menu ul {
    display: flex;
}
.menu ul li {
  width: 100%;
  margin: 2px 4px;
  padding: 8px 0;
}
.menu ul li:last-child {
  margin-bottom: 8px;
}
.menu ul li a {
  font-size: 16px;
  padding: 10px 18px 10px 20px;
  text-align: left;
}
.menu ul li a:after {
    top: 37%;
    left: 86%;
}
.menu ul li a:hover {
  opacity: 1.0;
}
.intro img {
  margin: 0;
}
/****************** accordion ******************/
.info_corona {
  padding: 10px 0;
  width: unset;
}

/*.info_corona dl {
  width: unset;
  display: unset;
}*/

#acMenu dt {
  text-align:center;
  border: #071742 1px solid;
  cursor:pointer;
  margin: 0 7px;
  padding: 7px;
  color: #071742;
  /* font-weight: bold; */
  border-radius: 5px;
  font-size: 13px;
}

#acMenu dd {
  text-align:center;
  display:none;
  margin: 0 7px;
  padding: 7px;
  font-size: 15px;
  color: #071742;
}
.info_corona h3 {
  width: unset;	
  text-align:center;
  border: #071742 1px solid;
  cursor:pointer;
  margin: 0.5em 7px 0 7px;
  padding: 7px;
  color: #071742;
  /* font-weight: bold; */
  border-radius: 5px;
  font-size: 13px;
}
.info_corona .cv_desc .ttl {margin:0.85em auto 0.85em auto; padding: 0.25em 1em; font-size:19px;}
.info_corona .cv_desc .s_ttl {font-size: 22px; margin-bottom:0.75em; line-height: 1.6em;}
.info_corona .cv_desc .txt {font-size:14px; letter-spacing: 0.05em; margin-bottom:0.75em;} 
.info_corona .m_box {margin: 0.75em auto; filter: drop-shadow(0px 0px 10px rgba(62, 86, 134, 0.2)); padding-top:1em;}
.info_corona .m_box:last-of-type {margin-bottom:1.25em;}
.info_corona .m_box dt {font-size:18px;margin-bottom: 1.1em; padding:0.15em 0.55em;} 
.info_corona .m_box dd figure figcaption {font-size:12px; margin-top:0.85em; line-height: 1.3em;color:#3E5485; letter-spacing:-0.01em;}
.info_corona .m_box .covid_i {width:70px;display:block; margin:0 auto;}	
.info_corona br.pc {display:none;}	

.cv_campaign {
	margin: 8% auto 0; width: 84%;
}
.cards__caption { width: 80%; margin: 2em auto 2em auto; }

.campaign_box {
	display: block;
	text-align: left;
	width: min(720px,96%);
	margin: 1em auto 1em;
}
.camp_ttl {
	text-align: center;
	display: block;
	width: 60%;
	margin: 0 auto;
	font-size: 2em
}
.cv_campaign .txt {
    padding: 1.2em 0 0 0;
    text-align: left;
    font-size: 3.8vw;
}
.cv_campaign em.ap { font-size: 4.5vw;}
.cv_campaign .price .flex {
	justify-content: space-evenly;
}

.nor_txt {
	font-size: 0.75em;
	padding: 0.7em;
}
p.exp {
	font-size: 0.97em;
}
.cp_price {
	display: block;
	padding-inline: 3%;
}
.price,.normal {
	width:100%;
}
span.point {
	top: 10%; left: 40%; font-size: 0.8em;
}
p.s_price {
	font-size: 2.5em;
	padding-top: 0.4em;
}
p.sub_txt {
	padding-inline: 5%;
	width: min(720px,96%);
	text-align: center;
	font-size: 0.9em;
}
strong.camp_mttl {
	font-size: 21px;
}
	br.sp {display:block;}
}

/*20231006 swiper追加*/
.slide_contents {position: relative;}
.slide_contents .swiper3 {inline-size: min(1000px,96%);margin-inline: auto;background-color: #fff;filter: drop-shadow(0px 0px 30px rgba(0, 0, 0, 0.2));margin-block: 40px 100px;box-sizing: border-box;padding: 2.5em 12em 2.25em 10em;}
.slide_contents .ex_flex {display: flex;justify-content: space-between;}
.slide_contents .ex_flex .text_side {background-color: #071742;inline-size: 54%;padding-block-start: 85px;}
.slide_contents .ex_flex .text_side .p_1 {font-size: 34px;text-align: center;color: #fff;line-height: 1.5em;position: relative;letter-spacing: 0;}
.slide_contents .ex_flex .text_side .p_1 .ls {letter-spacing: -0.1em;}
.slide_contents .ex_flex .text_side .p_1 .small {font-size: 32px;letter-spacing: 0.03em;}
.slide_contents .ex_flex .text_side .p_1:after {content: "";position: absolute;background-color: #fff;inline-size: 80px;block-size:3px;inset: auto 0 -27px 0;margin-inline: auto;}
.slide_contents .ex_flex .text_side .p_2 {font-size: 25px;text-align: center;background-color: #fff;color: #3e5585;inline-size: min(140px,45%);margin: 57px auto auto auto;padding-block:1px 3px;border-radius: 2em;}
.slide_contents .ex_flex .text_side .p_3 {font-size: 25px;text-align: center;background-color: #eeb649;color: #fff;inline-size: min(140px,45%);margin: 57px auto auto auto;padding-block:1px 3px;border-radius: 2em;}
.slide_contents .ex_flex .img_side {inline-size: min(218px,46%);}
.slide_contents .ex_flex .img_side .img {inline-size: 100%;}

@media screen and (max-width: 1079px) {
    .cv01 {background-size: 100% 8em;}
    .slide_contents .swiper3 {padding: 1.5em 1.375em 1.25em 1.375em;}
    .slide_contents .ex_flex {display: block;}
    .slide_contents .ex_flex .text_side {background-color: #071742;inline-size: 100%;padding-block: 6vw;}
    .slide_contents .ex_flex .img_side {inline-size: min(218px,100%);margin: 1em auto auto auto;}
    .slide_contents .ex_flex .text_side .p_1{font-size: 6.4vw;}

    .slide_contents .ex_flex .text_side .p_1 .small {font-size: 6.15vw;}

    .slide_contents .ex_flex .text_side .p_1::after {inline-size: 50px;block-size: 2px;inset: auto 0 -6vw 0;}
    .slide_contents .ex_flex .text_side .p_2 {font-size: 5vw;margin: 12vw auto auto auto;inline-size: 65%;}
    .slide_contents .ex_flex .text_side .p_3 {font-size: 5vw;margin: 12vw auto auto auto;inline-size: 65%;}
	
	br.pc { display:none; }
}


dl.op_box {
    width: 48%;
}

#target_btn { display:none; opacity: 0; transition: opacity 0.5s ease-in-out; }
#target_btn.show { display: flex; opacity: 1; }

/******* 2025/07/01追加 ガイドライン *******/

dl.guideline {
  width: 90%;
  margin: auto;
}
dl.table{
  border-bottom: solid 2px #112B61;
  font-size: 19px;
  margin-top: 0.45em;
}
dl.table dt {
  display: table-cell;
  inline-size: 27.88%;
  min-width: 188px;
  vertical-align: middle;
  text-align: center;
  padding: 3em 0;
  background-color: #112B61;
  color: #fff;
}
dl.table dd{
  display: table-cell;
  padding: 3em 1em 3em 1em;
  color: #0e295f;
}

@media screen and (max-width: 768px) {
  dl.table{
    font-size: 3.2vw;
  }
  dl.table dt {
    min-width: 102px;
  }
  dl.table dd{
  }

}
