﻿

/* TOP画像上メニュー */

.top-main-image {
    position: relative;
    width:100%;
    display: flex;
    padding: 0;
    margin: 0;
}

.m_test_inner {
    margin: 0 auto;
}

.main-text {
	width: auto;
	margin: auto;
	position: absolute;
	left: 3%;
	z-index: 1;
	bottom: 10%;
}

.main-text h1 {
    font-size: 59px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0px;
    overflow: hidden;
}
  
.main-text h1 span{
    overflow:hidden;
    color: #fff;
    display:block;
}

.main-text h1 span b{
    animation: 0.5s cubic-bezier(0, -0.05, 1, 1.03) 0s 1 normal none running fadein-top;
    transition: all 0s cubic-bezier(0, -0.05, 1, 1.03)0s;
    position: relative;
}
@keyframes fadein-top {
    from {
        opacity: 0;
        top:80px;
        
    }
    to {
        opacity: 1;
        top:0;
        
    }
}


.m_test_inner h5 {
    color: #fff;
    margin: 30px auto 0;
    line-height: 1.6;
    animation: 0.5s cubic-bezier(0, -0.05, 1, 1.03) 0.5s 1 normal forwards running fadein;
    /* transition: all 0s cubic-bezier(0, -0.05, 1, 1.03) 1.5s; */
    opacity: 0;
}
@keyframes fadein {
    0% {
        opacity: 0;
        
    }

    100% {
        opacity: 1;
        
    }
}


.slide_box {
    width: 100%;
    position: relative;
}

.slide_box ul {
    width: 100%;
}


.slide_box ul li.slick-slide {
    overflow: hidden;
}


.slide_box ul li.slick-slide:first-child img{
    animation: scale 3s;
	animation-iteration-count: 1;
    transition: 3s cubic-bezier(.215,.61,.355,1);
}

@keyframes scale {
    from {
        transform: scale(1);
    }
	
	to {
         transform: scale(1.05);
    }
}

.slide_box ul li.slick-slide img {
  transform: scale(1);
  transition: 3s cubic-bezier(.215,.61,.355,1);
}
.slide_box ul li.slick-slide.slick-current img {
  transform: scale(1.05);
  transition: 3s cubic-bezier(.215,.61,.355,1);
}

.slide_box ul li:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: hsl(0deg 0% 0% / 15%);
    z-index: 1;
}

main {
    display: block;
    padding: 0;
    position:relative;
}






/*greeting =============== */
section {
    margin: 100px auto 0;
}

.greeting-box, .office-box,.recruit-box,.contact-box,.access-box {
    max-width: 1100px;
    margin: auto;
    width: 90%;
}

.greeting-box {
    position: relative;
    padding: 70px 0 60px;
    width: 100%;
}

.greeting-box:before {
    content: "";
    background: #f2f7fa;
    width: 65%;
    height: 100%;
    position: absolute;
    z-index: -1;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
}

.greeting_wrap {
    margin: 60px 0 0 0;
    display: flex;
    width: 90%;
}


.greeting_wrap figure {
    width: 60%;
}


.greeting_t_wrap {
    width: 33%;
    margin: 0 0 0 7%;
}

.greeting_text p {
    margin: 20px auto 30px;
}


.greeting_text .name {
    text-align: right;
    font-weight: 700;
}

.greeting_text .name p{
    margin:0;
}

.greeting_text .name p small{
    font-size:13px;
}



/*office =============== */
.office_wrap {
    margin: 60px auto 0;
}

ul.list li dl {
    display: flex;
    padding: 8px 0;
}

ul.list li dl dt {
    width: 30%;
    background: #f2f7fa;
    padding: 10px;
    text-align: center;
    margin: 0 3% 0 0;
    justify-content: center;
    align-items: center;
    display: flex;
}

ul.list li dl dd {
    padding: 10px;
    width: 67%;
}

ul.list li {
    width: 100%;
    border-bottom: 1px solid #e2ebf0;
}

ul.list li:first-child {
    border-top: 1px solid #e2ebf0;
}

ul.list li dl dd p a {
    color: #20a8d6;
}

