@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@500;700&family=Noto+Sans+JP:wght@400;500;700&display=swap");
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  height: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  height: 100%;
  font-family: "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

main {
  display: block;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

* {
  box-sizing: border-box;
}

html {
  margin: 0;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
}

a:link,
a:visited,
a:hover,
a:active {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

ul,
ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

main img {
	width: 100%;
	margin: 0;
	padding: 0;
	height: auto;
	display: block;
	font-size: 0;
	line-height: 0;
	vertical-align: bottom;
}
main a {
	display: block;
}
main h1,
main h2,
main h3,
main h4,
main p,
main li,
main dt,
main dd {
	font-size: 0;
	line-height: 0;
	margin:0;
	padding:0;
}



main ul,
main dl,
main ol{
  list-style: none;
	margin:0;
	padding:0;
}
main ul li,
main dl dt,
main dl dd,
main ol li{
	line-height: 0;
	font-size: 0;
}

main {
	position: relative;
	box-sizing: border-box;
	padding:0;

}
main *{
  position: relative;
  box-sizing: border-box;
}

main .wrapper {
  max-width: 750px;
  margin: 0 auto;
}
main .wrapper a {
  transition: all ease 0.2s;
}
main .wrapper a:hover {
  filter: brightness(1.2);
}

/*============================
.fv
============================*/

.fv__gif-wrap{
  position: relative;
}

.fv__gif{
  position: absolute;
  top: 18%;
  left: 50%;
  transform: translateX(-50%);
  width: calc(571 / 750 * 100%);
}

.fv__gif img{
  aspect-ratio: 571 / 315;
}


/*============================
.note
============================*/
.note {
  margin: 5%;
  padding: 5%;
  border: min(calc((2 / 750) * 100vw), 2px) solid #da4348;
}
.note_head {
  position: absolute;
  top: -10%;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 2;
}
.note_head span {
  background-color: #fff;
  font-size:min(calc((35 / 750) * 100vw), 35px);
}
.note p {
  font-size:min(calc((24 / 750) * 100vw), 24px);
  font-weight: bold;
  line-height: 1.6;
  color: #da4348;
}


/*============================
.cta
============================*/

.cta__btn-wrap{
  position: relative;
}

.cta__btn{
  position: absolute;
  top: 81%;
  left: 50%;
  transform: translateX(-50%);
  width: calc(647 / 750 * 100%);
}
.cta__note {
  background: #eff0f2 url(../img/cta_02_bg.jpg) no-repeat;
  background-size: cover;
  background-position: top left;
  padding: 5%;
}
.cta__note li {
  font-size:min(calc((16 / 750) * 100vw), 16px);
  line-height: 1.6;
  text-indent: -.5em;
  padding-left: .5em;
}

/*============================
.voice
============================*/

.voice__slide-wrap{
  position: relative;
}

.voice__slide {
	position: absolute;
	margin-bottom: 1%;
	padding-bottom: 8%;
  overflow: hidden;
  top: 32.5%;
  left: 0;
  right: 0;
}

.voice__slide .voice__slide-inner {
	width: calc(690 / 750 * 100%);
	margin: 0 auto;
	overflow: hidden;
}

.voice__slide .swiper-pagination-bullet {
	width: min(calc((15 / 750)* 100vw), 15px);
	height: min(calc((15 / 750)* 100vw), 15px);
	margin: 0 1%!important;
	background-color: #f99da0;
}

/* next prev */
.voice__slide .swiper-button-next,
.voice__slide .swiper-button-prev {
  top: 52.8%;
  width: min(calc((52 / 750)* 100vw), 52px);
  height: min(calc((52 / 750)* 100vw), 52px);
  z-index: 10;
}
.voice__slide .swiper-button-next,
.voice__slide .swiper-button-prev {
  background: url(../img/next-arrow.png) no-repeat;
  background-size: contain;
}
.voice__slide .swiper-button-next {
  right: 2%;
}
.voice__slide .swiper-button-prev {
  left: 2%;
	transform: scale(-1, 1);
}
.voice__slide .swiper-button-next:after,
.voice__slide .swiper-button-prev:after {
  font-size: 0;
}

/*============================
#faq
============================*/

main .wrapper #faq .accordion {
  width: calc(632 / 750 * 100%);
  margin: 0 auto 3.7%;
  box-shadow: 9px 17px 20px rgba(127, 137, 132, 0.2);
}

main .wrapper #faq .accordion + .accordion{
  margin-bottom: 9.2%;
}

main .wrapper #faq .accordion dt {
  cursor: pointer;
}

main .wrapper #faq .accordion dt:after {
  content:"";
  display: block;
  width: calc(35/670*100%);
  padding-top: calc(19/670*100%);
  background-image: url(../img/acc-icon.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right:6.4%;
  top:47%;
  transform: rotate(180deg);
  transition: all ease 0.2s;
}

main .wrapper #faq .accordion dt.selected:after {
  transform: rotate(0deg);
}

main .wrapper #faq .accordion dd {
  display: none;
}

/* ---------------------------------------------
 追従ボタン
--------------------------------------------- */
.bl_floatArea {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  transition: visibility .4s , opacity .4s;
  box-sizing: border-box;
}
.bl_floatArea.is_show {
  visibility: visible;
  opacity: 1;
}
.bl_floatArea_inner {
  max-width: 750px;
  margin: auto;
  box-sizing: border-box;
}

/* ボタン */
.bl_floatArea_btn {
  display: block;
  width: 90%;
  margin: 0 auto 2% auto;
}
.bl_floatArea_btn img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}