@charset "utf-8";

* {
  margin:0;
  padding:0;
}

body {
  font-family:'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, Arial, "MS P Gothic", "MS Pゴシック", sans-serif;
  /* font-family:"ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN W6", HiraKakuProN-W6, "ヒラギノ角ゴ W3 JIS2004", "Hiragino Kaku Gothic W3 JIS2004"; */
  line-height:1.9;
  font-size:1.4rem;
  font-weight:400;
  position: relative;
  background:no-repeat url(imgs/bg-body.webp) 0 0 / cover;
  background-attachment:fixed;
}




:root {
  --color-blue-01:#4EBBE6;
  --bg-dotted-blue:url(imgs/bg-dotted-blue.webp) repeat 0 0 / 130%;
}


a {
  color:#000;
  text-decoration:underline;
  /* cursor: none !important; */
}

a:link {
  color:#000;
  text-decoration:underline;
}

a:visited {
  color:#000;
  text-decoration:underline;
}

a:hover {
  color:#000;
  text-decoration:none;
}

a:active {
  text-decoration:underline;
}

img {
  max-width: 100%;
  height: auto !important;
  vertical-align:bottom;
  font-style: italic;
  background-repeat: no-repeat;
  background-size: cover;
  shape-margin: 0.75rem;
}


/*
a.hover-img img {
  transition:.5s;
  opacity:1;
}

a.hover-img img:hover {
  opacity:0.6;
}


*/

.hover-opa {
  transition:.5s;
  opacity:1;
}

.hover-opa:hover {
  opacity:0.6;
}

@media only screen and (max-width: 896px) {
.hover-opa:hover {
  opacity:1;
}
}


#wrapper {
  width: 100%;
  position: relative;
}

main {
  width:390px;
  box-shadow: 0px 0px 8px -1px #ccc;
  position:relative;
  background:#fff;
  margin:auto;
  overflow:hidden !important;
}




@media only screen and (max-width: 896px) {
main {
  width:100%;
}
}

.img-fv-01 {
  margin:8px 0 ;
}


.img-enband {
  display:block;
}

.fv {
  background:url(imgs/bg-fv.webp) no-repeat 0 78px / 100%;
}

.fvNote {
  text-align:right;
  font-size:.8rem;
  line-height:1.5;
  padding:8px 8px 16px 0;
}

.offer {
  text-align:center;
  padding:0 3%;
}

.about {
  background:url(imgs/bg-about.webp) no-repeat 0 0 / 100%;
}

.reason {
  background:var(--bg-dotted-blue);
  padding-bottom:32px;

}

.bg-dotted-blue {
  background:var(--bg-dotted-blue);
}


.reasonConte02 {

}

.reasonConte__line {
  background:url(imgs/bg-reason-line.webp) repeat-y 0 0 / 100%;
}

.reasonSlide__outer {
  width:84%;
  overflow:hidden;
  margin:auto;
}


.reason-slide {
  width:100%;
  margin:0;
}

.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

.reason-slide .slick-prev, 
.reason-slide .slick-next {
    position: absolute;
    top:42%;
    cursor: pointer;
    outline: none;
    height:20px;
    width:20px;
}
 
.reason-slide .slick-prev {
    left:1%;
    z-index: 2;
}
 
.reason-slide .slick-next {
    right:1%;
    z-index: 2;
}
 
.reason-slide .slick-dots {
    text-align:center;
    margin:10px 0 0 0;
}
 
.reason-slide .slick-dots li {
    display:inline-block;
    margin:0 5px;
}
 
.reason-slide .slick-dots button {
    color: transparent;
    outline: none;
    width:8px;
    height:8px;
    display:block;
    border-radius:50%;
    background:#fff;
}
 
.reason-slide .slick-dots .slick-active button{
    background:#ff0;
}

.btn-reason {
  margin-top:16px;
}







.workslider {
    max-width:100%;
    margin:0 auto;
    position:relative;
}
 
.workslider img {
    width:100%;
    height:auto;

}
 

 
.workslider .slick-slide {
    margin:0 8px;
}
 

.workslider .slick-prev, 
.workslider .slick-next {
    position: absolute;
    top:28%;
    cursor: pointer;
    outline: none;
    height:20px;
    width:20px;
}
 
@media only screen and (max-width: 480px) {
.workslider .slick-prev, 
.workslider .slick-next {
    top:30%;
}

}


.workslider .slick-prev {
    left:4.5%;
    z-index: 2;
}
 
.workslider .slick-next {
    right:4.5%;
    z-index: 2;
}
 
.workslider .slick-dots {
    text-align:center;
    margin:10px 0 0 0;
    position:absolute;
    top:64%;
    left:50%;
    transform:translateX(-50%);
}
 
.workslider .slick-dots li {
    display:inline-block;
    margin:0 5px;
}
 
