@charset "UTF-8";
/* Google Fonts */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
/* FontAwesome（外部読み込み） */
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css");
/*====================
  変数定義
====================*/
/*====================
  Mixin（メディアクエリ管理）
====================*/
/*====================
  共通: デバイス表示制御（PC/SP）
====================*/
.pc_none {
  display: none;
}

.sp_none {
  display: block;
}

@media (max-width: 768px) {
  .pc_none {
    display: block;
  }
  .sp_none {
    display: none;
  }
}
/*====================
  ベース設定（BASE）
====================*/
html {
  font-size: 62.5%; /* 1rem = 10px */
  scroll-behavior: smooth;
}

body {
  font-family: "Noto sans", sans-serif;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.02em;
  font-feature-settings: "palt" 1;
  color: #000000;
  background-color: #ffffff;
}

/* リンク設定 */
a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
a:hover {
  opacity: 0.6;
}

/* 外部リンクアイコン */
a.blank::after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  vertical-align: middle;
  content: "\f08e"; /* FontAwesomeの外部リンクアイコン */
  padding-left: 3px;
}

/* 画像 */
img {
  max-width: 100%;
  height: auto;
}

/*======================================*/
.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  text-align: left;
  width: 100%;
  height: 78px;
  background-color: #ffffff;
  z-index: 100;
}

@media (max-width: 768px) {
  .header {
    padding: 10px 15px;
    height: auto;
  }
  .header h1 img {
    width: 80px;
  }
}


.container{
  position: relative;
  background-image: url(../img/bg.png);
  background-position: top center;
  background-size: 100% auto;
}


main {
  max-width: 640px;
  margin: 0 auto;
  background-color: #fff;
  box-shadow: 0 20px 20px rgba(0, 0, 0, 0.2);
  
}


.point{
  background-image: url(../img/bg_gr.png);
  background-position: top center;
  background-size: 100% auto;
  text-align: center;
  padding: 0 15px 30px 15px;
}
.point h2{
  padding: 30px 0;
}

@media (max-width: 768px) {
  .point p{
    padding: 0 20px;
  }
}

.more{
  background-image:url(../img/more_bg.png);
  background-size: cover;
  text-align: center;
  padding: 0 15px ;
}
.more h2{
  padding: 30px 0 60px 0;
}

.more h3{
  padding: 0 0 15px 0;
}

.more p{
  padding: 0 0 35px 0;
}

@media (max-width: 768px) {
.more h2{
  padding: 20px 0 30px 0;
}

.more h3{
  padding: 0 0 10px 0;
}

.more p{
  padding: 0 20px 20px 20px;
}
}





.howto{
  background-image: url(../img/bg_gr.png);
  background-position: top center;
  background-size: 100% auto;
  text-align: center;
  padding: 50px 30px 30px 30px;
}

.howto .howtoTxt{
  font-size: 2.0em;
  padding: 30px 0 0 0;
}

.howto .howtoBox{
  border: solid 5px #fff;
  padding: 30px;
  border-radius: 30px;
  margin: 30px 0 0 0;
}
.howto .howtoBox p{
  font-size: 2.2em;
  padding: 20px 0 0 0;
}


@media (max-width: 768px) {

  .howto{
    padding: 30px 20px 20px 20px;
  }

  .howto h2{
    padding: 0 15%;
  }
  .howto .howtoTxt{
  font-size: 1.4em;
  padding: 20px 0 0 0;
}
.howto .howtoBox{
  padding: 20px;
}

.howto .howtoBox p{
  font-size: 1.4em;
  padding: 20px 0px 0 0px;
}

}



.note{
  padding: 16px 30px 30px 30px;
  background-color: #f2eeea;
}
.note dt{
  background-image: url(../img/note_off.png);
  background-size: cover;
  aspect-ratio: 1164 / 146;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 16px 16px 0 0;
  margin: 20px 0 0 0;
  cursor: pointer;
}
.note dt.on{
  background-image: url(../img/note_on.png);
  background-color: #fff;
}
.note dd{
  background: #fff;
  padding: 25px;
  display: none;
}

.note dd h2{
  font-size: 2.2em;
  font-weight: bold;
}
.note dd p{
  font-size: 1.8em;
  padding-bottom: 1.5em;
}
.note dd ul{
  font-size: 1.8em;
  padding-bottom: 1.5em;
}
.note dd li{
  text-indent: -1em;
  padding-left: 1em;
}
.note dd .pb{
  padding-bottom: 1.5em;
}


