/*
@media (max-width: 1200px) {
}
@media (max-width: 992px) {
}
@media (max-width: 767px) {
}
@media (max-width: 576px) {
}
----------------------------------------------------------- */
@font-face {
	font-family: 'cochin-italic';
	src: url(../fonts/cochin-italic.otf) format('opentype');
}

html {
  font-style: normal;
  font-size: 16px;
  word-spacing: 1px;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  line-height: 1.5;
}

body {
	background: #171717;
	font-family: 'Noto Serif JP', serif;
  color: #fff;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}

html{
  box-sizing: border-box;
  width: 100%;
  height: 100%;
}

*, *:after,*:before{
    box-sizing: inherit;
}

p {
  font-size: 16px;
}

@media only screen and (max-width: 991px){
  p {
    font-size: 14px;
  }
}

h2 {
  font-size: 40px;
	font-weight: bold;
}

@media only screen and (max-width: 991px){
  h2 {
    font-size: 28px;
    line-height: 1.6;
  }
}

h3 {
  font-size: 28px;
}

@media only screen and (max-width: 991px){
  h3 {
    font-size: 24px;
  }
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

ul {
  list-style: none;
  padding-inline-start: 0!important;
  margin-block-start: 0!important;
  margin-block-end: 0!important;
}

a {
  text-decoration:none!important;
}

a:hover {
  opacity: 0.7;
  -webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

@media (min-width: 768px) {
.pc_none {
  display: none!important;
  }
}

@media (max-width: 767px) {
.sm_none {
  display: none!important;
  }
}

/*
ヘッダー
----------------------------------------------------------- */
header {
  width: 100%;
  height: 100px;
  position: fixed;
	background: #171717;
  top: 0;
	border-bottom: 5px solid #907B58;
  z-index: 999999;
	text-align: right;
	padding: 0 40px;
}

@media only screen and (max-width: 991px){
  header {
  height: 65px;
  }
}

header img {
  width: 100px;
}

header ul li {
  display: inline-block;
  vertical-align: middle;
}

.logo img {
	position: absolute;
	top: 20px;
	left: 60px;
}

@media (max-width: 767px) {
	header {
	  padding: 0 20px;
	}

	header img {
	  width: 65px;
	}

	.logo img{
		top: 12px;
		left: 20px;
	}
}

.btn01 li {
	font-size: 14px;
	margin-top: 26px;
	display: inline-block;
	padding: 5px 18px 5px 14px;
	border-right: 1px #907B58 solid;
}

.btn01 li:nth-last-child(2), .btn01 li:last-child {
	border-right: none;
}

.btn01 li a {
	color: #fff;
}

.contact a {
	background: #907B58;
	padding: 10px 45px 12px;
	border-radius: 20px;
}

.contact a span {
	padding-right: 10px;
}

@media only screen and (max-width: 991px){
  .btn01{
    margin-top: 20px;
  }

  .line img {
    width: 55px;
  }

  li.one {
  margin-top: 15px;
  margin-right: 0px;
  }
}

/*　ハンバーガーボタン　*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 13px;
  top   : 10px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #fff;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
	height: 100vh;
  position: fixed;
	margin-top: 60px!important;
  z-index : 2;
  top  : 0;
  left : 0;
  color: #fff;
  background: #171717;
  text-align: center;
  width: 100%;
  opacity: 0;
	visibility:hidden;
  transition: opacity .6s ease, visibility .6s ease;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#907B58;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
	text-align: left;
	padding-left: 20px;
	border-bottom: solid 1px #fff;
}

nav.globalMenuSp ul li a:after {
	content: url(../img/plus.png);
	height: 20px;
	width: 20px;
	position: absolute;
	right: 20px;
}

.globalMenuSp .yoyaku {
	margin-top: 20px;
	padding-bottom: 10px;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  opacity: 100;
	margin-top: 60px;
	visibility: visible;
}

.sm-tel {
		margin-right: 50px;
}

.sm-tel img {
	width: 40px;
	margin-top: 10px;
}

.sm-tle-2 img {
	margin-right: 10px;
}

/*
TOPメインコンテンツ
----------------------------------------------------------- */
main {
  overflow: hidden;
	margin-top: 100px;
}

@media (max-width: 767px) {
	main {
	    margin-top: 0px;
	}
}

.slide01 {
	position: relative;
}

.fv-txt {
	text-align: center;
	color: #392828;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.fv-txt h2 {
	font-size: 52px;
	font-weight: bold;
	margin-bottom: 30px;
}

.fv-txt h2 span {
	font-size: 60px;
}

.fv-txt h3 {
	font-size: 36px;
}

.fv-txt h4 {
	font-size: 40px;
	font-weight: bold;
	margin-bottom: 80px;
}

.contact01 a {
	font-size: 18px;
	color: #fff;
	background: #907B58;
	padding: 13px 65px 16px;
	border-radius: 30px;
}

.contact01 a span {
	padding-right: 20px;
}

@media (max-width: 767px) {
	.contact01 a {
		display: block;
		font-size: 14px;
		color: #fff;
		background: #907B58;
		padding-top: 8px;
		padding-bottom: 8px;
		padding-left: 2px;
		padding-right: 2px;
		border-radius: 30px;
	}

	.sp-cont .contact01 {
		text-align: center;
		width: 140px;
		margin-left: 10px;
		margin-right: 10px;
	}

	.sp-cont .contact01 a span{
		margin-top: 3px;
	}

	.sp-cont .contact01 a span {
		padding-right: 0;
	}

	.sp-cont img {
		width: 20px;
		margin-right: 5px
	}

	img.tel-mg {
		margin-right: 15px
	}

	.sp-cont {
		display: flex;
justify-content: center;
	}
}

.slide-dots {
  cursor: pointer;
  margin: 0;
  padding: 0;
  text-align: center;
	z-index: 999;
}
.slide-dots li {
  display: inline-block;
  margin: 0 10px;
}
.slide-dots li button {
  position: relative;
  text-indent: 0;
}
.slide-dots li button::before {
	border-radius: 25px;
  background: #707070;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  cursor: pointer;
  height: 13.5px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 13.5px;
}
.slide-dots li.slick-active button::before {
  background: #fff;
}
.slide-dots button {
  background: none;
  border: none;
  outline: none;
  padding: 0 7px;
}

.slide-dots button:focus {
	outline: none;
}
.slide-dots {
	padding-top: 20px;
	text-align: center;
}

.slide-dots li button {
   color: #171717;
}

@media (max-width: 767px) {
.slick-slide img {
	margin-top: 65px;
  width: 100%;
}

.slide-dots li {
	margin: 0;
}
}

/*
content01
----------------------------------------------------------- */
.content01 {
	padding-top: 80px;
	padding-bottom: 0px;
}

@media (max-width: 767px) {
	.content01 {
		padding-top: 60px;
		padding-bottom: 80px;
	}
}

.content02 {
	padding-bottom: 120px;
}

@media (max-width: 767px) {
	.content02 {
		padding-bottom: 0px;
	}
}

.content03 {
	padding-bottom: 120px;
}

@media (max-width: 767px) {
	.content03 {
		padding-bottom: 80px;
		padding-top: 60px;
	}
}

.content04 {
	padding-bottom: 120px;
}

.content05 {
	padding-bottom: 120px;
}

.content06 {
	padding-bottom: 120px;
}

.content07 {
	padding-bottom: 120px;
}

.content08 {
	padding-bottom: 100px;
}

@media (max-width: 767px) {

	.content04 {
		padding-bottom: 80px;
	}

	.content05 {
		padding-bottom: 80px;
	}

	.content06 {
		padding-bottom: 80px;
	}

	.content07 {
		padding-bottom: 80px;
	}

	.content08 {
		padding-bottom: 80px;
	}
}

.plan img {
	padding-right: 40px;
}

@media (max-width: 767px) {
	.plan img {
		padding-right: 0px;
	}
}

.plan ul li {
	font-weight: bold;
	font-size: 32px;
	margin-bottom: 30px;
}

.plan ul li span {
	padding-left: 40px;
	padding-right: 20px;
}

.plan p {
	padding-left: 40px;
}

.sp-migi p {
	font-size: 18px;
}

.sp-migi span {
	font-size: 16px;
}

@media (max-width: 767px) {
	.plan p {
		padding-top: 20px;
		padding-left: 0px;
	}

	.sp-migi {
		text-align: center;
		display: block;
		margin-top: 20px;
	}

	.sp-migi ul {
		padding-left: 0;
		list-style: none;
		display: inline-block;
	}

	.sp-migi ul li {
		text-align: left;
	}

	.sp-migi ul li {
		font-size: 22px;
		margin-bottom: 10px;
	}

	.plan ul li span {
		padding-left: 0px;
		padding-right: 20px;
	}

	.sp-migi p {
		padding-top: 0;
		margin-bottom: 0;
		padding-right: 30px;
	}
}

.fude-ttl-area {
	position: relative;
	margin-left: 120px;
}

.fude-ttl-area-bd {
	margin-left: 60px;
}

.fude-ttl-area h2 {
	z-index: 1;
	font-size: 32px;
	font-weight: bold;
}

.fude1 {
	position: absolute;
	top:-10px;
	left: 20px;
	z-index: -1;
}

.fude2 {
	top:-10px;
	left: 60px;
}

p.fude-txt {
	padding-top: 30px;
	padding-left: 20px;
}

p.fude-txt2 {
	padding-left: 0px;
}

.fude3 {
	left: 100px;
}

.fude1 img {
	width: 250px;
}

.con01 img {
	padding-left: 40px;
}

.con02 img {
	padding-right: 40px;
}

.content01 .row {
	margin-bottom: 80px;
}

.fude-ttl-area2 {
	padding-left: 80px;
}

.fude-ttl h2 {
	z-index: 1;
	font-size: 32px;
	font-weight: bold;
}

@media (max-width: 767px) {
	.fude-ttl h2 {
		z-index: 1;
		font-size: 24px;
		font-weight: bold;
	}
}

.fude-ttl {
	position: relative;
	margin-bottom: 60px;
}

@media (max-width: 767px) {
	.fude-ttl {
		margin-bottom: 50px;
	}
}

.fude-ttl-mini {
	position: absolute;
	z-index: -1;
	top: 90%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.fude-ttl-mini img {
	width: 200px;
}

@media (max-width: 767px) {
	.fude-ttl-mini img {
		width: 150px;
	}
}

.banner {
	position: relative;
}

.banner-txt {
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

@media (max-width: 767px) {
	.banner-txt {
		width: 100%;
	}
}

.banner-txt h2 {
	font-size: 30px;
	font-weight: bold;
	padding-bottom: 15px;
}

@media (max-width: 767px) {
	.banner-txt h2 {
		font-size: 16px;
		font-weight: bold;
		padding-bottom: 15px;
	}
}

.banner-txt h3 {
	font-size: 24px;
	margin-bottom: 20px;
	font-weight: bold;
}

.aka a {
	background: #D82424;
}

.neta img {
	margin-bottom: 20px;
}

.ken-img img {
	padding-right: 40px;
}

.ken {
	padding-left: 40px;
}

.ken2 {
	padding-left: 80px;
}

@media (max-width: 767px) {
	.ken-img img {
		padding-right: 0px;
	}

	.ken {
		padding-left: 0px;
	}

	.ken2 p {
		margin-top: 20px;
		margin-bottom: 60px;
	}
}

.ken h2 {
	font-size: 26px;
	margin-bottom: 20px;
}

.ken h2 span {
	font-size: 24px;
}

@media (max-width: 767px) {
	.ken h2 {
		font-size: 18px;
		margin-bottom: 20px;
		margin-top: 20px;
	}

	.ken h2 span {
		font-size: 18px;
	}
}

.ken h3 {
	text-align: center;
	font-size: 20px;
	padding: 8px 20px 10px;
	width: 200px;
	margin-bottom: 40px;
}

.syutyo {
	font-weight: bold;
	background: -moz-linear-gradient(left, #D82424,#FF7272);
	background: -webkit-linear-gradient(left, #D82424,#FF7272);
	background: linear-gradient(to right, #D82424,#FF7272);
}

@media (max-width: 767px) {
	.syutyo {
		margin: 0 auto;
	}

	.ken h2 {
		text-align: center;
		padding-top: 5px;
	}
}

.syokunin img {
	padding-right: 40px;
}

img.img01 {
	padding-left: 40px;
	padding-right: 0;
}

img.img02 {
	padding-right: 40px;
}

@media (max-width: 767px) {
	.syokunin img {
		padding-right: 0px;
	}

	img.img01 {
		padding-left: 0px;
		padding-right: 0;
	}
}

@media (min-width: 768px) {
	.mg-pc {
		margin-bottom: 60px;
	}
}

/*
フッター
----------------------------------------------------------- */
footer {
	font-size: 14px;
	padding: 10px 0;
	background: #907B58;
}

footer ul li {
  display: inline-block;
  vertical-align: middle;
}

footer ul li img {
	width: 30px;
}

@media (max-width: 767px) {
	footer ul li img {
		width: 30px;
		padding-bottom: 20px;
	}
}

.foot {
	margin: 0 auto;
	text-align: center;
}



.foot li {
	padding-right: 30px;
}

li.sns {
	padding-right: 15px!important;
}

.plan-tab {
	margin-top: 120px;
}

@media (max-width: 767px) {
	.plan-tab {
		margin-top: 40px;
	}
}

.tab-mg {
	padding-bottom: 60px;
}

.tab-img {
	background-size:100% auto;/*この場合は高さが自動設定*/
	background-image: url("../img/plan-haikei.jpg");
}

.tab-img2 {
	background-size:100% auto;/*この場合は高さが自動設定*/
	background-image: url("../img/kojin.jpg");
}

.tab-area {
  display: flex;
  justify-content: center;
  cursor: pointer;
}
.tab-area .tab {
	font-size: 20px;
	font-weight: bold;
	background-color: #D0D0D0;
  width: 280px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  color: #000000;
}
.tab-area .tab.active {
  background-color: #907B58;
  color: #fff;
  border: none;
}

@media (max-width: 767px) {
	.tab-img {
		background-size: auto 100%;/*この場合は高さが自動設定*/
		background-image: url("../img/plan-haikei.png");
	}

	.tab-img2 {
		background-size: auto 100%;/*この場合は高さが自動設定*/
		background-image: url("../img/kojin.jpg");
	}

	.tab-area .tab {
		font-size: 18px;
		height: 50px;
		line-height: 50px;
	}

	.slick-slide {
		height: 100vh;
	}

	.slider-sp-sp .slick-slide {
		height: auto!important;
	}

	.slider-sp-sp {
		padding-left: 0;
		padding-right: 0;
	}
}

.content-area {
  font-size: 30px;
  text-align: center;
}
.content-area .content {
  display: none;
}
.content-area .content.show {
  margin-top: 50px;
  display: block;
}

.content-area h2 {
	padding-top: 60px;
	padding-bottom: 40px;
	font-size: 28px;
	font-weight: bold;
}

@media (max-width: 767px) {
	.content-area h2 {
		padding-top: 40px;
		padding-bottom: 30px;
		font-size: 22px;
		font-weight: bold;
	}
}

.content-area h3 {
	font-size: 18px;
	background: #907B58;
	color: #fff;
	text-align: center;
}

.hyo-mg {
	margin-top: 60px;
	margin-bottom: 120px;
}

.section-faq__exterior {
	margin: 0 auto;
}


.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0;
	color: #fff;
}
.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}
/* 質問 */
.cp_qa .cp_actab label {
	display: flex!important;
  font-size: 20px;
	line-height: 1.6em;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1.2em 2.4em 1.2em 1.8em;
	cursor: pointer;
	text-indent: 0;
  border-bottom: 1px #fff solid;
}
.cp_qa .cp_actab label:hover {
	transition: all 0.3s;
	opacity: .6;
}
/* --質問の＋アイコン */
.cp_qa .cp_actab label::after {
	font-size: 40px;
	line-height: 2em;
	position: absolute;
	top: 0;
	right: 0;
	content: '＋';
	display: inline-block;
	width: 2em;
	height: 2em;
	-webkit-transition: transform 0.4s;
	        transition: transform 0.4s;
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
	display: flex;
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0 0 0 2.5em;
	-webkit-transition: max-height 0.2s;
	        transition: max-height 0.2s;
	border-radius: 0 0 0.5em 0.5em;
}
.cp_qa .cp_actab .cp_actab-content p {
  padding: 1.2em 2.4em 1.2em 1.8em;
  font-size: 20px;
}
/* 質問を開いた時の仕様 */
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 40em;
  color: #fff;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab input:checked ~ label {
	opacity: .6;
}
/* 質問をクリックした時の+の動き */
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

@media (min-width: 992px) {
	p.answer {
		padding-right: 0!important;
	}

	p.question-txt {
		padding-right: 20px;
	}
}

@media (max-width: 991px) {
  .cp_qa .cp_actab label {
		display: flex;
    font-size: 14px;
  	padding: 20px 0px;
  }

  .cp_qa .cp_actab label::after {
  	font-size: 18px;
    width: auto;
    height: auto;
    top: 12px;
  }

  .cp_qa .cp_actab .cp_actab-content {
  	padding: 0 0 0 1.5em;
		display: flex;
  }

  .cp_qa .cp_actab .cp_actab-content p {
    padding: 10px;
    font-size: 13px;
  }

	.slider-sp img {
		width: 100%;
		height: auto!important;
	}

	p.question-txt {
		padding-right: 10px;
		margin-bottom: 0;
	}
}

@media (max-width: 767px) {
	.foot li {
	    padding-right: 0px;
	}

	.sns-foot {
		margin-top: 10px;
	}

	.text-lf {
		display: inline-block;
		text-align: left;
	}

	.text-lf p {
		margin-bottom: 2px;
	}

	p.mini {
		margin-top: 20px;
		font-size: 10px;
		margin-bottom: 0;
	}

	footer {
		padding-top: 20px;
	}

	.slide-dots li button::before {
		height: 10px;
    width: 10px;
	}

	.slider-sp-sp .slide-dots {
    padding-top: 0px;
		text-align: center;
	}

	.slider-sp img {
			margin-top: 0;
	}
}

.contact-zoon {
	background: #CBCBCB;
	border-radius: 20px;
}

.contact-ttl h2 {
	padding-top: 60px;
	color: #000000;
	padding-bottom: 0px;
}

li.tel-head {
	padding-top: 6px;
	padding-right: 0px;
}

.tel-head img {
  margin-bottom: 3px;
	margin-right: 5px;
  width: 25px;
}

.tel-head a {
	font-size: 18px;
	font-weight: bold;
}


p.contact-txt {
	padding-top: 20px;
	font-size: 14px;
	padding-bottom: 40px;
}

.contact table {
    width: 70%;
    margin: 0 auto;
}

.contact table td input[type=text], .contact table td input[type=tel], .contact table td input[type=email], .contact table td textarea, .contact table td select {
	width: 100%;
	min-height: 40px;
	font-size: inherit;
	color: inherit;
	padding: 7px 15px;
	outline: none;
	margin-bottom: 20px;
	border-radius: 3px;
	background: #fff;
	border: 1px solid #BEBEBE;
	border-radius: 5px;
	color:#000;
}

.contact table .remark {
	background: #D04545;
	color: #fff;
	padding: 1px 10px 2px;
	font-size: 16px;
	font-weight: 400;
	margin-left: 15px;
}

.contact table th {
	 display: -webkit-box;
	 display: -ms-flexbox;
	 display: flex;
	 -webkit-box-pack: justify;
	 -ms-flex-pack: justify;
	 justify-content: space-between;
	 text-align: left;
	 font-size: 22px;
	 font-weight: normal;
	 margin-bottom: 0px;
	 color:#000000;
	 font-weight: bold;
}

.contact table .submit {
    text-align: center;
		padding-top: 30px;
}

.contact table .submit input {
	font-weight: bold;
    display: inline-block;
    font-family: inherit;
    border: none;
    cursor: pointer;
    -webkit-transition: background-color 0.5s;
    transition: background-color 0.5s;
		font-size: 18px;
    color: #fff;
    background: #907B58;
    padding: 13px 65px 16px;
    border-radius: 30px;
		width: 280px;
		margin-bottom: 80px;
}

@media (max-width: 767px) {
	.contact-ttl h2 {
		padding-top: 40px;
	}

	.contact table td input[type=text], .contact table td input[type=tel], .contact table td input[type=email], .contact table td textarea, .contact table td select {
		width: 100%;
		min-height: 28px;
		padding: 4px 20px;
		margin-bottom: 20px;
		color:#000;
	}

	.contact table th {
		font-size: 18px;
	}

	.contact table .remark {
		font-size: 13px;
	}

	.contact table .submit input {
		font-weight: bold;
	    display: inline-block;
	    font-family: inherit;
	    font-size: 24px;
	    color: #ffffff;
	    border: none;
	    cursor: pointer;
	    -webkit-transition: background-color 0.5s;
	    transition: background-color 0.5s;
			background: #907B58;
	    padding: 10px 20px 12px;
	    color: #fff;
	    font-size: 16px;
			width: 200px;
			height: 45px;
			margin-bottom: 60px;
	}


	.contact table {
    width: 85%;
    margin: 0 auto;
	}
}

.loader,
.loader:before,
.loader:after {
  background: #ffffff;
  -webkit-animation: load1 1s infinite ease-in-out;
  animation: load1 1s infinite ease-in-out;
  width: 1em;
  height: 4em;
}

.loader {
  position: absolute;
  left: 50%;
  top: 50%;
  color: #ffffff;
  text-indent: -9999em;
  margin: 32px auto;
  font-size: 4px;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

.loader:before,
.loader:after {
  position: absolute;
  top: 0;
  content: "";
}

.loader:before {
  left: -1.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.loader:after {
  left: 1.5em;
}

.contact table td .formError {
  left: unset !important;
  right: 16%!important;
  bottom: unset !important;
}

.contact table td .prefecture .formError {
  left: unset !important;
  right: calc(100% * -1 - 8px) !important;
  right: 0 !important;
  -webkit-transform: translateX(104%);
          transform: translateX(104%);
  top: 0 !important;
  bottom: unset !important;
  margin-top: 0 !important;
}

@media (max-width: 767px) {
	.contact table td .formError {
		left: unset !important;
		right: 11%!important;
		bottom: unset !important;
	}

	.fv-area-product img {
    object-fit: cover;
    height: 180px;
    object-position: center!important;
	}
}

@media (max-width: 376px) {
	.fv-area-product img {
		object-fit: cover;
		height: 180px;
		object-position: center!important;
	}
}

.mutation {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    -webkit-transition: all 1s;
    transition: all 1s;
}

.mutation.sight {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}


#curtain {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.8);
}

#send {
  position: relative;
}

#receive {
  text-align: center;
}
#receive #result {
  padding-left: 1em;
	font-size: 28px;
}

#receive #confirm {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 280px;
  height: 50px;
  text-align: center;
  font-size: 18px;
  color: #ffffff;
  border-radius: 25px;
  background-color: #907B58;
  padding-top: 2px;
  margin-top: 8px;
  cursor: pointer;
}

@media (max-width: 767px) {
	#receive #confirm {
	  display: -webkit-inline-box;
	  display: -ms-inline-flexbox;
	  display: inline-flex;
	  -webkit-box-pack: center;
	      -ms-flex-pack: center;
	          justify-content: center;
	  -webkit-box-align: center;
	      -ms-flex-align: center;
	          align-items: center;
	  width: 200px;
	  height: 45px;
	  text-align: center;
	  font-size: 15px;
	  color: #ffffff;
	  border-radius: 25px;
	  background-color: #907B58;
	  padding-top: 2px;
	  margin-top: 8px;
	  cursor: pointer;
	}
}

.loader,
.loader:before,
.loader:after {
  background: #ffffff;
  -webkit-animation: load1 1s infinite ease-in-out;
  animation: load1 1s infinite ease-in-out;
  width: 1em;
  height: 4em;
}

.loader {
  position: absolute;
  left: 50%;
  top: 50%;
  color: #ffffff;
  text-indent: -9999em;
  margin: 32px auto;
  font-size: 4px;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

.loader:before,
.loader:after {
  position: absolute;
  top: 0;
  content: "";
}

.loader:before {
  left: -1.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.loader:after {
  left: 1.5em;
}

.margin-contact {
	margin-bottom: 80px;
}

.fv-txt h2, .fv-txt h4 {
visibility:hidden;
}

p.anata {
	font-size: 26px;
}

@media (max-width: 767px) {
span.check {
font-size: 22px;
}

p.anata {
	font-size: 18px;
}
}

@media (min-width: 768px) {
span.check {
font-size: 32px;
}

h2.taigo {
	line-height: 1.5;
}
}