.workslider .slick-dots button {
    color: transparent;
    outline: none;
    width:8px;
    height:8px;
    display:block;
    border-radius:50%;
    background:#fff;
    border:1px solid #000;
}
 
.workslider .slick-dots .slick-active button{
    background:var(--color-blue-01);
    border:1px solid var(--color-blue-01);
}

/*
.interest-margin {
  margin:24px 0 8px;
}
*/

.forentame {
  background:url(imgs/bg-forentame.webp) no-repeat 0 0 / 100%;
}





.voice {
  background:#F7F7F7;
  padding:0 0 40px;
}

.voiceslider {
    max-width:100%;
    margin:0 auto;
    position:relative;
}
 
.voiceslider img {
    width:100%;
    height:auto;
    box-shadow: 0px 0px 11px -5px #b0b0b0;
}
 
.voiceslider .slick-slide {
    margin:0 8px;
}
 

.voiceslider .slick-prev, 
.voiceslider .slick-next {
    position: absolute;
    bottom:1.65%;
    cursor: pointer;
    border-top: 3px solid var(--color-blue-01);
    border-right: 3px solid var(--color-blue-01);
    outline: none;
    height:12px;
    width:12px;
}
 
/*
@media only screen and (max-width: 480px) {
.voiceslider .slick-prev, 
.voiceslider .slick-next {
    top:30%;
}
}
*/

.voiceslider .slick-prev {
    left:30%;
    z-index: 2;
    transform: rotate(-135deg);
}
 
.voiceslider .slick-next {
    right:30%;
    z-index: 2;
    transform: rotate(45deg);
}
 
.voiceslider .slick-dots {
    text-align:center;
    margin:24px 0 0 0;

}
 
.voiceslider .slick-dots li {
    display:inline-block;
    margin:0 5px;
}
 
.voiceslider .slick-dots button {
    color: transparent;
    outline: none;
    width:8px;
    height:8px;
    display:block;
    border-radius:50%;
    background:#ccc;
}
 
.voiceslider .slick-dots .slick-active button{
    background:var(--color-blue-01);
}


.support {
  background:url(imgs/bg-support.webp) 0 0 / 100%;
}

.support-title {
  background:url(imgs/bg-support-title.webp) no-repeat 0 0 / 100%;
}

.support-woman {
  background:url(imgs/bg-support-02.webp) no-repeat 0 0 / 100%;
}


.difference {
  background:var(--bg-dotted-blue);
}

.supportstaff {
  background:url(imgs/bg-supportstaff.webp?t=1759105349) no-repeat 0 0 / 100%;
}

.flow {
  background:url(imgs/bg-flow.webp) no-repeat 0 0 / cover;
}



.ac {
  margin-bottom: 10px;
}

.ac dt {
  cursor: pointer;
}

.ac dt img {
  width: 100% !important;
  height: auto;
}

.ac .wrap_btn .btn {
  width: auto;
  top: 0;
  left: 0;
  bottom: 20%;
}

.ac dd,
.ac .wrap_btn .btn.cls {
  display: none;
}

.ac .wrap_btn.open .btn.opn {
  display: none !important;
}

.ac .wrap_btn.open .btn.cls {
  display: inline !important;
}



.linefriend {
  background:var(--bg-dotted-blue);
  padding-bottom:32px;
}

.linefriend__list {
  background:url(imgs/bg-linefriend-illust.webp) no-repeat 0 0 / 100%;
}






.ft {
  background:#000;
  color:#fff;
  padding:40px 4% 16px;
  font-size:1.1rem;
}

.ft a {
  color:#fff;
  text-decoration:none;

  transition:1s;
}

.ft a:hover {
  color:#ff0;
}

.ftLogo {
  text-align:center;
  padding:0 18%;
}

.ft__list {
  display:flex;
  justify-content:center;
  gap:16px;
  padding:16px 0;

}

.ft__copy {
  text-align:center;
  font-size:1rem;
  letter-spacing:2px;
}


.gheader,
.gheaderLower {
  height:0;
  overflow:hidden;
}

@media only screen and (max-width: 896px) {
.gheader {
    width: 100%;
    height:auto;
    background:#fff;
    position: fixed;
    top:-1px;
    left: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
    z-index:5;
    box-shadow: 0px 3px 8px -5px #b0b0b0;
}

.gheaderLower {
    width: 100%;
    height:auto;
    background:#fff;
    position: fixed;
    top:-1px;
    left: 0;
    transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
    z-index:5;
    box-shadow: 0px 3px 8px -5px #b0b0b0;
}

.gheader__inner {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:8px;
}

.gheader__inner h1 {
  width:47%;
}

.gheaderLower h1 {
  padding:4px 0;
  width:32%;
}

.gheader__inner a.gheader__btn {
  display:block;
  width:42%;
}

}



@media only screen and (max-width: 480px) {
.gheader__inner h1 {
  width:46%;
}

.gheader__inner a.gheader__btn {
  width:50%;
}
}


