@charset "utf-8";

#kv .inner-kv {}
#kv .ctn { position: relative; width: 100%}
#kv .ctn video { width: 100%; vertical-align: bottom;}
#kv picture img { width: 100%;}
@media (max-width: 1281px) {
}
@media (max-width: 801px) {
	#kv .ctn { padding-top: 60%; overflow: hidden;}
	#kv .ctn video { position: absolute; left: 50%; top: 0; transform: translate(-50%,0); width: auto; height: 100%;}
}
@media (max-width: 481px) {
}

#news { border-bottom: solid 1px #c8c8c8;}
#news .signboard { position: relative; padding: 100px 0 68px; background: url('/img/index/bg-lead.jpg') no-repeat 50% 50% / cover;}
#news .signboard .logo { width: 30%; max-width: 210px; margin: 0 auto;}
#news .signboard .logo img { width: 100%;}
#news .signboard .txt { position: absolute; left: 0; top: 50%; transform: translateY(-45%); width: 100%;}
#news .signboard .txt h3,
#news .signboard .txt p { color: #4072c3; letter-spacing: 0.2rem; line-height: 1.4; text-align: center;} 
#news .signboard .txt h3{ font-size: clamp(36px,5.4vw,54px); font-weight: 700;}
#news .signboard .txt p { font-size: clamp(30px,3.8vw,38px); font-weight: 700;}
#news .signboard .txt h3 ruby rt,
#news .signboard .txt p ruby rt { font-size: 14px; text-align: center;}

#news .ctn { position: relative; width: 92%; max-width: 1000px; margin: 0 auto; padding: 25px 0; padding-left: 130px;}
#news .ctn .tit { position: absolute; left: 0; top: 24px;}
#news .ctn .tit h2 { color: #4172c4; font-size: 30px; font-weight: 700; letter-spacing: 0.1rem; line-height: 1;}
#news .ctn ul li { position: relative; padding: 5px 0; padding-left: 150px; font-size: 18px; line-height: 1.4;}
#news .ctn ul li time { position: absolute; left: 0; color: #636363;}
#news .ctn ul li a { color: #000; text-decoration: none;}
#news .ctn ul li a:hover { text-decoration: underline; text-underline-offset: 2px; text-decoration-thickness: 1px;}
@media (max-width: 801px) {
	#news .ctn ul li { padding-left: 100px; font-size: 14px;}
}
@media (max-width: 641px) {
	#news .signboard { padding: 60px 0 40px;}
	#news .ctn { padding: 16px 0; padding-left: 100px;}
	#news .ctn ul li { padding-left: 0px;}
	#news .ctn ul li time { position: relative; left: auto; display: block;}
}
@media (max-width: 481px) {
	#news .signboard { padding: 32px 0 40px;}
	#news .signboard .txt { transform: translateY(-58%);}
	#news .signboard .txt h3,
	#news .signboard .txt p { letter-spacing: 0.1rem;}
	#news .signboard .txt h3{ font-size: 26px;}
	#news .signboard .txt p { font-size: 20px;}
	#news .signboard .txt h3 ruby rt,
	#news .signboard .txt p ruby rt { font-size: 10px; line-height: 1.2;}
	#news .ctn .tit { top: 20px;}
	#news .ctn .tit h2 { font-size: 24px;}
	#news .ctn { padding: 16px 0; padding-left: 80px;}
	#news .ctn ul li { padding: 2px 0; font-size: 12px;}
}


