.sp440,
.sp360,
.desk{display: none;}
@media screen and (min-width: 751px) {
	a[href^="tel:"]{pointer-events: none;}
	.sp{display:none}
	/* nav */
	#index .nav_list>li>a, #index .nav_list>li>.sub_btn {color: #fff;}
	#index header.active .nav_list>li>a, #index header.active .nav_list>li>.sub_btn {color: var(--txt);}
	#index .h_inner {box-shadow:none;transition: all 0.3s;}
	#index header.active .h_inner { box-shadow: 0px 0 16px 0px rgba(0, 0, 0, 0.15);}
	.mv_right .btn {    margin-bottom: 145px;margin-left: 25px;}
	.mv_right .btn.btn_w a {width: 410px;height: 88px;border-width: 3px;font-size: 28px;}
	.mv_right .btn a::before, .mv_right .btn a::after {width: 40px;height: 40px;top: calc(50% - 20px);right: 15px;}
	.hamburger{display:none;}
	nav {margin: 0 0 0 auto;}
	.nav_list{display: flex;}
	.nav_list>li:not(:first-child) {margin-left: 31px;}
	.nav_list>li>a,
	.nav_list>li>.sub_btn{display: flex;justify-content: center;position:relative;font-weight: 500;text-align: center;font-size: 16px;letter-spacing: 0;padding: 0;}
	.nav_list>li>a::before ,	.nav_list>li>.sub_btn::before{content: '';position: absolute;width: 0;height: 1px;background: var(--mcolor);left: 0;bottom: 0;transition: all 0.3s;}
	.nav_list>li.parent{position:relative;}
	.nav_list>li.parent>.sub_btn{cursor:default}

	.sub{position:absolute;z-index:1;transition:all .3s;opacity:0;visibility:hidden;border-top:solid 1px #FFF;width:300px;top:100%;left:0}
	.sub ul li a{font-size:16px;display:flex;width:100%;height:60px;align-items:center;letter-spacing:.001em;padding:5px 35px;margin:0 auto;border-bottom:solid 1px #FFF;color:#fff;background:var(--mcolor);}

	.sec01 .inner{width: calc(100% - 620px);padding: 0;margin-left: auto;}

	.sec02 .ttl .sm{margin-bottom: 26px;}
	.sec02 .sec02_content .btn a{letter-spacing: -0.04em;}
	.sec02 .sec02_content .img{position: absolute;top: 185px;right: -90px;margin-bottom: 0;}
	.sec04_content .ttl{padding-left: 15px;}

	.ft_bnn li:not(:last-child){margin-right: 30px;}

	.sec03_list li.bg3{padding-right: 10px;}
	.sec03_list li.bg3 .txt{letter-spacing: 0.04em;}
	.sec04_content{padding-right: 15px;position: relative;z-index: 2;}

	/* HOVER */
	.ft_link ul li > a:hover {text-decoration: underline;}
	.nav_list>li:not(.out):hover>a::before, .nav_list>li:not(.out):hover>.sub_btn::before{width: 100%;}
	.parent:hover .sub{opacity:1;transform:translate(0,0);visibility:visible}
	.sub a:hover{background-color:var(--scolor);text-decoration: none;}
	.ft_bnn li a:hover,
	.to_top img:hover{opacity:.8}
	.btn_yel a:hover{opacity: 1;background: var(--scolor);color: #fff;}

	.ft_bnn .bnn:hover::before{background: rgba(0, 0, 0, 0.2)}
	
	.h_btn .link a:hover {background: var(--mcolor);color: #fff;}
	.h_btn .link.link_on a:hover {background:  var(--scolor);color: #fff;border-color: var(--scolor)}

	.btn a:hover{background: var(--scolor);color: #fff;}
	.btn a:hover::before{transform: scale(1);opacity: 1;}
	.btn a:hover::after{transform: scale(0);opacity: 0;}

	.mv .circle:hover{filter: hue-rotate(45deg);}
	.sec01 .item:hover .img img{transform: scale(1.1);}
	.sec01 .item:hover .big{color: var(--mcolor);}
	.sec03_list li:hover{opacity: 0.7;}

	.sec01 .slick-prev:hover{background: url('../images/ic_prev_h.png') center /cover no-repeat;}
	.sec01 .slick-next:hover{background: url('../images/ic_next_h.png') center /cover no-repeat;}
	.mv_right .mv_news_load dl dd a:hover .date, .mv_right .mv_news_load dl dd a:hover .title {text-decoration: underline;}
}

@media screen and (min-width: 751px) and (max-width: 1600px) {
	.h_box {width: calc(100% - 30px);}
	.h_inner {padding: 18px;}
	.nav_list>li:not(:first-child) {margin-left: 15px;}
	.h_btn {margin-left: 5px;}
	#logo {width: 160px;}

	#index .inner{padding-left: 30px;padding-right: 30px;}

	.mv{height:  calc(100vh);overflow: hidden;}
	.mv_txt .big{font-size: 100px;}
	.mv_slider .slide_item{height: calc(100vh);min-height: 600px;}
	.mv .circle{bottom: 50px;right: 50px;width: 188px;}
	.mv .circle::before{width: 188px;height: 184px;}


	.sec01{position: relative;}
	.sec01 .inner{position: unset;width: 1200px;}
	.sec01 .inner::before{top: 230px;left: 15px;zoom:0.8}

	#index .sec03 .inner{padding-left: 15px;padding-right: 15px}
	#index .sec04_content .inner{padding-left: 0;padding-right: 0;}

	.sec04_content{width: 1020px;margin:0 auto;padding-right: 0;}
	.sec04_content .ttl{padding-left: 0;}
	.sec04_content .ttl .big{font-size: 48px;}
	.sec04_des .fs-xxl{font-size: 28px;}
	.sec04 .slogan{right: 120px;zoom:0.7;top: -35px;}
	.sec04_slide_1{width: 15vw;background: url('../images/sec04_img1.jpg') center /contain repeat-y;}
	.sec04_slide_2{width: 15vw;background: url('../images/sec04_img2.jpg') center /contain repeat-y;}
	.mv_right .mv_news {width: 760px; padding: 10px 25px 10px 25px;}
	.mv_right {
    width: 805px; }
	.mv_tt span { font-size: 72px;left: -110px;}
	.mv_tt span.active:before {width: 720px;}
	.mv_tt span.line1 { width: 640px;}
	.mv_txt p.mv_txt {font-size: 21px;padding-left: 0;}
	.mv_txt p.mv_tt {

    margin-bottom: 40px;
}
	.mv_txt .inner {
    padding-bottom: 0;
}
	.mv_right .btn.btn_w a {
    width: 320px;
    height: 70px;
    border-width:2px;
    font-size: 22px;
}
	.mv_right .btn {
    margin-bottom: 60px;
}
}

@media screen and (min-width: 751px) and (max-width: 1460px) {
	.desk{display: block;}
	.h_btn .link {margin-left: 15px;}
	#logo {width: 140px;}
	.nav_list>li:not(:first-child) {margin-left: 30px;}
	.nav_list>li{padding-top: 5px;}
	.nav_list>li.blank{padding-top: 0;}
	.nav_list>li.blank a{text-align: left;line-height: 1.5em;}
	.nav_list li.blank a::after{top: 10px;}

	#index .mv_txt .inner{padding-left: 30px;}

	.sec02 .sec02_content{width: calc(100% - 450px);}
	.sec02 .sec02_content .img{right: 30px;}

	.sec04_content .ttl .big{font-size: 48px;}
	.sec04_des{width: 830px;}
	.sec04_des .fs-xxl{font-size: 28px;}
	.mv_right .mv_news_ttl {

    margin-right: 30px;
}
	    .mv_right .mv_news {
        width: 720px;
    }
	    .mv_right {
        width: 765px;
    }
	    .mv_right .btn {
       
        margin-left: 65px;
    }
}

@media screen and (min-width: 751px) and (max-width: 1300px) {
	#index .sec03 .inner{padding-left: 30px;padding-right: 30px;}

	.sec03_list li{width: 378px;}
	.sec03_list li.bg1{width: 789px;}
	.sec03_list li.bg3{padding-left: 10px;}
	.sec03_list li.bg4{padding: 30px 15px 37px;}
}

/* screen-min:750px */
@media screen and (max-width: 750px) {
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {font-size: 140%;}
p,
dd,
dt,
li,
th,
td,
address{line-height: 2em;}
img{max-width:100%; height: auto;}
.swap img{width:auto;}

#wrapper,
header,
main,
footer,
.inner{width:100%!important;min-width:unset!important}

.pc{display:none!important}
.inner {padding: 0 20px;}
/* NAV */
nav{position:fixed;top:-5px;left:-5px;width:100vw;height:100vh;overflow:auto;padding:86px 20px 30px;display:none;}
nav::after {content: '';position: fixed;width: 100vw;height: 100vh;background: rgba(255, 255, 255, 0.95);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);top: -5px;left: -5px;z-index: -2;pointer-events: none;}
nav .inner{padding: 0;}

.nav_list{flex-direction:column;margin-bottom: 32px;}
.nav_list ul,
.nav_list li{width:100%}
.nav_list .parent .sub ul li{background: #fff;}
.nav_list .parent .sub ul li:not(:last-child){border-bottom:1px solid var(--mcolor)}
.nav_list .sub_btn,
.nav_list a{display:block;padding:14px 0 13px;color:#333;font-size:14px;font-weight:500;border-bottom:solid 1px #E6E6E6;background: url("../images/nav_arr.svg") no-repeat right center;position: relative;}
.nav_list li.blank a {background: transparent;}
.nav_list li.blank a::after {right: -5px;position: absolute;top: calc(50% - 12px);}

.nav_list .sub_btn{position:relative;padding-left:15px}
.nav_list .sub_btn::before,
.nav_list .sub_btn::after{content:"";position:absolute;width: 16px; height: 2px; background-color: #FFF;top:calc(50% - 1px);right:10px; transition: all 0.3s;}
.nav_list .sub_btn::after{transform: rotate(-90deg);}
.nav_list .sub_btn.open::after{transform: rotate(0);}
.sub{display:none}
.sub ul:not(:last-child){margin-bottom:15px}
.sub a{color:var(--mcolor);border-bottom:none;}
.hamburger{font:inherit;display:flex;justify-content: center;align-items: center;padding: 0;overflow:visible;margin:0;cursor:pointer;transition-timing-function:linear;transition-duration:.15s;transition-property:opacity,filter;text-transform:none;color:inherit;border:0;z-index: 101;width: 42px;height: 42px;border: 2px solid var(--mcolor);border-radius: 50%;}
.h_btn:not(.sp) {order: 0;margin: 0 8px 0 auto;position: relative;z-index: 99;}
.h_btn:not(.sp) .link {margin: 0;}
.h_btn:not(.sp) .link:first-child{display: none;}
.h_btn:not(.sp) .link a {width: 136px;height: 42px;font-size: 16px;letter-spacing: 0.04em;}
/*=====================================================
						C U S T O M
======================================================*/

/*============ HEADER ============*/
#logo{width: 118px;position: relative;z-index: 99;}
.h_box{height:65px;width: calc(100% - 10px);top: 5px;}
.h_inner{padding: 0 16px;z-index: 2;}
#index .h_inner{box-shadow: none;}
#index header.active .h_inner{box-shadow: 0px 0 16px 0px rgba(0,0,0,0.15);}	
.h_btn.sp {flex-direction: column-reverse;margin: 0;}
nav .h_btn .link a {width: 100%;height: 55px;text-align: left;justify-content: flex-start;font-size: 16px;padding: 5px 26px;letter-spacing: 0.04em;position: relative;}
nav .h_btn .link {margin: 0 auto 16px;width: 100%;max-width: 335px;}
nav .h_btn .link a::before{width: 8px;height: 8px;background: var(--mcolor);position: absolute;top: calc(50% - 5px); right: 23px;content: '';z-index: 1;border-radius: 50%;}
nav .h_btn .link a::after{width: 30px;height: 30px;background: var(--mcolor);opacity: 0.2;position: absolute;top: calc(50% - 16px);right: 12px;content:'';z-index: 0;border-radius: 50%;}
nav .h_btn .link.link_on a::before, nav .h_btn .link.link_on a::after {background: #fff;}
/*============  MAIN  ============*/
main{}
.ttl .sm{font-size: 12px;padding-left: 20px;margin-bottom: 22px;}
.ttl .sm::before{width: 12px;height: 2px;}
.ttl .big{letter-spacing: 0.04em;font-size: 24px;display: block;}
.btn a{width: 220px;height: 51px;font-size: 14px;padding: 0 0 0px 28px;}

/* MV */
/*.mv_bg{background: linear-gradient(to right, var(--mcolor) 0%, var(--scolor) 50% , var(--scolor) 50% , #EBFF4A 100%);}*/
.mv_bg{background: none;}
.mv_slider{height: auto;max-height: 600px;aspect-ratio: 375/600;width: 100%;}
.mv_slider.slick-initialized{overflow: hidden;}
.mv_slider .slide_item{width: 100vw;min-height: 100vh;height:auto;aspect-ratio: 375/600;max-height: 600px;}
.mv_slider .slide_item .bg1{background: url('../images/mv1_sp.jpg') center /cover no-repeat;}
.mv_slider .slide_item .bg2{background: url('../images/mv2_sp.jpg') center /cover no-repeat;}
.mv_slider .slide_item .bg3{background: url('../images/mv3_sp.jpg') center /cover no-repeat;}
.mv_slider .slide_item .bg4{background: url('../images/mv4_sp.jpg') center /cover no-repeat;}
.mv_txt{top: 65%; left: 0;transform: translateY(-50%);padding-top: 0;}
.mv_txt .inner{padding: 0 0 0 15px;}
.mv_txt .big{font-size: 40px;padding-left: 10px;margin-bottom: 12px;}
.mv_txt p{font-size: 18px;line-height: 1.75em;letter-spacing: 0;left: 5px;}
.mv_txt p::first-line{position: relative;left: -5px;}
.mv .circle{width: 141px;bottom: 39px;right: 20px;}
.mv .circle::before{width: 100%;height: 100%;}
.progress{width: calc(100vw - 40px);top: -17px;}
.mv_tt span.line1 {width: 350px;}
.mv_tt span { font-size: 42px;padding-left: 55px;left: -45px;}
.mv_tt span.active:before {width: 410px;}
.mv_txt p.mv_txt {font-size: 21px;line-height: 1.3em;padding-left: 0;}
.mv_txt p.mv_tt {margin-bottom: 40px;}
.mv_right {width: calc(100% - 30px);bottom: 20px;left: 0;margin: 0 auto;}
.mv_right .btn.btn_w a {margin: 0 auto;}
.mv_right .mv_news {width: 100%;height: 85px;}
.mv_right .mv_news_ttl {font-size: 20px;margin-right: 20px;width: auto;}
.mv_right .mv_news {border-radius: 10px;padding: 10px 15px;}
.mv_right .mv_news_load dl a{flex-direction: column;align-items: flex-start;}
.mv_right .mv_news_load dl .news-info {margin-right: 0;}
.mv_right .mv_news_load dl dd {width: 100%;}
.mv_right .mv_news_load {width: calc(100% - 60px);padding-top: 8px;}
/*==================== SEC01 ===================*/
.sec01{padding: 72px 0 23px;}
.sec01 .inner{flex-direction: column;}
.sec01 .inner::before{top: -31px;left: inherit;right: -20px;height: auto;width: 210px;aspect-ratio: 194/163;}

.sec01_list{padding: 0;margin-top: 79px;}

.sec01 .slider{width: calc(100% + 20px);height: 334px;}
.sec01 .slick-arrow{width: 40px;height: 40px;top: -60px;}
.sec01 .slick-prev{left: inherit;right: 76px;}
.sec01 .slick-next{left: inherit;right: 20px;}

.sec01 .item{width: 295px;margin-right: 20px;padding-bottom: 50px;}
.sec01 .item .img{width: 100%;height: 196px;margin-bottom: 11px;}
.sec01 .item .note{margin-bottom: -1px;}
.sec01 .item .note .date{font-size: 12px;margin-right: 8px;}
.sec01 .item .note .cate{min-width: 76px;height: 16px;font-size: 10px;}
.sec01 .item .big{font-size: 14px;height:50px;text-overflow:ellipsis;overflow:hidden;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;white-space: pre-wrap;line-height: 1.8em;}

/*==================== SEC02 ===================*/
.sec02{}
.sec02 .ttl .big{font-size: 24px;}
.sec02::before{width: 600vw;top: 116px;background-size: auto 96px;height: 96px;}

.sec02 .sec02_content{margin-top: 40px;}
.sec02 .sec02_content p{letter-spacing: -0.05em;margin-bottom: 0;}
.sec02 .sec02_content p .f_sm{font-size: 9px;letter-spacing: 0;}
.sec02 .sec02_content .img{width: 211px;margin:6px auto 40px;}

/*==================== SEC03 ===================*/
.sec03{margin: 0 0 16px;}
.sec03_list{justify-content: center;flex-direction: column;align-items: center;}
.sec03_list li{height: 300px;width: 335px;padding: 30px 27px 32px;margin-bottom: 24px;max-width: 100%;border-radius: 0 20px 20px 0;}
.sec03_list li.bg1{background: url('../images/sec03_img_1sp.png') top left /cover no-repeat;width: 335px;height: 450px;}
.sec03_list li.bg2{background: url('../images/sec03_img_2sp.png') top left /cover no-repeat;height: 300px;}
.sec03_list li.bg3{background: url('../images/sec03_img_3sp.png') top left /cover no-repeat;}
.sec03_list li.bg4{background: url('../images/sec03_img_4sp.png') top left /cover no-repeat;}
.sec03_list li.bg5{background: url('../images/sec03_img_5sp.png') top left /cover no-repeat;}
.sec03_list li.bg5 .txt::before{background: url('../images/sec03_ic3.png') center /cover no-repeat;}

.sec03_list li .label{width: auto;height: auto;font-size: 18px;top: 2px;letter-spacing: 0.04em;}
.sec03_list li .label::after{width: 18px;height: 18px;margin-left: 5px;top: 2px;}
.sec03_list li .txt{font-size: 16px;}

.sec03_list li.icon{padding: 0;}
.sec03_list li.icon .txt{font-size: 24px;letter-spacing: 0.04em;padding-top: 3px;}
.sec03_list li.icon .txt::before{left: calc(50% - 23px);top: -71px;}
.sec03_list li.icon .txt::after{width: 40px;height: 40px;bottom: -71px;left: calc(50% - 19px);}

/*==================== SEC04 ===================*/
.sec04{padding: 0;height: auto;}
.sec04_slide_1{width: 400vw;height: 120px;background: url('../images/sec04_img1sp.jpg') center /contain repeat-x;animation: scrollLeft 60s linear infinite;position: relative;top: inherit;left: inherit;}
.sec04_slide_2{width: 400vw;height: 120px;background: url('../images/sec04_img2sp.jpg') center /contain repeat-x;animation: scrollRight 60s linear infinite;position: relative;top: inherit;left: inherit;bottom: inherit;}

.sec04_content{padding-top: 43px;margin-bottom: 40px;}
.sec04_content .ttl .sm{left: inherit;padding: 0;margin-bottom: 33px;}
.sec04_content .ttl .sm::before{width: 12px;left: calc(50% - 6px);bottom: -13px;}
.sec04_content .ttl .big{font-size: 32px;line-height: 1.4em;}

.sec04_des{margin-top: 39px;}
.sec04_des p{font-size: 14px;margin-bottom: 1.5em;}
.sec04_des .fs-xxl{font-size: 20px;margin-bottom: 13px;}
.sec04_des .btn{position: relative;bottom: inherit;right: inherit;margin-top: 34px;}
.sec04_des .btn a{}

/*============ FOOTER ============*/
footer{margin-bottom: 0;}
.ft_top {display: block;padding-bottom: 40px;margin-bottom: 39px;}
.ft_top_l .plus {font-size: 28px;margin-bottom: 22px;}
.ft_top_l p:not(.plus) {line-height: 1.7em;}
.ft_top_l {padding: 0;margin: 0 0 31px;}
.btn.btn_yel a {height: 73px;max-width: 100%;font-size: 22px;width: 335px;margin: 0 auto;padding-left: 36px;}
.btn.btn_yel a::before {width: 32px;height: 32px;right: 19px;top: calc(50% - 16px);}
.ft_bot {display: block;}
.ft_info {width: 100%;padding: 0;margin: 0 0 30px;}
.ft_info .f_logo img {width: 195px;}
.ft_content {padding: 42px 0 30px;}
.ft_link {display: block;margin: 0 0 25px;}
.ft_link ul li {margin-bottom: 8px;}
.ft_link ul:not(:last-child) {margin: 0 0 30px;}

/*   FOOTER BANNER */
.ft_bnn{justify-content: space-between;flex-wrap: wrap;}
.ft_bnn .bnn{width: 100%;aspect-ratio: 24/23}
.ft_bnn .bnn a {font-size: 24px;}
.ft_bnn .bnn a::after {width: 40px;height: 40px;}

/* sp contact */
.sp_contact{display:flex;justify-content:center;align-items:center;width:100%;height:50px;position:fixed;left:0;z-index:99; bottom:-55px;transition: all 0.3s;}
.sp_contact.show{bottom: 0;}
.sp_contact li{width:50%;height:100%;}
.sp_contact li a{width:100%;height:100%;display:flex;justify-content:center;align-items:center;color:#fff;font-size:14px;}
.sp_contact li a span{position:relative;padding-left:25px}
.sp_contact li a span::before{content:"";position:absolute;width:20px;height:20px;left:-5px;top:calc(50% - 10px)}
.sp_contact_tel{background-color:var(--mcolor)}
.sp_contact_tel a span::before{background:url('../images/ic_h_tel_wh.png') no-repeat center /20px}
.sp_contact_mail{background-color:var(--blue)}
.sp_contact_mail a span::before{background:url('../images/ic_h_mail.png') no-repeat center /20px;}

/* to top */
.to_top{width:40px;height:40px;right:10px}
.to_top a img{bottom:0;position:absolute}
.to_top::before{width:10px;height:10px;left:10px;top:10px}
.to_top::after{width:10px;height:10px;left:10px;top:20px}

#recruit .to_top,
#requirement .to_top,
#interview .to_top{bottom: 60px;}

/*============ END 750 ============ */
}

@media screen and (max-width: 440px) {
.sp440 {display: block !important;}
.pc440{display: none !important}
.ft_bnn li{width: 100%;}
.mv_txt p{font-size: 14px;}
.mv_tt span {font-size: 36px;line-height: 1.5;}
.mv_tt span.active:before {width: 350px;}
.mv_tt span.line1 {width: 310px;}
.mv_txt p.mv_txt {font-size: 17px;  }

}
/* screen-max: 360px */
@media screen and (max-width: 360px) {
	.sp360 {display: block;}
	.ft_top_l .plus {font-size: 24px;}
	.h_btn:not(.sp) .link a {width: 115px;}
	#logo {width: 100px;}
	.sec01 .item{width: 270px;}
	.ttl .big,
	.sec02 .ttl .big,
	.sec03_list li.icon .txt{font-size: 20px;}
	.sec03_list li{padding: 30px 20px;}
	.sec04_content .ttl .big{font-size: 24px;}
	.sec04_des .fs-xxl{font-size: 18px;}
	.mv_tt span {font-size: 26px; }
	.mv_txt p.mv_txt {font-size: 15px;}
	.mv_tt span.active:before { width: 275px;}
	.mv_tt span.line1 {width: 240px; }
	.mv_right .mv_news_ttl { font-size: 17px; margin-right: 10px;width: auto;}
	.mv_right .mv_news_load dl .news-info .date {font-size: 12px; margin-right: 8px;}
	.mv_right .mv_news_load dl .news-info .cate span {height: 17px; min-width: 54px;font-size: 10px;}
	.mv_right .mv_news_load dl .news-info .cate span:not(:last-child) { margin-right: 3px;}
	
}