.header{width:100%; max-width:100%; height:80px; max-height:20%; background-color: #FFFFFF; display:flex; align-items: center; z-index:5000; padding-left:20px;}
.headerlogo{max-width:300px; height:auto;}
.mv-wrap{width:100%; height:auto; margin:0 auto 0 auto; position:relative; z-index:1000;}
.main-contents{width:100%; max-width:1180px; margin:0 auto 0 auto;}
.section1{margin-bottom:40px;}
.point1-box{margin:30px 0 0 0; background-image:url(images/bg-stripe.jpg); background-repeat:no-repeat; background-size: auto; position:relative; display:flex; width:100%; max-width:1180px; border-radius:15px; min-height:380px;}
.point-num{max-height:150px; max-width:100px; padding-left:20px; margin-top:0px;}
.point1-left{padding:50px 20px 40px 20px; max-width:500px; width:50%;}
.point1-left-titlewrap{max-width:650px; display:flex;}
.point-title{font-size:1.5em; color:#0053a6; font-weight:bold; margin:auto 0 auto 30px;}
.point1-txt-wrap{margin:30px 0 20px 0; max-width:500px;}
.point-txt{padding:0 0 0 20px;}
.point1-right{max-width:580px; padding:20px 20px 0 20px; display:flex; align-items: flex-end;}
.point1-right img{margin-top:auto; width:100%; max-width:540px; display:flex; flex-direction:column;}
.point-column{width:100%; max-width:1180px; display:flex; margin-top:30px;}
.point-box-left-wrap{padding-right:10px;}
.point-box-left{margin-right:auto; width:100%; max-width:580px; background-image:url(images/bg-stripe.jpg); background-repeat:no-repeat; background-size:auto; border-radius:15px; display:flex; min-height:380px;}
.point-box-right-wrap{padding-left:10px;}
.point-box-right{margin-left:auto; width:100%; max-width:580px; background-image:url(images/bg-stripe.jpg); background-repeat:no-repeat; background-size:auto; border-radius:15px; display:flex; min-height:380px;}
.point-contents-wrap{padding:0 45px 30px 0;}
.point-icon{max-height:120px; width:auto; object-fit:contain;}
.point-title-wrap{padding:50px 0px 0px 20px; max-width:640px; display:flex;}
.point-txt-wrap{margin:30px 0 0 0;}
.section2{background-image:url(images/sec2-bg.png); border-radius:15px; padding:30px 20px 40px 20px; width:100%; max-width:1180px; margin-bottom:40px;}
.services-column{display:flex; max-width:1180px; width:100%; margin-top:40px;}
.sec2-title{width:90%; margin:0 auto 0 auto; display:block;}
.services-left-wrap{padding-right:7.5px;}
.services-left{display:flex; flex-direction:column; box-shadow:5px 5px 0px #B8B38A; background-color:#FFFFFF; border-radius:15px; width:370px; margin-right:auto; padding:30px; min-height:600px;}
.services-center-wrap{padding-right:7.5px; padding-left:7.5px;}
.services-center{display:flex; flex-direction:column; box-shadow:5px 5px 0px #B8B38A; background-color:#FFFFFF; border-radius:15px; width:370px; padding:30px; min-height:600px;}
.services-right-wrap{padding-left:7.5px;}
.services-right{display:flex; flex-direction:column; box-shadow:5px 5px 0px #B8B38A; background-color:#FFFFFF; border-radius:15px; width:370px; margin-left:auto; padding:30px; min-height:600px;}
.services-mv-wrap{width:100%; height:200px; margin:0 auto 20px auto; display:flex; align-items:center;}
.services-mv{width:100%; height:auto;}
.coupon-mv{margin-left:-20px;}
.service-sub{text-align:center; font-weight:bold;}
.service-title{text-align:center; font-weight:bold; font-size:1.4em; color:#0053a6; margin-bottom:15px;}
.service-txt-box{margin-bottom:20px;}
.btn{background-color:#0053a6; border-radius:10px; width:100%; height:60px; justify-content:center; align-items:center; display:flex; transition: all 0.5s ease; margin-top:auto;}
.btn span{font-weight:bold; color:#FFFFFF; position:relative; display: inline-block; padding-right:12px;}
.btn span::after{content: ''; width: 6px; height: 6px; border: 0; border-top: solid 2px #FFFFFF; border-right: solid 2px #FFFFFF; transform: rotate(45deg); position: absolute; top: 2px; left:100%; bottom: 0; margin: auto;}
.btn:hover{background-color:#00ABD9;}
.link-arrow{font-weight:bold; position:relative; display: inline-block; padding-left:12px; color:#0066c0; margin-left:10px; margin-top:15px; transition: all 0.5s ease;}
.link-arrow:hover{color:#00ABD9;}
.link-arrow::before{content: ''; width: 6px; height: 6px; border: 0; border-top: solid 2px #0066c0; border-right: solid 2px #0066c0; transform: rotate(45deg); position: absolute; top: 2px; right:100%; bottom: 0; margin: auto; transition: all 0.5s ease;}
.link-arrow:hover::before{content: ''; width: 6px; height: 6px; border: 0; border-top: solid 2px #00ABD9; border-right: solid 2px #00ABD9; transform: rotate(45deg); position: absolute; top: 2px; right:100%; bottom: 0; margin: auto;}
.section3{margin-bottom:40px;}
.footer{background-color:#0053a6; height:80px; display: flex; align-items: center; justify-content:center; padding:20px;}
.footer-text{font-size:0.9em; color:#ffffff; text-align:center;}

/*common*/
.tac{text-align:center;}
.fwb{font-weight:bold; color:#0053a6;}
.notelist{margin-top:5px;}
.notelist li{font-size:0.9em; color:#3c3c3c; padding-left:1em; position:relative; margin-bottom:3px;}
.notelist li::before{content:"※"; color:#0053a6; font-size:0.9em; position:absolute; left:0;}
.notelist-num{counter-reset:notelist-num; margin-top:5px;}
.notelist-num li{font-size:0.9em; color:#3c3c3c; padding-left:2em; position:relative; margin-bottom:3px;}
.notelist-num li::before{counter-increment:notelist-num; content:"※" counter(notelist-num); color:#0053a6; font-size:0.9em; position:absolute; left:0;}
.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}

/*reset*/
*{
    margin: 0;
    padding: 0;
}
body{
    font-family:"Noto Sans JP", "Hiragino Sans","Hiragino Kaku Gothic ProN", "BIZ UDPGothic", "Yu Gothic Medium","Yu Gothic", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1.5;
}
p,span,h1, h2, h2, h3, h5, h6{
    color:#3c3c3c;
}
html {
    scroll-behavior: smooth;
}
a{text-decoration:none; transition: all 0.5s ease;}
a:hover{color:#00ABD9;}

/* スクロール時に下からふわっと表示されるJS用（JSで.fadeを.fade.activeに変える） */
.fade {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1.5s, transform 1s;
}
.fade.active {
	opacity: 1;
	transform: translateY(0px);
}
*, *::before, *::after {
    box-sizing: border-box;
}
ul{
    list-style:none;
}

/*FAQエリア用*/
.faq-accordion_wrap{
  width:100%;
  max-width:1180px;
  margin:0px auto;
  padding:32px;
  border:1px solid #e5e7eb;
  border-radius:18px;
  background:#f8fafc;
}
/* タイトル */
.faq-accordion_title{
  font-size:22px;
  font-weight:bold;
  margin-bottom:12px;
  text-align:center;
  color:#0053a6;
}
.faq-titlesub{
  margin-bottom:25px;
  text-align:center;
  font-weight:bold;
}
/* 説明文 */
.faq-accordion_text{
  text-align:center;
}
/* FAQ項目 */
.faq-accordion_item{
  margin-bottom:20px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#ffffff;
  overflow:hidden;
}
/* 質問ボタン */
.faq-accordion_question{
  width:100%;
  padding:20px 18px;
  border:none;
  background:#ffffff;
  font-weight:bold;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
/* 質問のQ表記 */
.faq-accordion_question-text::before{
  content:"Q.";
  margin-right:8px;
  color:#00ABD9;
  font-weight:bold;
}
.faq-accordion_question-text{
  font-size:16px;
  color:#3c3c3c;
}
/* 開閉アイコン */
.faq-accordion_question::after{
  content:"＋";
  color:#00ABD9;
  font-weight:bold;
  transition: transform .3s ease;
}
/* 開いている時の開閉アイコン */
.faq-accordion_item.is-open .faq-accordion_question::after{
  transform: rotate(45deg);
}
/* 回答 */
.faq-accordion_answer{
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  padding: 0 18px;
  color:#4b5563;
  line-height:1.8;
  transition:
  max-height .4s ease,
  opacity .3s ease,
  padding .4s ease;
}
.faq-accordion_item.is-open .faq-accordion_answer{
  max-height: 300px;
  opacity: 1;
  padding: 0 18px 18px;
}
/* 回答のA表記 */
.faq-accordion_answer::before{
  content:"A.";
  margin-right:8px;
  color:#3c3c3c;
  font-weight:bold;
}

/*SP*/
@media screen and (max-width:767px) , print and (max-width:767px){
body{width:100%; min-width:100%; max-width:100%;}
.mv-sp{max-width:100%; margin-left:auto; margin-right:auto;}
.main-contents{padding-left:10px; padding-right:10px; width:100%;}
.header{width:100%; height:50px;}
.headerlogo{width:300px; max-width:50%; height:auto;}
.mv-wrap{width:100%; height:auto; margin:0 auto 0 auto; position:relative; z-index:1000;}
.point1-box{width:100%; flex-direction:column;}
.point1-left{padding:20px 20px 20px 20px; max-width:100%; width:100%;}
.point1-right{display:block;}
.point1-left-wrap{flex-direction:row; display:flex;}
.point1-txt-wrap{display:block; max-width:100%;}
.point1-right{text-align:center;}
.point1-right img{max-width:100%; display:block; margin:0 auto;}
.point-num{display:none;}
.point-num-sp{height:auto; width:50%; max-width:300px; padding-left:0px; margin-top:25px;}
.point-icon{max-width:20%;}
.point-contents-wrap{padding:0 20px 20px 20px;}
.point-title{font-size:1.2em;}
.point-title-wrap{padding-left:0; padding-top:20px;}
.point-column{width:100%; max-width:100%; display:block; margin:0;}
.point-box-left-wrap{padding:0; margin-top:30px;}
.point-box-right-wrap{padding:0; margin-top:30px;}
.point-box-left{width:100%; max-width:100%; background-image:url(images/bg-stripe.jpg); background-repeat:no-repeat; background-size:auto; border-radius:15px; display:flex; flex-direction:column;}
.point-box-right{width:100%; max-width:100%; background-image:url(images/bg-stripe.jpg); background-repeat:no-repeat; background-size:auto; border-radius:15px; display:flex; flex-direction:column;}
.point-txt-wrap{padding:0;}
.section2{padding:30px 10px 30px 10px;}
.sec2-title{width:100%; margin-bottom:20px;}
.services-column{width:100%; max-width:100%; display:block; margin:0;}
.services-mv-wrap{width:100%; height:auto;}
.services-left-wrap{padding:0; margin-bottom:30px;}
.services-center-wrap{padding:0; margin-bottom:30px;}
.services-right-wrap{padding:0; margin-bottom:30px;}
.services-left{display:flex; flex-direction:column; box-shadow:5px 5px 0px #B8B38A; background-color:#FFFFFF; border-radius:15px; width:100%; margin-right:auto; padding:20px; min-height:auto;}
.services-center{display:flex; flex-direction:column; box-shadow:5px 5px 0px #B8B38A; background-color:#FFFFFF; border-radius:15px; width:100%; margin-right:auto; padding:20px; min-height:auto;}
.services-right{display:flex; flex-direction:column; box-shadow:5px 5px 0px #B8B38A; background-color:#FFFFFF; border-radius:15px; width:100%; margin-right:auto; padding:20px; min-height:auto;}
.faq-accordion_wrap{padding:10px;}
.faq-accordion_title{margin-top:20px;}
.footer{height:auto; display: flex; align-items: center; justify-content:center; padding:20px;}
.sp-dispN{display:none;}
.point1-right-sp{padding:0 20px; display:flex;}
.point1-right-left{width:50%; text-align:center; display: flex;align-items: center;}
.point1-right-left img{width:100%;}
.point1-right-right{width:50%;}
.point1-right-right img{width:100%;}
}

/*PCのみ*/
@media screen and (min-width:768px) , print and (min-width:768px){
body{min-width:1180px;}
.mv{max-width:100%; width:100%; margin-left:auto; margin-right:auto; mask-image: linear-gradient(to bottom, black 90%, transparent 100%);}
.point-num-sp{display:none;}
.pc-dispN{display:none;}
}

/*noscript*/
.noscript{width:100%; height:auto; padding:20px; background-color:#fffcd6;}

/*印刷のみ*/
@media print {
.fade {
opacity: 1 !important;
transform: none !important;
transition: none !important;}
}