@charset "utf-8";
/*------------------------------------------------------------
共通
------------------------------------------------------------*/

*,
*:before,
*:after {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

/*共通*/
.bg_gray{
background-color:#ededed;
}
.fcR{
    color:#df1f00;
}
.fcB{
    color:#0461ca;
}
.fsS{
    font-size: 13px;
}
.fsSS {
    font-size: .6em;
    line-height: 1.3;
}
.fsL{
    font-size: 1.3em;
}
.taC {
    text-align: center;
}
.taR {
    text-align: right;
}
.taL {
    text-align: left;
}
.fwB {
  font-weight: bold;
}
.marker {
    background:linear-gradient(transparent 60%, #ff6 60%);
    color:#000;
}
.red {
    color: #f10205;
  font-weight: bold;
}
.pc{
    display: block;
}
.sp{
    display: none;
}
@media screen and (max-width:640px) {
    .pc{
    display: none;
}
.sp{
    display: block;
}
}

/*------------------------------------------------------------
レイアウト
------------------------------------------------------------*/

.wrapper {
    margin: 3% 3% 0;
}
p {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.5;
  }
    p {
    font-size: 18px;
    margin-bottom: 10px;
    line-height: 1.5;
  }
/* 光らせるためのstyle */
.shine{
  position: relative;
  overflow: hidden;
  display:inline-block;
    border-radius: 100px;
}
/* 光の疑似要素 */
.shine::before{
    content: '';
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: shine 3s ease-in-out infinite;
    position: absolute;
    top: -180px;
    left: 0;
    opacity: 0;
    transform: rotate(45deg);
}
/* 光の動き */
@keyframes shine{
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}


/*プライバシーポリシー*/
.privacy-policy {
    text-align: center;
    font-size: 0.8em;
}

#privacy h2 {
    margin: 0 auto;
    text-align: center;
}
div#privacy .content-main {
    background: #faf1d7;
    padding: 30px 0;
}
#privacy .inner {
    margin: 0 auto;
    padding: 0 3%;
    overflow-wrap: break-word;
}
#privacy .inner dl{
    font-size: inherit;
    width: 100%;
    font-weight: normal;
    text-align: left;
}
#privacy .inner dt{
    color: #222;
    font-weight: bold;
    margin-bottom: 5px;
}
#privacy .inner dd{
    margin: 0 auto;
}
.cta {
    background-color: #ffcc01;
    padding: 11% 0;
}
.cta_top {
    background-color: #ffcc01;
    padding: 7% 0 9%;
}
.cta2 {
    background-color: #ffcc01;
    padding: 0% 0 8%;
}
.cta3 {
    background-image: url(../img/bg01.webp);
    background-size: cover;
    padding: 0 0 12%;
}
.cta_inner01 {
    width: 94%;
    margin: auto;
    position: relative;
}
.tel_btn_ab {
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    width: 95%;
    top: 34%;
    filter: drop-shadow(0px 3px 5px rgba(0, 0, 0, 0.3));
}
.cta_inner02 {
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    width: 95%;
    top: 72%;
    display: flex;
    justify-content: space-between;
    filter: drop-shadow(0px 3px 5px rgba(0, 0, 0, 0.3));
}
.mail_btn_ab{
    width: 100%;
}
.mail_btn_ab02{
    width: 60%;
}
.voices h2 {
    width: 100%;
    margin: auto;
    padding: 12% 0 0;
}
.voices {
    background-image: url(../img/bg01.webp);
    background-size: cover;
    padding: 0 0 12%;
}
.voices p img {
    width: 80%;
    margin: 10% auto 0;
    display: block;
}
.slider{
    margin: auto;
    margin-top: 25px;
    width: 100%;
}
.slider img {
    display: block;
    margin: 30px auto 10px;
    padding: 0 30px;
    filter: drop-shadow(0px 7px 5px rgba(0, 0, 0, 0.3));
}
.slick-dots li button:before {
    opacity: 1;
    color: #e5e5e5;
}
.area {
    position: relative;
}
.saitama,.tokyo,.kanagawa,.chiba {
    position: absolute;
    background: #000;
    color: #f0ff00;
    padding: 4px 7px;
    border-radius: 5px;
    font-size: clamp(11px, 2vw, 17px);
	-webkit-animation:blink 0.8s ease-in-out infinite alternate;
    -moz-animation:blink 0.8s ease-in-out infinite alternate;
    animation:blink 0.8s ease-in-out infinite alternate;
}
p.saitama {
    top: 63.35%;
    left: 52%;
}
p.tokyo {
    top: 70.3%;
    left: 55%;
}
p.kanagawa {
    top: 76%;
    left: 53%;
}
p.chiba {
    top: 72%;
    left: 73%;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
.qa {
    background-color: #fff3c1;
    padding: 0 0 12%;
}
.qa_inner {
    width: 85%;
    margin: auto;
    padding: 8% 0 2%;
}
.qa h2 {
    width: 100%;
    margin: auto;
    padding: 12% 0 0;
}
.acd-check{
    display: none;
}
.acd-label {
    background: #000;
    color: #fff;
    display: block;
    margin-bottom: 15px;
    padding: 15px 15px 15px 44px;
    position: relative;
    font-weight: bold;
    border-radius: 10px;
}
.acd-label:before {
    content: 'Q';
    display: block;
    position: absolute;
    left: 2%;
    top: 50%;
    font-size: 26px;
    transform: translateY(-50%);
}
.acd-label:after {
    box-sizing: border-box;
    content: '▼';
    display: block;
    position: absolute;
    right: 3%;
    top: 50%;
    font-size: 14px;
    transform: translateY(-50%);
}
.acd-content{
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: '▲';
}
.acd-check:checked + .acd-label + .acd-content{
    opacity: 1;
    padding: 15px;
    visibility: visible;
    margin-bottom: 25px;
    background: #fff;
    height: auto;
    border-radius: 10px;
}
.acd-content p {
    margin: 0;
}
.form{
    width: 95%;
    max-width: 1200px;
}
.form_tbl table th,
.form_tbl table td{
    display: inline-block;
    vertical-align: top;
    margin-bottom: 20px;
}
.form_tbl table th{
    width: 35%;
    text-align: right;
    padding-right: 15px;
    font-size: 18px;
}
.form_tbl table th .must{
    background-color: #f91f00;
    color: #fff;
    font-weight: bold;
    padding: 4px 6px 4px;
    margin-left: 10px;
    font-size: 14px;
}
.form_tbl table td{
    width: 65%;
}
input,textarea {
  -webkit-appearance: none;
}
.form_tbl table td input,
.form_tbl table td textarea{
    width: 100%;
    border: 1px solid #000;
    padding: 10px 20px;
}
.form_tbl table td textarea{
    resize: vertical;
}
.submitbtn{
    display: block;
    text-align: center;
    margin: 0 0 30px;
}
.submitbtn input{
    width: 90%;
    max-width: 300px;
    margin: 10px auto 0;
    background-color: #f91f00;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
    text-align: center;
    border: none !important;
    padding: 10px 0;
    border-radius: 50px;
    cursor : pointer;
}
.toiawase h2 {
    width: 55%;
    margin: 0 auto 0;
}
.toiawase {
    background: #fff3c1;
    padding: 11% 0;
}
.form_tbl {
    background: #fff;
    width: 94%;
    margin: 45px auto;
    padding: 35px 20px 35px 15px;
    border-radius: 15px;
}
.form_tbl table {
    width: 100%;
}

/*-------------フッター-------------*/
footer {
    background: #000000;
    color: #fff;
    text-align: center;
    padding: 30px 0 260px;
}
footer p {
    font-size: 14px;
}
footer p a {
    color: #fff!important;
}

.confirmation {
    background: #fff3c1;
    margin: 0;
    padding: 10% 0;
}
.confirmation h1 {
    text-align: center;
    margin-top: 14px;
}
p.backbtn {
    width: fit-content;
    padding: 10px 20px;
    background: #F44336;
    border-radius: 50px;
    margin: 30px auto;
}
.backbtn a{
    color: #fff!important;
}
.tuizyuu p {
    text-align: center;
    font-weight: bold;
    font-size: 16px;
    color: #fff;
    background: #ff5a00;
    margin: 0;
    padding: 3px 0;
}
.tuizyuu_inner {
    display: flex;
    padding: 12px 8px 9px;
    background-color: #0000006b;
    justify-content: center;
}
.tuizyuu_inner a:nth-child(1) ,.tuizyuu_inner a:nth-child(2)  {
    margin-right: 6px;
}
.tuizyuu {
    max-width: 700px;
    width:100%;
    position: fixed;
    bottom: 0;
    
    z-index: 99;
}
@media screen and (max-width:640px) {
.qa_inner {
    width: 93%;
    padding: 7% 0 2%;
}
p.saitama {
    left: 50%;
}
p.tokyo {
    left: 53%;
}
p.kanagawa {
    left: 51%;
}
p.chiba {
    left: 71%;
}
.acd-label:before {
    left: 3%;
    font-size: 26px;
}
.acd-label {
    margin-bottom: 11px;
    padding: 13px 32px 13px 42px;
}
.acd-label:after {
    font-size: 12px;
}
.acd-check:checked + .acd-label + .acd-content {
    margin-bottom: 15px;
}
.acd-content p {
    font-size: 16px;
}
    .form_tbl table th,
    .form_tbl table td{
        width: 100%;
    margin-bottom: 12px;
    }
    .form_tbl table th{
        text-align: left;
        margin-bottom: 4px;
        font-size: 18px;
    }
    .form_tbl table th .must{
        font-size: 10px;
    }
    .toiawase {
    padding: 19% 0;
}
    .toiawase h2 {
    width: 64%;
}
.form_tbl {
    margin: 30px auto;
}
footer {
    padding: 30px 0 160px;
}
.mail_btn_ab02{
    width: auto;
}
}