@charset "utf-8";
body {
  padding: 0;
  margin: 0;
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-size: 17px;
  color: #471415;
	overflow-x: hidden;
	max-width: 750px;
	margin: auto;
	box-shadow: #eee 0px 10px 10px 10px;
}
@media screen and (max-width: 768px) {
		.pc {
				display: none;
		}
		.sp {
				display: block;
		}
    body {
      box-shadow:none;
    }
}
@media screen and (min-width: 769px) {
		.pc {
				display: block;
		}
		.sp {
				display: none;
		}
}
.yel{
  color: #f9f993;
}
li{
  list-style: none;
}
header,footer {
	display: flex;
	justify-content: flex-end;
  padding: 3% 0;
}
header img,footer img{
	width: 40%;
}
img{
	vertical-align: middle;
	width: 100%;
	max-width: 800px;
	margin: auto;
}
a:hover{
	opacity: 0.8;
	transition:all 200ms cubic-bezier(0.390, 0.500, 0.150, 1.360);
}
p{
	letter-spacing: 0.1em;
}
.btn1{
	background-color: #1265b3;
  padding: 9% 0 9%;
  position: relative;
}
.btn1_inner{
	position: relative;
  width: 94%;
  max-width: 900px;
  margin: 0 auto;
}
.btn1 a img{
  position: absolute;
  bottom: 22%;
  right: 0;
  left: 0;
  width: 96%;
  margin: auto;
}
.btn1 .mv_cta{
	position: absolute;
    bottom: 6%;
    right: 0;
    left: 0;
    width: 100%;
    margin: auto;
}
.btn1 img {
  display: block;
  width: 100%;
  height: auto;
}
.overlay-text {
  position: absolute;
  width: 90%;
  bottom: 2.5%;
  left: 0;
  right: 0;
  margin: 0 auto;
  font-size: 2.4vw;
  color: black; /* 必要に応じて文字色を変更 */
  line-height: 1.6; 
  text-align: justify;
  text-justify: inter-ideograph;
}
@media (min-width: 768px) {
  .overlay-text {
    font-size: 18px;
    width: 93%;
  }
}
.voice{
  background-color: #fff5dc;
}
.voice .ttl{
  padding: 20px 0;
  margin: 0;
  color: #fff;
  font-weight: bold;
  text-shadow: 0 0 2px rgb(255, 255, 255);
  text-align: center;
  letter-spacing:0.3px;
  line-height: 1.4;
  font-size: clamp(1.375rem, 1.08rem + 1.48vw, 2.188rem);
  background:linear-gradient(0deg, #ff6d25 50%,#ffa516 100%);
}
.voice .ttl span{
  font-size: clamp(2.188rem, 1.871rem + 1.58vw, 3.75rem);
}
.voice .inner{
  padding: 3% 0 8%;
}
/* 全体 */
.qa {
  padding: 8% 0 8%;
  width: 94%;
  margin: 0 auto;
  font-size: clamp(1.063rem, 0.949rem + 0.57vw, 1.375rem);
}
.qa .ttl {
  width: 50%;
  max-width: 300px;
  margin: 0 auto 6%;
  display: block;
}
.qa .notice{
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  display: block;
}
/* QとAラベル */
.accordion-006 summary::before {
  content: "Q.";
  color: #fff;
  font-weight: bold;
  margin-right: 8px;
  font-size: 1.1em;
  position: static; /* ←左側に固定 */
}

.accordion-006 p::before {
  content: "A.";
  color: #1265b3;
  font-weight: bold;
  margin-right: 8px;
  font-size: 1.1em;
  display: inline-block;
}
/* アコーディオン本体 */
.accordion-006 {
  max-width: 800px;
  margin: 0 auto 10px;
  border-radius: 5px;
  overflow: hidden;
}

/* 質問タイトル部分 */
.accordion-006 summary {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: space-between; /* 文字とアイコンを左右に配置 */
  padding: 1em 2em;
  cursor: pointer;
  background-color: #1265b3;
  color: #fff;
  font-weight: 600;
}
.accordion-006 summary::-webkit-details-marker {
  display: none;
}

/* ＋／× アイコン */
.accordion-006 summary span.icon {
  position: absolute;
  right: 1.8em;
  width: 1em;
  height: 1em;
}

/* 横棒（固定） */
.accordion-006 summary span.icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transform: translateY(-50%);
}

/* 縦棒（開閉で消す） */
.accordion-006 summary span.icon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  background: #fff;
  border-radius: 2px;
  transform: translateX(-50%) scaleY(1);
  transform-origin: center;
  transition: transform 0.3s;
}

/* アコーディオンが開いたとき */
.accordion-006[open] summary span.icon::after {
  transform: translateX(-50%) scaleY(0);
}

/* 回答部分 */
.accordion-006 p {
  margin: 0;
  padding: 0 2em;
  color: #1265b3;
  font-weight: bold;
  background-color: #eee;
  line-height: 1.7;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: 
    max-height 0.6s ease,
    opacity 0.4s ease 0.1s;
}
.accordion-006[open] p {
  padding: 1em 2em 1.5em;
  max-height: 500px;
  opacity: 1;
}
/* 全体のラップ */
.detail {
  background-color: #c9e7ff;
  padding: 4% 0;
}
.detail .inner {
  width: 70%;
  max-width: 850px;
  margin: 0 auto;
}
/* 文字部分に幅を指定して左揃え */
.accordion-006 summary .text {
  width: 80%;
  margin: 0 auto 0 0;         /* 横幅いっぱい使う */
  text-align: left;  /* 左揃え */
  line-height: 1.2;
}
/* アイコン部分は右に固定 */
.accordion-006 summary span.icon {
  flex: 0 0 auto; /* 幅固定 */
  margin-left: 1em;
  /* 必要に応じて absolute で右寄せも可能 */
}
.form_coupon{
  width: 94%;
  max-width: 600px;
  margin: 0 auto;
}
/*離脱ポップの動き*/
html.popup-open,
body.popup-open {
    overflow: hidden;
    position: fixed;
    width: 100%;
    height: 100%;
}
#exit-popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 9999;
    overflow-y: auto;
}
.exit-popup-content {
    position: relative;
    top: 42%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 90%;
    width: 520px;
}
.exit-popup-img{
    background: #fff;
}
#exit-popup-image {
    display: block;
    width: 100%;
    height: auto;
    cursor: pointer;
}


@media (max-width: 768px) {
    .detail .inner{
      width: 94%;
    }
    .exit-popup-content {
        width: 80%;
    }

    #close-popup {
        position: absolute;
        top: -12%;
        right: -9%;
        background: none;
        border: none;
        font-size: 38px;
        cursor: pointer;
        color: #ffffff;
        z-index: 2;
    }
    .exit-popup-img{
        padding-bottom: 0%;
    }
    
}
@media (min-width: 769px) {
    #close-popup {
        position: absolute;
        top: -10%;
        right: 0%;
        background: none;
        border: none;
        font-size: 38px;
        cursor: pointer;
        color: #ffffff;
        z-index: 2;
    }
}

/*離脱ポップのデザイン*/
.popmain{
    position: relative;
    z-index: 5;
}

/*フォーム上クーポン*/
div.form_coupon{
  padding: 9% 0%;
}