@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@1,100..900&family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');

:root {
--color-01:#0097b7;
}

/*==================================================
共通
==================================================*/
html {
user-select: none;
font-size: 100%!important;
}
body {
font-family: "Zen Kaku Gothic New", sans-serif;
font-weight: 400;
font-style: normal;
line-height: 1.8em;
font-optical-sizing: auto;
text-size-adjust: 100%;
}

img {
display:inline-block;
max-width: 100%;
height: auto;
}
a,a:link,a:visited {
text-decoration: none;
transition: all ease 0.3s;
outline: none;
color:#000;
}
a:hover,a:active {
opacity: 0.8;
}
@media screen and (max-width: 600px) {
    .spNone {
    display: none;
    }
}/* max-width: 600px */
@media screen and (min-width: 601px) {
    .pcNone {
    display: none;
    }
}/* max-width: 600px */

main.wrap {
max-width:750px;
margin:0 auto;
background-color:#FFF;
}


/*==================================================
head
==================================================*/


@media screen and (min-width: 601px) {
}/* min-width: 601px */




/*==================================================
CTA
==================================================*/
.cta {
background-color: #f9f4e2;
position: relative;
padding:3rem 0;
}
.cta::before,
.cta::after {
content:'';
display:block;
width:100%;
height: 3rem;
}
.cta::before {
background:url(../img/saimu19_g/cta_bg_top.png) no-repeat center top;
background-size:contain;
position: absolute;
left:0; top:0;
}
.cta::after {
background:url(../img/saimu19_g/cta_bg_top.png) no-repeat center top;
background-size:contain;
position: absolute;
left:0; bottom:0;
transform: rotate(180deg);
}
.cta h5 {
padding:0 5% 0.5rem;
}
.cta .cta_bg {
background:url(../img/saimu19_g/cta_sub_bg.png) no-repeat center top;
background-size:contain;
padding-top:29%;
}
.cta .cta_bg .inner {
margin:0 3%;
background-color: #FFF;
box-shadow: 0 0 20px rgba(50,50,50,0.2);
padding-bottom:10px;
border-radius: 1rem;
overflow: hidden;
}
.cta .cta_bg .inner h6 {
background-color: #333;
text-align: center;
padding:0.5em;
font-size:0.85rem;
line-height: 1.2em;
font-weight: 500;
color: #FFF;
}
.cta .cta_bg .inner ul {
padding:1rem;
}
.cta .cta_bg .inner ul li.tel a {
display: block;
background:url(../img/saimu19_g/cta_btn_tel.png) no-repeat center top;
background-size:contain;
padding-top:24.0464%;
}
.cta .cta_bg .inner ul li.tel a span {
display:none;
}
.cta .cta_bg .inner > p {
margin:0 1rem;
text-align: center;
}

/* ラスト */
.cta.ctaLast {
padding: 0 0 2rem;
}
.cta.ctaLast::before,
.cta.ctaLast::after {
display:none;
}
.cta.ctaLast h5 {
padding:0;
}
.cta.ctaLast .cta_bg {
background: none;
padding-top:0;
}
@media screen and (min-width: 601px) {
  .cta {
  padding:6rem 0;
  }
  .cta::before,
  .cta::after {
  height: 4rem;
  }
  .cta .cta_bg .inner {
  margin:0 5%;
  }
  .cta .cta_bg .inner h6 {
  font-size:1.5rem;
  }
  .cta .cta_bg .inner ul {
  padding:2rem 8%;
  }
}/* min-width: 601px */



/*==================================================
Contens
==================================================*/
.intro {
background:url(../img/saimu19_g/intro_bg.png) repeat-y center top;
background-size:contain;
padding-bottom:2rem;
margin-top:1rem;
}
@media screen and (min-width: 601px) {

}/* min-width: 601px */