/* 中央イメージ============= */
.middle_bg {
    margin: 100px auto 0;
}


.parallax {
    min-height: 450px;
    background-position: center top;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-image: url(../imgs/index/middle.jpg);

}

/*recruit =============== */

section.recruit{
    background: #f2f7fa;
    margin: 0 auto;
}

.recruit-box,.access-box {
    padding: 80px 0;
}

.recruit_wrap {
    margin: 60px auto 0;
}

.recruit_wrap ul.list li dl dt {
    background: #fefefe;
}

.list-box-inner small {
    text-align: right;
    font-size: 14px;
    display: block;
    margin: 0 0 5px 0;
    color: #454545;
}

/*contact =============== */
.contact_wrap {
    margin: 60px auto 0;
}

.contact_tel {
    margin: 30px auto 0;
    display: flex;
    max-width: 100%;
    width: 65%;
    padding: 30px 2%;
    align-items: center;
    /* border: 4px solid #e6e6e6; */
    box-shadow: -3px -3px 16px hsl(0deg 0% 100% / 22%), 3px 3px 16px hsl(190deg 53% 34% / 14%);
}

.contact_tel .tel a {
    color: #20a8d6;
}

.contact_tel .tel {
    width: 90%;
    text-align: center;
    margin: auto;
    max-width: 310px;
}

.contact_tel .tel b {
    font-size: 49px;
    font-weight: 500;
    font-family: 'Barlow Condensed', sans-serif;
    line-height: 1.3;
}

.contact_tel .office b {
    font-size: 18px;
    line-height: 1.8;
    margin: 0 auto 10px;
    display: block;
}

.contact_tel .tel p:nth-child(3) {
    border-top: 1px solid #20a8d6;
}

div#kiyaku {
    display: flex;
    align-items: center;
    margin: 30px auto 0;
}

.formbox article.privacy {
    display: block !important;
    margin: 60px auto 30px;
}

section#yakkan{
    margin: 0;
	padding: 100px 0 0;
}

section .yakkanbox {
	border: 1px solid #e2ebf0;
	padding: 50px;
	box-sizing: border-box;
	overflow-y: scroll;
	height: 400px;
}

p.y-p {
    margin: 10px auto 40px;
}

.indent {
    text-indent: 18px;
}

p.y-p.indent {
    margin: 0 auto 10px;
}

p.y-p.y-first {
    margin: 10px auto 10px;
}

/*access =============== */

section.access {
    background: #f2f7fa;
    margin: 80px auto 0;
}

.access_wrap {
    margin: 0 auto 40px;
    display: flex;
    padding: 0;
}

.access_text {
    width: 23%;
    margin: 0 7% 0 0;
    position: relative;
}

.access_text_wrap {
    position: absolute;
    background: #fff;
    padding: 30px;
    bottom: -40px;
    width: 380px;
    box-shadow: -3px -3px 16px hsl(0deg 0% 100% / 22%), 3px 3px 16px hsl(190deg 53% 34% / 14%);
}


.map {
    width: 70%;
}

.access_text .tel {
    margin: 15px auto 0;
}

.access_text .tel:last-child {
    margin: 30px auto 0;
}

.tel a {
    color: #222;
}


@media (max-width: 1449px) {
/*TOP画像上メニュー=============== */


}

@media (max-width: 1399px) {
/*TOP画像上メニュー=============== */



}



@media (max-width: 1200px) {
/*TOP画像上メニュー=============== */

.main-text h1 {
    font-size: 4.5vw;
}

.slide_box:before{
    width: 241px;
    height: 144px;
}

.slide_box:after{
    width: 400px;
    height: 138px;
}

/*access=============== */
.access_text {
    width: 30%;
}


}
@media (max-width: 1023px) {
/*TOP画像上メニュー=============== */

.main-text h1 {
    font-size: 4vw;
}

/*about=============== */
.belief_box{width: 110px;height: 110px;margin: 0 2% 0 0;}

.bb p {
    font-size: 13px;
}

.belief_box:nth-child(-n+2):after {
    width: 50px;
    height: 25px;
    right: -31px;
}

}

