*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Noto Sans JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

img{
    display: block;
    width: 100%;
    object-fit: contain;
}

.wrapper{
    margin-inline: auto;
    max-width: 650px;
    overflow: hidden;
}
.hidden{
    display: block;
    height: 0 !important;
    opacity: 0 !important;
}

.mv,
.cta_area,
.voice_area{
    position: relative;
}
.mv .tel,
.cta_area .time_box,
.cta_area .cta_box,
.voice_slider_wrapper{
    position: absolute;
}

.mv .tel{
    width: 56%;
    top: 1%;
    right: 0;
}

.cta_area .time_box{
    width: 60%;
    top: 6%;
    right: 4%;
    text-align: center;
}
.cta_area .time_box .time{
    background:linear-gradient(
        to right,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,.8) 25%,
        rgba(255,255,255,1) 50%,
        rgba(255,255,255,8) 75%,
        rgba(255,255,255,0) 100%
    );
    color: #083399;
    margin-bottom: 5px;
    padding: 5px 0;
    line-height: 1;
    font-size: 18px;
    font-weight: 700;
}
.cta_area .time_box p:last-child{
    color: #fff;
    font-size: 18px;
    font-weight: 700;
}
.cta_area .cta_box{
    width: 94%;
    left: 3%;
    top: 30%;
}
.cta_area .cta_box .tel{
    margin-bottom: 5px;
}

.voice_slider_wrapper{
    width: 90%;
    left: 5%;
    top: 15%;
}
.voice_slider .slick-slide{
    margin-inline: 10px;
}
.voice_slider .slick-dots{
    bottom: -40px;
}
.voice_slider .slick-dots li button:before{
    font-size: 10px;
    color: #083399;
}
.voice_slider .slick-dots li.slick-active button:before{
    color: #083399;
}

.faq_area{
    background-color: #eeeeee;
    padding: 0 2% 40px;
}
.faq_list dt{
    background: linear-gradient(to right, #2a69c6 0%, #083399 100%);
    padding: 10px;
    position: relative;
    display: flex;
    align-items: center;
    color: #fff;
    font-weight: 700;
    margin-top: 10px;
}
.faq_list dt::before,
.faq_list dt::after{
    content: '';
    display: block;
    width: 20px;
    height: 3px;
    background-color: #fff;
    position: absolute;
    top: 45%;
    right: 4%;
    transition: all 0.3s;
}
.faq_list dt::before{
    transform: rotate(90deg);
}
.faq_list dt.active::before{
    transform: rotate(0deg);
}
.faq_list dt img{
    width: 40px;
    margin-right: 10px;
}
.faq_list dd{
    background-color: #fff;
    padding: 20px;
    display: none;
}

.follow{
    background: linear-gradient(to bottom, #2a69c6 0, #083399 100%);
    position: fixed;
    left: 0;
    bottom: 0;
    padding: 10px;
}
.follow .tel{
    width: 78%;
}
.follow .lady{
    position: fixed;
    width: 25%;
    right: 2%;
    bottom: 0;
}


footer{
    padding: 30px 0;
    background-color: #083399;
    text-align: center;
    margin-bottom: 80px;
}
footer a{
    color: #fff;
    text-decoration: none;
}

@media screen and (min-width: 769px){
    footer{
        margin-bottom: 120px;
    }
    .follow{
        left: 0;
        right: 0;
    }
    .follow .tel{
        width: 25%;
        margin-inline: auto;
    }
    .follow .lady{
        width: 10%;
        right: 29%;
    }
}


/*会社情報*/
body#profile{
background-color: #e8f7fc;
}
#profile .header{
    padding: 2% 3% 1% 3%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}
#profile .contents{
    max-width: 650px;
    padding: 1% 2%;
    overflow: hidden;
    margin: auto;
    /*box-shadow: 0 0 39px 0 #cbcbcb;*/
    background-color: #fff;
}
#profile h2 {
    font-size: 23px;
    margin: 10% 0 2% 0;
    text-align: center;
    font-weight: bold;
}
#profile h3 {
font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
    text-align: left;
    padding: 3% 0 1% 1%;
    color: #00b4ff;
    background-color: #fff;
    border-bottom: 2px solid #00b4ff;
    margin: 1% 0;
}
#profile table , #profile td, #profile th {
	border: 1px solid #c3c3c3;
	border-collapse: collapse;
}
#profile td, #profile th {
padding: 1%;
font-size: 14px;
}
#profile table{
    width: 100%;
}
#profile th {
	background: #e9e9e9;
    width: 30%;
text-align: left;
}
#profile td{
text-align: center;
}
#profile p{
    font-size: 14px;
}
#profile p.tyuu{
    font-size: 12px;
    text-align: right;
    margin-top: 1%;
    color: #c3c3c3;
}
#profile b {
    font-weight: bold;
}
#profile .profile-txt{
    margin: 5% 0;
}