@charset "utf-8";


/*　default
-------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
}

/* body {
	-webkit-text-size-adjust: 100%; /* sp lock
} */

body,
div,
ul, ol, li,
dl, dt, dd,
h1, h2, h3, h4, h5, h6,
pre,
form, fieldset, input, textarea,
p, blockquote,
table, tr, th, td {
	margin: 0;
	padding: 0;
	color: #f9f8f5;
	font-weight: lighter;
}

p, li, dt, dl, address, tr, td {
	font-size: 16px;
	line-height: 1.8;
}
/*　@media screen and (max-width: 912px) {
	p, li, dt, dl, address, tr, td {
		font-size: 19px;
	}
} */

li {
	list-style: none;
}

img {
	margin: 0;
	padding: 0;
	border: none;
}

address, em {
	font-style: normal;
}

a:link, a:hover, a:visited {
	text-decoration: none;
	color: #f9f8f5;
	transition: 0.4s;
}

a:hover, a:visited {
	opacity: 0.7;
}



/* letter-spacing
-------------------------------------------------- */
.ls01 {
	letter-spacing: 0.1em;
}

.ls02 {
	letter-spacing: 0.2em;
}



/* font-color
-------------------------------------------------- */
.fc01 {
	color: #1b2231;
}



/* border
-------------------------------------------------- */
.bb01 {
	border-bottom: 1px #777 solid;
	width: 100%;
	height: 1px;
}



/* transform
-------------------------------------------------- */
.tf a img {
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}
.tf a img:hover {
	transform: translateY(20px);
}




/* transition
-------------------------------------------------- */
.tr a {
	display: inline-block;
}
.tr a img {
	transition: opacity .5s;
}
.tr a:hover img {
	opacity: 0;
}



/* fadein animation
-------------------------------------------------- */
.fadein-top {
  -webkit-transition: all 1s linear;
  -o-transition: all 1s linear;
  transition: all 1s linear;
  -webkit-transform: translateY(30px);
  -moz-transform: translateY(30px);
  -ms-transform: translateY(30px);
  transform: translateY(30px);
  opacity: 0;
}
.fadein-top.active{
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}



/* 縦方向中央揃え
-------------------------------------------------- */
.tc {
	display: flex;
	align-items: center;
}



/* title border
-------------------------------------------------- */
.tb {
	display: flex;
	align-items: center;
}
.tb:before {
	border-top: 1px solid;
	content: "";
	width: 40px;
}
.tb:before {
	margin-right: 2rem;
}








/* body
-------------------------------------------------- */
body {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	font-family: "Merriweather", "Times New Roman", "FOT-筑紫Aオールド明朝 Pr6 D", TsukuAOldMinPr6-D, serif;
	letter-spacing: 0.04em;
	position: relative;
}


@media screen and (min-width: 1025px) {
.main {
	width: 1000px;
	margin: auto;
}
.maxmain {
	width: 1100px;
	margin: auto;
}
}
@media screen and (max-width: 1024px) {
.main {
	margin: 0 5%;
}
}



/* font
-------------------------------------------------- */
@media (min-width: 992px) {
	h1 {
		font-size: 35px;
	}
	h2 {
		font-size: 30px;
		line-height: 1.4;
	}
}
@media (max-width: 991px) {
	h1 {
		font-size: 26px;
	}
	h2 {
		font-size: 22px;
	}
}
.fw_b {
	font-weight: bold;
}



/* background-color
-------------------------------------------------- */
.bk {
	background-color: #fff;
}
.bk01 {
	background-color: #F8F5F0;
}
.bk02 {
	background-color: #b08329;
}
.bk03 {
	background-color: #222;
}



/* space
-------------------------------------------------- */
@media (min-width: 992px) {
	.sp00 {
		clear: both;
		height: 120px;
	}
	.sp01 {
		clear: both;
		height: 60px;
	}
	.sp02 {
		clear: both;
		height: 30px;
	}
}
@media (max-width: 991px) {
	.sp00 {
		clear: both;
		height: 100px;
	}
	.sp01 {
		clear: both;
		height: 40px;
	}
	.sp02 {
		clear: both;
		height: 15px;
	}
}



/* PC用margin設定
-------------------------------------------------- */
@media screen and (min-width: 797px) {
.mr01 {
	margin: 0 450px 0 50px;
}
.ml01 {
	margin: 0 50px 0 450px;
}
}



/* スマホ用width設定
-------------------------------------------------- */
@media screen and (max-width: 796px) {
.wh {
	width: 94%;
}
}



/* android 回避の為のimg設定
-------------------------------------------------- */
.img_box {
	width: 100%;
}
.img_box img {
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}



/* リンク先をずらす
-------------------------------------------------- */
span.link_t_a {
	position: relative;
	top: -100px;/*左の数値を変えると、上下に調整します*/
	display: block;
}



/* fuwa
-------------------------------------------------- */
.fadebox {
	animation: fadeIn 1s ease 0s 1 normal;
	-webkit-animation: fadeIn 1s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

/* fuwa up  */
.fadeIn_up {
  opacity: 1;
  transform: translateY(10px);
  transition: 0.7s;
}
.fadeIn_up.is-show {
  transform: translateY(0px);
  opacity: 1;
}



/* opacity
-------------------------------------------------- */
.op a {
	-webkit-transition: 0.7s ease-in-out;
	-moz-transition: 0.7s ease-in-out;
	-o-transition: 0.7s ease-in-out;
	transition: 0.7s ease-in-out;
}
.op a:hover {
	filter: alpha(opacity=65);
	-moz-opacity: 0.65;
	opacity: 0.65;
}



/* drop-shadow
-------------------------------------------------- */
.ds {
	filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.4));
}



/* 字下げ
-------------------------------------------------- */
.jsg {
	text-indent: -1em;
	padding-left: 1em;
}



/* pc sp
-------------------------------------------------- */
@media screen and (min-width: 992px) {
	.pc_hide {
		display: none;
	}
}
@media screen and (max-width: 991px) {
	.sp_hide {
		display: none;
	}
}