#about { position: relative; width: 100%; z-index: 5;}
#about .inner-sct { position: relative; padding: 60px 0 140px; z-index: 2;}
#about .ttl { position: absolute; left: 0; top: 180px;}
#about .ttl:after { content: 'ABOUT'; text-align: left;}
#about .ctn { position: relative; display: flex; flex-direction: row-reverse; justify-content: space-between; width: 88%; max-width: 1000px; margin: 0 auto; z-index: 2;}
#about .img { width: 52%;}
#about .txt { width: 48%; padding-top: 240px;}
#about .img picture { text-align: center;}
#about .img picture img { width: 100%;}
#about .txt h2 { margin-bottom: 20px; color: #4172c4; font-size: clamp(30px, 4.5vw, 45px); font-weight: 700; letter-spacing: 0.1rem; line-height: 1;}
#about .txt p { margin-bottom: 40px; font-size: 18px; letter-spacing: 0.1rem;}
#about .txt .btn-more { width: 100%; max-width: 230px;}
#about .hex { width: 230px; right: -80px; top: 50%;}
@media (max-width: 1001px) {
	#about .txt p { font-size: 16px;}
	#about .hex { width: 150px; right: -40px;}
}
@media (max-width: 641px) {
	#about .inner-sct { padding: 60px 0;}
	#about .ttl { top: 64vw;}
	#about .ctn { display: block; }
	#about .img { position: relative; width: 100%;}
	#about .txt { width: 90%; margin: 0 auto; padding-top: 80px;}
	#about .hex { width: 100px; top: 30px;}
	#about .txt .btn-more { width: 50%;}
}
@media (max-width: 481px) {
	#about .inner-sct { padding: 40px 0;}
	#about .ttl { top: 240px;}
	#about .txt { padding-top: 50px;}
	#about .txt h2 { margin-bottom: 12px; font-size: 21px;}
	#about .txt p { margin-bottom: 20px; font-size: 13px;}
	#about .hex { width: 72px; top: 20px; right: -10px;}
}



#works { position: relative; background: #e6edf7; z-index: 4;}
#works:before { content: ''; display: block; width: 100%; height: 340px; position: absolute; left: 0; top: -1px; background: #fff; z-index: 1;}
#works .inner-sct { position: relative; padding: 60px 0px 100px; z-index: 2;}
#works .ttl { position: relative; margin-bottom: 20px; padding: 50px 0 40px;}
#works .ttl:after { content: 'WORKS'; text-align: center;}
#works .ctn { position: relative; width: 90%; max-width: 1048px; margin: 0 auto 30px; z-index: 2;}
#works .ctn ul { font-size: 0;}
#works .ctn ul li { display: inline-block; width: 33.33334%; padding: 20px 24px; vertical-align: top;}
#works .ctn ul li a { position: relative; width: 100%; color: #000; text-decoration: none;}
#works .ctn ul li a dl { position: relative; width: 100%;}
#works .ctn ul li a dl dt { position: relative; margin-bottom: 20px; transition: 0.3s linear;}
#works .ctn ul li a dl dt:after { content: ''; display: block; width: 100%; height: 100%; background: #4172c4;
 clip-path: polygon(14% 0, 86% 0%, 100% 20%, 100% 80%, 86% 100%, 14% 100%, 0% 80%, 0% 20%); transition: 0.3s ease;
 position: absolute; left: 8px; top: 8px; z-index: 1;
}
#works .ctn ul li a dl dt span{ position: relative; display: block; width: 100%; background: #c7d2ee;
 clip-path: polygon(14% 0, 86% 0%, 100% 20%, 100% 80%, 86% 100%, 14% 100%, 0% 80%, 0% 20%); overflow: hidden; z-index: 2;
}
#works .ctn ul li a dl dt img { position: relative; width: 100%; transition: 0.3s linear;}
#works .ctn ul li a dl dd { font-size: 16px; letter-spacing: 0.04rem; text-align: left;}
#works .ctn ul li a dl dd.update time { color: #787878; font-size: 18px;}
#works .ctn ul li a dl dd span { display: block; font-size: 24px;}
#works .ctn ul li a:hover dl dt { opacity: 0.8;}
#works .ctn ul li a:hover dl dt:after { left: 4px; top: 4px;}
#works .ctn ul li a:hover dl dt span img { transform: scale(1.08);}
#works .btn-more { width: 52%; max-width: 230px; margin: 0 auto;}
#works .hex1 { width: 230px; left: -80px; top: -100px;}
#works .hex2 { width: 160px; right: -40px; bottom: 80px;}
#works .hex2 .stroke:after { background: #e6edf7;}
@media (max-width: 1001px) {
	#works:before { height: 34vw;}
	#works .ctn ul li { padding: 10px 14px;}
	#works .ctn ul li a dl dt:after { left: 5px; top: 5px;}
	#works .ctn ul li a dl dd { font-size: 14px;}
	#works .ctn ul li a dl dd.update time { font-size: 14px;}
	#works .ctn ul li a dl dd span { font-size: 20px;}
	#works .hex1 { width: 180px; left: -60px; top: -60px;}
	#works .hex2 { width: 120px; right: -40px; bottom: 80px;}
}
@media (max-width: 801px) {
	#works:before { height: 42vw;}
	#works .ttl { padding: 4.5vw 0 4.0vw;}
	#works .ctn ul li { width: 50%; padding: 15px;}
	#works .ctn ul li a dl dt { margin-bottom: 12px;}
	#works .hex1 { width: 150px; left: -40px; top: -80px;}
}
@media (max-width: 641px) {
	#works .hex1 { width: 120px; left: -20px; top: -100px;}
	#works .hex2 { width: 100px; right: -40px; bottom: 80px;}
}
@media (max-width: 481px) {
	#works:before { height: 160px;}
	#works .inner-sct { padding: 40px 0px;}
	#works .ttl { margin-bottom: 10px; padding: 4.6vw 0 3.8vw;}
	#works .ctn { margin-bottom: 20px;}
	#works .ctn ul li { padding: 10px 12px;}
	#works .ctn ul li a dl dt:after { left: 3px; top: 3px;}
	#works .ctn ul li a dl dd { font-size: 12px;}
	#works .ctn ul li a dl dd.update time { font-size: 12px;}
	#works .ctn ul li a dl dd span { font-size: 16px;}
	#works .hex1 { width: 100px;}
	#works .hex2 { width: 60px; right: -20px; bottom: 60px;}
}