/*
sideNav ********/
.sideNav {
  position:fixed;
  top:40px;
  left:16px;
}

.sideNav__logo {
  width:300px;
  margin-bottom:24px;
}

.sideNav__qr {
  width:114px;
}

.sideNav__list {
  margin-bottom:32px;
}

.sideNav__list li {
  margin-bottom:20px;
}

.sideNavBtn__list {
  width:300px;
}

.sideNav a {
  transition:.5s;
  display:block;
  padding:2px 10px;
  font-weight:600;
  letter-spacing:1px;
  font-size:1.65rem;
  line-height:1.5;
  text-decoration:none;
  font-style:italic;
}

.sideNav a:hover {
  opacity:.4;
}



@media only screen and (max-width:1000px) {
.sideNav {
  width:20%;
}

.sideNav__logo {
  width:100%;
  margin-bottom:24px;
}

.sideNav a {
  transition:.5s;
  display:block;
  padding:2px 10px;
  font-weight:600;
  letter-spacing:1px;
  font-size:1.4vw;
  line-height:1.5;
  text-decoration:none;
  font-style:italic;
}

.sideNavBtn__list {
  width:100%;
}
}

@media only screen and (max-width: 896px) {
.sideNav {
  display:none !important;
}

}



@media only screen and (max-width: 480px) {
.sideNav {
  display:none;
}
}


/*
特定商取引法に基づく表記 *************/

.lower__title {
  text-align:center;
  font-size:1.8rem;
  padding:80px 0 48px;
  font-weight:600;
}

.lower__title:before {
  content: attr(data-en);
  font-size:1.1rem;
  color:#333;
  display:block;
  letter-spacing:2px;
}

.summary__item {
  margin-bottom:24px;
}

.summary__item dt {
  font-size:1.5rem;
  font-weight:bold;
  border-bottom:1px solid #ccc;
  margin-bottom:6px;
  padding-bottom:6px;
}

.summary__item dd {
  font-size:1.3rem;
}

.lower__body {
  padding:0 6%;
}



.normal__list {
  margin:0;
}


.normal__list li {
  position: relative;
  padding-left: 1.4rem;

}

.normal__list li::before {
  content: "・";
  position: absolute;
  left: 0;
  font-size: 1.4rem;
}


/*
エントリー受付中 *************/
.entryMessage {
  width:94%;
  position:fixed;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  text-align:center;
  display: none;
}

.entryMessage h2 {
  font-size:2.2rem;
  letter-spacing:2px;
  font-weight:500;
}









/*
アニメーション **********/

.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 1s ease, transform 1s ease;
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}


.fade-in-zoom {
    opacity: 0;
    transform: scale(0);
    transition: opacity 1s ease, transform 1s ease;
}

.fade-in-zoom.visible {
    opacity: 1;
    transform: scale(1);
}


.fade-in-R {
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 1s ease, transform 1s ease;
}

.fade-in-R.visible {
    opacity: 1;
    transform: translateX(0);
}


.fade-in-L {
    opacity: 0;
    transform: translateX(-30px);
    transition: opacity 1s ease, transform 1s ease;
}

.fade-in-L.visible {
    opacity: 1;
    transform: translateX(0);
}



/*右から左*/

@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 30s infinite linear both;
}
.scroll-infinity__item {
  width: calc(100vw / 10);
  margin-right:4px;
}


@media only screen and (max-width: 896px) {
.scroll-infinity__item {
  width: calc(100vw / 4);
}
}

@media only screen and (max-width: 480px) {
.scroll-infinity__item {
  width: calc(100vw / 3);
}
}


.scroll-infinity__item>img {
  width: 100%;
  border-radius:4px;
}

/*左から右*/
@keyframes infinity-scroll-right {
from {
  transform: translateX(-100%);
}
  to {
  transform: translateX(0%);
}
}
.scroll-infinity__list--right{
  animation :infinity-scroll-right 30s infinite linear both;
}








/*
padding parts **********/
.pb32 {
  padding-bottom:32px;
}



/*
margin parts **********/

.mtb8 {
  margin:8px 0;
}

.mtb4 {
  margin:4px 0;
}

.mb4 {
  margin-bottom:4px;
}

.mb8 {
  margin-bottom:8px;
}

.mb16 {
  margin-bottom:16px;
}

.mb24 {
  margin-bottom:24px;
}

.mb32 {
  margin-bottom:32px;
}

.mt16 {
  margin-top:16px;
}

.mt24 {
  margin-top:24px;
}

.mt32 {
  margin-top:32px;
}

.mt40 {
  margin-top:40px;
}








.grecaptcha-badge { visibility: hidden; }
/*
PC block --------------------------------------------*/
.i_p_b {display: block !important;}
.i_t_b {display: none !important;}
.i_s_b {display: none !important;}
.i_pt_b {display: block !important;}
.i_ts_b {display: none !important;}
.dis-none {display:none !important;}

