.sp440{display:none}

@media screen and (min-width: 751px) {
a[href^="tel:"]{pointer-events: none;}
.sp{display:none}

	.h_btn a:hover, .sec10_btn li.sec10_btn_mail a:hover {box-shadow: 0px 0px 0px #d16b18; transform: translate(0px, 5px) scale(1, 1); transition-duration: 100ms;}
	.sec12_list dt:hover, .to_top:hover {opacity: 0.7;}
	.sec13 .sec10_ttl .txt {white-space: nowrap;}
}

@media screen and (min-width: 751px) and (max-width: 1600px){
	#logo { width: 23%; }
}

@media screen and (min-width: 751px) and (max-width: 1500px){
.inner{padding-left: 30px;padding-right: 30px;}
	.h_inner {padding: 0 20px 0 30px;}
#logo { width: 330px; }
	.h_btn a, .h_tel {height: 55px;}
	.h_tel {font-size: 13px;}
	.h_tel .ttl { padding: 1px 0 0; }
	.sec09_item_img .img:not(:last-child):after {left: calc(100% + 8px);}

}
@media screen and (min-width: 751px) and (max-width: 1400px){
	.h_inner {padding: 0 15px;}
#logo { width: 290px; }
.mv_note { font-size: 20px; margin-bottom: 5px;}
	.mv h2 { font-size: 48px; margin-bottom: 0;}
	.mv_txt { font-size: 22px; width: 440px; height: 90px; margin-bottom: 20px;}
	.mv_txt .img img { width: 130px; }
	.mv_txt .price { font-size: 14px; width: 110px; height: 110px; }
	.mv { height: 500px; }
	.mv .inner:after { width: 55%; }
	.mv .inner { padding-top: 60px; }
	.mv h2 .note { width: 110px; height: 110px; font-size: 16px; left: -104px; top: -75px; }
	.mv:before { background-position: right center; }
	.mv:after { background-position: left center; }
	.h_box .h_btn a { width: 260px; }
	.h_tel{margin-right: 10px;width: 240px;}
}

/* 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}

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

/*============ HEADER ============*/
.h_box { background: rgba(0, 0, 0, 0.5); padding: 10px 0; }
.h_inner{padding: 0 10px;}
	.h_right {display: none;}
#logo { width: 300px; max-width: 80%;}

/*============ Main ============*/
main{}

/* MAIN VISUAL */
.mv { height: auto;padding: 0;background: #fff;z-index: 2; }
.mv:after { position: relative; display: block; height: 60vw; margin: 0 0 0 auto;top: auto; clip-path: polygon(25% 0%, 100% 0%, 100% 100%, 0% 100%); width: 60%; }
.mv:before { height: 60vw; top: auto; bottom: 0; width: 55%; clip-path: polygon(0 0, 100% 0%, 75% 100%, 0% 100%); }
.mv .inner { padding: 80px 15px 40px; }
.mv .inner:after { width: 90%; }
.mv_note { font-size: 3.2vw; padding: 0 3vw; margin: 0 0 1.5vw; }
.mv h2 { font-size: 9vw; margin: 0 0 4vw; }
.mv_txt { font-size: 3.8vw; width: 65vw; height: 14vw; border-width: 0.6vw; margin-bottom: 5vw; border-radius: 3vw; left: -14vw;}
.mv_txt .img { margin: -4vw 2vw 0 0; }
.mv_txt img { max-width: 22vw; }
.mv_txt .price { width: 16vw; height: 16vw; font-size: 2vw; right: -12vw; top: -5vw; padding: 1.5vw 0 0; }
.mv h2 .note { width: 16vw; height: 16vw; top: -9vw; left: -16vw; font-size: 2.3vw; padding: 1vw 0 0; }
.mv h2 .note:after { width: 3vw; height: 2vw; right: 1vw; bottom: 1vw; }
.mv_note:before, .mv_note:after { width: 1.6vw; height: 2vw; bottom: 1vw; }
.mv .h_btn a { width: 60vw; height: 12vw; font-size: 4vw; }
.mv .h_btn a:before { width: 3vw; height: 4.5vw; margin: 0 1.5vw 0 1vw; }
.mv_txt .small { right: -1vw; bottom: -3vw; }
.mv .txt_dot>span:before { width: 0.8vw; height: 0.8vw; top: -0.5vw; left: calc(50% - 0.4vw); }
.mv_txt .price.yellow { right: -29vw;}
.mv .mv_note .txt_dot>span:before { width: 1.2vw; height: 1.2vw; left: calc(50% - 0.6vw); }
.mv_txt .price:after { right: 2vw; top: 2vw; }
.mv_bottom { font-size: 2.5vw; }
.mv .h_btn { margin-bottom: 3vw; }
.mv_txt .price .num { top: 0.3vw; left: -0.4vw; }
/* sec01 */
.sec01 .inner { flex-direction: column; }
.sec01 { padding: 30px 0 0; }
.sec01_txt { font-size: 20px; margin: 0 0 25px; display: block; text-align: center;}
.sec01_right { margin: 0; }
.sec01_txt .img { display: block; margin: 0 0 10px; }
/* sec02 */
.sec02 { padding: 55px 0 100px; }
	.sec02_item {margin: 0 20px;}
/* sec03 */
.sec03_list { display: block; }
.idx_ttl { font-size: 26px; margin: 0 0 30px; }
.idx_ttl .ja { min-width: 400px; height: 74px; padding: 0 20px; }
.sec03_item { width: 100%; margin: 60px 0 0; padding: 30px; }
.idx_ttl .en { font-size: 300%; top: -50px; left: 0; }
.sec03_item_note { font-size: 18px; width: 160px; height: 50px; top: -25px;left: calc(50% - 80px) }
.sec03_item_note:after { height: 14px; bottom: -11px; }
.sec03_item_txt li { font-size: 18px; padding: 0 0 8px 30px; margin: 0 0 5px; }
.sec03_item_txt li:before { width: 16px; height: 16px; top: 11px; left: 5px; }
.sec03_img { width: 280px; margin-top: -20px !important; }
.sec03:after { width: 80px; height: 30px; left: calc(50% - 40px); bottom: -30px; }
.sec03 { background-size: 800px auto; }
.sec03:before { height: 50px; background-size: auto 100%; top: -49px; }
/* sec04 */
.sec04_ttl { display: block; text-align: center; margin: 0 0 30px; }
.sec04_ttl .note { width: 150px; height: 150px; margin: 0 auto; padding: 0 0 4px 5px; }
.sec04 { padding: 60px 0; }
.sec04_ttl .ttl .img { width: 120px; top: 0px; }
.sec04_ttl .ttl { font-size: 24px; }
.sec04_list li:not(:last-child):after { width: 34px; height: 40px; left: calc(100% + 10px); top: calc(50% - 20px); }
.sec04_list li { width: calc((100% - 50px) / 2); position: relative; }
.sec04_list li .ttl { width: 60px; height: 26px; }
.sec04_list li:nth-child(2) .ttl { font-size: 18px; width: 64px; }
.sec04_list { margin-bottom: 20px; }
.sec04_txt { padding: 0; }
.sec04_list li:nth-child(2):after { width: 25vw; height: 24vw; right: -3vw; bottom: -4vw; }
/* sec05 */
.sec05 { background-size: 800px auto; margin-top: -30px; padding: 50px 0;position: relative;z-index: 2;}
.sec05:after {content: '';position: absolute;width: 800px;height: calc(100% - 100px);bottom: 0;left: 50%;transform: translateX(-50%);z-index: -2;pointer-events: none;background: #F0F6FF;background: linear-gradient(90deg, rgba(240, 246, 255, 1) 0%, rgba(224, 237, 255, 1) 100%);}
.sec05_ttl { font-size: 20px; padding: 0 0 20px; margin: 0 0 25px; }
.sec05_ttl .img { width: 120px; top: 0; }
.sec05_ttl:after { width: 150px; left: calc(50% - 75px); }
.sec05_item { width: 200px; height: 200px; font-size: 18px; padding: 0!important; margin-bottom: 25px; justify-content: center; }
.sec05_item:after { width: 60px!important; height: 40px!important; margin: 10px auto -10px; background-size: contain;}
.sec05_item .lager { font-size: 120%; margin-top: 5px!important;}
.sec05_list { max-width: 411px; margin: 0 auto 20px; }
.sec05_txt { font-size: 17px; line-height: 2.5em; max-width: 411px; background-size: auto 2px; }
.sec05_txt .txt { background-size: auto 2px; }
.sec05_item:before { font-size: 80px; }
/* sec06 */
.sec06 .idx_ttl .en { top: -65px; }
.sec06 .idx_ttl img { width: 120px; margin: 0 5px 0 0; }
.idx_ttl .ja:before, .idx_ttl .ja:after { border-width: 2px; }
.sec06 { padding: 54px 0 45px; }
.sec06_item { display: block; padding: 0; }
.sec06_item_note { font-size: 20px; border-width: 3px; padding: 0 0 3px; margin: 0 0 15px; }
.sec06_item:before { left: 0; font-size: 90px; top: -34px; }
.sec06_item_left .sec06_item_note:before { display: none;}
.sec06_item_left:before { content: ''; position: absolute; width: 2px; height: calc(100% - 50px); background: url(../images/sec07_line.png) repeat-y top center / 100% auto; top: 50px; left: 5px; }
	.sec06_item_left:after {content: '';position: absolute;background: url("../images/sec06_arr.svg") no-repeat center center/100% auto;width: 10px;height: 20px;bottom:-5px;left: 1px;transform: rotate(90deg);}
.sec06_item_left { width: 100%; padding: 0 0 20px; position: relative;margin: 0;}
.sec06_item_left .sec06_item_note:after { left: 91vw; width: 10px; height: 20px; bottom: -11px;display: none; }
.sec06_item_ttl { font-size: 20px; padding: 0 0 15px;padding-left: 15px;white-space: nowrap;}
.sec06_item_img { padding: 0; width: 280px; margin: 0 auto;}
.sec06_item_ttl:after { width: 190px; height: 150px; top: -10px; }
.sec06_item_right { width: 100%; }
.sec06_item_right .sec06_item_ttl { font-size: 24px; margin: 0; padding-left: 0;}
.sec06_item_img_lager img { margin: 0 auto; width: 300px; }
.sec06_item_right .sec06_item_ttl:after { width: 160px; height: 130px; top: -15px; }
.sec06_item_img_lager .note { font-size: 16px; width: 120px; height: 120px; bottom: 36px; padding: 0; }
.sec06_item:nth-child(2) .sec06_item_img_lager { padding: 0; }
.sec06_item:nth-child(2) .sec06_item_img_lager .note{bottom: 0;}
.sec06_item:nth-child(2) .sec06_item_img_lager:after{bottom: 130px;}
.sec06_item_img_lager .small { margin: 0; text-align: center; font-size: 15px;}
.sec06_item:nth-child(3) .sec06_item_img_lager .small { text-align: left; max-width: 300px; margin: -20px auto 0; }
.sec06_item:nth-child(3) .sec06_item_img_lager .note { bottom: 88px; }
.sec06_item_img_lager { max-width: 400px; margin: 0 auto; }
.sec06_bottom { left: 0; font-size: 18px; background-size: auto 3px; line-height: 2.5em;max-width: 411px; }
.sec06_bottom .txt_sp {display: block;background: url(../images/sec07_dot.png) repeat-x bottom left / auto 3px;}
.sec06_bottom .txt {background: none;}
.sec06:after { background-size: 800px auto; height: 300px; }
.sec06_list { margin-bottom: 20px; }
/* sec07 */
.sec07 { padding: 10px 0 50px; }
.sec07:after {content: '';position: absolute;width: 800px;height: 100%;left: 50%;transform: translateX(-50%);top: 0;z-index: -2;background: #A3C8FF; background: linear-gradient(90deg, rgba(163, 200, 255, 1) 0%, rgba(209, 228, 255, 1) 100%);}
.sec07:before { background-size: 800px auto; height: 80px; top: -78px; }
.sec07_ttl { font-size: 22px; width: 250px; height: 50px; margin-bottom: -25px; padding: 0 0 2px; }
.sec07_main { max-width: 411px; margin: 0 auto; border-width: 2px; }
.sec07_list { flex-direction: column; align-items: center; height: 64%; bottom: 2%; justify-content: space-between; }
.sec07_list li .lager { font-size: 110%; margin: 0; }
.sec07_list li { line-height: 1.75em; width: 300px; height: 80px; }
	.sec07_img:after {width: 90%;height: 2px;background: url("../images/sec07_dot.png") repeat-x left center/auto 2px;left: 5%;top: calc(50% - 1px);}
/* sec08 */
.sec08 { padding: 50px 0; }
.sec08 .inner { display: block; }
.sec08_img { max-width: 100%; margin: 0 auto 30px; }
.sec08_ttl { font-size: 24px; text-align: center; margin: 0 0 25px; }
.sec08_ttl:after { width: 150px; left: calc(50% - 75px); }
/* sec09 */
.sec09 { padding: 38px 0 0; }
.sec09 .idx_ttl .ja { min-width: 350px; height: 34px; }
.sec09 .sec05_ttl img { width: 120px; }
.sec09_youtube { height: auto; aspect-ratio: 3 / 2; margin-bottom: 40px; }
.sec09_list { display: block; }
.sec09_item { width: 100%; padding: 30px 15px; }
.sec09_item_img { max-width: 470px; margin: 0 auto 20px; }
.sec09_item_img .img:not(:last-child):after { width: 20px; height: 40px; left: calc(100% + 5px); top: calc(50% - 20px); }
.sec09_item_ttl { font-size: 24px; margin: 0 0 25px; }
.sec09_item_ttl .note { width: 200px; margin: 0 auto 5px; }
.sec09_item_img .ttl { width: 60px; height: 30px; }
.sec09_item_img .img:nth-child(2) .ttl { font-size: 18px; width: 70px; }
.sec09_item_img .img { max-width: calc(50% - 15px); }
.sec09_bottom { margin: -9vw 0 0; padding: 0; }
.sec09_bottom_img { margin: 0; text-align: center; width: 38vw;}
.sec09_bottom_txt { font-size: 3vw; width: 56vw; margin: 0 2vw 0 0; line-height: 2.5em; background-size: auto 2px; }
.sec09_bottom_txt .txt { background-size: auto 2px; }
.sec09_bottom_txt .txt_sp { display: block; background: url("../images/sec09_dot.png") repeat-x bottom left/auto 2px;}
.sec09_bottom_txt .txt_sp:last-child {background: none;}
.sec09:after { background-size: 800px auto; background-position: center bottom; bottom: -25px; }
	.sec09 .sec05_ttl .img {margin: 0;width: auto;}
	.sec09_video_sp {position: relative;}
	.sec09_video_sp .fancybox {position: absolute;width: 100%;height: 100%;top: 0;left: 0;z-index: 2;}
/* sec10 */
.sec10_ttl { display: block; text-align: center; font-size: 26px; margin: -20px auto 25px; padding: 0; max-width: 400px;}
.sec10_ttl .note { font-size: 18px; width: 150px; height: 150px; margin: 0; }
.sec10_btn { margin: 0; display: block; }
.sec10_btn li { max-width: 100%; margin: 0 auto;}
.sec10_btn li.sec10_btn_tel { margin: 0 auto 20px;}
.sec10_btn li.sec10_btn_tel a {font-size: 16px;height: 100px; }
.sec10_btn li.sec10_btn_tel .ttl { width: 80px; padding: 0 0 2px; margin: 0 10px 0 0; }
.sec10_btn li.sec10_btn_tel .tel:before { width: 26px; height: 26px; }
.sec10_btn li.sec10_btn_mail a { font-size: 24px; padding: 0 0 02px; }
.sec10_btn li.sec10_btn_mail a:before { width: 20px; height: 26px; margin: 0 10px 0 0; }
.sec10 { padding: 1px 0 30px; }
/* sec11 */
.sec11 { padding: 39px 0 50px; }
.sec11 .idx_ttl .ja { min-width: 411px; }
.sec11 .idx_ttl { margin-bottom: 50px; }
.sec11_list { display: block; margin-bottom: 40px;}
.sec11_item { width: 100%; max-width: 500px; margin: 0 auto 40px; padding: 1px 15px 25px; }
.sec11_item_num { font-size: 20px; width: 110px; height: 40px; }
.sec11_item_num:after { bottom: -10px; }
.sec11_item_ttl { font-size: 26px; }
.sec11_item_note { font-size: 18px; padding: 0 0 12px; }
.sec11_bottom_txt { font-size: 19px; }
.sec11_bottom_txt .txt_sp {display: block;background: url(../images/sec07_dot.png) repeat-x bottom left / auto 3px;}
.sec11_bottom_txt .txt {background: none;}
/* sec12 */
.sec12 .idx_ttl .ja { min-width: 411px; height: 34px; }
.sec12 { padding: 39px 0 50px; }
.sec12 .idx_ttl { margin-bottom: 30px; }
.sec12_list dt { font-size: 18px; padding: 8px 30px 8px 45px; line-height: 1.5em;}
.sec12_list dt .ttl { top: 8px; }
.sec12_list dt:before { width: 16px; right: 10px; }
.sec12_list dt:after { height: 16px; top: calc(50% - 8px); right: 17px; }
.sec12_list dt .ttl, .sec12_list dd .ttl { font-size: 26px; left: 15px; }
.sec12_list dd { padding-left: 45px; padding-right: 15px;}
.sec12_list dl { border-radius: 15px; margin-bottom: 20px; }
/* sec13 */
.sec13:before { background-size: 800px auto; top: -30px; }
.sec13 .idx_ttl .ja { min-width: 411px; height: 34px; }
.sec13 .idx_ttl { margin-bottom: 30px; }
.sec13 { padding-bottom: 25px; background: linear-gradient(90deg, rgba(0, 83, 204, 1) -6%, rgba(58, 133, 221, 1) 105%);}
.sec13:after { background-size: 800px auto; }
.sec13 .sec10_ttl { margin-bottom: 43px; padding: 0 0 15px; }
.sec13 .sec10_ttl .txt { margin: 0; line-height: 1.5em; display: block; }
.char.left { margin-left: -5px; }
.char.right { margin-right: -5px; }
/*============ FOOTER ============*/
footer{margin-bottom: 60px;padding: 50px 15px;}
.ft_logo img { width: 300px; }
.ft_txt { font-size: 14px; margin: 0 0 15px; line-height: 1.75em; padding: 5px 16px; border-radius: 100px; }
.ft_bnr {margin-bottom: 30px;}
.ft_bnr img {width: 220px;}
.ft_bnr a {padding: 10px;}
/* sp contact */
.sp_contact{display:flex;justify-content:center;align-items:center;width:100%;height:60px;position:fixed;left:0;z-index:99; bottom:-75px;transition: all 0.3s;padding: 0 5px;}
.sp_contact.show{bottom: 0;}
.sp_contact li{width:280px;height:100%;}
.sp_contact li.sp_contact_mail{max-width: calc(100% - 100px);}
	.sp_contact li.sp_contact_mail .h_btn a {height: 50px;padding: 6px 0 0;max-width: 100%;}
.sp_contact li.sp_contact_tel { width: 90px;margin-left: 10px; }
	.sp_contact li.sp_contact_tel a {display: flex;justify-content: center;align-items: center;height: 55px;background: url("../images/ic_tel_sp.svg") no-repeat center center var(--mcolor);border-radius: 30px;text-indent: -50000px;}
/* to top */
.to_top { width: 50px; right: 10px; bottom: 65px; }
/*============ END 750 ============ */
.loading {position: fixed;top: 0;z-index: 56;width: 100%;height: 100%;left: 0;opacity: 0;visibility: hidden;transition: 0.3s all ease;max-width: 1920px;right: 0;margin: 0 auto;}
.loading::before {position: absolute;content: ""; top: 0;width: 100%;height: 100%;background:rgb(78,78,78,50%);top: 0;left: 0;}
.loading.active {opacity: 1;visibility: visible;}
.popup_medium {z-index: 78;opacity: 0;visibility: hidden;position: absolute;left: 0px;transition: 0.3s all ease;}
.popup_1{top: 50%;transform: translateY(-50%);padding: 0 15px;left: 0;right: 0;margin: 0 auto;position: fixed;text-align: center;max-width: 1059px}
.wrap_popup_video iframe{border-radius: 12px;width: 100%;height: 100%;}
.header_video{display: flex;justify-content: flex-end;margin-bottom: 0px}
.header_video .close_video{position: relative;width:40px;height:40px;cursor:pointer; }
.header_video .close_video::before{position: absolute;content:"";left: 0;top: -4px;background: url(../images/ic_close.svg) center /cover no-repeat;width: 40px;height: 40px;}
.popup_medium.active {display: block;opacity: 1;visibility: visible;}
.wrap_popup_video{height: auto; margin: 0 auto;aspect-ratio: 16/9;border-radius: 6px;}
}



/* screen-max:460px */
@media screen and (max-width: 440px) {
.sp440 {display: block !important;}
.pc440{display: none !important}
	.sec01_txt { font-size: 5.5vw; }
	.sec01_txt .img img { max-width: 45vw; }
	.idx_ttl .ja { min-width: 100%!important; height: auto!important; padding: 0 10px; }
	.idx_ttl { font-size: 20px; }
	.idx_ttl .en { top: -40px; }
	.sec03_item { padding: 30px 15px; }
	.sec03_item_txt li { font-size: 16px; padding-left: 20px;letter-spacing: -0.075em; }
	.sec03_img { width: 250px; }
	.sec03_item_txt li:before { left: 0; top: 9px; }
	.sec04_ttl .ttl { font-size: 20px; }
	.sec04_ttl .ttl .img { width: 100px; }
	.sec05_item { width: 44vw; height: 44vw; font-size: 4vw; }
	.sec05_item:after { width: 13vw !important; height: 8vw !important; margin: 1vw auto -2vw; background-size: contain; }
	.sec05_item .lager { margin-top: 1vw !important; }
	.sec05_txt { font-size: 3.7vw; }
	.sec06_item_right .sec06_item_ttl { font-size: 18px; }
	.sec06_item_img { width: 230px; }
	.sec06_item_img_lager img { width: 260px; }
	.sec06_item_img_lager .note { width: 100px; height: 100px; font-size: 14px; }
	.sec06_item_img_lager { max-width: 340px; }
	.sec06_item_img_lager:after { width: 40px; height: 40px; right: -10px; }
	.sec06_bottom { font-size: 5vw; }
	.sec07_list li { font-size: 4vw; width: 75vw; height: auto; padding: 2vw; }
	.sec07_ttl { font-size: 18px; width: 200px; }
	.sec08_img { padding: 0 15px; }
	.idx_ttl .ja:before, .idx_ttl .ja:after { top: 2px; }
	.sec05_ttl { font-size: 4.5vw; }
	.sec09 .sec05_ttl img { width: 24vw; }
	.sec09_item_ttl { font-size: 19px; }
	.sec09_item_ttl .note { width: 170px; padding: 0 0 2px; }
	.sec09_bottom_img { width: 28vw; }
	.sec09_bottom_txt { font-size: 3.5vw; width: auto; margin-bottom: 10vw;}
	.sec09_bottom { align-items: flex-end; margin: 0;}
	.sec10_ttl { font-size: 20px; }
	.sec10_ttl .note { font-size: 15px; width: 110px; height: 110px; }
	.sec10_ttl .note:after { bottom: -8px; }
	.sec10_btn li.sec10_btn_tel {font-size: 14px;}
	.sec10_btn li.sec10_btn_mail a { font-size: 20px; height: 80px;}
	.sec11_bottom_txt { font-size: 4.2vw; }
	.sec13 { background: linear-gradient(90deg, rgba(0, 83, 204, 1) -34%, rgba(58, 133, 221, 1) 136%); }
	.sec05_item:before { font-size: 18vw; }

address { font-size: 3.5vw; }
	.to_top {width: 45px;}
	.sp_contact li.sp_contact_tel { width: 70px; }
	.sp_contact li.sp_contact_tel a { background-size: 28px auto; }
	.sp_contact li.sp_contact_mail { max-width: calc(100% - 80px); }
	.sp_contact li.sp_contact_mail .h_btn a { font-size: 16px; }

}

/* screen-max: 360px */
@media screen and (max-width: 360px) {
.sec04_ttl .ttl .img, .sec05 .sec05_ttl .img { display: block; margin: 4px auto 2px; }
.sec10_ttl { font-size: 19px; }
}