#business { position: relative;}
#business .inner-sct { position: relative; padding: 80px 0px; z-index: 2;}
#business .ttl { position: relative; margin-bottom: 30px; padding: 50px 0 40px;}
#business .ttl:after { content: 'BUSINESS'; text-align: center;}

#business .ctn { position: relative; width: 88%; max-width: 1048px; margin: 0 auto 30px; z-index: 2;}
#business .ctn ul { font-size: 0px; text-align: center;}
#business .ctn ul li { display: inline-block; width: 33.33334%; padding: 20px 24px; vertical-align: top;}
#business .ctn ul li dl { position: relative; width: 100%;}
#business .ctn ul li dl:before,
#business .ctn ul li dl:after { content: ''; display: block; width: 0; height: 0; border: solid 20px transparent; position: absolute; top: -2px; z-index: 10;}
#business .ctn ul li dl:before{ left: -2px; border-left: solid 20px #fff; border-top: solid 20px #fff;}
#business .ctn ul li dl:after { right: -2px; border-right: solid 20px #fff; border-top: solid 20px #fff;}
#business .ctn ul li dl dt { position: relative; margin-bottom: 20px;}
#business .ctn ul li dl dt:before,
#business .ctn ul li dl dt:after { content: ''; display: block; width: 0; height: 0; border: solid 20px transparent; position: absolute; bottom: -2px; z-index: 10;}
#business .ctn ul li dl dt:before{ left: -2px; border-left: solid 20px #fff; border-bottom: solid 20px #fff;}
#business .ctn ul li dl dt:after { right: -2px; border-right: solid 20px #fff; border-bottom: solid 20px #fff;}
#business .ctn ul li dl dt a { display: block; text-decoration: none; transition: 0.3s linear; overflow: hidden;}
#business .ctn ul li dl dt a img { position: relative; width: 100%; transition: 0.3s linear; z-index: 1;}
#business .ctn ul li dl dt a span { position: relative; display: block; padding: 18px 0; background: #4072c3; color: #fff; font-size: 22px; font-weight: 700;  letter-spacing: 0.06rem; line-height: 1.2; text-align: center; z-index: 2;}
#business .ctn ul li dl dt a:hover { opacity: 0.8;}
#business .ctn ul li dl dt a:hover img { transform: scale(1.08);}
#business .ctn ul li dl dd { font-size: 16px; letter-spacing: 0.06rem; text-align: left;}
#business .btn-more { width: 52%; max-width: 230px; margin: 0 auto;}
#business .hex { width: 230px; left: -20px; top: 65%;}
@media (max-width: 1001px) {
	#business .ctn ul li { padding: 10px 14px;}
	#business .ctn ul li dl dt a span { font-size: 2.0vw;}
	#business .ctn ul li dl dd { font-size: 14px;}
	#business .hex { width: 180px; left: -50px; top: 68%;}
}
@media (max-width: 801px) {
	#business .ttl { padding: 4.5vw 0 4.0vw;}

	#business .ctn ul li { width: 50%; padding: 15px 12px;}
	#business .ctn ul li dl dt { margin-bottom: 12px;}
	#business .ctn ul li dl dt a span { font-size: 3.0vw;}
}
@media (max-width: 641px) {
	#business .ttl { margin-bottom: 10px;}
}
@media (max-width: 481px) {
	#business .inner-sct { padding: 40px 0px;}
	#business .ttl { padding: 4.6vw 0 3.8vw;}
	#business .ctn { width: 92%; margin: 0 auto 12px;}
	#business .ctn ul li dl:before,
	#business .ctn ul li dl:after { border: solid 10px transparent;}
	#business .ctn ul li dl:before{ border-left: solid 10px #fff; border-top: solid 10px #fff;}
	#business .ctn ul li dl:after { border-right: solid 10px #fff; border-top: solid 10px #fff;}
	#business .ctn ul li dl dt { margin-bottom: 8px;}
	#business .ctn ul li dl dt:before,
	#business .ctn ul li dl dt:after { border: solid 10px transparent;}
	#business .ctn ul li dl dt:before{ border-left: solid 10px #fff; border-bottom: solid 10px #fff;}
	#business .ctn ul li dl dt:after { border-right: solid 10px #fff; border-bottom: solid 10px #fff;}

	#business .ctn ul li dl dt a span { padding: 6px 0 8px; font-size: 13px;}
	#business .ctn ul li dl dd { font-size: 11px;}
	#business .hex { display: none;}
}