.note dd.chui h2{
  font-size: 1.8em;
  font-weight: bold;
}
.note dd.chui p{
  font-size: 1.4em;
}
.note dd.chui ul{
  font-size: 1.4em;
}

.note dd.chui p a{
  text-decoration: underline;
  color: #2eb7fe;
}



@media (max-width: 768px) {
  .note{
  padding: 15px 20px 30px 20px;
  }
  .note dt{
    border-radius: 9px 9px 0 0;
  }
  .note dt img{
    height: 20px;
    width: auto;
  }

  .note dd{
  padding: 20px;
}


.note dd h2{
  font-size: 1.8em;
}
.note dd p,
.note dd ul{
  font-size: 1.5em;
}
.note dd.chui h2{
  font-size: 1.5em;
}
.note dd.chui p,
.note dd.chui ul{
  font-size: 1.2em;
}




}




.abc{
  background-image: url(../img/abc_bg.png);
  background-position: top center;
  background-size: 100% auto;
  text-align: center;
  padding: 0 20px;
}
.abcBox{
  padding: 40px 0;
}
.abcBox h3{
  padding: 30px 0;
}
.abcBox p{
  padding: 0 0 30px 0;
  color: #fff;
  font-size: 2.0em;
}

@media (max-width: 768px) {

.abcBox{
  padding: 20px 0;
}
.abcBox h3{
  padding: 20px 0;
}
.abcBox p{
  padding: 0 6% 20px 6%;
  color: #fff;
  font-size: 1.3em;
}

}




.faq{
  padding: 50px 30px;
}
.faq h2{
  text-align: center;
  padding: 0 0 45px 0;
}
.faq dl{}
.faq dt{
  background-color: #dfa1e4;
  background-image: url(../img/faq_off.png);
  background-size: 29px;
  background-position: 96% center;
  background-repeat: no-repeat;
  border-radius: 5px;
  font-size: 2.2em;
  color: #fff;
  padding: 20px;
  margin: 0 0 20px 0;
  cursor: pointer;
  font-weight: bold;
}
.faq dt.on{
  background-image: url(../img/faq_on.png);
}
.faq dd{
  padding: 0 20px 20px 20px;
  display: none;
}
.faq dd p{
  font-size: 1.8em;
}
.faq dd li{
  font-size: 1.8em;
  text-indent: -1em;
  padding-left: 1em;
}
.faq dd .pb{
  padding-bottom: 1.5em;
}


@media (max-width: 768px) {
.faq{
  padding: 30px 20px 15px 20px;
}
.faq h2{
  padding: 0 0 25px 0;
}
.faq h2 img{
  width: 180px;
}
.faq dt{
  font-size: 1.4em;
  background-size: 15px;
  padding: 10px 15px;
  margin: 0 0 12px 0;
}
.faq dd{
  padding: 0 15px 15px 15px;
}
.faq dd p{
  font-size: 1.3em;
}
.faq dd li{
  font-size: 1.3em;
}

}



.footer {
  background-color: #f2eeea;
  text-align: center;
  padding: 30px 5%;
}
.footer address {
  font-size: 1.4em;
}
@media (max-width: 768px) {
  .footer {
    padding: 20px 5%;
  }
  .footer address {
    font-size: 1.2em;
  }
}/*# sourceMappingURL=home.css.map */





.popMenu,
.popEntry{
  position: fixed;
  width: 300px;
  background-color: #fff;
  top: calc(50% - 150px);
  border-radius: 20px;
  box-shadow: 4px 4px 0 rgba(0, 0, 0, 1);
}

.popMenu{
  left: calc(50% - 680px);
}
.popEntry{
  right: calc(50% - 680px);
}

.popMenu .inner,
.popEntry .inner{
  border: solid 1px #dfa1e4;
  margin: 5px;
  border-radius: 20px;
  padding: 20px 0;
  height: 300px;
  text-align: center;
}

.popMenu .inner p{
  padding: 0 0 20px 0;
}
.popEntry .inner h2{
  padding: 10px 0;
}
.popEntry .inner p{
  padding: 0 0 30px 0;
}











.link-disabled {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}
.link-disabled img{
  box-shadow:none !important;
}
