﻿@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400..700&family=Noto+Serif+JP:wght@500..700&display=swap');


/* reset */
/* -------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
html {width:100%; height:100%; overflow-y:scroll;}
h1,h2,h3,h4,h5,h6 {font-size:100%; font-weight:bold;}
p, ul, ol, dl, address, blockquote, table, div {font-size:100%;}
p {margin:0 0 0 0;}
ol,ul {list-style:none;}
fieldset,img {border:0; vertical-align:top;}
table {border-collapse:collapse; border-spacing:0;}
caption,th {text-align:left;}
th {vertical-align:top; font-weight:normal; text-align:left;}
td {vertical-align:top;}
address,caption,cite,code,dfn,em,strong,th,var {font-style:normal; font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}

.noto_serif {font-family:"Noto Serif JP", serif;}
.noto_sans {font-family:"Noto Sans JP", sans-serif;}


/* common */
/* -------------------------------------------------------- */
html,body {font-variant-ligatures:none;}
html {font-size:62.5%;}
body {font-size:14px; font-size:1.4rem; font-family:"Noto Sans JP", sans-serif; color:#333; text-align:center; -webkit-text-size-adjust:100%; text-size-adjust:100%; background:none;}

h1, h2, h3, h4, h5, h6, h7 {line-height:1.2;}
p, li, dt, dd, th, td, address, blockquote, div {line-height:1.6;}
input, select, option, textarea, button {font-size:16px; font-size:1.6rem; font-family:"Noto Sans JP", sans-serif; line-height:1.4; vertical-align:middle; color:inherit; outline:none;}
input[type='submit'],input[type='reset'],input[type='button'], button {color:inherit; cursor:pointer; -ms-appearance:none; -webkit-appearance:none; appearance:none;}
:placeholder-shown {color:#ccc;}
::-webkit-input-placeholder {color:#ccc;}
:-moz-placeholder {color:#ccc; opacity:1;}
::-moz-placeholder {color:#ccc; opacity:1;}
:-ms-input-placeholder {color:#ccc;}

strong {font-weight:bold;}
ol {list-style-type:decimal; margin-left:2.2em;}
img {max-width:100%; width:auto; height:auto; line-height:0; vertical-align:top; border:0; display:inline;}

a {color:#004e97; text-decoration:underline;}
a:hover {color:#004e97; text-decoration:none;}


/* decision */
/* -------------------------------------------------------- */
#bpCheck {display:none;}

body .pc {display:block;}
br.pc, span.pc, img.pc {display:inline;}
body .sp, br.sp, span.sp, img.sp {display:none;}

a.off {pointer-events:none; cursor:default; opacity:0.3;}
a.tel {pointer-events:none; cursor:default;}
body.mobile a.tel {pointer-events:auto; cursor:pointer;}

@media screen and (max-width:767px){
	#bpCheck {display:block;}

	body .pc, br.pc, span.pc, img.pc {display:none;}
	body .sp {display:block;}
	br.sp, span.sp, img.sp {display:inline;}
}


/* container */
/* -------------------------------------------------------- */
#container {width:100%; overflow:hidden;}


/* header */
/* -------------------------------------------------------- */
#header {width:100%; background-color:rgba(51,51,51,0.85); position:fixed; top:0; left:0; z-index:300;}
#header .clm {width:100%; height:100px; display:flex; justify-content:space-between; align-items:center;}
#header .logo {padding:0 0 0 75px;}
#header .nav1 {display:flex; align-items:center;}
#header .nav1 > li {font-size:1.8rem; font-weight:500; line-height:1; color:#fff; padding:0 0 0 2.0em;}
#header .nav1 > li a {text-decoration:none; color:#fff; display:block; transition:opacity 0.3s ease;}
#header .nav1 > li a:hover {opacity:0.7;}
#header .nav1 > li.contact {padding-left:3.0em;}
#header .nav1 > li.contact a {width:140px; height:100px; padding:60px 0 0 0; box-sizing:border-box; background-color:#c1272d; display:flex; justify-content:center; position:relative;}
#header .nav1 > li.contact a::before {content:''; width:31px; height:31px; margin:0 0 0 -15px; background:url(../img/icon_mail.png) center center no-repeat; background-size:cover; display:block; position:absolute; top:22px; left:50%;}

#gNavBtn {width:40px; height:40px; position:fixed; top:5px; right:10px; z-index:310; cursor:pointer; display:none;}
#gNavBtn > span {width:100%; height:2px; margin:-1px 0 0 0; background-color:rgba(205,205,205,1); display:block; position:absolute; top:50%; left:0; transition-property:background-color;}
#gNavBtn > span::before,
#gNavBtn > span::after {content:''; width:100%; height:2px; background-color:rgba(205,205,205,1); display:block; position:absolute; left:0;}
#gNavBtn > span::before {top:-8px; transition-property:top;}
#gNavBtn > span::after {bottom:-8px; transition-property:bottom;}
body.load #gNavBtn,
body.load #gNavBtn > span::before,
body.load #gNavBtn > span::after {transition-duration:0.3s; transition-delay:0s; transition-timing-function:ease;}

#gNavCheck {display:none;}
#gNavCheck:checked + #header #gNavBtn > span {background-color:rgba(205,205,205,0);}
#gNavCheck:checked + #header #gNavBtn > span::before {top:0; transform:rotate(45deg); transition-property:transform;}
#gNavCheck:checked + #header #gNavBtn > span::after {bottom:0; transform:rotate(-45deg); transition-property:transform;}

@media screen and (max-width:767px){
	#header {background-color:rgba(51,51,51,0); position:absolute;}
	#header .clm {height:50px;}
	#header .logo {padding:0 0 0 5.0vw;}
	#header .logo img {width:90px;}
	#header .nav1 {text-align:left; padding:50px 0 0 0; display:block;}
	#header .nav1 > li {font-size:1.8rem; line-height:1.2; padding:2.0em 1.0em 0 1.5em;}
	#header .nav1 > li.contact {padding:2.0em 0 0 0;}
	#header .nav1 > li.contact a {width:100%; height:50px; text-align:left; padding:0 0 0 3.4em; display:flex; justify-content:left; align-items:center;}
	#header .nav1 > li.contact a::before {width:26px; height:26px; margin:-13px 0 0 0; top:50%; left:1.5em;}

	#header #gNavBtn {display:block;}
	#gNav {width:60%; height:100vh; padding:0; background-color:rgba(51,51,51,0.85); position:fixed; top:0; right:-60%; z-index:300; overflow:auto; transition:right 0.6s ease;}
	#gNavCheck:checked + #header #gNav {right:0;}
}


/* footer */
/* -------------------------------------------------------- */
#footer {color:#fff; padding:100px 0 80px 0; background-color:#333;}
#footer .logo {text-align:left;}
#footer .clm {margin:10px 0 0 0; display:flex; justify-content:space-between; align-items:center;}
#footer .clm > div:nth-of-type(1) {width:60%;}
#footer .clm > div:nth-of-type(2) {width:40%; padding:0 0 0 60px; border-left:solid 1px #cdcdcd; box-sizing:border-box; display:flex;}
#footer .clm > div:nth-of-type(2) ul:nth-of-type(1) {width:60%;}
#footer .clm > div:nth-of-type(2) ul:nth-of-type(2) {width:40%;}
#footer .address {font-size:1.8rem; line-height:2.16; text-align:left;}
#footer .nav li {font-size:1.8rem; line-height:2.16; text-align:left;}
#footer .nav a {text-decoration:none; color:#fff;}

@media screen and (max-width:767px){
	#footer {padding:40px 0;}
	#footer .logo {text-align:left;}
	#footer .logo img {width:100px;}
	#footer .clm {display:block;}
	#footer .clm > div:nth-of-type(1) {width:auto;}
	#footer .clm > div:nth-of-type(2) {width:auto; margin:30px 0 0 0; padding:0; border-left:none; display:block;}
	#footer .clm > div:nth-of-type(2) ul:nth-of-type(1) {width:auto;}
	#footer .clm > div:nth-of-type(2) ul:nth-of-type(2) {width:auto;}
	#footer .address {font-size:1.6rem; line-height:1.8;}
	#footer .nav {display:flex; flex-wrap:wrap; justify-content:center;}
	#footer .nav li {font-size:1.6rem; padding:0 1.0em;}
	#footer .nav a {text-decoration:none; color:#fff;}
}


/* contents */
/* -------------------------------------------------------- */
#contents {}

#loading-layer {width:100%; height:100%; background-color:rgba(255,255,255,0.8); display:block; position:fixed; top:0; left:0; opacity:0; pointer-events:none; z-index:9999; transition:opacity 0.3s ease;}
#loading-layer svg {width:60px; height:60px; margin:-30px 0 0 -30px; display:block; position:absolute; top:50%; left:50%;}
body.loading #loading-layer {opacity:1; pointer-events:auto;}
body.loading #loading-layer svg {animation:loading 2s linear 0s infinite normal none;}
@keyframes loading {
	0% {transform:rotate(0deg);}
	100% {transform:rotate(360deg);}
}

.sec {max-width:1130px; margin:0 auto; padding:0 15px; box-sizing:border-box;}

@media screen and (max-width:767px){
	.sec {padding:0 5.0vw;}
}


.mv-sec {width:100%; height:880px; margin:0 0 -2px 0; padding:245px 0 0 0; background:#f2f2f2 url(../img/bg_01.jpg) center top no-repeat; background-size:100% 100%; box-sizing:border-box;}
.mv-sec .clm {display:flex; justify-content:space-between;}
.mv-sec .clm > div:nth-of-type(1) {text-align:left; padding:0 2.0em 70px 0; flex:1; position:relative;}
.mv-sec .clm > div:nth-of-type(2) {width:407px;}
.mv-sec .txt1 {font-family:"Noto Serif JP", serif; font-size:3.5rem; font-weight:600; line-height:1.2; color:#fff; padding:0.1em 0.8em 0.2em 0.8em; background-color:#c1272d; display:inline-block;}
.mv-sec .txt2 {font-family:"Noto Serif JP", serif; font-size:5.0rem; font-weight:800; line-height:1.4; color:#fff; margin:0.5em 0 0 0;}
.mv-sec .txt2 span {font-size:70%; display:block;}
.mv-sec .txt3 {position:absolute; bottom:0; left:0;}
.mv-sec .txt3 a {width:350px; height:65px; font-size:2.2rem; font-weight:500; line-height:1.2; text-decoration:none; color:#fff; margin:0 auto; padding:0 50px 0 0; border:1px solid #c1272d; box-sizing:border-box; display:flex; justify-content:center; align-items:center; position:relative; transition:opacity 0.3s ease;}
.mv-sec .txt3 a:hover {opacity:0.7;}
.mv-sec .txt3 a::before {content:''; width:65px; height:16px; margin:-8px 0 0 0; background:url(../img/arrow_01.png) center center no-repeat; background-size:cover; display:block; position:absolute; top:50%; right:22px;}

.content-sec1 {margin:0 0 -2px 0; padding:25px 0 0 0; background:#f2f2f2; position:relative; z-index:10;}
.content-sec1 .txt1 {font-size:4.3rem; font-weight:700; line-height:1.2; color:#fff; margin:0 auto; padding:0.1em 0.8em 0.2em 0.8em; background-color:#333; display:inline-block;}
.content-sec1 .txt2 {margin:40px auto 0 auto; display:inline-block;}
.content-sec1 .txt2 > li {font-size:4.0rem; font-weight:700; line-height:1.2; text-align:left; padding:0.5em 0 0.5em 72px; border-bottom:solid 1px #626262; position:relative;}
.content-sec1 .txt2 > li::before {content:''; width:54px; height:54px; background:url(../img/icon_check.png) center center no-repeat; background-size:cover; display:block; position:absolute; top:0.4em; left:0;}

.content-sec2 {padding:250px 0; position:relative;}
.content-sec2::before {content:''; width:100%; height:280px; background:url(../img/bg_02.png) center top no-repeat; background-size:100% 100%; display:block; position:absolute; top:0; left:0;}
.content-sec2::after {content:''; width:100%; height:270px; background:url(../img/bg_03.png) center bottom no-repeat; background-size:100% 100%; display:block; position:absolute; bottom:0; left:0;}
.content-sec2 .txt1 {font-size:4.5rem; font-weight:700; line-height:1.8; text-align:center; position:relative;}
.content-sec2 .txt1 span {font-size:122%; line-height:1; color:#c1272d; margin:0 0.2em; padding:0.2em 0.3em 0.3em 0.3em; border:1px solid #333; display:inline-block;}
.content-sec2 .txt1::before {content:''; width:1px; height:160px; background-color:#c1272d; display:block; position:absolute; top:-200px; left:50%;}
.content-sec2 .txt2 {text-align:left; color:#fff; margin:70px 0 0 0; padding:70px 35px 35px 35px; background-color:#333; position:relative;}
.content-sec2 .txt2 dt {font-size:3.6rem; font-weight:700; line-height:1.2; padding:0.2em 0.5em 0.3em 0.5em; background-color:#9e2227; position:absolute; top:-35px; left:35px;}
.content-sec2 .txt2 dd {font-size:2.6rem; font-weight:400; line-height:1.8;}
.content-sec2 .txt3 {margin:60px 0 0 0;}

.content-sec3 {margin:0 0 -2px 0; padding:15px 0 320px 0; background-color:#fce4df; position:relative;}
.content-sec3::after {content:''; width:100%; height:270px; background:url(../img/bg_04.png) center bottom no-repeat; background-size:100% 100%; display:block; position:absolute; bottom:0; left:0;}
.content-sec3 .txt1 {font-size:4.0rem; font-weight:700; line-height:1.2; text-align:center;}
.content-sec3 .txt2 {margin:40px -16px 0 -16px; display:flex;}
.content-sec3 .txt2 > div {padding:0 16px; box-sizing:border-box; flex:1;}
.content-sec3 .txt2 dl {min-height:320px; padding:25px 15px; background-color:#fff; box-sizing:border-box;}
.content-sec3 .txt2 dt {width:100%; min-height:90px; font-size:2.7rem; font-weight:700; line-height:1.3; text-align:center; color:#fff; background:-webkit-linear-gradient(left, #c1272d, #85332d); background:linear-gradient(to right, #c1272d, #85332d); border-radius:10px; box-sizing:border-box; display:flex; justify-content:center; align-items:center;}
.content-sec3 .txt2 dd {font-size:2.0rem; font-weight:400; line-height:1.6; text-align:left; padding:1.0em 0.5em 0 0.5em;}

.content-sec4 {padding:80px 0 50px 0; background-color:#e6e6e6; position:relative;}
.content-sec4 .txt1 {font-size:4.0rem; font-weight:700; line-height:1.2; text-align:center; position:relative;}
.content-sec4 .txt1::before {content:''; width:1px; height:160px; background-color:#754c24; display:block; position:absolute; top:-280px; left:50%;}
.content-sec4 .txt2 {text-align:left; color:#fff; padding:0 30px; box-sizing:border-box;}
.content-sec4 .txt2 dt {font-size:3.5rem; font-weight:700; padding:0 0 0.4em 0; position:relative;}
.content-sec4 .txt2 dt::before {content:''; width:60px; height:1px; background-color:#b54146; display:block; position:absolute; bottom:0; left:0;}
.content-sec4 .txt2 dd {font-size:2.5rem; font-weight:400; line-height:1.5; margin:0.6em 0 0 0;}
.content-sec4 .clm > div {margin:80px 0 0 0; display:flex; align-items:center; position:relative;}
.content-sec4 .clm > div::before {content:''; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover; display:block; position:absolute; top:0;}
.content-sec4 .clm > div:first-of-type {margin-top:50px;}
.content-sec4 .clm > div > dl {width:50%; position:relative; z-index:5;}
.content-sec4 .clm > div > div {width:50%; position:relative; z-index:5;}
.content-sec4 .clm > div > div img {width:100%;}
.content-sec4 .clm > div:nth-of-type(odd)::before {background-image:url(../img/bg_07_01.jpg); right:50%;}
.content-sec4 .clm > div:nth-of-type(odd) > dl {order:1;}
.content-sec4 .clm > div:nth-of-type(odd) > div {order:2;}
.content-sec4 .clm > div:nth-of-type(even)::before {background-image:url(../img/bg_07_02.jpg); left:50%;}
.content-sec4 .clm > div:nth-of-type(even) > dl {order:2;}
.content-sec4 .clm > div:nth-of-type(even) > div {order:1;}

.content-sec5 {padding:180px 0 100px 0; position:relative;}
.content-sec5::before {content:''; width:100%; height:150px; background:url(../img/bg_05.png) center top no-repeat; background-size:100% 100%; display:block; position:absolute; top:0; left:0;}
.content-sec5 .txt1 {font-size:5.5rem; font-weight:700; line-height:1.4; text-align:center;}
.content-sec5 .txt1 span {font-size:64%; display:block;}
.content-sec5 .txt2 dt {font-size:3.5rem; font-weight:700; text-align:center; padding:90px 0 0 0; position:relative;}
.content-sec5 .txt2 dt::before {content:''; width:78px; height:78px; margin:0 0 0 -10px; background-color:#fce4df; border-radius:100%; display:block; position:absolute; top:0; left:50%;}
.content-sec5 .txt2 dt span {width:100%; font-size:5.5rem; line-height:1.4; display:block; position:absolute; top:0; left:0; z-index:5;}
.content-sec5 .txt2 dd {font-size:2.0rem; font-weight:400; line-height:1.6; text-align:left; margin:1.5em 0 0 0;}
.content-sec5 .clm > div {margin:120px 0 0 0; display:flex; justify-content:space-between;}
.content-sec5 .clm > div > dl {width:50%;}
.content-sec5 .clm > div > div {width:44.2%;}
.content-sec5 .clm > div:nth-of-type(odd) > dl {order:1;}
.content-sec5 .clm > div:nth-of-type(odd) > div {order:2;}
.content-sec5 .clm > div:nth-of-type(even) > dl {order:2;}
.content-sec5 .clm > div:nth-of-type(even) > div {order:1;}

.content-sec6 {margin:0 0 -2px 0; padding:200px 0 340px 0;  background:url(../img/bg_06.png) center top no-repeat; background-size:100% 100%; position:relative;}
.content-sec6 .txt1 {font-size:3.5rem; font-weight:700; line-height:1.2; color:#fff; background-color:#231815; margin:0 auto; padding:0.2em 1.2em 0.3em 1.2em; display:inline-block;}
.content-sec6 .clm {margin:70px 0 0 0; position:relative;}
.content-sec6 .splide__arrow {width:90px; height:90px; margin:-45px 0 0 0; background:#fff url(../img/arrow_02.png) center center no-repeat; background-size:64.4% auto; border:none; border-radius:100%; box-sizing:border-box; position:absolute; top:50%; z-index:10;}
.content-sec6 .splide__arrow svg {display:none;}
.content-sec6 .splide__arrow--prev {left:50px;}
.content-sec6 .splide__arrow--next {right:50px; transform:scale(-1,1);}

.content-sec7 {margin:0 0 -2px 0; padding:0 0 300px 0; background-color:#fce4df; position:relative;}
.content-sec7::before {content:''; width:100%; height:172px; background:url(../img/bg_08.png) center bottom no-repeat; background-size:100% 100%; display:block; position:absolute; bottom:0; left:0;}
.content-sec7 .txt1 {text-align:left;}
.content-sec7 .txt1 .jp {font-size:3.5rem; font-weight:700; line-height:1; display:block;}
.content-sec7 .txt1 .en {font-size:11.3rem; font-weight:400; line-height:1; margin:0.2em 0 0 0; display:block;}
.content-sec7 .txt2 {max-width:570px; text-align:left; margin:0 auto; padding:20px 0 0 0; box-sizing:border-box;}
.content-sec7 .txt2 dt {font-size:2.9rem; font-weight:700; line-height:1.3;}
.content-sec7 .txt2 dt span.sub {font-size:80%; font-weight:500; letter-spacing:0.3em; padding:0 0 0.5em 0; display:block;}
.content-sec7 .txt2 dt span.main {min-height:2.6em; display:flex; align-items:center;}
.content-sec7 .txt2 dd {font-size:2.0rem; font-weight:500; line-height:1.5; margin:1.0em 0 0 0;}
.content-sec7 .clm > div {margin:60px 0 0 0; background-color:#fff; display:flex;}
.content-sec7 .clm .ctx {width:65%; padding:15px; box-sizing:border-box;}
.content-sec7 .clm .img {width:35%;}
.content-sec7 .clm .img img {width:100%;}

.contact-sec {padding:180px 0; background-color:#f2f2f2;}
.contact-sec .txt1 {font-size:3.5rem; font-weight:700; text-align:center; padding:0 0 1.2em 0; position:relative;}
.contact-sec .txt1::before {content:''; width:64px; height:1px; margin:0 0 0 -32px; background-color:#cd595e; display:block; position:absolute; bottom:0; left:50%;}
.contact-sec .txt2 {text-align:center; padding:10px 0 0 0;}
.contact-sec .txt2 p {font-size:2.0rem; font-weight:500; line-height:1.5; margin:1.5em 0 0 0;}
.contact-sec .txt3 {font-size:2.0rem; font-weight:500; text-align:left; color:#c1272d;}
.contact-sec .txt4 {max-width:710px; margin:0 auto; padding:15px 0 0 0;}
.contact-sec .txt4 dl {text-align:left; margin:30px 0 0 0;}
.contact-sec .txt4 dt {font-size:2.5rem; font-weight:500;}
.contact-sec .txt4 dt span {font-size:80%; color:#c1272d; margin:0 0 0 0.5em; display:inline-block;}
.contact-sec .txt4 dd {font-size:2.5rem; font-weight:500; margin:5px 0 0 0;}
.contact-sec .txt4.type1 {max-width:940px; padding:35px 0 0 0;}
.contact-sec .txt4.type1 dl {margin:30px 0 0 0;}
.contact-sec .txt5 {font-size:2.5rem; font-weight:700;}
.contact-sec .txt6 {font-size:2.0rem; font-weight:500; margin:0.5em 0 0 0;}
.contact-sec .form {margin:40px 0 0 0; padding:20px 25px 60px 25px; background-color:#fff;}
.contact-sec .form .erro-txt {font-size:2.1rem; color:#c00; margin:0.3em 0 0 0;}
.contact-sec .form .btns {margin:50px 0 0 0; display:flex; flex-wrap:wrap; justify-content:center; align-items:center;}
.contact-sec .form .btns > div {width:360px; padding:20px 10px 0 10px; box-sizing:border-box;}
.contact-sec .form input.inputCheck {display:none;}
.contact-sec .form input[type="text"],
.contact-sec .form input[type="email"],
.contact-sec .form input[type="number"],
.contact-sec .form select,
.contact-sec .form textarea {width:100%; font-size:2.5rem; font-weight:500; line-height:1; padding:0.5em 1.0em; background-color:#e6e6e6; border:none; box-sizing:border-box; outline:none;}
.contact-sec .form textarea {height:260px; line-height:1.2; background-color:#fff; border:1px solid #656565; resize:none;}
.contact-sec .form option {background-color:#fff;}
.contact-sec .form button[type="submit"],
.contact-sec .form button[type="button"] {width:100%; height:60px; font-size:3.0rem; line-height:1; text-decoration:none; color:#fff; background:-webkit-linear-gradient(left, #c1272d, #85332d); background:linear-gradient(to right, #c1272d, #85332d); border:none; box-sizing:border-box; display:flex; justify-content:center; align-items:center; transition:opacity 0.3s ease;}
.contact-sec .form button[type="submit"]:hover,
.contact-sec .form button[type="button"]:hover {opacity:0.7;}
.contact-sec .form.conf .txt4 dt {font-weight:700;}
.contact-sec .form.conf .txt4 dt::before {content:'[';}
.contact-sec .form.conf .txt4 dt::after {content:']';}
.file-box {width:100%; padding:10px 20px; background-color:#e6e6e6; box-sizing:border-box; display:flex; align-items:center; position:relative; cursor:pointer;}
.file-box > input[type="file"] {width:100%; height:100%; position:absolute; top:0; left:0; opacity:0; z-index:5; cursor:pointer;}
.file-box > span.pik {width:220px; height:42px; font-size:2.5rem; font-weight:500; vertical-align:middle; color:#fff; margin:0 1.0em 0 0; background-color:#333; border:none; box-sizing:border-box; display:flex; justify-content:center; align-items:center;}
.file-box > span.name {font-size:2.5rem; font-weight:500; line-height:1;}

@media screen and (max-width:1440px){
	.mv-sec {background-size:1440px 100%;}
	.content-sec2::before {background-size:1440px 100%;}
	.content-sec2::after {background-size:1440px 100%;}
	.content-sec3::after {background-size:1440px 100%;}
	.content-sec5::before {background-size:1440px 100%;}
	.content-sec6 {background-size:1440px 100%;}
	.content-sec7::before {background-size:1440px 100%;}
}
@media screen and (max-width:767px){
	.mv-sec {height:auto; padding:60px 0 20px 0; background-size:100% 100%;}
	.mv-sec .clm {display:block;}
	.mv-sec .clm > div:nth-of-type(1) {text-align:center; padding:0;}
	.mv-sec .clm > div:nth-of-type(2) {width:auto; margin:30px 0 0 0;}
	.mv-sec .txt1 {font-size:2.0rem; padding:0.1em 0.5em 0.2em 0.5em;}
	.mv-sec .txt2 {font-size:2.4rem; margin:0.5em 0 0 0;}
	.mv-sec .txt3 {margin:20px 0 0 0; position:static;}
	.mv-sec .txt3 a {width:100%; height:40px; font-size:1.8rem; padding:0 50px 0 0;}
	.mv-sec .txt3 a::before {width:40px; background-size:100% auto; right:15px;}

	.content-sec1 {padding:30px 0 0 0;}
	.content-sec1 .txt1 {font-size:1.8rem; padding:0.1em 0.5em 0.2em 0.5em; display:block;}
	.content-sec1 .txt2 {margin:10px auto 0 auto;}
	.content-sec1 .txt2 > li {font-size:2.0rem; padding:0.5em 0 0.5em 30px;}
	.content-sec1 .txt2 > li::before {width:26px; height:26px;}

	.content-sec2 {padding:80px 0 60px 0;}
	.content-sec2::before {height:100px;}
	.content-sec2::after {height:100px;}
	.content-sec2 .txt1 {font-size:2.2rem;}
	.content-sec2 .txt1::before {height:40px; top:-50px;}
	.content-sec2 .txt2 {margin:50px 0 0 0; padding:20px 5.0vw 5.0vw 5.0vw;}
	.content-sec2 .txt2 dt {font-size:1.8rem; padding:0.2em 0.5em 0.3em 0.5em; top:-15px; left:15px;}
	.content-sec2 .txt2 dd {font-size:1.6rem;}
	.content-sec2 .txt3 {margin:10px -5.0vw 0 -5.0vw;}

	.content-sec3 {padding:0 0 100px 0;}
	.content-sec3::after {height:100px;}
	.content-sec3 .txt1 {font-size:2.0rem;}
	.content-sec3 .txt2 {margin:0; display:block; position:relative; z-index:5;}
	.content-sec3 .txt2 > div {margin:15px 0 0 0; padding:0;}
	.content-sec3 .txt2 dl {min-height:0; padding:5.0vw;}
	.content-sec3 .txt2 dt {min-height:60px; font-size:1.8rem;}
	.content-sec3 .txt2 dd {font-size:1.6rem; padding:0.5em 0 0 0;}

	.content-sec4 {padding:0;}
	.content-sec4 .txt1 {font-size:2.0rem;}
	.content-sec4 .txt1::before {height:40px; top:-70px;}
	.content-sec4 .txt2 {padding:5.0vw;}
	.content-sec4 .txt2 dt {font-size:2.4rem;}
	.content-sec4 .txt2 dd {font-size:1.6rem;}
	.content-sec4 .clm > div {margin:20px -5.0vw 0 -5.0vw; display:block;}
	.content-sec4 .clm > div:first-of-type {margin-top:20px;}
	.content-sec4 .clm > div > dl {width:auto;}
	.content-sec4 .clm > div > div {width:auto;}
	.content-sec4 .clm > div > div img {width:100%;}
	.content-sec4 .clm > div:nth-of-type(odd)::before {right:0;}
	.content-sec4 .clm > div:nth-of-type(even)::before {left:0;}

	.content-sec5 {padding:80px 0 0 0;}
	.content-sec5::before {height:100px;}
	.content-sec5 .txt1 {font-size:2.8rem; position:relative; z-index:5;}
	.content-sec5 .txt2 dt {font-size:2.0rem; text-align:left; padding:2.4em 0 0 0;}
	.content-sec5 .txt2 dt::before {width:40px; height:40px; margin:0; left:0.8em;}
	.content-sec5 .txt2 dt span {font-size:3.0rem;}
	.content-sec5 .txt2 dd {font-size:1.6rem; margin:0.5em 0 0 0;}
	.content-sec5 .clm > div {margin:30px 0 0 0; display:block;}
	.content-sec5 .clm > div > dl {width:auto;}
	.content-sec5 .clm > div > div {width:auto; margin:15px 0 0 0;}

	.content-sec6 {padding:60px 0 100px 0;}
	.content-sec6 .txt1 {font-size:2.0rem;}
	.content-sec6 .clm {margin:20px 0 0 0;}
	.content-sec6 .splide__arrow {width:40px; height:40px; margin:-20px 0 0 0;}
	.content-sec6 .splide__arrow svg {display:none;}
	.content-sec6 .splide__arrow--prev {left:5px;}
	.content-sec6 .splide__arrow--next {right:5px;}

	.content-sec7 {padding:0 0 80px 0;}
	.content-sec7::before {height:100px;}
	.content-sec7 .txt1 .jp {font-size:2.0rem;}
	.content-sec7 .txt1 .en {font-size:6.0rem; margin:0;}
	.content-sec7 .txt2 {max-width:100%; padding:0;}
	.content-sec7 .txt2 dt {font-size:1.8rem;}
	.content-sec7 .txt2 dt span.sub {font-size:90%;}
	.content-sec7 .txt2 dt span.main {min-height:0; display:block;}
	.content-sec7 .txt2 dd {font-size:1.6rem; margin:0.5em 0 0 0;}
	.content-sec7 .clm > div {margin:30px 0 0 0; display:block;}
	.content-sec7 .clm .ctx {width:auto; padding:5.0vw;}
	.content-sec7 .clm .img {width:auto; margin:0;}

	.contact-sec {padding:0 0 30px 0;}
	.contact-sec .txt1 {font-size:2.4rem; padding:0 0 1.0em 0;}
	.contact-sec .txt2 {padding:0;}
	.contact-sec .txt2 p {font-size:1.6rem;}
	.contact-sec .txt3 {font-size:1.6rem;}
	.contact-sec .txt4 {max-width:710px; margin:0 auto; padding:0;}
	.contact-sec .txt4 dl {margin:20px 0 0 0;}
	.contact-sec .txt4 dt {font-size:1.6rem;}
	.contact-sec .txt4 dd {font-size:1.6rem;}
	.contact-sec .txt4.type1 {max-width:100%; padding:10px 0 0 0;}
	.contact-sec .txt4.type1 dl {margin:20px 0 0 0;}
	.contact-sec .txt5 {font-size:2.0rem;}
	.contact-sec .txt6 {font-size:1.6rem;}
	.contact-sec .form {margin:30px -5.0vw 0 -5.0vw; padding:5.0vw;}
	.contact-sec .form .erro-txt {font-size:1.6rem;}
	.contact-sec .form .btns {margin:30px 0 0 0;}
	.contact-sec .form .btns > div {width:100%; padding:10px 0 0 0;}
	.contact-sec .form input[type="text"],
	.contact-sec .form input[type="email"],
	.contact-sec .form input[type="number"],
	.contact-sec .form select,
	.contact-sec .form textarea {font-size:1.6rem; padding:0.5em;}
	.contact-sec .form textarea {height:120px;}
	.contact-sec .form button[type="submit"],
	.contact-sec .form button[type="button"] {height:40px; font-size:2.0rem;}
	.file-box {padding:5px;}
	.file-box > span.pik {width:120px; height:30px; font-size:1.4rem;}
	.file-box > span.name {font-size:1.6rem;}
}