#recruit { position: relative;}
#recruit .inner-sct { position: relative; padding: 60px 0 140px; z-index: 2;}
#recruit .ttl { position: absolute; left: 0; top: 180px;}
#recruit .ttl:after { content: 'RECRUIT'; text-align: left;}
#recruit .ctn { position: relative; width: 88%; max-width: 1000px; margin: 0 auto; z-index: 2;}
#recruit .img { position: absolute; width: 50%; right: 0;}
#recruit .txt { width: 55%; padding-top: 220px;}
#recruit .img picture { text-align: center;}
#recruit .img picture img { width: 100%;}
#recruit .txt h2 { margin-bottom: 20px; color: #4172c4; font-size: clamp(30px, 4.5vw, 45px); font-weight: 700; letter-spacing: 0.1rem; line-height: 1;}
#recruit .txt p { margin-bottom: 40px; font-size: 18px; letter-spacing: 0.1rem;}
#recruit .txt .btn-more { width: 100%; max-width: 230px;}
#recruit .hex1 { width: 160px; right: 2%; top: -50px;}
#recruit .hex2 { width: 280px; left: -40px; bottom: 0px;}
@media (max-width: 1401px) {
	#recruit .hex2 { width: 220px; bottom: -50px;}
}
@media (max-width: 1281px) {
	#recruit .hex2 { width: 180px;}
}
@media (max-width: 1001px) {
	#recruit .ttl { top: 20vw;}
	#recruit .txt { padding-top: 24vw;}
	#recruit .txt p { font-size: 16px;}
	#recruit .hex1 { width: 120px;}
	#recruit .hex2 { width: 120px; bottom: 0px;}
}
@media (max-width: 801px) {
	#recruit .inner-sct { padding: 40px 0 80px;}
	#recruit .ttl { top: 46vw;}
	#recruit .img { position: relative; width: 90%; right: auto; margin: 0 auto 20px;}
	#recruit .txt { width: 92%; margin: 0 auto; padding-top: 60px;}
	#recruit .txt h2 { font-size: 21px;}
	#recruit .hex2 { left: auto; right: -40px; bottom: 40%;}
}
@media (max-width: 641px) {
	#recruit .ttl { top: 50vw;}
	#recruit .txt p { font-size: 14px;}
	#recruit .txt .btn-more { width: 50%;}
	#recruit .hex1 { width: 80px;}
	#recruit .hex2 { width: 100px; left: auto; right: -20px; }
}
@media (max-width: 481px) {
	#recruit .inner-sct { padding: 40px 0 60px;}
	#recruit .ttl { top: 54vw;}
	#recruit .ctn { width: 88%;}
	#recruit .txt { padding-top: 40px;}
	#recruit .txt h2 { margin-bottom: 12px;}
	#recruit .txt p { margin-bottom: 20px; font-size: 12px;}
	#recruit .hex1 { width: 80px; top: -20px;}
	#recruit .hex2 { width: 50px; left: auto; right: 20px; bottom: auto; top: 160px;}
}



