@charset "utf-8";
/* CSS Document */

body ,p{
margin:0;
padding:0;
font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.wrap{
margin:0;
padding:0;
margin-top: 0;
background:url(https://mochi2.shop-pro.jp/apps/note/wp-content/uploads/2024/04/bg_dot.png);
}


.header_area{
border-top:#93DEEE solid 5px;
background:#FEFFEC;
}

.wrap_id{
max-width:1000px;
margin:0 auto;
padding:50px 8px;
line-height:1.8;
}


.wrap_header{
max-width:1000px;
margin:0 auto;
padding:20px 8px;
line-height:1.8;
}

.logo_area{
max-width:376px;
margin:0 auto;
margin-top:0px;
margin-bottom:20px;
}

.tit_01{
background-color: #007ece;
border-top-right-radius: 20px;
border-top-left-radius: 20px;
color: #FFF;
font-size: 130%;
font-weight: bold;
padding: 8px 21px 6px;
margin:0;
}

.tit_02 {
font-size:120%;
padding: 0.8rem 0;
margin-bottom: 20px;
background-image: linear-gradient(90deg, #007ece 0 23%, #dedede 20%);
background-repeat: no-repeat;
background-size: 100% 10%;
background-position: bottom;
color: #323232;
font-weight: bold;
}


.text_area01{
background:#FFFFFF;
padding:23px;
border-bottom-right-radius: 20px;
border-bottom-left-radius: 20px;
}


.bt_items{
padding:1%;
width:50%;
margin:0;
}

@media screen and (max-width: 840px) {
.bt_items{
padding:1%;
width:100%;
margin:0;
}}





.bt_items a{
color:#FFFFFF;
text-decoration:none;
background:#007ece;
border-radius:20px;
font-weight:bold;
text-align:center;
padding:10px 20px;
display: block;
}

.bt_items a:hover{
opacity:0.7;
transition: 0.2s;
text-decoration:none;
}


.bt_area{
display: flex;
justify-content: center;
}


@media screen and (max-width: 840px) {
.bt_area{
display: flex;
flex-direction: column;
align-items: center;
}}



.guide_bg{
padding:0 8px 0 0;
vertical-align: text-top;
margin-left: -20px;
}

.faq_bg{
padding:0 8px 0 0;
vertical-align: text-top;
margin-left: -20px;
}

.tit_bg{
padding:0 8px 0 0;
vertical-align: bottom;	
}


.home_area{
text-align:right;
margin:0;
}

.home_images{
padding:0 8px 0 0;
vertical-align: text-top;
margin-left: -20px;

}



.bt_items02 a{
color:#FFFFFF;
text-decoration:none;
background:#007ece;
border-radius:20px;
font-weight:bold;
text-align:center;
padding:10px 20px;
display: block;
}

.bt_items02 a:hover{
opacity:0.7;
transition: 0.2s;
text-decoration:none;
}


.o_caution{
list-style:none;
margin:0;
padding:0;
}

.o_caution li{
margin-left: 13px;
text-indent: -15px;
padding-bottom:10px;
font-size:90%;
}

.o_point::before{
content:"※";
padding:0 0 0 0;	
}


.kasuhara_area{
	border: #007ece solid 4px;
	border-radius:20px;
	padding:20px;
}

.kasuhara_tit{
	margin:0 0 20px 0;
	font-size:120%;
	font-weight:bold;
	color:#007ece;
	text-align:center;
}


.o_caution02{
list-style:none;
margin:20px 0;
padding:0;
}

.o_caution02 li{
margin-left: 13px;
text-indent: -15px;
padding-bottom:10px;
font-size:90%;
}



.bg_area{
background:url(https://mochi2.shop-pro.jp/apps/note/wp-content/uploads/2024/04/line_images.png);
height:27px;
}

.slider-decoration {
background: url(images/line_images.png);
height: 11px;
background-repeat: repeat-x;
background-position: center top;
}


/*チェックボタン*/

.check_box{
	margin:30px 0 43px 0;
}

.check_area{
	text-align:center;
	
}

.btn {
margin:0 auto;
margin-bottom:25px;
width:90%;
padding:10px 20px 10px 20px;
color: #FFF;
background-color: #007ece;
font-size: 15px;
cursor: pointer;
border-radius:20px;
}

.btn:hover {
background-color: #007ece;
opacity:0.7;
transition: 0.2s;
}

.disable {
background-color: gray;
cursor: not-allowed;
}

.disable:hover {
background-color: gray;
}

.toiawase_tit{
	font-size:80%;
}



/*FAQアコーディオン*/

.accordion {
margin: 0 auto;
max-width: 950px;
}

.toggle {
display: none;
}

.faq {
position: relative;
margin-bottom: 1rem;
}

.question,.anser {
transform: translateZ(0);
transition: all 0.3s;
}

.question {
border: solid 1px #999;
padding: 0rem 2.2rem 0rem 1rem;
display: block;
color: #333;
}

.question:after,.question:before {
content: "";
position: absolute;
right: 1.25rem;
top: 0;
bottom: 0;
margin: auto;
width: 2px;
height: 0.75rem;
background-color: #999;
transition: all 0.3s;
}

.question:after {
transform: rotate(90deg);
}

.anser {
max-height: 0;
overflow: hidden;
}

.anser div {
margin: 0;
padding: 2rem 1rem 2rem;
line-height: 1.8;
}

.toggle:checked + .question + .anser {
max-height: 500px;
transition: all 1.5s;
}

.toggle:checked + .question:before {
transform: rotate(90deg) !important;
}

.question_p:before{
content: 'Q.';
font-size: 140%;
padding-right: 0.6rem;
color: #c00303;
line-height: 1;
margin-left: -32px;
}

p.question_p {
margin:16px 0 16px 40px;
}

.anser_p:before{
content: 'A.';
font-size: 140%;
padding-right: 0.6rem;
color: #006aec;
line-height: 1;
margin-left: -32px;
}

p.anser_p {
margin-left: 40px;
}

a{
color:#007ece;
}

a:hover{
opacity:0.7;
transition: 0.2s;
text-decoration:none;
}

.footer_area{
background:#58BFDF;
font-size:60%;
padding:8px;
text-align:center;
color:#FFFFFF;
}


/* 追加：jQuery式アコーディオン */
.section.s_07 {
  margin: 0 auto;
}

.accordion_one {
  margin-bottom: 10px;
}

.accordion_header {
  position: relative;
  padding: 18px 52px 18px 18px;
  border: solid 1px #999;
  background: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.accordion_header:hover {
  background-color: #f2f9ff;
}

.accordion_inner {
  display: none;
  padding: 0;
}

.accordion_inner .accordion_one {
  margin-bottom: 0;
}

.anser_box {
  padding: 18px 18px 22px 48px;
  line-height: 1.8;
  border-left: solid 1px #999;
  border-right: solid 1px #999;
  border-bottom: solid 1px #999;
  background: #fff;
}

.i_box {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
}

.one_i::before,
.one_i::after {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 18px;
  height: 2px;
  background: #999;
  transition: transform 0.2s ease;
}

.one_i::after {
  transform: rotate(90deg);
}

.accordion_header.open .one_i::after {
  transform: rotate(0deg);
}

/* 追加：jQuery式アコーディオン */
.section.s_07 {
  margin: 0 auto;
}

.accordion_one {
  margin-bottom: 10px;
}

.accordion_header {
  position: relative;
  padding: 18px 52px 18px 18px;
  border: solid 1px #999;
  background: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.accordion_header:hover {
  background-color: #f2f9ff;
}

.accordion_inner {
  display: none;
  padding: 0;
}

.accordion_inner .accordion_one {
  margin-bottom: 0;
}

.anser_box {
  padding: 18px 18px 22px 48px;
  line-height: 1.8;
  border-left: solid 1px #999;
  border-right: solid 1px #999;
  border-bottom: solid 1px #999;
  background: #fff;
}

.i_box {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
}

.one_i::before,
.one_i::after {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 18px;
  height: 2px;
  background: #999;
  transition: transform 0.2s ease;
}

.one_i::after {
  transform: rotate(90deg);
}

.accordion_header.open .one_i::after {
  transform: rotate(0deg);
}

/* FAQアコーディオン：スムーズ開閉版 */
.accordion_inner {
  display: block !important;
  max-height: 0;
  overflow: hidden;
  padding: 0;
  transition: max-height 0.35s ease;
}

.accordion_header.open + .accordion_inner {
  max-height: var(--accordion-height, 0px);
}

.one_i::before,
.one_i::after {
  transition: transform 0.35s ease;
}

.accordion_header.open .one_i::after {
  transform: rotate(0deg);
}

/* 親カテゴリ見出し：青い丸マーク */
.id_tit_font {
  position: relative;
  margin: 0;
  margin-left: 22px;
  font-size: 120%;
}

.id_tit_font::before {
  content: "●";
  position: absolute;
  top: 50%;
  left: -22px;
  transform: translateY(-50%);
  color: #007ece;
  font-size: 90%;
  line-height: 1;
}

@media screen and (max-width: 840px) {
  .id_tit_font {
    font-size: 100%;
    margin-left: 20px;
  }

  .id_tit_font::before {
    left: -20px;
    font-size: 70%;
  }
}

/* 子FAQの質問行 */
.id_tit_q {
  background: #fff;
}

/* 子FAQ hover */
.id_tit_q:hover {
  background-color: #f2f9ff;
}

/* =========================
  FAQデザイン復元：親カテゴリ
========================= */

.section.s_07 > .accordion_one {
  margin-bottom: 10px;
}

.section.s_07 > .accordion_one > .accordion_header {
  min-height: 80px;
  box-sizing: border-box;
  padding: 0 60px 0 24px;
  display: flex;
  align-items: center;
  border: 1px solid #333;
  background: #fff;
margin-bottom:10px;
}

.id_tit_font {
  position: relative;
  margin: 0 0 0 22px;
  font-size: 120%;
  line-height: 1.5;
}

.id_tit_font::before {
  content: "";
  position: absolute;
  left: -26px;
  top: 50%;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #007ece;
  transform: translateY(-50%);
}


/* =========================
  FAQデザイン復元：子FAQ
========================= */

.section.s_07 .accordion_inner > .accordion_one {
  margin-bottom: 10px;
}

.id_tit_q.accordion_header {
  min-height: 72px;
  box-sizing: border-box;
  padding: 0 60px 0 28px;
  display: flex;
  align-items: center;
  border: none;
  background: #cfe5f7;
}

.id_tit_q.accordion_header:hover {
  background: #c6def2;
}

.id_tit_q .question_p {
  margin: 0 0 0 31px;
  line-height: 1.5;
	font-weight:normal;
}

.id_tit_q .question_p::before {
  color: #c00303;
  font-size: 120%;
  margin-left: -31px;
}


/* =========================
  FAQ回答エリア
========================= */

.anser_box {
  margin-bottom: 10px;
  padding: 20px 24px 22px 58px;
  border: none;
  background: #fff;
  line-height: 1.8;
}


/* =========================
  FAQアイコン位置調整
========================= */

.accordion_header .i_box {
  right: 58px;
}

.id_tit_q.accordion_header .i_box {
  right: 60px;
}

.one_i::before,
.one_i::after {
  background: #333;
}


/* =========================
  サンクスページ
========================= */

.thanks_area {
  padding: 20px 40px;
  line-height: 2;
}

.thanks_area p {
  margin: 0 0 34px;
}

.thanks_area p:last-child {
  margin-bottom: 0;
}

.thanks_area .thanks_lead {
  font-size: 120%;
  font-weight: bold;
  color: #007ece;
}

@media screen and (max-width: 840px) {
  .thanks_area {
    padding: 20px 20px;
    line-height: 1.9;
  }

  .thanks_area p {
    margin-bottom: 26px;
  }

  .thanks_area .thanks_lead {
    font-size: 110%;
  }
}