@charset "utf-8";
/* manual
========================================== */
.pcOnly {
  display: block;
}
.spOnly {
  display: none;
}
.tabOnly {
  display: none;
}
.pctabOnly {
  display: block;
}
.tabspOnly {
  display: none;
}
.pcspOnly {
    display: block;
}

a{
	text-decoration: none;
	color: #000;
}
body {
  width: 100%;
  color: #000;
	background: #F8F2EB;
}
img{
	max-width: 100%;
	height: auto;
}
.mb10{
	margin-bottom: 10px;
}
a.jump_point {
	height: 1px;
	display: block;
	padding-top: 88px;
	margin-top: -88px;
}
/* headerPC
========================================== */
header {
  width: 100%;
  background: #6F615A;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
header .hd {
	width: 1200px;
	margin: 0 auto;
	padding: 20px 0;
	color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
header .hd .logo {
  width: 20%;
}
@keyframes fadeBtn {
  0% {
    background-color: #fff2d0;
  }
  50% {
    background-color: #efb820;
  }
  100% {
    background-color: #fff2d0;
  }
}


/* gmenu
========================================== */
header .gnav {
  width: 80%;
}
header .gnav .gn {
  width: 100%;
	display: flex;
	justify-content: flex-end;
}
header .gn li a {
  display: block;
  padding: 0 0 0 40px;
	box-sizing: border-box;
  color: #fff;
  text-decoration: none;
  position: relative;
	font-size: 20px;
}
header .gn li.new::before {
  content: "NEW";
  position: absolute;
  top: -3px;
  left: 3px;
  display: inline-block;
  background-color: rgb(202 8 33);
  border-radius: 5px;
  font-size: 10px;
  padding: 3px 3px 2px;
  line-height: 10px;
  color: #ffffff;
  letter-spacing: 1px;
  z-index: 2;
}
@keyframes fadeBtn_new {
  0% {
    background-color: rgb(202 8 33);
  }
  50% {
    background-color: rgb(252 200 14);
  }
  100% {
    background-color: rgb(202 8 33);
  }
}

/* ==================
top
======================== */
.mainW {
	margin-top: 88px;
	position: relative;
}
.mainW img{
	width: 100%;
	height: auto;
}
.mainW .btn{
	position: fixed;
	display: block;
	bottom: 2%;
	right: 1%;
	background: linear-gradient(#94111C, #4A090E);
	color: #fff;
	font-weight: bold;
	padding: 15px 40px 15px 15px;
	border-radius: 10px;
	border: 2px solid #fff;
	text-align: center;
	font-size: 30px;
	box-sizing: border-box;
	z-index: 100;
}
.mainW .btn span{
	font-size: 40px;
}
.mainW .btn::after{
	font-family: 'Material Icons';
	content: '\e5e1';
	position: absolute;
	right: 2%;
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	font-size: 25px;
	font-weight: normal;
}

h3.tit{
	font-size: 40px;
	font-weight: bold;
	margin: 0 0 80px;
	background: #CAC3BB;
	text-align: center;
	padding: 30px 10px;
	box-sizing: border-box;
}
.inner{
	width: 1200px;
	margin: 0 auto;
}
.bg_brown{
	background: #631414;
	padding: 80px 0 0;
}
.flex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.subtitle{
	text-align: center;
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 50px;
    line-height: 2;
}
.sec01 .sec01_box{
	width: 90%;
	margin: 0 0 0 auto;
	display: flex;
	justify-content: space-between;
}
.sec01 .sec01_txt{
	color: #fff;
	width: 40%;
}
.sec01 img{
	width: 58%;
}
.sec01 .sec01_txt h2{
	font-size: 45px;
	font-weight: bold;
	margin-bottom: 50px;
}
.sec01 .sec01_txt p{
	font-size: 25px;
	line-height: 2;
}

.sec02{
	width: 100%;
	padding: 80px 0;
}
.sec02 .fukidashi{
	width: 500px;
	border: 2px solid #6F615A;
	font-size: 27px;
	font-weight: bold;
	display: table;
	padding: 20px;
	position: relative;
	background-color: #fff;
	margin: 0 auto 80px;
	text-align: center;
}
.sec02 .fukidashi:before,
.sec02 .fukidashi:after	{
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -0.8em;
	border-top: 0.8em solid #6F615A;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
.sec02 .fukidashi:after	{
	bottom: calc( 4px - 0.8em );
	border-top: solid 0.8em #fff;
}
.sec02 .question{
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
.sec02 .question div{
	width: 48%;
	background: #fff;
	padding-bottom: 10px;
}
.sec02 .question .gray{
	background: #A6A7A7;
}
.sec02 .question .yellow{
	background: #F8F4E1;
}
.sec02 .question h4{
	background: #6F615A;
	color: #fff;
	text-align: center;
	padding: 15px 0;
	margin-bottom: 10px;
	font-size: 24px;
}
.sec02 .question p{
	margin: 0 auto 10px;
	width: 90%;
}
.sec02 .question img{
	margin: 0 auto;
	width: 90%;
}
.sec02 table{
	width: 100%;
}
.sec02 table td{
	padding: 10px;
	box-sizing: border-box;
	vertical-align: middle;
}
.sec02 table .brown{
	background: #6F615A;
	color: #fff;
	text-align: center;
	font-size: 24px;
	padding: 15px 10px;
}
.sec02 table .gray{
	background: #A6A7A7;
	color: #fff;
	text-align: center;
	font-size: 24px;
	padding: 15px 10px;
}
.sec02 table .yellow{
	background: #F8F4E1;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	box-sizing: border-box;
}
.sec02 table .yellow span{
	color: #94111C;
	font-size: 20px;
	font-weight: bold;
}
.sec02 table .border{
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	box-sizing: border-box;
	background: #fff;
}
.sec02 table .border span{
	font-weight: bold;
}
.sec02 table p{
	background: #fff;
	font-weight: bold;
	color: #32190E;
	padding: 20px 10px;
	box-sizing: border-box;
	clip-path: polygon(0 -3%, 90% -3%, 90% 0, 100% 50%, 90% 100%, 90% 100%, 0 100%);
}
.sec02 .min{
	color: #fff;
	margin-top: 10px;
}

.sec03{
	width: 100%;
	padding: 80px 0;
}
.sec03 ul{
	margin-bottom: 30px;
}
.sec03 ul li{
	width: 32%;
	border: 2px solid #6F615A;
	background: #6F615A;
	color: #fff;
	text-align: center;
	padding-bottom: 20px;
}
.sec03 ul li div{
	position: relative;
	padding: 20px 5px;
	box-sizing: border-box;
	font-size: 30px;
	font-weight: bold;
	color: #6F615A;
	background: #fff;
	margin-bottom: 30px;
}
.sec03 ul li div::before,
.sec03 ul li div::after {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -0.8em;
    border-top: 0.8em solid #6F615A;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
}
.sec03 ul li div::after {
    bottom: calc(4px - 0.8em);
    border-top: solid 0.8em #fff;
}
.sec03 ul li h4{
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}
.sec03 dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.sec03 dl dt{
	background: #6F615A;
	color: #fff;
	padding: 20px 10px;
	box-sizing: border-box;
	width: 20%;
	text-align: center;
}
.sec03 dl dd{
	width: 78%;
}
.sec03 dl dd p:first-child{
	border-bottom: 1px solid #6F615A;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.sec03 .min{
	margin: 15px 0 0;
}
.sec04 {
	margin-bottom: 80px;
}
.sec04 ul li:first-child{
	width: 60%;
}
.sec04 ul li:last-child{
	width: 38%;
	border: 1px solid #6F615A;
	box-sizing: border-box;
}
.sec04 ul li:last-child h4{
	background: #6F615A;
	color: #fff;
	padding: 30px 5px;
	box-sizing: border-box;
	text-align: center;
	font-size: 18px;
}
.sec04 ul li:last-child p{
	padding: 15px;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.8;
}
.bg_img img{
	width: 100%;
}
.sec05{
	background: #fff;
	padding: 80px 0;
}
.sec05 ul{
	margin-bottom: 50px;
}
.sec05 ul li{
	width: 32%;
	background: #F8F4E1;
	border: 2px solid #6F615A;
	text-align: center;
	margin-bottom: 15px;
}
.sec05 ul li div{
	display: table;
	width: 100%;
}
.sec05 ul li h4{
	height: 120px;
	display: table-cell;
	vertical-align: middle;
	font-size: 20px;
	font-weight: bold;
}
.sec05 ul li h4 span{
	font-size: 25px;
	color: #94111C;
	display: inline-block;
}
.sec05 h5{
	color: #fff;
	background: #6F615A;
	padding: 15px 5px;
	box-sizing: border-box;
	font-size: 24px;
	text-align: center;
}
.sec05 ul li p{
	padding: 25px;
	box-sizing: border-box;
	text-align: left;
}
.sec05 dl{
	width: 100%;
	margin: 0 auto;
}
.sec05 dl dt{
	width: 30%;
}
.sec05 dl dt p,
.sec05 dl dt h5{
	margin-bottom: 10px;
}
.sec05 dl dd{
	position: relative;
	width: 68%;
	border: 2px solid #6F615A;
	padding: 20px;
	box-sizing: border-box;
}
.sec05 dl dd h6{
	font-size: 25px;
	margin-bottom: 15px;
}
.sec05 dl dd ul{
	margin: 0;
}
.sec05 dl dd ul li{
	background: #fff;
	width: auto;
	border: none;
	text-align: left;
	margin: 0;
	display: flex;
	align-items: center;
	line-height: 2;
	font-size: 18px;
}
.sec05 dl dd ul li .red{
	color: #94111C;
	font-size: 140%;
	font-weight: 700;
}
.sec05 dl dd ul li .material-icons-outlined{
	margin-right: 15px;
	font-size: 28px;
}
.sec05 dl dd img{
	position: absolute;
	top: 8%;
	right: 2%;
}

.sec06{
	padding: 80px 0;
}

.sec06 .fukidashi{
	width: 560px;
	border: 2px solid #6F615A;
	font-size: 27px;
	font-weight: bold;
	display: table;
	padding: 20px;
	position: relative;
	background-color: #fff;
	margin: 0 auto 80px;
	text-align: center;
}
.sec06 .fukidashi:before,
.sec06 .fukidashi:after	{
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -0.8em;
	border-top: 0.8em solid #6F615A;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
.sec06 .fukidashi:after	{
	bottom: calc( 4px - 0.8em );
	border-top: solid 0.8em #fff;
}

.sec06 .arrow {
  position: relative;
  width: 60px;
  height: 33px;
	margin: 0 auto 30px;
}

.sec06 .arrow::before,
.sec06 .arrow::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 1px);
  width: 2px;
  height: 40px;
  border-radius: 9999px;
  background-color: #000000;
  transform-origin: 50% calc(100% - 1px);
}
.sec06 .arrow::before {
  transform: rotate(45deg);
}
.sec06 .arrow::after {
  transform: rotate(-45deg);
}
.sec06 .subtitle span{
	color: #94111C;
}
.sec06 .contact{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 700px;
	margin: 0 auto;
	background: #31190D;
	color: #fff;
    padding: 30px 10% 30px 5%;
    box-sizing: border-box;
    clip-path: polygon(0 -3%, 90% -3%, 90% 0, 100% 50%, 90% 100%, 90% 100%, 0 100%);
}
.sec06 .contact p{
	font-size: 20px;
}
.sec06 .contact p span{
	font-size: 50px;
	color: #F8B600;
	font-weight: bold;
}
.sec06 .contact .material-icons-outlined {
	font-size: 50px;
}
.sec06 .privacy{
    margin-top: 30px;
}

/* footer
========================================== */

footer {
	background: #6F615A;
	color: #fff;
	font-size: 14px;
	padding: 30px 0;
}
footer a{
	color: #fff;
}
footer p {
	font-size: 14px;
}
footer ul{
	width: 1200px;
	margin: 0 auto;
	align-items: center;
}
footer ul li{
	font-size: 20px;
}
footer ul li:first-child {
	width: 20%;
}
footer dl{
	width: 1200px;
	margin: 30px auto 0;
}
footer dl dt {
	width: 35%;
}
footer dl dd {
	width: 64%;
}
footer dl dd .tel{
	display: flex;
	align-items: center;
	font-size: 50px;
	font-family:YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
footer dl dd .tel img{
	margin-right: 5px;
}

.pageTop {
  position: fixed;
  right: 1%;
  bottom: 21%;
  z-index: 70;
  color: #ffffff;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.75);
  height: 40px;
  width: 40px;
  padding: 9px 7px 4px 7px;
  font-size: 24px;
  cursor: pointer;
  box-sizing: unset;
}
/****
common
*******************************************/
.is-hidden {
  visibility: hidden;
  opacity: 0;
}

.conw {
  width: 100%;
  overflow: hidden;
}
.top .conw {
  padding-bottom: 0px;
}
.con {
  width: 100%;
  padding: 0px 0 30px;
  margin: 0 auto;
  font-feature-settings: "palt";
}
.con img {
  width: 100%
}
.block {
  max-width: 1300px;
  margin: 0 auto;
  width: 96%;
}
.secAnc {
  padding-top: 10vw;
  /* margin-top: -5vw; */
  padding-bottom: 10vw;
}
h2.ttl {
  margin-bottom: 120px;
  text-align: center;
  font-size: 38px;
  letter-spacing: 2px;
  position: relative;
  color: #000000;
  font-weight: bold;
}
h2.ttl::after {
  content: "";
  position: absolute;
  width: 13%;
  height: 11px;
  bottom: -40px;
  left: 44%;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #00000085), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, #00000085), color-stop(.75, #00000085), color-stop(.75, transparent), to(transparent));
  -webkit-background-size: 6px 6px;
  background-size: 6px 6px;
}
.txt {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.2em;
}
.txt strong.txtBold {
  font-size: 110%;
  font-family: "Hiragino Mincho Pro", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN";
}
.con .mincho {
  font-weight: bold;
}
.con .mincho .cap {
  font-weight: normal;
}
.cat {
  font-size: 30px;
  line-height: 2;
  margin-bottom: 30px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.2em;
}
.chu {
  font-size: 12px;
  color: #333333;
  text-align: left;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: normal;
}
.btnPri {
  width: 96%;
  margin: 0 auto;
  text-align: center;
  max-width: 600px;
}
.btnPri li {
  display: inline-block;
  width: 29%;
  margin: 0 1%;
}
.btnPri li a {
  display: block;
  text-decoration: none;
  text-align: center;
  background-color: #97504b;
  color: #ffffff;
  padding: 10px 0;
  font-size: 14px;
}
.btnPri li a:hover {
  background: #9b544d;
  color: #ffffff;
  padding: 10px 0;
  opacity: 1;
}
.btnPri li a i {
  display: block;
}
/*スクロールアニメーション*/
.fadein {
  opacity: 0;
  transform: translate(0, 50px);
  transition: all 2000ms;
  animation-timing-function: ease-in-out;
}
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
  animation-timing-function: ease-in-out;
}
.fadein.slideIn {
  transform: translate(0, 0);
  transition: all 1000ms;
  animation-timing-function: linear;
  position: relative;
  left: -50%;
}
.fadein.slideIn.scrollin {
  left: 0%;
}
.fadein.zoomOut {
  transform: scale(2, 2);
}
.fadein.zoomOut.scrollin {
  transform: scale(1, 1);
}
.fadein.lineIn {
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 200% auto;
  background-image: linear-gradient(to right, #333333 0%, #333333 50%, transparent 50%, transparent 100%);
  transition: background-position ease 2s;
}
.fadein.lineIn.scrollin {
  background-position: 0 0;
}
.fadein.lineBtm::before {
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 200% auto;
  background-image: linear-gradient(to right, #ffa14c 0%, #ffa14c 50%, transparent 50%, transparent 100%);
  transition: background-position 2s ease 2s;
}
.fadein.lineBtm.scrollin::before {
  background-position: 0 0;
}
.fadein.lineStripe::after {
  animation: anime_stripe 3s infinite linear;
}
@keyframes anime_stripe {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: 13%;
  }
}
/*============================
_print
============================*/
@media print {
  .map .btnPri, .map .fnav, .map footer, .map .infow, .map .pan, .map .gnav, .map .ttl, .map header {
    display: none;
  }
}