#column { position: relative; background: #e6edf7;}
#column:before { content: ''; display: block; width: 100%; height: 280px; position: absolute; left: 0; top: -1px; background: #fff; z-index: 1;}
#column .inner-sct { position: relative; z-index: 2; padding: 0px 0 90px;}
#column .ttl { position: relative; margin-bottom: 40px; padding: 50px 0 40px;}
#column .ttl:after { content: 'COLUMN'; text-align: center;}
#column .ctn { position: relative; width: 90%; max-width: 1000px; margin: 0 auto 20px; z-index: 2;}
#column .ctn ul { display: flex; justify-content: space-between; font-size: 0;}
#column .ctn ul li { width: 32%; padding: 0 10px; vertical-align: top;}
#column .ctn ul li a { display: block; width: 100%; text-decoration: none;}
#column .ctn ul li a dl dt { position: relative; margin-bottom: 20px; transition: 0.3s linear;}
#column .ctn ul li a dl dt:after { content: ''; display: block; width: 100%; height: 100%; background: #4172c4;
 clip-path: polygon(14% 0, 86% 0%, 100% 20%, 100% 80%, 86% 100%, 14% 100%, 0% 80%, 0% 20%); transition: 0.3s ease;
 position: absolute; left: 8px; top: 8px; z-index: 1;
}
#column .ctn ul li a dl dt span{ position: relative; display: block; width: 100%; background: #c7d2ee;
 clip-path: polygon(14% 0, 86% 0%, 100% 20%, 100% 80%, 86% 100%, 14% 100%, 0% 80%, 0% 20%); overflow: hidden; z-index: 2;
}
#column .ctn ul li a dl dt span img { position: relative; width: 100%; transition: 0.3s linear;}
#column .ctn ul li a dl dd { line-height: 1.4;}
#column .ctn ul li a dl dd time { display: inline-block; vertical-align: middle; margin-right: 10px; color: #787878; font-size: 18px;}
#column .ctn ul li a dl dd span.tag { display: inline-block; vertical-align: middle; padding: 0 10px; background: #4072c3; color: #fff; font-size: 14px;}
#column .ctn ul li a dl dd.tit { font-size: 24px; color: #000;}
#column .ctn ul li a:hover dl dt { opacity: 0.8;}
#column .ctn ul li a:hover dl dt:after { left: 4px; top: 4px;}
#column .ctn ul li a:hover dl dt span img { transform: scale(1.08);}

