@charset "utf-8";

@font-face {
  font-family: 'STIXT';
  font-style: normal;
  font-weight: 400;
  src: local( 'STIXTTwoText-VariableFont' ), url( '_ext/STIXTwoText-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: normal;
  font-weight: 500;
  src: local( 'STIXTTwoText-VariableFont' ), url( '_ext/STIXTwoText-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: normal;
  font-weight: 600;
  src: local( 'STIXTTwoText-VariableFont' ), url( '_ext/STIXTwoText-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: normal;
  font-weight: 700;
  src: local( 'STIXTTwoText-VariableFont' ), url( '_ext/STIXTwoText-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: italic;
  font-weight: 400;
  src: local( 'STIXTTwoText-Italic-VariableFont' ), url( '_ext/STIXTwoText-Italic-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: italic;
  font-weight: 500;
  src: local( 'STIXTTwoText-Italic-VariableFont' ), url( '_ext/STIXTwoText-Italic-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: italic;
  font-weight: 600;
  src: local( 'STIXTTwoText-Italic-VariableFont' ), url( '_ext/STIXTwoText-Italic-VariableFont_wght.ttf' ) format( 'truetype' );
}
@font-face {
  font-family: 'STIXT';
  font-style: italic;
  font-weight: 700;
  src: local( 'STIXTTwoText-Italic-VariableFont' ), url( '_ext/STIXTwoText-Italic-VariableFont_wght.ttf' ) format( 'truetype' );
}

body, html
{
	font-family: "STIXT", "Georgia", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
	background-color: #ffffff;
	color: #1A1A1A;
	margin: 0;
	padding: 0;
	font-size: 20px;
	line-height: 1.65;
	font-weight: 400;
	overflow-x: hidden;
}
p
{
	text-indent: 0;
	margin: 0;
	padding: 0;
	font-size: 1rem;
	line-height: 1.54;
	margin-bottom: 1.5rem;
}
p.back
{
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	text-align: right;
	font-size: 0.75rem;
}
a, a:link, a:visited
{
	color: #000000;
	text-decoration: none;
	border-bottom: 2px solid #FFD47F;
}
a:hover
{
	border-bottom: 2px solid #000000;
}
header
{
	width: 100%;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #FFFBF3 url(../_img/bg_01.jpg) no-repeat center top;
	background-size: cover;
	color: #b3b6b9;
}
h1
{
	width: 64rem;
	text-align: center;
	font-size: 5rem;
	line-height: 0.8;
	letter-spacing: -0.02rem;
}
#tagline
{
	width: 100%;
	display: inline-block;
	font-style: italic;
	font-size: 1rem;
	letter-spacing: -0.01rem;
}
.figure
{
	border: 1px solid #999999;
}
main
{
	width: 100%;
	background-color: #FFFBF3;
	padding-bottom: 5rem;
}
#sec_01
{
	padding-left: 20%;
	padding-right: 20%;
	padding-top: 5rem;
	padding-bottom: 0rem;
}
#sec_01 p
{
	text-align: center;
}
#sec_01 p img
{
	width: 30%;
	height: auto;
	border: 1px solid #852828;
}
#sec_02, #sec_03, #sec_04
{
	padding-left: 25%;
	padding-right: 25%;
	padding-top: 5rem;
	padding-bottom: 0rem;
}
h2
{
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
	line-height: 0.8;
	letter-spacing: -0.02rem;
	margin-bottom: 2rem;
}
dl,ol,ul
{
	margin-top: 2rem;
	margin-bottom: 2rem;
}
dt
{
	font-size: 1.2rem;
	font-weight: 500;
	font-style: italic;
	margin-bottom: 0.5rem;
}
dd
{
	padding-left: 1rem;
	margin-bottom: 0.5rem;
}
dd.remark
{
	font-size: 0.8rem;
}

footer
{
	background-color: #2C2A25;
	padding-top: 5rem;
	padding-bottom: 5rem;
	color: #f0f0f0;
}
footer p
{
	text-align: center;
	font-size: 0.9rem;
}
.address
{
	display: none;
}