.sp440, .sp360{display:none}

@media screen and (min-width: 751px) {
a[href^="tel:"]{pointer-events: none;}
.sp{display:none}
	.btn_contact a:hover, .cta_btn li a:not([target="_blank"]):hover {background: #fff;}
	.hamburger:hover .hamburger-box {background: var(--blue);}
	.nav_list>li>a:hover, .nav_list .sub li a:hover, .ft_link_list a:hover {text-decoration: none;}
	.btn a:hover {background-color: var(--mcolor);}
	.sec07 .btn a:hover {color: #fff;background-image: url("../images/ic_arr.svg");}
	.to_top:hover {opacity: 0.8;}
	
.nav_list>li.parent {background: rgba(255,255,255,0.3);padding: 17px 20px 20px;width: calc(100% - 40px);margin-top: 30px;}
}

@media screen and (min-width: 2500px){
.mv { height: 80vh; }
}
@media screen and (min-width: 751px) and (max-width: 1700px){
	.mv:after {width: calc(100% - 50px)}
	.sec08_top_img .img:nth-child(2) { margin-right: -100px; }
	.mv h2 { font-size: 80px; margin-bottom: 25px; }
	.mv_main {padding: 160px 0 140px;}
	.mv_txt { margin: 0 0 25px; font-size: 24px; }
	.mv_list li .ttl { font-size: 140%; height: 80px; }
	.mv .inner {padding: 0 30px;}
	.sec03_item_ttl { font-size: 34px; margin: 0 0 15px; }
	.sec03_item_img { height: 440px; width: 50%;}
	.sec03_item_main { height: 350px; width: 55%; margin-right: -5%; padding: 0 35px; }
	.sec03_item_note { width: 90px; height: 90px; font-size: 18px; }
	.sec03_item:nth-child(2n) .sec03_item_main { margin-left: -5%; padding: 0 35px 0 80px; }
	.sec03_item:nth-child(2n) { margin-bottom: 30px; }
	.sec03_item:nth-child(3) .sec03_item_main { padding-right: 35px; }
}
@media screen and (min-width: 751px) and (max-width: 1500px){
	.inner {padding-left: 30px;padding-right: 30px;}
	.sec08_top_img .img:nth-child(1) {width: 253px;}
	.sec08_top_img .img:nth-child(2) {width: 145px;margin: -5px -50px 25px auto;}
	.sec08_top_img .img:nth-child(3) {width: 195px;margin-left: 0;}
	.sec08_bottom_img { width: 195px; }
}
@media screen and (min-width: 751px) and (max-width: 1400px){
	#logo img {width: 340px;}
	#logo a { width: 400px; height: 100px; padding: 0; }
	.mv_main {padding: 120px 0;}
	.mv h2 { font-size: 65px; margin-bottom: 15px; }
	.mv_txt { margin: 0 0 20px; font-size: 20px; text-indent: -12px; }
	.mv_list li .num { font-size: 15px; width: 70px; height: 70px; }
	.mv_list li .ttl { font-size: 140%; height: 75px;}
	.mv_list li { font-size: 14px; width: 220px; }
	.sec01_item_txt { font-size: 19px; }
	.sec01_item_ttl { font-size: 24px; }
	.sec01_ttl { max-width: 1000px; font-size: 36px; padding: 20px 20px 25px; margin: -60px auto 30px; }
	.sec01_ttl:after { height: 60px; bottom: -45px; }
	.sec02_main:after { width: 420px; height: 492px; }
	.sec03_item_main { padding-right: 50px; }
	.sec03_item:nth-child(2n) .sec03_item_main {padding-left: 50px;}
	.sec03_item:nth-child(3) .sec03_item_info { width: 718px; }
	.cta_txt { font-size: 16px; }
	.cta_txt img { width: 260px; }
	.sec05_item {margin: 0 15px;}
	.sec05_list {margin: 0 -15px;}
	.sec05_item_main {padding-left: 20px;padding-right: 20px;}
	.sec08_top_img .img:nth-child(1) {width: 223px;}
	.sec08_top_img .img:nth-child(2) {width: 125px;margin: -5px -30px 25px auto;}
	.sec08_top_img .img:nth-child(3) {width: 165px;margin-left: 0;}
	.sec08_bottom_img { width: 165px; }
	.nav_main { padding: 100px 44px 20px 40px; }
	.nav_list { padding-top: 30px; }
	.nav_list>li.parent { padding: 10px 15px 15px; }
	.nav_list>li .sub_btn { margin: 0 0 5px; }
	.nav_list .sub { padding: 15px; }
	.hamburger-box { width: 50px; height: 50px; }
	.btn_contact a { height: 55px; }
	.btn_tel, .btn_contact { font-size: 15px; }
	.hamburger .txt { font-size: 13px; }
	.h_right { padding: 6px 10px; height: 85px; width: 550px; }
	.btn_tel a {font-size: 210%;}
	.sec03_item_txt { font-size: 15px; }
	.sec07:after { left: calc(50% + 340px); }
}
@media screen and (min-width: 751px) and (max-width: 1330px){
	.sec01_list {padding-left: 20px;padding-right: 20px;}
	.sec01_item { width: calc((100% - 20px) / 2);}
	.sec01_item_txt { font-size: 18px; }
	.sec02_main {padding-left: 40px;}
	.sec02_main:after { width: 380px; height: 444px; right: 15px; }
	.sec03_item_info { width: 680px; }
	.sec03_item_main { padding-right: 30px; }
	.sec03_item_ttl {font-size: 36px;}
	.sec03_item_txt { font-size: 15px; }
	.sec03_item:nth-child(3) .sec03_item_info { width: 680px; }
	.cta_ttl .note { left: 130px; padding: 0 17px; }
	.cta_ttl { font-size: 15px; }
	.sec05_item_note {font-size: 22px;}
	.sec07:after { left: calc(50% + 300px); }
	.sec08_top_img .img:nth-child(1) {width: 213px;}
	.sec08_top_img .img:nth-child(2) {width: 115px;margin: 15px 0px 25px auto;}
	.sec08_top_img .img:nth-child(3) {width: 155px;margin-left: 0;}
	.sec08_bottom_img { width: 145px; }
	.sec08 .btn_box .btn:not(:last-child) {margin-right: 40px;}
	.cta_right { width: 765px; }
	.cta_txt {font-size: 14px;}
	.cta_txt img { width: 230px; margin: -1px 3px 5px -3px; }
	.cta_btn li { width: 230px; }
	.cta_btn li a { height: 100px; font-size: 14px; }
	.sec03_item_txt { font-size: 14px; }
	#logo img { width: 290px; }
	#logo a { width: 330px; height: 90px; }
}

/* screen-min:750px */
@media screen and (max-width: 750px) {
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}

/*=====================================================
                      C U S T O M
======================================================*/

/*============ HEADER ============*/
	.h_right .btn_tel ,.h_right .btn_contact {display: none;}
	.h_right { width: auto; padding: 5px 10px;height: auto;border-bottom-left-radius: 10px;}
	#logo img {width: 230px;}
	#logo a {width: auto;height: 68px;padding: 10px;border-bottom-right-radius: 10px;}
	#logo {z-index: 99;}
	.hamburger-box { width: 40px; height: 40px; }
	.hamburger .txt {font-size: 12px;}
	.hamburger-inner, .hamburger-inner::after, .hamburger-inner::before {width: 18px;height: 2px;}
	.hamburger-inner {margin-left: -9px;margin-top: -1px;}
	.hamburger-inner::before { top: -6px; }
	.hamburger-inner::after { bottom: -6px; }
	.hamburger--3dxy.is_active .hamburger-inner::before { transform: translate3d(0, 6px, 0) rotate(45deg); }
	.hamburger--3dxy.is_active .hamburger-inner::after { transform: translate3d(0, -6px, 0) rotate(-45deg); }
	
	.nav_main { width: 100%; padding: 80px 15px 30px;overflow: auto;}
	.nav_list {flex-direction: column;padding-top: 0;border: none;overflow: visible;max-height: none;}
	.nav_list>li>a { display: block; text-decoration: none; padding: 10px 0;border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
	.nav_list>li .sub_btn {margin: 0;padding: 10px 0;border-bottom: 1px solid rgba(255, 255, 255, 0.2); position: relative;}
	.nav_list>li .sub_btn:before,.nav_list>li .sub_btn:after {content: '';position: absolute;width: 14px;height: 2px;background: #fff;right: 0;top: calc(50% - 1px);transition: all 0.3s;opacity: 0.6;}
	.nav_list>li .sub_btn:after {transform: rotate(90deg);}
	.nav_list>li .sub_btn.open:after {transform: rotate(0deg);}
	.nav_list>li:nth-child(1) {margin: 0;}
	.nav_list>li {width: 100%;}
	.nav_list .sub {background: none;padding: 0;display: none;margin-top: 10px;}
	.nav_list .sub li a { color: #fff; padding: 10px 5px 10px 25px; text-decoration: none; display: block; background: rgba(255, 255, 255, 0.1); }
	.nav_list .sub li a:before { background: #fff; top: 21px;left: 10px; }
	.nav_main .cta .inner {padding: 0;}
	.nav_list .sub li{margin: 0 0 1px;}
/*============ Main ============*/
main{}

/* MAIN VISUAL */
	.mv {text-align: center;}
.mv:after { width: 100%;border-radius: 0;background-position: left top;}
.mv h2 { font-size: 32px; margin: 0 0 15px; }
.mv_txt { margin: 0; font-size: 15px; text-indent: -8px; }
.mv_main { padding: 100px 0; }
.mv_list { flex-wrap: wrap; justify-content: space-between;max-width: 375px;margin: 0 auto;}
.mv_list li { width: calc((100% - 10px) / 2); margin: 20px 0 0;font-size: 11px; }
.mv_list li .num { width: 60px; height: 60px; font-size: 13px; }
.mv_list li .ttl { font-size: 150%; height: 70px; margin: 0 0 5px; padding-top: 5px; }
.mv_item_main { border-width: 3px; padding: 10px 5px 10px; }
.mv_img { margin: 0 -15px 20px; }
	.mv_list li .txt {margin: 0 -5px;height: 27px;}
/* sec01 */
	.sec01_ttl { max-width: 100%; font-size: 22px; padding: 15px 10px; line-height: 1.5em; margin: -53px auto 30px; }
	.sec01_list { display: block; border-radius: 0; margin: 0 -15px; padding: 30px 15px; }
	.sec01_item { width: 100%; margin: 0 0 60px; }
	.sec01_item:last-child {margin-bottom: 0;}
	.sec01_item_ttl { font-size: 20px; margin: 0 auto 30px;max-width: 345px; }
	.sec01_ttl:after { bottom: -40px; width: 30px; height: 50px; left: calc(50% - 15px); }
	.sec01_item_ttl:before, .sec01_item_ttl:after { width: 77px; left: 5px; height: 94px; top: 0; }
	.sec01_item_ttl:after { right: 5px; left: auto; }
	.sec01_item_main { padding: 25px 15px; }
	.sec01_item_txt { font-size: 18px; margin: 0 0 20px; }
	.sec01_item_note li { text-align: center; padding: 10px; font-size: 14px; }
	.sec01_item:nth-child(2) .sec01_item_ttl:before { left: 5px; top: 10px; width: 70px; height: 92px; }
	.sec01_item:nth-child(2) .sec01_item_ttl:after { width: 57px; height: 79px; top: 10px; right: 5px; }
	.sec01_list:after { width: 200px; height: 70px; bottom: -65px; left: calc(50% - 100px); }
/* sec02 */
	.sec02 { padding: 10px 0; }
	.sec02_ttl { font-size: 20px; }
	.sec02_ttl img { width: 300px; }
	.sec02_ttl .lager { display: block; margin-top: 7px; }
	.idx_dot span:before { width: 5px; height: 5px; left: calc(50% - 3px); }
	.sec02_main:after {display: none;}
	.sec02_main { border-width: 3px; padding: 30px 15px 1px; }
	.sec02_main_ttl { max-width: 100%; padding: 15px 5px; font-size: 24px; margin: 0 0 15px;text-align: center;}
	.sec02_main_ttl img { width: 270px; }
	.sec02_main_list { justify-content: center; flex-wrap: wrap; margin-bottom: 20px;}
	.sec02_main_list li { margin: 5px; width: 100px; height: 100px; font-size: 14px !important; }
	.btn_box { display: block; }
	.btn a { width: 280px; height: 60px; font-size: 16px; padding: 10px 25px; margin: 0 auto;}
	.btn_box .btn:not(:last-child) { margin: 0 0 20px; }
/* sec03 */
	.sec03 {padding-bottom: 40px;}
	.sec03_ttl { font-size: 22px; margin: 0 0 40px; }
	.sec03_ttl img { width: 280px; }
	.sec03_ttl .lager { margin: -5px 0 0; padding: 0 30px; font-size: 140%; }
	.sec03_ttl .lager:before, .sec03_ttl .lager:after { width: 25px; height: 30px; bottom: 5px; }
	.sec03_item { display: block;margin-bottom: 40px; }
	.sec03_item_img { width: 100%; margin: 0 0 20px!important; height: auto; }
	.sec03_item_main { width: 100%; margin: 0!important; padding: 1px 15px 30px!important; height: auto; display: block; }
	.sec03_item_note { font-size: 17px; width: 80px; height: 80px; margin:-30px auto 15px!important; }
	.sec03_item_ttl { font-size: 26px; margin: 0 0 20px; text-align: center;}
	.sec03_item:nth-child(2n) { margin-bottom: 40px; }
	.sec03:after { width: 250px; height: 100%; left: calc(50% - 125px); bottom: -115px; }
/* sec04 */
	.sec04 {padding-bottom: 50px;}
	.sec04_ttl { font-size: 22px; margin: 0 0 20px; }
	.sec04_item { height: auto; display: block; padding: 30px 15px; border-radius: 10px; margin-bottom: 30px; }
	.sec04_txt { margin-bottom: 30px; }
	.sec04_item_ttl { width: 315px; max-width: 100%; font-size: 16px; text-align: center;margin: 0 auto 15px; }
	.sec04_item_ttl .note { padding: 7px 10px 5px; margin: 0 0 15px; }
	.sec04_item_ttl .lager { font-size: 145%; }
	.sec04_item_main { width: 100%; }
	.sec04_item_txt { margin: 0 0 20px; }
	.sec04_item .btn a { width: 270px; font-size: 14px; padding: 5px 20px; background-position: right 10px center; margin: 0 auto;}
	.sec04:after { background-size: 100% auto; }
	.sec04_item:nth-child(2) .sec04_item_ttl { padding-left: 0; }
	.sec04_item:nth-child(2) .sec04_item_ttl .note {margin-left: 0;}
/* CTA */
	.cta .inner { display: block; }
	.cta_ttl {font-size: 14px;margin-bottom: 25px;}
	.cta_ttl .en {margin-bottom: 10px;}
	.cta_ttl .ja { font-size: 180%; }
	.cta_ttl .note { left: 107px; padding: 0 13px; }
	.cta_txt { font-size: 14px; }
	.cta_txt img { width: 230px; margin: 6px 3px 8px 0; }
	.cta_right { width: 100%; margin: 30px auto 0;}
	.cta_list li { width: 100%; font-size: 15px; }
	.cta_info { display: block; }
	.cta_tel { text-align: center; margin: 0 0 20px; }
	.cta_btn {flex-wrap: wrap;justify-content: center;}
	.cta_btn li { margin: 0 5px 10px; }
	.cta_btn li:last-child { margin: 0 5px 10px; }
	.cta { padding: 70px 0 50px; }
	.cta_left { max-width: 425px; margin: 0 auto; }
	.cta_list {max-width: 425px;margin: 0 auto 15px;}
/* sec05 */
	.sec05 { padding: 50px 0; }
	.idx_ttl { font-size: 22px; margin: 0 0 20px; }
	.idx_ttl .lager { font-size: 120%; }
	.sec05_list { display: block;margin: 0 -5px; }
	.sec05_item { width: 355px;margin: 0 5px;padding-top: 35px; }
	.sec05_item_ttl:before { width: 60px; height: 50px; left: calc(50% - 30px); top: -35px; }
	.sec05_item_ttl { font-size: 20px; margin: 0 auto -20px; width: 250px; padding-bottom: 6px; }
	.sec05_item_note { font-size: 20px; }
	.sec05_item_txt { margin: 0 0 20px; }
	.sec05_item:last-child {margin-bottom: 0;}
	.sec05_item_main { padding: 40px 15px 30px; }
/* sec06 */
	.sec06 {padding: 50px 0 10px;}
	.idx_ttl .note:before, .idx_ttl .note:after { width: 20px; height: 20px; bottom: -2px; }
	.idx_ttl .note:before { margin-right: 10px; }
	.idx_ttl .note:after {margin-left: 10px;}
	.sec06_list { flex-wrap: wrap; }
	.sec06_item { width: 48%; margin: 0 0 40px; padding: 1px 15px 25px; }
	.sec06_item_note { font-size: 20px; width: 180px; }
	.sec06_item_ttl { font-size: 20px; }
	.sec06_item .btn a { width: 150px; padding: 5px 15px; }
	.sec06_item:nth-child(1) .sec06_item_ttl {font-size: 19px;}
/* sec07 */
	.sec07 { padding: 50px 0 130px; }
	.sec07:after { left: auto; right: 15px; width: 228px; height: 104px; }
	.sec07_ttl { font-size: 22px; margin: 0 0 20px; text-align: center;}
	.sec07_mid { font-size: 18px; margin: 0 0 15px; text-align: center;}
	.sec07 .btn { margin: 0 auto; }
	.sec07 .inner { display: block; }
	.sec07_main { width: 100%; margin: 0 0 20px; }
/* sec08 */
	.sec08 { padding: 50px 0; background-size: 130% auto; background-position: right top; background-color: #deeef2; }
	.sec08_bottom_img, .sec08_top_img {display: none;}
	.sec08 .idx_ttl { margin-bottom: 25px; }
	.sec08_txt p {margin-bottom: 20px;}
	.sec08_txt { max-width: 100%; margin: 0 0 30px; }
	.sec08 .btn a { width: 220px; margin: 0 auto; }
	.sec08 .btn_box .btn:not(:last-child) { margin-right: 0; }

/*============ FOOTER ============*/
footer{}
	.ft_link {display: none;}
	.footer_main .inner {display: block;text-align: center;}
	.footer_main .btn_tel { text-align: center; margin-bottom: 20px;}
	.footer_main .btn_tel a { margin: 0 auto; justify-content: center; }
	.footer_main { padding: 50px 0 110px; }
	.ft_bnr {margin: 20px 0 0;}
	.ft_info {margin: 0 0 20px;}

/* sp contact */
.sp_contact{display:flex;justify-content:space-between;align-items:center;width:100%;height:60px;position:fixed;left:0;z-index:99; bottom:-55px;transition: all 0.3s;background: var(--mcolor);padding: 5px 3px}
.sp_contact.show{bottom: 0;}
.sp_contact li{width:calc((100% - 5px)/3);height:100%;line-height: 1.5em;}
	.sp_contact li:not(.tel) a {display: flex;justify-content: center;align-items: center;border-radius: 50px;background: var(--scolor);font-size: 10px;line-height: 1.5em;height: 100%;}
	.sp_contact li:not(.tel) a .lager {display: block;font-weight: 900;font-size: 120%;}
	.sp_contact li:not(.tel) a:before {content: '';background: url("../images/ic_mail.svg") no-repeat center center/100% auto;width: 15px;height: 14px;margin: 0 5px 0 0;}
	.sp_contact li:not(.tel).line a {background-color: var(--green);}
	.sp_contact li:not(.tel).line a:before {background-image: url("../images/ic_line.png");width: 17px;height: 17px;margin-right: 3px;}
	.sp_contact li.tel a {background: var(--mcolor);color: #fff;}
	.sp_contact li.tel a { background: var(--mcolor); color: #fff; white-space: normal; width: 100%; display: flex; justify-content: center; align-items: center; border-radius: 50px; font-size: 8px; flex-direction: column; line-height: 1.5em; text-align: center; height: 100%; }
	.sp_contact li.tel a .num {display: inline-flex;justify-content: center;font-family: var(--f-en);font-size: 220%;font-weight: 700;margin: 0 0 3px;}
	.sp_contact li.tel a .num:before {content: '';position: relative;display: inline-block;background: url("../images/ic_tel.svg") no-repeat center center/100% auto;width: 13px;height: 13px;margin: 0 3px 0 0;}

/* to top */
.to_top{width:40px;right:10px;bottom: 65px;}
/*============ END 750 ============ */

}

@media screen and (max-width: 720px) {
	.sec02_main_list { max-width: 400px; margin: 0 auto 20px; }
}



/* screen-max:460px */
@media screen and (max-width: 440px) {
.sp440 {display: block !important;}
.pc440{display: none !important}

.sec06_item { width: 100%; }
address { font-size: 12px; }
.sp_contact li:not(.tel) a { font-size: 2.5vw; }
.sp_contact li:not(.tel) a:before { width: 3.5vw; height: 4vw; margin: 0 1vw 0 0; }
.sp_contact li:not(.tel).line a:before { width: 4vw; height: 4vw; margin: 0 1vw 0 0; }
.sp_contact li.tel a { font-size: 1.9vw; }
.sp_contact li.tel a .num:before { width: 3vw; height: 3vw; margin: 0 1vw 0 0; }
.sec05_item { width: 290px; }
.sec07_ttl { font-size: 5.5vw; }
}

/* screen-max: 360px */
@media screen and (max-width: 360px) {
.sp360 {display: block !important;}
.mv h2 { font-size: 28px; }
.mv_txt { font-size: 14px; text-indent: 0; letter-spacing: -0.075em; }
.mv_list li .txt { line-height: 1.5em; font-size: 78%;}
.sec01_ttl { font-size: 20px; }
.sec01_item_ttl { font-size: 18px; margin-bottom: 20px;}
	.sec01_item_ttl:before, .sec01_item_ttl:after {width: 60px;height: 72px;}
	.sec01_item:nth-child(2) .sec01_item_ttl:before {width: 60px;left: 0;}
	.sec01_item:nth-child(2) .sec01_item_ttl:after {width: 50px;right: 0;}
	.sec02_ttl { font-size: 18px; }
	.sec02_ttl img { width: 250px; margin-right: 3px; }
	.sec02_main_ttl { font-size: 20px; }
	.sec02_main_ttl img { width: 220px; margin: 4px 3px 0 0; }
	.sec02 .btn a { width: 250px; }
	.sec03_ttl img { width: 250px; margin: -6px 3px 0 -2px; }
	.sec03_ttl .lager { padding: 0 20px; font-size: 120%; }
	.sec03_ttl .lager:before, .sec03_ttl .lager:after { width: 17px; height: 20px; }
	.sec04_ttl { font-size: 20px; }
	.sec04_item_ttl .note { line-height: 1.5em; }
	.sec04_item .btn a { width: 250px; padding: 5px 15px;}
	.cta_ttl { font-size: 12px; }
	.cta_ttl .note { left: 90px; }
	.ft_logo img {width: 250px;}
	.btn_tel .time {font-size: 12px;}
	.footer_main .btn_tel a { font-size: 220%; }
	.footer_main .btn_tel a:before { width: 20px; height: 20px; top: 1px; }
	address {font-size: 10px;}
	.nav_list .sub li {font-size: 13px;}
	.nav_list .sub li a:before {top: 20px;}
}