#column .btn-more { width: 50%; max-width: 230px; margin: 0 auto;}
#column .hex { width: 200px; right: -40px; bottom: 0px;}
#column .hex .stroke:after { background: #e6edf7;}
@media (max-width: 1281px) {
	#column .hex { width: 150px; bottom: 20px;}
}
@media (max-width: 1001px) {
	#column:before { height: 28vw;}
	#column .ctn ul li { padding: 0 6px;}
	#column .ctn ul li a dl dt:after { left: 4px; top: 4px;}
	#column .ctn ul li a dl dd.tit { font-size: 18px;}
	#column .hex { width: 120px;}
}
@media (max-width: 801px) {
	#column:before { height: 34vw;}
	#column .ttl { margin-bottom: 20px; padding: 4.5vw 0 4.0vw;}
	#column .ctn ul { flex-wrap: wrap;}
	#column .ctn ul li { width: 50%; padding: 15px 12px;}
	#column .ctn ul li a { max-width: 400px; margin: 0 auto;}
	#column .ctn ul li a dl dt { margin-bottom: 12px;}
	#column .hex { bottom: 30%;}
}
@media (max-width: 481px) {
	#column:before { height: 120px;}
	#column .inner-sct { padding: 0px 0 40px;}
	#column .ttl { margin-bottom: 8px; padding: 4.6vw 0 3.8vw;}
	#column .ctn { margin: 0 auto 12px;}
	#column .ctn ul li { padding: 10px 12px;}
	#column .ctn ul li a dl dd time { font-size: 13px;}
	#column .ctn ul li a dl dd span.tag { padding: 0px 6px; font-size: 10px;}
	#column .ctn ul li a dl dd.tit { font-size: 14px;}
	#column .hex { width: 80px; right: -12px;}
}



#insta { position: relative; background: #e6edf7;}
#insta .inner-sct { padding: 60px 0 100px;}
#insta .ttl { position: relative; padding: 18px 0 20px;}
#insta .ttl:after { content: 'INSTAGRAM'; top: auto; bottom: 10px; transform: skewX(-8deg); color: #cddbef; text-align: right;}
#insta .ttl ul { position: relative; width: 88%; max-width: 1000px; margin: 0 auto; font-size: 0; z-index: 2;}
#insta .ttl ul li { display: inline-block; width: 100px; margin-right: 32px; vertical-align: top;}
#insta .ttl ul li img { display: block;}
#insta .ttl ul li img.icn { width: 100px;}
#insta .ttl ul li img.qr { width: 82px; margin: 0 auto;}
#insta .ttl ul li span { display: block; font-size: 11px; text-align: center;}
#insta .ctn { position: relative; width: 92%; max-width: 1012px; margin: 0 auto; z-index: 2;}
#insta .ctn ul { font-size: 0;}
#insta .ctn ul li { display: inline-block; width: 33.33334%; padding: 6px;}
#insta .ctn ul li a { display: block; width: 100%;}
#insta .ctn ul li img { width: 100%;}
#insta .hex { width: 160px; left: 0px; bottom: 80px;}
#insta .hex .stroke:after { background: #e6edf7;}
@media (max-width: 1001px) {
}
@media (max-width: 641px) {
	#insta .ttl ul li:last-child { display: none;}
	#insta .ttl ul li img.icn { width: 60px;}
}
@media (max-width: 481px) {
	#insta .inner-sct { padding: 40px 0 60px;}
	#insta .ttl { padding: 12px 0 14px;}
	#insta .ttl:after { font-size: 56px;}
	#insta .ttl ul li { width: 92px; margin-right: 0px;}
	#insta .ttl ul li img.icn { width: 50px;}
	#insta .ttl ul li span { font-size: 10px;}
	#insta .ctn ul li { width: 50%;}
	#insta .hex { width: 80px; bottom: 20px;}
}



#contact .inner-sct { padding: 80px 0 100px;}
#contact .ttl { position: relative; width: 100%; max-width: 1000px; margin: 0 auto 30px; padding: 50px 0 40px;}
#contact .ttl:after { content: 'CONTACT'; text-align: center;}