@media (max-width: 991px) {
/*TOP画像上メニュー=============== */
.slide_box.pc {
    width: 100%;
}


/*greeting=============== */
.greeting_wrap {
    width: 100%;
}

.greeting_wrap figure {
    width: 50%;
}

.greeting_t_wrap {
    width: 38%;
    margin: 0 5% 0 7%;
}

/*access=============== */
.access_text_wrap {
    width: 140%;
}


}

@media (max-width: 767px) {

/* TOP画像上メニュー============== */


.slide_box.pc{
    display:none !important;

}

.slide_box.sp{
    width:100%;
}

.slide_box ul {
    width: 100%;
}

.slide_box.sp ul li{
	background: url("../imgs/index/slide01_sp.jpg") no-repeat top;
	background-size:110%;
}

.slide_box.sp ul li:nth-child(2){
	background: url("../imgs/index/slide02_sp.jpg") no-repeat top;
	background-size:110%;
}

.slide_box.sp ul li:nth-child(3){
	background: url("../imgs/index/slide03_sp.jpg") no-repeat top;
	background-size:110%;
}


.slide_box:after {
    width: 250px;
    height: 90px;
}

.slide_box:before {
    width: 150px;
    height: 89px;
}

.main-text h1 {
    font-size: 26px;
    color: #fff;
}

.m_test_inner h5 {





    font-size: 13px;
    margin: 10px auto 0;
}

.main-text {
    bottom: 8%;
}

.main-text p {
    color: #fff;
}

.slide_box ul li img {
    border-radius: 15px;
}


.contact-box {
    padding: 0;
}

section.greeting, section.recruit{
    margin: 0 auto;
}


.greeting_wrap,.recruit_wrap {
    margin: 30px auto 0;
}

section,section.access,.middle_bg {
    margin: 60px auto 0;
}

section#greeting {
    margin: 40px auto 0;
}

.recruit-box, .access-box {
    padding: 60px 0;
}

/* greeting============== */
.profile_text {
    flex-wrap: wrap;
}

.profile_text p {
    width: 100%;
    margin: 0 auto 20px;
    font-size: 14px;
}

.greeting_wrap {
    display: block;
}

.greeting_wrap figure {
    width: 100%;
}

.greeting_t_wrap {
    width: 100%;
    margin: 20px auto 0;
    padding: 0 5%;
}

.greeting-box:before {
    right: inherit;
    width: 90%;
}

#greeting h2 {
    margin: 0 0 0 5%;
}

.greeting-box {
    padding: 30px 0;
}

/* office============== */
.office_wrap {
    margin: 30px auto 0;
}

ul.list li dl {
    flex-wrap: wrap;
    padding: 10px 0 800;
}

ul.list li dl dt {
    width: 100%;
    padding: 5px;
    margin: 0;
    text-align: left;
}

ul.list li dl dd {
    width: 100%;
    padding: 5px;
}

ul.list li:first-child {
    border-top: none;
}

ul.list li dl dt p {
    display: block;
    width: 100%;
}

/* middle============== */
.parallax {
    background-attachment: inherit;
    min-height: 190px;
}

/* contact============== */

.contact_wrap {
    margin: 30px auto 0;
}

.contact_wrap > p{
    text-align:left;
}

.contact_tel {
    flex-wrap: wrap;
    padding: 20px;
    width: 100%;
}

.contact_tel .office {
    width: 100%;
    margin: 0 auto 0;
}

.contact_tel .tel {
    width: 100%;
    margin: 10px auto 0;
}

.contact_tel .office b {
    font-size: 16px;
    text-align: center;
}

.contact_tel .tel b {
    font-size: 24px;
}

/**/
div#kiyaku {
    width: 100%;
}

section .yakkanbox {
    padding: 20px;
}


/* access============== */
.access_wrap {
    flex-wrap: wrap;
    margin: 0 auto;
}

.access_text_wrap {
    width: 100%;
    position: relative;
    bottom: 0;
    margin: 30px auto 0;
    padding: 20px;
}

.access_text {
    width: 100%;
    margin: 0 auto 30px;
}

.map {
    width: 100%;
}

	
}
@media (max-width: 500px) {



}

@media (max-width: 350px) {


}