.nayami {
background-color: #f9f4e2;
padding-bottom:1rem;
}
.nayami h2 {
margin-bottom:2rem;
}
.nayami p {
margin:1rem 2% 1rem;
font-weight: 500;
}
.nayami p mark {
background: linear-gradient(transparent 70%, #8FC051 0%);
font-style: normal;
}
.nayami p:last-of-type {
margin:1rem 10% 3rem;
}
@media screen and (min-width: 601px) {
  .nayami p {
  margin:1.5rem 5% 1rem;
  font-weight: 500;
  }
  .nayami p:last-of-type {
  font-size:150%;
  line-height: 1.8em;
  }
}/* min-width: 601px */


.point ol {
position: relative;
top:-14vw;
background: url(../img/saimu19_g/point_bg.png) no-repeat center center;
background-size:contain;
padding:0 3%;
margin-bottom:-10vw;
}
.point ol li {
width:70%;
}
.point ol li:nth-child(odd) {
margin-left:auto;
}
.point ol li:nth-child(even) {
margin-right:auto;
}
@media screen and (min-width: 601px) {
  .point ol {
  position: relative;
  top:-6rem;
  margin-bottom:-6rem;
  padding:5rem 5%;
  }
}/* min-width: 601px */


.riyuu ul {
background: url(../img/saimu19_g/riyuu_bg.png) no-repeat center top;
background-size:100% auto;
padding:2rem 0 3rem;
}
.riyuu ul li {
width:90%;
margin-top:0.5rem;
}
.riyuu ul li:nth-child(odd) {
margin-right:auto;
}
.riyuu ul li:nth-child(even) {
margin-left:auto;
}


.jirei {
background: #e6fdff;
padding-bottom: 3rem;
}
.jirei ul {
padding:0 3%;
}
.jirei ul li {
margin-top:1.5rem;
}
@media screen and (min-width: 601px) {
  .jirei {
  padding-bottom: 6rem;
  }
  .jirei ul {
  padding:0 5%;
  }
  .jirei ul li {
  margin-top:3rem;
  }
}/* min-width: 601px */


.nagare .inner  {
padding:1rem 8% 0;
max-width:640px;
margin:0 auto;
}
.nagare ul {
position: relative;
z-index: 1;
}
.nagare ul.arr {
padding-bottom: 10px;
}
.nagare ul::after {
content:'';
display: block;
width:100%;
height:100%;
position: absolute;
left:0; bottom:0;
z-index: -1;
background: url(../img/saimu19_g/nagare_arr.png) no-repeat center bottom 8px;
background-size:30% auto;
}
.nagare ul li {
margin-bottom:1rem;
}
.nagare ul li img {
margin:0;
}
.nagare ul:last-of-type:after {
display: none;
}
@media screen and (min-width: 601px) {
  .nagare ul.arr {
  padding-bottom: 30px;
  }
}/* min-width: 601px */


.faq {
padding:1rem 0;
}
.faq dl {
margin:1rem 5%;
border:#8dc33e solid 1px;
}
.faq dl dt:before,
.faq dl dd:before {
content: '';
display: block;
position: absolute;
width:18px;
height:18px;
}
.faq dl dt:before {
background:url(../img/saimu19_g/faq_q.png) no-repeat center center;
background-size: 18px auto;
left:8px; top:13px;
}
.faq dl dt {
padding:0.5em 0.5em 0.5em 2rem;
background-color: #7FAF38;
color: #FFF;
position: relative;
}
.faq dl dd:before {
background:url(../img/saimu19_g/faq_a.png) no-repeat center center;
background-size: 18px auto;
left:8px; top:10px;
}
.faq dl dd {
padding:0.5em 0.5em 1em 2rem;
font-size:0.9rem;
line-height: 1.6em;
position: relative;
}
@media screen and (min-width: 601px) {
  .faq dl dt:before,
  .faq dl dd:before {
  width:28px;
  height:28px;
  }
  .faq dl dt:before {
  background:url(../img/saimu19_g/faq_q.png) no-repeat center center;
  background-size: contain;
  left:10px; top:13px;
  }
  .faq dl dt {
  padding:0.5em 0.5em 0.5em 50px;
  font-size:1.5em;
  }
  .faq dl dd:before {
  background:url(../img/saimu19_g/faq_a.png) no-repeat center center;
  background-size: contain;
  left:10px; top:24px;
  }
  .faq dl dd {
  padding:1em 0.5em 1.5em 50px;
  font-size:130%;
  line-height: 1.6em;
  }
}/* min-width: 601px */



/*==================================================
foot
==================================================*/
.infoOffice {
padding:2rem 10% 1rem;
}
.infoOffice h2 {
text-align: center;
font-size:100%;
}
.infoOffice dl {
display:table;
width:100%;
}
.infoOffice dl:not(:first-of-type) {
border-top:#CCC dotted 1px;
}
.infoOffice dl :is(dt,dd) {
display:table-cell;
vertical-align: top;
padding:0.8rem 0.5em;
font-size:0.9rem;
line-height:1.5em;
}
.infoOffice dl dt {
width:4em;
}


#footer {
padding:1rem 1rem min(24vw, 150px);
background-color: #333;
color:#FFF;
}
#footer ul.link {
display:flex;
flex-wrap: nowrap;
justify-content: center;
}
#footer ul.link li {
width:50%;
width: fit-content;
text-align: center;
font-size:14px;
padding:1em;
}
#footer ul.link li a {
color: #FFF;
text-decoration: underline;
}
#footer .copyRight {
text-align: center;
font-size: 12px;
line-height: 1.2em;
}

@media screen and (min-width: 601px) {

}/* min-width: 601px */





/*==================================================
下部固定ボタン
==================================================*/
#fixBtn {
width:100%;
position: fixed;
left:0; bottom:0;
z-index:100;
background:rgba(0,0,0,0.7);
padding:6px 0 0;
}
#fixBtn ul {
max-width:800px;
margin:0 auto;
}
#fixBtn ul li {
width: 80%;
margin:0 auto;
}
@media screen and (min-width: 601px) {
  #fixBtn ul li {
  width: 60%;
  }
}/* min-width: 601px */