#contact .read { width: 90%; margin: 0 auto 40px; text-align: center;}
#contact .read p.txt-1 { margin-bottom: 20px; font-size: 23px; letter-spacing: 0.1rem;}
#contact .read p.txt-2 { font-size: 18px; letter-spacing: 0.1rem;}
#contact .contact-tel { width: 90%; max-width: 1000px; margin: 0 auto 40px;}
#contact .contact-tel ul { width: 100%; display: flex; justify-content: space-between; font-size: 0px;}
#contact .contact-tel ul li { width: 48.5%;}
#contact .contact-tel ul li span { display: block; padding: 6px; background: #e6edf7;}
#contact .contact-tel ul li a { position: relative; display: block; border: solid 2px #4072c3; pointer-events: none; color: #4072c3; text-decoration: none;}
#contact .contact-tel ul li dl { padding: 18px 0 20px; color: #4072c3; line-height: 1.2; text-align: center;}
#contact .contact-tel ul li dl dt { font-size: 24px; font-weight: 700; letter-spacing: 0.08rem;}
#contact .contact-tel ul li dl dd { font-size: 42px; font-weight: 700; letter-spacing: 0.05rem;}

#contact .form-bloc { width: 90%; max-width: 1000px; margin: 0 auto;}
#contact .form-bloc ul { margin-bottom: 40px; border-top: solid 1px #c8c8c8;}
#contact .form-bloc ul li { padding: 16px 0; border-bottom: solid 1px #c8c8c8;}
#contact .form-bloc ul li dl { display: table; width: 100%;}
#contact .form-bloc ul li dl dt,
#contact .form-bloc ul li dl dd { display: table-cell; vertical-align: top;}
#contact .form-bloc ul li dl dt { width: 300px; padding-top: 4px; padding-left: 30px; font-size: 20px;}
#contact .form-bloc ul li dl dt span.require { position: relative; display: inline-block; margin-left: 15px; padding: 0px 10px; background: #fb1757;
 color: #fff; font-size: 14px; font-weight: 700; transform: translateY(-1px);
}
#contact .form-bloc ul li dl dd input[type="text"],
#contact .form-bloc ul li dl dd input[type="email"],
#contact .form-bloc ul li dl dd input[type="tel"] { width: 100%; max-width: 680px; padding: 8px; border: none; background: #e9e9e9;}
#contact .form-bloc ul li dl dd textarea { width: 100%; max-width: 680px; height: 180px; padding: 8px; border: none; background: #e9e9e9;}
#contact .policy { width: 88%; max-width: 720px; margin: 0 auto 40px;}
#contact .policy p { font-size: 14px; letter-spacing: 0.05rem;}
#contact .policy p span { display: block;}
#contact .confirm { margin-bottom: 20px;}
#contact .confirm p { font-size: 16px; text-align: center;}
#contact .confirm p input[type="checkbox"] { position: relative; width: 20px; height: 20px; margin-right: 8px; background: #e9e9e9; vertical-align: middle;
 transform: translateY(-2px); appearance: checkbox; -webkit-appearance: checkbox;
}
#contact .btn-submit { position: relative; width: 70%; max-width: 260px; margin: 0 auto;}
#contact .btn-submit:after { content: ''; display: block; width: 100%; height: 100%; background: #4172c4;
 clip-path: polygon(6% 0, 94% 0%, 100% 22%, 100% 78%, 94% 100%, 6% 100%, 0% 78%, 0% 22%);
 position: absolute;
}
/*#contact .btn-submit:before{ left: 0; top: 0; background: #4172c4; z-index: 2;}*/
#contact .btn-submit:after { left: 4px; top: 4px; background: #cbd8eb; z-index: 1;}
#contact .btn-submit div { position: relative; z-index: 3;}
#contact .btn-submit div:after { content: ''; display: block; width: 0px; height: 0px; border: solid 8px transparent; border-left: solid 12px #fff; border-right: 0px;
 position: absolute; left: 50%; top: 50%; transform: translate(60px, -50%);
}

