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


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

h1, h2, h3, h4, h5, h6, h7 {font-weight:400; line-height:1.2;}
p, li, dt, dd, th, td, address, blockquote, div {font-weight:400; line-height:1.75;}
input, select, textarea, button {font-size:14px; font-size:1.4rem; font-family:'Noto Serif JP', serif; line-height:1.4; vertical-align:middle;}
input[type='submit'],input[type='reset'],input[type='button'], button {cursor:pointer; -ms-appearance:none; -webkit-appearance:none; appearance:none;}
:placeholder-shown {color:#9e9e9e;}
::-webkit-input-placeholder {color:#9e9e9e;}
:-moz-placeholder {color:#9e9e9e; opacity:1;}
::-moz-placeholder {color:#9e9e9e; opacity:1;}
:-ms-input-placeholder {color:#9e9e9e;}

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;}

.parallax {opacity:0; transform:translate3d(0,15px,0);}
.parallax.on {opacity:1; transform:translate3d(0,0,0); transition:opacity 0.6s ease, transform 0.6s ease;}


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

.cfix::before,
.cfix::after {display:table; content:" ";}
.cfix::after {clear:both;}

@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;}
#container::before {content:''; width:50%; height:100vh; background-color:#262626; display:block; position:fixed; top:0; left:0; z-index:-1;}
#container::after {content:''; width:50%; height:100vh; background-color:#fef4d1; display:block; position:fixed; top:0; right:0; z-index:-1;}


/* header */
/* -------------------------------------------------------- */
#header {width:100%; height:214px; position:absolute; z-index:300;}
#header .logo {width:180px; margin:0 0 0 -90px; position:absolute; top:34px; left:50%;}

#gNavBtn {width:35px; height:35px; position:fixed; top:20px; right:15px; z-index:310; cursor:pointer; display:none; transition-property:opacity;}
#gNavBtn > span {width:100%; height:3px; margin:-1px 0 0 0; background-color:rgba(161,47,0,1); display:block; position:absolute; top:50%; left:0; transition-property:background-color;}
#gNavBtn > span::before,
#gNavBtn > span::after {content:''; width:100%; height:3px; background-color:rgba(161,47,0,1); display:block; position:absolute; left:0;}
#gNavBtn > span::before {top:-12px; transition-property:top;}
#gNavBtn > span::after {bottom:-12px; 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(161,47,0,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;}

#gNav {padding:157px 0 0 0;}
#gNav .nav {display:flex; justify-content:center;}
#gNav .nav > li a {height:50px; text-indent:-9999px; background-repeat:no-repeat; background-position:0 0; display:block; position:relative; overflow:hidden;}
#gNav .nav > li a.on,
#gNav .nav > li a:hover {background-position:0 100%;}
#gNav .nav > li:nth-of-type(1) {max-width:162px; width:100%;}
#gNav .nav > li:nth-of-type(1) a {width:112px; background-image:url(../img/nav_01.png);}
#gNav .nav > li:nth-of-type(2) {max-width:239px; width:100%;}
#gNav .nav > li:nth-of-type(2) a {width:80px; background-image:url(../img/nav_02.png);}
#gNav .nav > li:nth-of-type(3) {max-width:237px; width:100%;}
#gNav .nav > li:nth-of-type(3) a {width:112px; margin:0 0 0 auto; background-image:url(../img/nav_03.png);}
#gNav .nav > li:nth-of-type(4) {max-width:170px; width:100%;}
#gNav .nav > li:nth-of-type(4) a {width:120px; margin:0 0 0 auto; background-image:url(../img/nav_04.png);}

@media screen and (max-width:767px){
	#header {height:auto;}
	#header .logo {width:24.0vw; margin:0 0 0 -12.0vw; top:2.6vw;}

	#header #gNavBtn {display:block;}
	#gNav {width:100%; height:100vh; padding:0; background-color:#000; opacity:0; pointer-events:none; overflow:hidden; position:fixed; top:0; left:0; transition:opacity 0.6s ease; z-index:300;}
	#gNav::before {content:''; width:100%; height:120%; background:-webkit-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 20%); background:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 20%); display:block; position:fixed; top:-20%; left:0; z-index:302;}
	#gNavCheck:checked + #header .logo {position:fixed; z-index:301;}
	#gNavCheck:checked + #header #gNav {opacity:1; pointer-events:auto;}
	#gNavCheck:checked + #header #gNav::before {top:100%; transition:top 3.0s ease;}
	#gNav .nav {padding:28.0vw 0 0 0; display:block;}
	#gNav .nav > li a {height:auto; font-size:3.6vw; letter-spacing:0.2em; text-decoration:none; color:#fff; text-indent:0; text-align:center; padding:4.0vw 0; border-bottom:solid 1px #fff; display:block;}
	#gNav .nav > li:nth-of-type(1) {max-width:100%;}
	#gNav .nav > li:nth-of-type(1) a {width:auto; background:none;}
	#gNav .nav > li:nth-of-type(2) {max-width:100%;}
	#gNav .nav > li:nth-of-type(2) a {width:auto; background:none;}
	#gNav .nav > li:nth-of-type(3) {max-width:100%;}
	#gNav .nav > li:nth-of-type(3) a {width:auto; background:none;}
	#gNav .nav > li:nth-of-type(4) {max-width:100%;}
	#gNav .nav > li:nth-of-type(4) a {width:auto; background:none;}
}

/* footer */
/* -------------------------------------------------------- */
#footer {background-color:#fff; position:relative; z-index:200;}
#footer .nav {font-family:'Noto Sans JP', sans-serif; padding:20px 0; border-bottom:solid 1px #bfbfbf; display:flex; flex-wrap:wrap; justify-content:center; align-items:center;}
#footer .nav > li {font-size:1.2rem; font-weight:500; padding:0 40px;}
#footer .nav > li a {text-decoration:none; color:#000; transition:color 0.3s ease;}
#footer .nav > li a:hover {text-decoration:none; color:#a12f00;}
#footer .copy {font-family:'Noto Sans JP', sans-serif; font-size:0.8rem; font-weight:300; letter-spacing:0.1em; text-align:center; color:#000; padding:25px 0;}

@media screen and (max-width:767px){
	#footer .nav {display:none;}
	#footer .copy {font-size:1.8vw; padding:4.0vw 0;}
}


/* contents */
/* -------------------------------------------------------- */
#contents {position:relative; z-index:200;}

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

.page-ttl {padding:230px 0 0 0;}
.page-ttl .ttl {width:90px; min-height:175px; font-size:2.6rem; line-height:1.1; color:#fff; margin:0 auto; padding:10px 0; background-color:#a12f00; border-left:solid 1px #000; border-right:solid 1px #000; box-sizing:border-box; display:flex; justify-content:center; align-items:center;}
.page-ttl .ttl .space {width:10px; height:10px; display:block; overflow:hidden;}

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

	.page-ttl {padding:30.0vw 0 0 0;}
	.page-ttl .ttl {width:12.0vw; min-height:23.3vw; font-size:3.4vw; padding:1.3vw 0;}
	.page-ttl .ttl .space {width:1.3vw; height:1.3vw;}
}


/* top */
.top-mv {text-align:center;}
.top-mv .ttl {margin:-24px 0 0 0;}
.top-mv .img {margin:50px 0 0 0; display:flex;}
.top-mv .img > div {width:50%;}

.top-nav {padding:90px 0 100px 0;}
.top-nav ul {text-align:center;}
.top-nav ul li {padding:25px 0 0 0;}
.top-nav ul li:first-of-type {padding-top:0;}
.top-nav ul a {background-color:#fff; display:inline-block;}
.top-nav ul a img {transition:opacity 0.3s ease;}
.top-nav ul a:hover img {opacity:0.7;}

.top-content .inr1 {padding:130px 0 60px 0; background-color:#fff;}
.top-content .inr1 dt {text-align:center;}
.top-content .inr1 dd {font-size:1.5rem; font-weight:300; line-height:2.73; letter-spacing:0.1em; text-align:center; margin:50px 0 0 0;}
.top-content .inr1 .img {text-align:center; margin:40px 0 0 0;}
.top-content .inr2 {padding:50px 0 60px 0;}
.top-content .inr2 .clm {display:flex; justify-content:space-between;}
.top-content .inr2 .clm > div {width:46.3%; text-align:left;}
.top-content .inr2 .map iframe {width:100%; height:300px;}
.top-content .inr2 .txt1 {font-size:2.0rem; font-family:'Noto Sans JP', sans-serif; color:#fff;}
.top-content .inr2 .txt2 dl {font-family:'Noto Sans JP', sans-serif; color:#fff; display:flex;}
.top-content .inr2 .txt2 dt {font-size:1.6rem; line-height:1.5; white-space:nowrap;}
.top-content .inr2 .txt2 dd {font-size:1.6rem; line-height:1.5; flex:1;}
.top-content .inr2 .txt3 {font-family:'Noto Sans JP', sans-serif;}
.top-content .inr2 .txt3 .ctx {font-size:1.4rem; line-height:1.78; padding:30px; background-color:#fff;}
.top-content .inr2 .txt3 .ctx span {color:#9b0000;}

@media screen and (max-width:767px){
	.top-mv .ttl {margin:6.0vw 0 0 0;}
	.top-mv .img {margin:10.0vw 0 0 0; display:block;}
	.top-mv .img > div {width:auto;}

	.top-nav {padding:9.7vw 0 12.0vw 0;}
	.top-nav ul li {padding:4.0vw 0 0 0;}
	.top-nav ul li:first-of-type {padding-top:0;}

	.top-content .inr1 {padding:20.0vw 0 12.0vw 0;}
	.top-content .inr1 dt img {width:69.3w;}
	.top-content .inr1 dd {font-size:2.8vw; line-height:2.73; margin:7.3vw -6.0vw 0 -6.0vw;}
	.top-content .inr1 .img {margin:7.3vw 0 0 0;}
	.top-content .inr2 {padding:0;}
	.top-content .inr2 .sec {padding:0;}
	.top-content .inr2 .clm {display:block;}
	.top-content .inr2 .clm > div {width:auto; text-align:left; padding:14.6vw 6.6vw;}
	.top-content .inr2 .clm > div:nth-of-type(1) {background-color:#262626;}
	.top-content .inr2 .clm > div:nth-of-type(2) {background-color:#fef4d1;}
	.top-content .inr2 .map iframe {width:100%; height:52.0vw;}
	.top-content .inr2 .txt1 {font-size:3.2vw;}
	.top-content .inr2 .txt2 {margin:1.6vw 0 0 0;}
	.top-content .inr2 .txt2 dt {font-size:2.4vw;}
	.top-content .inr2 .txt2 dd {font-size:2.4vw;}
	.top-content .inr2 .txt3 .ctx {font-size:2.8vw; line-height:2.0; padding:4.0vw 5.2vw;}
}


/* menu */
.menu-items {padding:0 0 40px 0;}
.menu-items .clm {display:flex; justify-content:space-between;}
.menu-items .clm > div {width:43.6%;}
.menu-items .clm > div:nth-of-type(1) {color:#fff;}
.menu-items .clm > div:nth-of-type(1) .txt2 {border:solid 1px #fff;}
.menu-items .clm > div:nth-of-type(1) .txt2 dt::before {background-color:#fff;}
.menu-items .clm > div:nth-of-type(1) .txt2 dt > span {background-color:#262626;}
.menu-items .clm > div:nth-of-type(2) .txt2 {border:solid 1px #7f7a68;}
.menu-items .clm > div:nth-of-type(2) .txt2 dt::before {background-color:#7f7a68;}
.menu-items .clm > div:nth-of-type(2) .txt2 dt > span {background-color:#fef4d1;}
.menu-items .ttl {margin:-25px 0 0 0;}
.menu-items .ttl img {max-width:430px; width:100%;}
.menu-items .txt1 {font-size:1.4rem; text-align:center; padding:15px 0 35px 0;}
.menu-items .txt2 {padding:20px 25px;}
.menu-items .txt2 dl {text-align:left; margin:20px 0 0 0;}
.menu-items .txt2 dl:first-of-type {margin-top:0;}
.menu-items .txt2 dt {font-size:1.8rem; position:relative;}
.menu-items .txt2 dt::before {content:''; width:100%; height:1px; display:block; position:absolute; top:0.8em; left:0; z-index:1;}
.menu-items .txt2 dt > span {padding:0 10px 0 0; display:inline-block; position:relative; z-index:5;}
.menu-items .txt2 dd {font-size:1.4rem;}
.menu-items .chart {margin:15px 0 0 0;}
.menu-other-items {padding:110px 0 80px 0;}
.menu-other-items .ttl {width:240px; height:68px; font-size:2.6rem; line-height:1.2; color:#fff; margin:0 auto; background-color:#a12f00; border-bottom:solid 1px #000; box-sizing:border-box; display:flex; justify-content:center; align-items:center; position:relative; z-index:5;}
.menu-other-items .box {margin:-34px 0 0 0; padding:40px; background-color:#fff; position:relative; z-index:1;}
.menu-other-items .clm {display:flex; align-items:flex-end;}
.menu-other-items .clm > div {width:39%; padding:0 26px 0 0; box-sizing:border-box;}
.menu-other-items .clm > div:nth-of-type(3) {width:22%; padding:0;}
.menu-other-items .clm > div:nth-of-type(3) > div {margin:15px 0 0 0;}
.menu-other-items .clm > div:nth-of-type(3) > div:first-of-type {margin-top:0;}
.menu-other-items .clm > div:nth-of-type(3) .cap {font-size:1.8rem;}
.menu-other-items .cap {font-size:2.1rem; line-height:1; text-align:left; margin:10px 0 0 0;}
.menu-other-items .txt {font-size:2.2rem; letter-spacing:0.1em; text-align:center; color:#a12f00; margin:20px 0 0 0; padding:15px 10px; border:solid 1px #a12f00;}
.menu-other-items .attention {color:#fff; margin:35px 0 0 0; padding:20px; background-color:#776255; display:flex; justify-content:center; align-items:center;}
.menu-other-items .attention dt {font-size:2.2rem; letter-spacing:0.1em; white-space:nowrap; padding:0 15px 0 0;}
.menu-other-items .attention dd {font-size:1.6rem; letter-spacing:0.1em;}

@media screen and (max-width:767px){
	.menu-items-body #container {background-color:#262626;}
	.menu-items-body #container::before {display:none;}
	.menu-items-body #container::after {display:none;}
	.menu-items {padding:0;}
	.menu-items .sec {padding:0;}
	.menu-items .clm {display:block;}
	.menu-items .clm > div {width:auto; padding:0 6.6vw 20.0vw 6.6vw;}
	.menu-items .clm > div:nth-of-type(1) {background-color:#262626;}
	.menu-items .clm > div:nth-of-type(2) {background-color:#fef4d1;}
	.menu-items .mv img {margin:-9.3vw 0 0 0;}
	.menu-items .ttl {margin:-2.1vw 0 0 0;}
	.menu-items .ttl img {max-width:100%; width:80.0vw;}
	.menu-items .txt1 {font-size:3.2vw; margin:0 -6.6vw; padding:2.6vw 0 6.6vw 0;}
	.menu-items .txt2 {padding:4.0vw 5.3vw;}
	.menu-items .txt2 dl {margin:4.0vw 0 0 0;}
	.menu-items .txt2 dl:first-of-type {margin-top:0;}
	.menu-items .txt2 dt {font-size:3.2vw;}
	.menu-items .txt2 dt > span {padding:0 2.0vw 0 0;}
	.menu-items .txt2 dd {font-size:2.5vw;}
	.menu-items .chart {margin:4.6vw 0 0 0;}
	.menu-other-items {padding:0 0 5.3vw 0; background-color:#fef4d1;}
	.menu-other-items .ttl {width:32.0vw; height:9.0vw; font-size:3.4vw;}
	.menu-other-items .box {margin:-4.2vw 0 0 0; padding:5.3vw 2.6vw;}
	.menu-other-items .clm {margin:0 1.3vw; display:flex; flex-wrap:wrap; justify-content:center;}
	.menu-other-items .clm > div {width:60.0vw; padding:6.6vw 0 0 0;}
	.menu-other-items .clm > div:nth-of-type(3) {width:100%; padding:4.4vw 0 0 0; display:flex; justify-content:space-between;}
	.menu-other-items .clm > div:nth-of-type(3) > div {width:37.0vw; margin:0;}
	.menu-other-items .clm > div:nth-of-type(3) > div:first-of-type {margin-top:0;}
	.menu-other-items .clm > div:nth-of-type(3) .cap {font-size:2.8vw;}
	.menu-other-items .cap {font-size:2.8vw;  margin:2.0vw 0 0 0;}
	.menu-other-items .txt {font-size:2.8vw; margin:5.3vw 0 0 0; padding:2.6vw 1.0vw;}
	.menu-other-items .attention {margin:4.6vw 0 0 0; padding:3.3vw;}
	.menu-other-items .attention dt {font-size:3.2vw; padding:0 1.0vw 0 0;}
	.menu-other-items .attention dd {font-size:2.4vw;}
}


/* recipe */
.recipe-nav {margin:-5px 0 0 0;}
.recipe-nav .nav {margin:0 -27px; display:flex; flex-wrap:wrap; justify-content:center;}
.recipe-nav .nav > li {width:33.33%; padding:30px 27px 0 27px; box-sizing:border-box;}
.recipe-nav .nav a {width:100%; height:80px; font-size:2.1rem; line-height:1.1; text-align:center; text-decoration:none; color:#000; padding:0 10px 18px 10px; background-color:#fff; box-sizing:border-box; display:flex; justify-content:center; align-items:center; position:relative; transition:opacity 0.3s ease;}
.recipe-nav .nav a:hover {opacity:0.7;}
.recipe-nav .nav a::before {content:''; width:100%; height:18px; background:#a12f00 url(../img/arrow_01.png) no-repeat center center; background-size:14px auto; border-top:solid 1px #7f7f7f; display:block; position:absolute; bottom:0; left:0;}
.recipe-nav .nav a.recipe7::after {content:''; width:100%; height:60px; background-color:#fef2c6; border:solid 4px #fff; box-sizing:border-box; display:block; position:absolute; top:0; left:0; z-index:1;}
.recipe-nav .nav a.recipe7 span {position:relative; z-index:5;}
.recipe-content {padding:5px 0 80px 0;}
.recipe-content .box {margin:50px 0 0 0; padding:55px 35px 35px 35px; background-color:#fff; box-sizing:border-box;}
.recipe-content .ttl {font-size:3.4rem; letter-spacing:0.1em; text-align:center; padding:0 0 30px 0; position:relative;}
.recipe-content .ttl::before {content:''; width:100%; height:5px; background:url(../img/line_01.png) no-repeat center center; display:block; position:absolute; bottom:0; left:0;}
.recipe-content .ttl .sub {font-size:64%; padding:0 0 10px 0; display:block;}
.recipe-content .ttl .sub1 {font-size:47%;}
.recipe-content .ttl + .txt2 {margin:35px 0 0 0;}
.recipe-content .txt1 {font-size:2.6rem; text-align:left; margin:25px 0 0 0;}
.recipe-content .txt1 span {color:#a12f00;}
.recipe-content .txt2 {font-size:1.6rem; text-align:left; margin:10px 0 0 0;}
.recipe-content .txt2 > li {font-size:1.6rem; padding:0 0 0 1.2em; position:relative;}
.recipe-content .txt2 > li .num {position:absolute; top:0; left:0;}
.recipe-content .txt2 > li .co {color:#a12f00;}
.recipe-content .txt3 {font-size:1.6rem; text-align:left;}
.recipe-content .txt3 .num {font-size:225%; display:block;}
.recipe-content .clm {margin:0 -30px; display:flex; flex-wrap:wrap;}
.recipe-content .clm > div {width:25%; padding:45px 30px 0 30px; box-sizing:border-box;}
.recipe-content #recipe7.box {padding:49px 29px 29px 29px; background-color:#fef8e3; border:solid 6px #fff;}
.recipe-content #recipe7.box .ttl {color:#513625;}

@media screen and (max-width:767px){
	.recipe-nav {margin:4.0vw 0 0 0;}
	.recipe-nav .nav {margin:0 -4.6vw; justify-content:flex-end;}
	.recipe-nav .nav > li {width:50%; padding:4.6vw 4.6vw 0 4.6vw;}
	.recipe-nav .nav a {height:14.0vw; font-size:2.8vw; padding:0 0 2.4vw 0;}
	.recipe-nav .nav a::before {height:2.4vw; background-size:1.8vw auto;}
	.recipe-nav .nav a.recipe7::after {height:11.2vw; border:solid 0.5vw #fff;;}
	.recipe-content {padding:4.6vw 0 14.0vw 0;}
	.recipe-content .box {margin:7.3vw 0 0 0; padding:6.0vw 4.0vw 4.0vw 4.0vw;}
	.recipe-content .ttl {font-size:4.5vw; padding:0 0 4.0vw 0;}
	.recipe-content .ttl::before {width:100%; height:0.6vw; background-size:auto 0.6vw;}
	.recipe-content .ttl .sub {padding:0 0 1.3vw 0;}
	.recipe-content .ttl + .txt2 {margin:4.0vw 0 0 0;}
	.recipe-content .txt1 {font-size:3.4vw; margin:4.0vw 0 0 0;}
	.recipe-content .txt2 {font-size:2.4vw; margin:2.0vw 0 0 0;}
	.recipe-content .txt2 > li {font-size:2.4vw;}
	.recipe-content .txt3 {font-size:2.4vw;}
	.recipe-content .txt3 .num {font-size:243%;}
	.recipe-content .clm {margin:0 -4.6vw;}
	.recipe-content .clm > div {width:50%; padding:8.6vw 4.6vw 0 4.6vw;}
	.recipe-content #recipe7.box {padding:5.2vw 3.2vw 3.2vw 3.2vw; border:solid 0.8vw #fff;}
}


/* contact */
.contact-form {padding:70px 0 190px 0;}
.contact-form .box {padding:80px 30px 70px 30px; background-color:#fff;}
.contact-form .box > div {max-width:781px; text-align:left; margin:0 auto;}
.contact-form .step {margin:50px 0 0 0;}
.contact-form .step > div {display:none;}
.contact-form .step > div.on {display:block;}
.contact-form .txt1 {font-size:3.0rem; font-weight:400; text-align:center;}
.contact-form .txt2 {font-size:1.6rem; text-align:center; margin:25px 0 0 0; padding:0 0 35px 0; border-bottom:solid 2px #7f7f7f;}
.contact-form .txt2 .co {color:#a12f00;}
.contact-form .form dl {margin:45px 0 0 0; display:flex; align-items:center;}
.contact-form .form.conf dl {align-items:flex-start;}
.contact-form .form dt {width:14em; font-size:1.6rem;}
.contact-form .form dt sup {color:#a12f00; margin:0 0 0 5px; display:inline-block;}
.contact-form .form dd {font-size:1.6rem; flex:1;}
.contact-form .form dd input[type=text] {width:100%; font-size:1.6rem; font-weight:400; padding:15px; background-color:#fff; border:solid 1px #000; box-sizing:border-box; outline:none;}
.contact-form .form dd textarea {width:100%; height:135px; font-size:1.6rem; padding:15px; background-color:#fff; border:solid 1px #000; box-sizing:border-box; outline:none; resize:none;}
.contact-form .form dd select {width:100%; font-size:1.6rem; font-weight:400; padding:15px; background-color:#fff; border:solid 1px #000; box-sizing:border-box;}
.contact-form .form dl.type1 {display:block;}
.contact-form .form dl.type1 dd {margin:0 0 0 2em;}
.contact-form .form dl.type2 {display:block;}
.contact-form .form dl.type2 dd {margin:10px 0 0 0;}
.contact-form .form .list1 > li {margin:10px 0 0 0;}
.contact-form .form .list1 label {display:flex; align-items:center;}
.contact-form .form .list1 label > span {margin:0 0 0 5px;}
.contact-form .form .clm1 {display:flex; flex-wrap:wrap; align-items:center;}
.contact-form .form .clm1 > div {display:flex; align-items:center;}
.contact-form .form .clm1 > div > div:nth-of-type(1) {width:2.2em;}
.contact-form .form .clm1 > div > div:nth-of-type(2) {width:190px; padding:0 10px 0 0; box-sizing:border-box;}
.contact-form .form .clm2 {display:flex; align-items:center;}
.contact-form .form .clm2 > div:nth-of-type(odd) {width:125px;}
.contact-form .form .clm2 > div:nth-of-type(even) {width:3em; text-align:center;}
.contact-form .form .btn {margin:180px 0 0 0; display:flex; flex-wrap:wrap; justify-content:center; align-items:center;}
.contact-form .form .btn > div {padding:0 16px;}
.contact-form .form .btn a,
.contact-form .form button {width:530px; height:70px; font-size:1.6rem; line-height:70px; text-align:center; text-decoration:none; color:#333; margin:0; padding:0; background-color:#fff; border:solid 1px #000; box-sizing:border-box; display:block; outline:none; transition:background-color 0.3s ease;}
.contact-form .form .btn a:hover,
.contact-form .form button:hover {background-color:#bfbfbf;}
.contact-form .form button[name=back] {width:18em;}
.contact-form .form button[name=fix] {width:18em;}
.contact-form .form .fix .txt2 {margin:60px 0 0 0; padding:0; border-bottom:none;}
.contact-form .form .fix .btn {margin-top:60px;}
.contact-form .error {color:#ba0407; display:block;}
.contact-form input.inputCheck {display:none;}

@media screen and (max-width:767px){
	.contact-form {padding:9.3vw 0 14.6vw 0;}
	.contact-form .box {padding:10.0vw 3.7vw 8.0vw 3.7vw;}
	.contact-form .step {margin:4.6vw 0 0 0;}
	.contact-form .txt1 {font-size:4.0vw;}
	.contact-form .txt2 {font-size:2.4vw; line-height:2.4; margin:3.3vw 0 0 0; padding:0 0 4.6vw 0; border-bottom:solid 1px #7f7f7f;}
	.contact-form .form dl {margin:9.3vw 0 0 0; display:block;}
	.contact-form .form dl:first-of-type {margin-top:5.3vw;}
	.contact-form .form dt {width:auto; font-size:2.8vw;}
	.contact-form .form dt sup {margin:0 0 0 0.6vw;}
	.contact-form .form dd {font-size:2.8vw; margin:2.0vw 0 0 0;}
	.contact-form .form dd input[type=text] {font-size:2.8vw; padding:4.0vw 3.4vw;}
	.contact-form .form dd textarea {height:37.0vw; font-size:2.8vw; padding:2.0vw 3.4vw;}
	.contact-form .form dd select {font-size:2.8vw; padding:4.0vw 3.4vw;}
	.contact-form .form dl.type2 dd {margin:2.0vw 0 0 0;}
	.contact-form .form .list1 > li {margin:2.0vw 0 0 0;}
	.contact-form .form .list1 label > span {margin:0 0 0 0.6vw;}
	.contact-form .form .clm1 > div > div:nth-of-type(2) {width:32.0vw; padding:0 1.2vw 0 0;}
	.contact-form .form .clm2 > div:nth-of-type(odd) {width:22.0vw;}
	.contact-form .form .clm2 > div:nth-of-type(even) {width:6.5vw;}
	.contact-form .form .btn {margin:10.0vw 0 0 0; display:block;}
	.contact-form .form .btn > div {text-align:center; padding:1.8vw 0;}
	.contact-form .form .btn a,
	.contact-form .form button {width:70.6vw; height:13.3vw; font-size:2.8vw; line-height:13.3vw; margin:0 auto;}
	.contact-form .form button[name=back] {width:70.6vw;}
	.contact-form .form button[name=fix] {width:70.6vw;}
	.contact-form .form .fix .txt2 {margin:12.0vw 0 0 0; padding:0; border-bottom:none;}
	.contact-form .form .fix .btn {margin-top:12.0vw;}
//	body.mobile .contact-form .form dd input[type=text] {font-size:16px;}
//	body.mobile .contact-form .form dd textarea {font-size:16px;}
//	body.mobile .contact-form .form dd select {font-size:16px;}
}






