.sp440, .sp360{display:none}

@media screen and (min-width: 2000px) {
.sec02_top_img img { width: 100%; height: auto; position: absolute; top: 0; left: 0; }
.sec02_top_img {margin: 0 auto; position: relative; }
}
@media screen and (min-width: 751px) {
a[href^="tel:"]{pointer-events: none;}
.sp{display:none}
.sec01_list li:nth-child(1) {padding-left: 49px;}
.sec01_list li:nth-child(3) {margin-left: 49px;}
.sec01_list li:nth-child(n+4) .img {order: 2;margin: 0 0 0 auto;}
.sec01_list li:nth-child(4) {padding-right: 36px;}
.sec01_list li:nth-child(6) { right: 50px; padding-left: 14px;position: relative;}
.h_right {display: flex!important;justify-content: flex-end;align-items: center;}
.sec09_item:nth-child(3) .sec09_item_img .txt { top: calc(50% + 53px); }
.sec09_item:nth-child(2) .sec09_item_img .txt {top: calc(50% + 52px); }
.sec03_item:nth-child(7) .sec03_item_img:before {display: none;}
.sec03_item:nth-child(7) .sec03_item_main:before {content: ''; position: absolute;background: url("../images/sec03_num07.png") no-repeat center center/100% auto;width: 111px;height: 110px;left: -29px; top: -141px;}
.sec03_item:nth-child(7) {width: 100%;max-width: 1157px;margin: 8px auto 0;position: relative;display: flex;flex-direction: row-reverse;align-items: center;}
.sec03_item:nth-child(7) .sec03_item_ttl {text-align: left;}
.sec03_item:nth-child(7) .sec03_item_img {flex-shrink: 0;margin: 0 0 0 80px;}
.sec03_item_main { margin: -14px 0 0;position: relative;}

/* nav */
.hamburger{display:none;}
.nav_list{display: flex;}
.nav_list>li>a, .nav_list>li>.sub_btn { padding: 28px 6px; font-size: 20px; letter-spacing: 0.05em;color: #000;position: relative;white-space: nowrap;text-align: center;}
.nav_list>li>.sub_btn:after {content: '';position: absolute;background: url("../images/nav_arr.svg") no-repeat center center/100% auto;width: 9px;height: 6px;bottom: 11px;left: calc(50% - 5px);opacity: 0;transition: all 0.3s;}
.nav_list>li{display: flex;align-items: center;}
.nav_list>li:not(:last-child):after {content: '｜';position: relative;display: inline-block;color: #000;margin: 0 0 0 6px;font-size: 20px;}
.nav_list>li.parent>.sub_btn{cursor:default}
.sub{position:absolute;z-index:1;transition:all .3s;opacity:0;visibility:hidden;width:100%;top:100%;left:0;box-shadow: 0px 3px 16px 0px rgba(194, 192, 186, 0.45);background: #fff;display: flex;justify-content: center;padding: 24px 0;}
.sub ul {display: flex;}
.sub ul a {display: block;position: relative;color: #000;font-size: 16px;letter-spacing: 0.05em;}
.sub ul a:before {display: block;content: '';position: relative;background: url("../images/nav_dummy.jpg") no-repeat center center/cover;border-radius: 14px;width: 269px;height: 148px;margin: 0 auto 4px;}
.sub ul li:not(:last-child) {margin-right: 30px;}
.parent_inheritance .sub ul li:nth-child(1) a:before {background-image: url("../images/nav_img01.jpg");}
.parent_inheritance .sub ul li:nth-child(2) a:before {background-image: url("../images/nav_img02.jpg");}
.parent_menu .sub ul li:nth-child(1) a:before {background-image: url("../images/nav_img03.jpg");}
.parent_menu .sub ul li:nth-child(2) a:before {background-image: url("../images/nav_img04.jpg");}
.parent_menu .sub ul li:nth-child(3) a:before {background-image: url("../images/nav_img05.jpg");}
.parent_trouble .sub ul li:nth-child(1) a:before {background-image: url("../images/nav_img06.jpg");}
.parent_charm .sub ul li:nth-child(1) a:before {background-image: url("../images/nav_img07.jpg");}
.parent_company .sub ul li:nth-child(1) a:before {background-image: url("../images/nav_img08.jpg");}

/* hover */
	.btn_contact a:hover {background: #fff;color: var(--mcolor);}
	.btn_contact a:hover:before {background-image: url("../images/ic_contact_bot.svg");}
.nav_list>li:hover>a{color:var(--scolor);text-decoration: none;}
.parent:hover .sub{opacity:1;transform:translate(0,0);visibility:visible}
.sub a:hover, .mv_blog_item a:hover{color:var(--mcolor);text-decoration: none;}
	.nav_list>li:hover>.sub_btn:after {opacity: 1;}
.ft_bnn li a:hover,
.to_top img:hover,
.btn a:hover, .sec05_list li a:hover .btn{background: #fff;color: var(--mcolor);}
.btn a:hover:before, .sec05_list li a:hover .btn:before{transform: scale(3);opacity: 0;}
.btn a:hover:after, .sec05_list li a:hover .btn:after{opacity: 1;}
	.sec05_list li a:hover:after {transform: scale(1.1);}
	.ft_link_list a:hover {text-decoration: underline;}
	.ft_btn a:hover {color: #fff;background: var(--mcolor);}
	.ft_btn a:hover:before {background-image: url("../images/ic_contact.svg");}
	.to_top:hover {opacity: 0.7;}
	.sec07_list li a:hover .ttl {color: var(--mcolor);}
}

@media screen and (min-width: 1300px) and (max-width: 1900px){
.btn_contact a { width: 17vw; font-size: 1vw; }
	.btn_contact a:before { width: 1.5vw; height: 1vw; margin: 0 0.6vw 0 0; }
	#logo {width: 12vw;}
	.nav_list>li>a, .nav_list>li>.sub_btn {font-size: 1vw;padding: 1.5vw 0.3vw;}
	.h_tel {margin: 0 1.5vw;font-size: 0.8vw;}
	.h_tel a {font-size: 1.8vw;}
	.nav_list>li:not(:last-child):after {font-size: 1vw;margin: 0;}
	.h_inner {padding: 0 1.7vw;}
	.mv {padding: 0 3.125vw 4.7vw;}
	.mv_main { padding: 1.4vw 2vw 3vw 4vw;background-size: 100% 100%;}
	.mv h2 { font-size: 5.2vw; margin: 0 0 0.7vw -3vw; }
	.mv_top_ttl { font-size: 2vw; margin-bottom: 1.2vw; }
	.mv_top_ttl .txt_letter span { width: 2.7vw; height: 2.7vw; margin: 0 0.2vw 0.6vw 0; }
	.mv_txt_list { padding-left: 1.9vw; margin-bottom: -0.4vw; }
	.mv_txt_list li { font-size: 1.26vw; margin: 0 2.9vw 1.4vw 0; padding: 1px 1vw 0.16vw 2vw; width: 18.58vw; }
	.mv_txt_list li:before { width: 3vw; height: 3vw; left: -1.9vw; top: calc(50% - 1.5vw); }
	.mv_txt_lager { font-size: 2.1vw; margin-bottom: 0.26vw; }
	.mv_txt_info { font-size: 0.95vw; }
	.mv_right { margin-top: 1.3vw;width: 38.8vw;}
	.mv_right_img { width: calc(100% - 5.5vw); height: calc(100% - 5.5vw); }
	.mv_bottom_img { width: 33vw; left: calc(50% - 9vw);}
	.mv_txt_list li:nth-child(2n) {width: 23.5vw;}
	.mv_blog { padding: 7.3vw 7vw 2.7vw 0; width: 30.8vw; left: 2.7vw;min-height: auto;}
	.mv_blog_ttl { font-size: 1.3vw; margin-bottom: 1vw; }
	.mv_blog_ttl:before { width: 1.9vw; height: 1.7vw; margin-right: 0.9vw; }
	.mv_blog_item .img { width: 5.3vw; height: 5.3vw; margin-right: 1.8vw; }
	.mv_blog_item a {font-size: 0.95vw;}
	.mv_blog .btn a { width: 10.5vw; height: 2.6vw; font-size: 0.8vw; }
	.mv_blog .btn {right: 1.6vw; bottom: 1vw; }
	.mv_blog .btn a:before,.mv_blog .btn a:after { width: 0.4vw; height: 0.4vw; top: calc(50% - 0.2vw); left: 1.3vw; }
	.mv_info {width: 47vw;}
	.sec02_list {width:76vw;}
	.sec02_main_img { margin: calc(5vw + 60px) -2.6vw 0 -5.37vw; width: 39vw; }
	.sec08_img {right: -15px;}
}
@media screen and (min-width: 751px) and (max-width: 1700px){
	.sec02_top_main_img .img:nth-child(2) {margin-left: 100px;}
	.sec02_top_main_img {margin-right: 200px;}
	.sec02_top_main_ttl { font-size: 40px; }
	.sec02_list li .ttl { font-size: 150%; }
	.sec02_list li .ttl:before { width: 34px; height: 31px; left: -45px; top: 2px; }
	.sec02_list li {padding-left: 450px;}
	.sec02_main_img {margin-top: calc(12vw + 60px);}
	.sec04_list { padding: 60px 30px 120px; }
	.sec05 {margin-top: -50px;}
	.sec05_list li a { height: 320px; border-width: 10px;font-size: 16px;}
	.sec05_list li:not(.sec05_item_en) { width: 320px; height: 320px; }
	.sec05_list {width: 790px;height: 750px;margin-right: 80px;}
	.sec05_list:before {width: 1059px;height: 911px;top: calc(50% - 513px);}
	.sec05_list:after {right: -35px;}
	.sec05_item_en { left: -30px; font-size: 160px; }
	.sec05_list li .btn {width: 70%;}
	.sec05_list li .en {margin-bottom: 20px;}
	.idx_en_lager { font-size: 280px; left: -15px; }
	.sec08 .idx_en_lager { left: -15px; display: inline-block; width: 1300px; }
	.mv_blog_item .ttl {line-height: 1.75em;}

}
@media screen and (min-width: 751px) and (max-width: 1500px){
.inner{padding-left: 30px;padding-right: 30px;}
	.sec02_list li {font-size: 16px;padding-left: 400px;}
	.sec02_list li .ttl:before { width: 28px; height: 26px; left: -37px;}
	.sec02_main_img {margin-top: calc(15vw + 60px);}
	.sec02_main:after {height: calc(100% - 86px);}
	.sec02_ttl {font-size: 36px;}
	.sec02_top_main_img .img:nth-child(1) { width: 320px; }
	.sec02_top_main_img .img:nth-child(3) { width: 260px;margin: 348px 0 0 -364px;}
	.sec02_top_main_img .img:nth-child(2) { width: 170px;margin-left: 70px;}
	.sec02_top_main_img { margin-right: 145px; }
	.sec02_top_ttl { font-size: 28px; height: 250px;width: 85%;}
	.sec02_top_main {margin-top: -40px;}
	.sec02_top_ttl .lager:after {height: 15px;bottom: 5px;}
	.sec08_img {right: -11px;width: 700px;}
	.sec08 { margin-bottom: 150px; }
	.sec01_list:before { width: 300px; height: 300px; border-width: 8px; top: calc(50% - 150px); left: calc(50% - 150px); }
	.sec01_list li { font-size: 17px; width: 450px; }
	.sec01_list li .img { width: 90px; margin-right: 15px; }
	.sec04_item { padding: 50px 25px 0; }
	.sec04_item_en {font-size: 18px;left: -74px;top: 79px;}
	.sec05_list { width: 700px; height: 680px;}
	.sec05_item_en {font-size: 150px;}
	.sec03_item { width: calc((100% - 60px) / 3);max-width: 410px;}
	.sec04_item_list li:not(:last-child) { margin-right: 12px; }
	.sec04_item_list li { width: 156px; height: 156px; font-size: 16px; }
	.sec04_item_list li .txt:before { width: 60px; height: 59px; background-size: 80% 80%; }
	.sec06_item_txt {padding-left: 20px;padding-right: 20px;}
	.sec05_main {margin-top: -35px;}
	.sec09_item { padding-left: 30px; }
	.sec09_item_img .txt { left: -40px!important; }
	.sec09_item:before {left: -6px;}
}
@media screen and (min-width: 751px) and (max-width: 1300px){
	.btn_contact a { width: 200px; font-size: 12px; height: 50px; }
	.h_tel { margin: 0 18px; font-size: 10px; }
	.btn_contact a:before { width: 18px; height: 12px; margin: 0 7px 0 0; }
	.nav_list>li>a, .nav_list>li>.sub_btn { font-size: 13px; padding: 18px 3px; }
	.h_tel a { font-size: 24px; }
	.h_tel a:before {width: 24px;height: 15px;}
	#logo { width: 160px; }
	.nav_list>li:not(:last-child):after { font-size: 13px; margin: 0 3px 0 5px; }
	.mv { padding: 0 30px 70px; }
	.mv_info { width: 610px; }
	.mv_main { padding: 18px 26px 39px 30px;background-size: 100% 100%;}
	.mv h2 { font-size: 67px; margin: 0 0 9px -39px; }
	.mv_top_ttl { font-size: 26px; margin-bottom: 15px; }
	.mv_top_ttl .txt_letter span { width: 35px; height: 35px; margin: 0 3px 8px 0; }
	.mv_txt_list li { font-size: 16px; margin: 0 35px 18px 0; padding: 1px 13px 2px 26px; width: 235px; }
	.mv_txt_list li:nth-child(2n) { width: 300px; }
	.mv_txt_list li:before { width: 39px; height: 39px; left: -24px; top: calc(50% - 19px); }
	.mv_txt_list {padding-left: 24px;}
	.mv_txt_lager { font-size: 27px; margin-bottom: 4px; }
	.mv_txt_info { font-size: 13px; }
	.mv_bottom_img { width: 430px; left: calc(50% - 117px);}
	.mv_right { margin-top: 17px; width: 505px; }
	.mv_right_img { width: calc(100% - 71px); height: calc(100% - 71px); }
	.mv_blog { padding: 95px 91px 45px 0; width: 400px; left: 35px; }
	.mv_blog_ttl { font-size: 17px; margin-bottom: 13px; }
	.mv_blog_ttl:before { width: 25px; height: 23px; margin-right: 12px; }
	.mv_blog_item .img { width: 70px; height: 70px; margin-right: 23px; }
	.mv_blog_item a { font-size: 14px; }
	.mv_blog .btn a { width: 136px; height: 34px; font-size: 12px; }
	.mv_blog .btn a:before, .mv_blog .btn a:after { width: 5px; height: 5px; top: calc(50% - 2.5px); left: 17px; }
	.h_inner {padding: 0 15px;}
	.sec01_list li {width: 420px;}
	.sec01_list li:nth-child(1) { padding-left: 30px; }
	.sec01_list li:nth-child(3) { margin-left: 30px; }
	.sec01_list li:nth-child(4) { padding-right: 25px; }
	.sec01_list li:nth-child(6) {right: 25px;}
	.sec02_top_main_ttl { font-size: 36px; }
	.sec02_list { width: 940px; }
	.sec02_main_img { margin: 260px -30px 0 -70px;width: 520px;}
	.sec04_item_en { font-size: 17px; left: -72px; top: 70px; }
	.sec05 .idx_ttl .ja { font-size: 220%; }
	.sec06_item { width: calc((100% - 60px) / 3);}
	.sec06_item_txt {font-size: 22px;}
	.sec08 .idx_en_lager { width: 1100px; }
	.sec08_img {right: -14px; width: 700px; }
}
@media screen and (min-width: 751px) and (max-width: 1200px){
	.mv_bottom_img { width: 390px;}
}

/* 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: 160%;
}
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}

/* NAV */
nav{display:block;margin-bottom: 60px;}
nav .inner{padding: 0;}
.nav_list{flex-direction:column}
.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:13px 15px 12px;color:#fff;font-size:16px;font-weight:600;border-bottom:solid 1px #fff;background: var(--mcolor);}
.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(--txt); border-bottom: none; background: rgba(255, 255, 255, 0.9); }
.hamburger{position:relative;right:0;bottom:0;font:inherit;display:block;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;padding: 0;}
	.hamburger .txt { display: block; text-align: center; font-size: 12px; }

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

/*============ HEADER ============*/
	.noscroll {overflow: hidden;}
	header {z-index: 99;}
.h_right { display: none; position: fixed; width: 100%; top: 79px; left: 0; background: rgba(255, 255, 255, 0.9); height: calc(100% - 79px);overflow: auto;z-index: 99;padding: 0 0 40px;}
	.h_inner {padding: 0 15px;}
	#logo {width: 197px;}
	.h_box {padding: 15px 0;}
	.h_tel { text-align: center; margin: 0 0 30px; }
	.btn_contact a {margin: 0 auto;font-size: 18px;max-width: 100%;}
	.btn_contact a:before {width: 26px;height: 18px;}
	.btn_contact { padding: 0 15px; }
/*============ Main ============*/
main{padding-top: 79px;}

/* MAIN VISUAL */
.mv { padding: 0 15px 30px; }
.mv_main { display: block; background-size: 100% 100%; padding: 7vw 4vw 0;background-image: -moz-linear-gradient( 35deg, rgb(101,203,130) 0%, rgb(122,207,120) 22%, rgb(142,211,110) 40%, rgb(124,210,203) 100%); background-image: -webkit-linear-gradient( 35deg, rgb(101,203,130) 0%, rgb(122,207,120) 22%, rgb(142,211,110) 40%, rgb(124,210,203) 100%); background-image: -ms-linear-gradient( 35deg, rgb(101,203,130) 0%, rgb(122,207,120) 22%, rgb(142,211,110) 40%, rgb(124,210,203) 100%);border-radius: 5vw;}
.mv h2 { font-size: 10vw; margin: 0 0 2vw -6vw;text-align: center;}
.mv_top_ttl .txt_letter span { width: 7vw; height: 7vw; margin: 0 0.5vw 1vw 0; }
.mv_info { width: 100%; }
.mv_txt_list li { font-size: 4vw; width: 57vw; margin: 0 0 3vw;padding: 0.5vw 2vw 0.8vw 5vw;}
.mv_txt_list li:nth-child(2n) { width: 100%;}
.mv_top_ttl .txt { display: inline; }
.mv_top_ttl { font-size: 5vw; margin: 0 0 4vw;white-space: normal;text-align: center;}
.mv_txt_list li:before { width: 8.6vw; height: 8.6vw; left: -4vw; top: calc(50% - 4.3vw); }
.mv_txt_list { padding-left: 4vw; margin: 0 auto 2vw;width: 77vw;}
.mv_txt_lager { font-size: 5vw; margin: 0 0 1vw;text-align: center;}
.mv_txt_lager .lager { padding: 0 3vw; margin: 0 1vw 2vw -1vw; }
.mv_txt_info { font-size: 3vw;margin: 0;}
.mv_right { margin: 4vw 0 0; }
.mv_right_img { width: calc(100% - 12vw); height: calc(100% - 12vw); }
.mv_bottom_img { position: relative; bottom: 0; left: 0; text-align: center;margin-top: 3vw;}
.mv_blog { position: relative; left: 0; padding: 30px 30px 30px 0;width: 100%;}
.mv_blog:after { left: -15px; height: calc(100% + 50vw);width: 100%;}
.mv_blog_ttl { font-size: 20px; margin: 0 0 15px;justify-content: center;}
.mv_blog_ttl:before {width: 24px; height: 23px; margin: 0 10px 0 0;}
.mv_blog .btn { position: relative; right: 0; bottom: 0; margin: 20px 0 0; }
.mv_blog .btn a { margin: 0 auto; }
.mv_blog_item .img {margin-right: 20px;}
.mv_back_img {display: none;}
/* sec01 */
.sec01 { padding: 20px 0 50px; }
.idx_ttl { font-size: 18px;margin-bottom: 20px;}
.idx_ttl .ja { font-size: 170%; }
.idx_ttl .en {margin-bottom: 5px;}
.sec01_list { display: block; height: auto; }
.sec01_list:before { position: relative; display: block; top: 0; left: 0; margin: 0 auto; width: 250px; height: 250px; border-width: 6px; }
.sec01_list li { height: auto; width: 100%; padding: 15px 0; font-size: 18px; }
.sec01_list li:nth-child(1) { padding-left: 0; }
.sec01_list li .img { width: 80px; margin-right: 15px; }
.sec01_list li .img:before { border-width: 3px; }
/* sec02 */
.sec02_top_img {height: 35vw; }
.sec02_top_ttl { height: auto; font-size: 4vw; border-radius: 4vw; margin-top: -7vw; padding: 4vw 3vw;line-height: 1.5em;}
.sec02_top_ttl .lager:after { height: 3vw; width: calc(100% + 2vw); left: -1vw; }
.sec02_top_ttl .lager>span:not(.char4):not(.char15):before { width: 1.2vw; height: 1.2vw; left: calc(50% - 0.6vw); top: -0.6vw; }
.sec02_top_main { display: block; margin: -3vw 0 0; }
.sec02_top_main_img .img:nth-child(1) { width: 50vw;}
	.sec02_top_main_img .img img {width: 100%;}
.sec02_top_main_img { margin: 0; }
.sec02_top_main_img .img:nth-child(2) { margin: 14vw 0 0 14vw; width: 32vw; }
.sec02_top_main_img .img:nth-child(3) { margin: 51vw 0 0 -65vw; width: 44vw; }
.sec02_top_ttl .lager { white-space: nowrap;margin: 3vw 0 1vw;}
.sec02_top { padding: 0 0 20vw;background-image: url("../images/sec02_bg_sp.jpg");background-position: top center;}
.sec02_top_main_ttl { font-size: 5.8vw; margin-top: 6vw;text-align: center;}
.sec02_main { margin-top: -12vw; padding: 6vw 0 0; }
.sec02_ttl { font-size: 20px; padding: 0 15px; margin: 0 0 30px;text-align: center!important;}
.sec02_list li { height: auto; padding: calc(41vw + 30px) 15px 40px 45px; background-position: left top; background-size: 100% auto;background-image: url("../images/sec02_item01_sp.jpg");border-bottom-right-radius: 20px; border-top-right-radius: 20px;}
.sec02_list {width: 100%;}
.sec02_list li:nth-child(2) {background-image: url("../images/sec02_item02_sp.jpg");}
.sec02_list li:nth-child(3) {background-image: url("../images/sec02_item03_sp.jpg");}
.sec02_list li .ttl { font-size: 130%; margin: 0 0 10px; }
.sec02_list li .ttl:before {width: 27px; height: 26px; left: -31px; top: 2px;}
.sec02_main_bottom {display: block;margin: 0;}
.sec02_main_img { margin: 0; text-align: center; }
.sec02_main:after { height: calc(100% - 12vw); border-radius: 10vw; }
/* sec03 */
.sec03 { padding: 20px 0 100px; }.sec02_main:after { height: calc(100% - 11vw); border-radius: 10vw; }
.sec03_txt { padding: 0; margin: 0 0 25px; }
.sec03_item { width: 48%; margin: 0 0 30px; }
.sec03_item_img:before { width: 13vw; height: 13vw; right: -0.6vw; bottom: -0.6vw; }
.sec03_item_img img { border-radius: 5vw; }
.sec03_item_img {margin-bottom: 20px;}
.sec03_item_ttl { font-size: 20px; }
.btn a { width: 280px; height: 56px; max-width: 100%; }
.sec03_item:nth-child(7) { margin: 0 auto; }
.sec03_item:nth-child(7) .sec03_item_img:before {background-image: url("../images/sec03_num07.png");}
/* sec04 */
.sec04_list { display: block; margin-top: -50px; border-top-left-radius: 20px; border-top-right-radius: 20px; padding: 50px 15px 135px; }
.sec04_item { width: 100%; margin: 0 0 50px; padding: 30px 4vw 0; }
	.sec04_item:last-child {margin-bottom: 0;}
.sec04_item_img img { width: 100%; }
.sec04_item_en { font-size: 2.7vw; left: -12vw; top: 12vw; }
.sec04_item_ttl {font-size: 26px;}
.sec04_item_list li:not(:last-child) { margin-right: 3vw; }
.sec04_item_list li { width: 23vw; height: 23vw; font-size: 2.5vw; }
.sec04_item_list li .txt:before { width: 8vw; height: 8vw; margin: -1vw auto 1vw; left: 0; background-size: 100% 80%;top: 0!important;}
	.sec04_item_list {margin-bottom: 30px;}
.sec04_item:after { height: calc(100% - 50px - 20vw); border-radius: 5vw; }
.sec04_item_list li:after { width: calc(100% - 2vw); height: calc(100% - 2vw); }
/* sec05 */
.sec05 { margin-top: -80px; }
.sec05_info { border-bottom-right-radius: 40px; border-top-right-radius: 40px; padding: 50px 0; }
	.sec05 .inner {display: block;}
.sec05_main { width: 100%; margin: 0 0 calc(7vw + 30px); }
.sec05 .idx_ttl { text-align: center; margin-bottom: 20px; }
.sec05_list li:not(.sec05_item_en) { width: 46vw; height: 46vw; position: absolute; }
.sec05_list li:nth-child(2) { margin: 0; right: 0; top: -7vw; }
.sec05_list li:not(.sec05_item_en):nth-child(3) { margin: 0; top: auto; bottom: 0; left: 60vw; transform: translateX(-50%);z-index: 2;}
.sec05_list li:nth-child(1) { margin: 0; top: 10vw; left: 0; }
.sec05_list li a { height: 100%; border-width: 1.5vw; padding: 0;font-size: 3vw;}
.sec05_list li .ttl { font-size: 300%; }
.sec05_list li .en { font-size: 120%; margin: 0 0 2vw; }
.sec05_list li .btn { width: 70%; max-width: 100%; height: 7vw;padding: 0 0 0.5vw; }
.sec05_list li .btn:before, .sec05_list li .btn:after { width: 1.6vw; height: 1.6vw; left: 3vw; top: calc(50% - 0.8vw); }
.sec05_list { width: 100%; height: 96vw; margin: 0; display: block; }
.sec05_list:after { right: auto; left: -15px; border-top-right-radius: 5vw; border-bottom-right-radius: 5vw; width: calc(100% + 23px); height: calc(100% - 7vw); }
.sec05_list:before { width: 130vw; height: 130vw; top: calc(50% - 75vw); left: calc(50% - 62vw); }
.sec05_item_en { font-size: 20vw; left: -20px; top: calc(50% - 10vw); }
/* sec06 */
.idx_en_lager { font-size: 23vw; left: -5px; top: 2vw;text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.75517px 0.958851px 0px, rgb(255, 255, 255) 1.0806px 1.68294px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.81859px 0px, rgb(255, 255, 255) -1.60229px 1.19694px 0px, rgb(255, 255, 255) -1.97998px 0.28224px 0px, rgb(255, 255, 255) -1.87291px -0.701566px 0px, rgb(255, 255, 255) -1.30729px -1.5136px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.91785px 0px, rgb(255, 255, 255) 1.41734px -1.41108px 0px, rgb(255, 255, 255) 1.92034px -0.558831px 0px;}
.sec06 { padding: 50px 0; }
.sec06_txt { padding: 0; margin: 0 0 30px; }
.sec06_list { display: block; margin-bottom: 40px; }
.sec06_item { width: 100%; margin: 0 auto 30px;border-radius: 20px;}
.sec06_item_img img { border-top-left-radius: 20px; border-top-right-radius: 20px; }
.sec06_item_txt { font-size: 20px; padding: 0 15px 25px; }
.sec06_item_txt:before { margin-bottom: 10px; width: 70px; height: 70px; font-size: 30px; border-width: 3px; }
/* sec07 */
.sec07 { padding: 50px 0; }
.sec07 .inner { display: block; }
.sec07_main { display: block; width: 100%;margin-bottom: 0;}
.sec07_main:not(:last-child):after {display: none;}
.sec07_main:last-child {margin-bottom: 0;}
.sec07_list li { border-bottom: 1px solid #bfbfbf; padding: 0; margin: 0; }
.sec07_list li a {padding: 20px 0;}
.sec07_list li .date { font-size: 100%; width: 100px;margin: 0;}
.sec07 .idx_ttl .ja { margin: 0; }
.sec07 .idx_ttl {margin-bottom: 10px;width: 100%;margin-top: 0;}
	.sec07 .btn {position: relative;top: 0;}
	.sec07_scroll {max-height: 301px;height: auto;margin-bottom: 30px;width: 100%;border: none;padding: 0;}
.sec07_list li .img { width: 100px; height: 100px; margin-right: 20px; }
.sec07_list li .date.show:before { font-size: 12px; height: 20px; width: 54px; margin: 0; }
/* sec08 */
.sec08 { padding: 50px 0;margin-bottom: 50px;}
.sec08_main { width: 100%;padding: 0 15px; }
.sec08 .idx_ttl .ja { margin: 0 0 0 -28px; font-size: 280%; }
.sec08_img { position: relative; left: 0; top: 0; text-align: center; width: 100%;max-width: 400px;margin: 0 auto;}
.sec08 .idx_ttl { margin: 0;text-align: center;}
.sec08_txt { font-size: 20px; margin: 0 0 25px; }
.sec08 .idx_en_lager { left: -5px; top: -13vw; width: 95%; }
.sec08 .btn a {margin: 0 auto;}
.sec08:after { width: calc(100% - 30px); left: 15px; border-radius: 30px;transform: none;}
/* sec09 */
.sec09_list {display: block;margin-bottom: 35px;}
.sec09_item { max-width: 420px; width: 100%; margin: 0 auto 100px;padding-left: 40px;}
.sec09_item:nth-child(3n) { margin-right: auto;margin-bottom: 0;}
.sec09_item:before { left: 0; width: 90px; height: 90px; top: -50px; }
.sec09_item_img .txt { left: -60px; }
.sec09_item:nth-child(3) .sec09_item_img .txt { left: -85px; }
.sec09_txt { margin: 0 0 70px; }
.sec09 { padding: 30px 0 30px; }
/*============ FOOTER ============*/
footer{margin-bottom: 70px;}
.ft_map{width: 100%;height: 220px;}
.ft_main { padding: 40px 0; }
.ft_main .inner { display: block; }
.ft_info { text-align: center; }
.ft_link {display: none;}
.ft_btn a { margin: 0 auto; font-size: 18px; width: 300px; max-width: 100%; height: 56px; }
.ft_time { margin: 0 0 30px; }
.ft_btn a:before {width: 24px; height: 17px; margin: 2px 10px 0 0;}



/* sp contact */
.sp_contact{display:flex;justify-content:center;width:100%;position:fixed;left:0;z-index:10; bottom:-70px;transition: all 0.3s;}
.sp_contact.show{bottom: 0;}
.sp_contact li{width:50%;}
.sp_contact li a{width:100%;height:100%;display:flex;justify-content:center;align-items:center;font-weight: 600;padding: 8px 0;line-height: 1.5em;text-align: center;}
.sp_contact li a  >span{position:relative;}
.sp_contact li a > span::before, .sp_contact_tel a span.num::before{content:"";position:absolute;width:20px;height:20px;left:-5px;top:calc(50% - 10px)}
.sp_contact_tel{background-color:var(--green-light);font-size: 11px;}
.sp_contact_tel a span.num::before{background:url("../images/ic_tel_bot.svg") no-repeat center /16px}
.sp_contact_mail{background-color:var(--mcolor)}
.sp_contact_mail a > span::before{background:url("../images/ic_contact.svg") no-repeat center /20px;}
.sp_contact li a .num { display: block;position: relative;padding-left: 20px;font-size: 190%;margin: 0 0 5px;}
	.sp_contact li.sp_contact_mail a {color: #fff;}
	.sp_contact li.sp_contact_mail a span {padding-left:25px}

/* to top */
.to_top{width:40px;right:10px;bottom: 80px;}
.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}
/*============ END 750 ============ */

}



/* screen-max:460px */
@media screen and (max-width: 440px) {
.sp440 {display: block !important;}
.pc440{display: none !important}
	.mv_txt_lager {font-size: 5.5vw;}
	.mv_txt_info {font-size: 4vw;}
	.sec01_list li {font-size: 17px;}
	.sec02_top_ttl .lager { font-size: 115%; }
.sec03_item { width: 100%; }
.sec03_item_img:before { width: 22vw; height: 22vw;right: -1vw;bottom: -1vw;}
.sec04_item_list li:not(:last-child) { margin-right: 1vw; }
.sec04_item_list li { width: 24vw; height: 24vw; font-size: 3vw; }
.sec04_item_list li .txt:before { width: 10vw; height: 10vw;}
.sec04_item_ttl { font-size: 22px; }
.sec04_item_en { font-size: 2.4vw; left: -10vw; top: 9vw; }
.sp_contact li.sp_contact_mail a { font-size: 3.7vw; }
.sp_contact li a > span::before { width: 5vw; height: 5vw; left: -0.5vw; top: calc(50% - 2.5vw); }
.sp_contact li.sp_contact_mail a span { padding-left: 6vw; }
.sp_contact_tel { font-size: 2.8vw; }
.sp_contact li a { padding: 2vw 0; }
footer { margin-bottom: 18vw; }
.sp_contact_tel a span.num::before { background-size: 4vw auto; top: -0.5vw; width: 5vw; height: 5vw; }
.to_top { bottom: 19vw;width: 35px;}
.idx_ttl {font-size: 16px;}
.idx_en_lager {text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;}
.sec09_item_img .txt { max-width: 80%; top: calc(50% + 4vw);left: -12vw;width: 250px;}
.sec09_item:nth-child(3) .sec09_item_img .txt { left: -17vw; }
.sec09_item:before { width: 70px; height: 70px; top: -35px; }
.sec09_item { padding-left: 30px; margin-bottom: 70px; }
.sec09_item_ttl {font-size: 24px;}
.sec09_item_ttl .en {font-size: 60%;margin-top: -5px;}
.sec09_item_img .img img { border-radius: 20px; }
}

/* screen-max: 360px */
@media screen and (max-width: 360px) {
	.sp360 {display: block!important;}
	.sec02_ttl, .sec06_item_txt {font-size: 18px;}
	.sec08_txt {font-size: 17px;}
	.sec08 .idx_ttl .ja { margin: 0 0 0 -11px; font-size: 250%; }
	.sec02_list li .ttl { font-size: 110%; }
	.sec02_list li .ttl:before { width: 22px; height: 20px; left: -27px; top: 5px; }
	.sec01_list li {font-size: 15px;}
	.sec01_list li .img { width: 70px; margin-right: 10px; }
}