#contact .btn-submit input[type="submit"] { position: relative; width: 100%; height: 100%; padding: 14px 0; border: none;
 background: #4172c4; clip-path: polygon(6% 0, 94% 0%, 100% 22%, 100% 78%, 94% 100%, 6% 100%, 0% 78%, 0% 22%);
 color: #fff; font-size: 21px; font-weight: 700; letter-spacing: 0.1rem; text-align: center; z-index: 10;
}
#contact .btn-submit input[type="submit"]:disabled { background: #efefef;}
#contact .btn-submit:hover{ opacity: 0.8;}
@media (max-width: 1001px) {
	#contact .contact-tel ul li span { padding: 4px;}
	#contact .contact-tel ul li dl dt { font-size: 20px;}
	#contact .contact-tel ul li dl dd { font-size: 4.5vw;}
}
@media (max-width: 801px) {
	#contact .ttl { padding: 4.5vw 0 4.0vw;}
	#contact .read p.txt-1 { font-size: 20px;}
	#contact .read p.txt-2 { font-size: 16px;}
	#contact .form-bloc ul li dl dt { width: 200px; padding-top: 4px; padding-left: 12px; font-size: 16px;}
	#contact .form-bloc ul li dl dt span.require { margin-left: 8px; font-size: 12px;}
	#contact .btn-submit input[type="submit"] { font-size: 18px;}
}
@media (max-width: 641px) {
	#contact .form-bloc ul li dl dt,
	#contact .form-bloc ul li dl dd { display: block;}
	#contact .form-bloc ul li dl dt { width: 100%; padding: 0; margin-bottom: 6px;}
	#contact .form-bloc ul li dl dd { width: 100%;}
}
@media (max-width: 481px) {
	#contact .inner-sct { padding: 40px 0 60px;}
	#contact .ttl { margin: 0 auto 18px; padding: 4.6vw 0 3.8vw;}
	#contact .read { margin: 0 auto 12px; text-align: left;}
	#contact .read p.txt-1 { margin-bottom: 10px; font-size: 14px; letter-spacing: 0.05rem;}
	#contact .read p.txt-2 { font-size: 12px; letter-spacing: 0.05rem;}
	#contact .contact-tel ul { display: block; width: 260px; margin: 0 auto;}
	#contact .contact-tel ul li { display: block; width: 100%; padding: 6px 0;}
	#contact .contact-tel ul li span { padding: 3px; box-shadow: 3px 3px 0 #bacce9;}
	#contact .contact-tel ul li a { border-width: 1px; pointer-events: visible;}
	#contact .contact-tel ul li a:before { content: ''; display: block; width: 0px; height: 0px; border: solid 5px transparent;
	 border-left: solid 10px #4072c3;
	 position: absolute; left: 25px; top: 50%; transform: translateY(-50%);
	}
	#contact .contact-tel ul li dl { padding: 6px 0 9px; padding-left: 25px;}
	#contact .contact-tel ul li dl dt { font-size: 13px;}
	#contact .contact-tel ul li dl dd { font-size: 23px;}

	#contact .form-bloc ul { margin-bottom: 20px;}
	#contact .form-bloc ul li dl dt { font-size: 14px;}
	#contact .form-bloc ul li dl dt span.require { font-size: 10px;}
	#contact .form-bloc ul li dl dd input[type="text"],
	#contact .form-bloc ul li dl dd input[type="email"],
	#contact .form-bloc ul li dl dd input[type="tel"] { padding: 5px;}
	#contact .form-bloc ul li dl dd textarea { height: 150px; padding: 5px;}

	#contact .policy { width: 100%; margin-bottom: 20px;}
	#contact .policy p { font-size: 12px;}
	#contact .confirm p { font-size: 13px;}
	#contact .btn-submit:after{ clip-path: polygon(3% 0, 97% 0%, 100% 16%, 100% 84%, 97% 100%, 3% 100%, 0% 84%, 0% 16%);}
	#contact .btn-submit div:after { border: solid 6px transparent; border-left: solid 8px #fff; border-right: 0px;}
	#contact .btn-submit input[type="submit"] { padding: 12px 0; font-size: 16px; clip-path: polygon(3% 0, 97% 0%, 100% 16%, 100% 84%, 97% 100%, 3% 100%, 0% 84%, 0% 16%);}
}









