@charset "utf-8";

/* normalize（normalize.css v8.0.1 ）*/

/* Document
=================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.

 * 1. すべてのブラウザ用に、デフォルトのフォントファミリーを変更してください (オプション).
 * 2. iOS用に、デバイスの向きを変えた後にユーザーの文字サイズ調整を防ぐ。
 */

html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
=================================================== */
/**
 * Render the `main` element consistently in IE.
 */

main {
	display: block;
}

/* Text-level semantics
=================================================== */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.3em;
}

/* Interactive
=================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/* Misc（その他）
=================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/*-----------------------------------------------------------------------------*/
/* 基本設定 */
/*-----------------------------------------------------------------------------*/
html, body, div, figure, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	}
*, *::before, *::after {
	box-sizing: border-box;
	}

html, body { /*height:100%;*/}

html {
	-webkit-font-smoothing: antialiased;
	}

:root {
	--b98: #050505;
	--b95: #0d0d0d;
	--b90: #1a1a1a;
	--letter: 0.06em;
	--bd: 1px solid #999;
	--gray: rgb(233 234 235 / 0.6);
	font-size: 62.5%; /*10px相当*/
	}
@media screen and (min-width:768px) and ( max-width:1500px) {
:root {
	}
}

body {
	position: relative;
	color:#000;
	text-align:center;
	font-size: 1.6rem;
	font-size: clamp(1.5rem, 0.8333333vw, 1.8rem);
	line-height: 1.8;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
	
	word-wrap:break-word;
	overflow-wrap:break-word;

	font-family: "Oswald", "游ゴシック体", "YuGothic", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
/*	font-family: "Oswald", YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	font-family: "Oswald", "メイリオ", sans-serif;
	font-family: "Oswald", 'Noto Sans JP', "メイリオ", sans-serif;
	font-family: "Oswald", YakuHanJP, 'Noto Sans JP', "メイリオ", sans-serif;*/

	min-width: 820px;/*iPad Airの幅？*/
	}
	body::before {
	content: '';
	position: fixed;
	top: 0;
	right: 0;
	width: max(25%, 360px);
	height: 100vh;
	z-index: -10;
	background-image: url("../images/bg_pc@2x.png");
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 100% auto;
	}
@media screen and (max-width: 767px) {
body {
	font-size: 1.4rem;
	line-height: 1.7;
	min-width: initial;
	}
	body::before {
	width: 60%;
	background-image: url("../images/bg_sp@2x.png");
	}
}

table {
	border-collapse:collapse;
	border-spacing:0;
	}
	th,td {
	line-height: 1.6;
	font-weight: inherit;
	text-align: left;
	}

h1,h2,h3,h4,h5,h6,em,pre, [class^="ttl_"] { line-height: 1.5;}
@media screen and (max-width: 767px) {
	h1,h2,h3,h4,h5,h6,em,pre, [class^="ttl_"] { line-height: 1.4;}
}

img {
	vertical-align: top;
	border:none;
	max-width:100%;
	height:auto;
	}

ul, ol { list-style: none;}
i, em { font-style: normal;}
.clear { clear: both;}
.nowrap { white-space: nowrap;}

.txt_c, .txt_c p {	text-align:center !important;}
.txt_r, .txt_r p {	text-align:right !important;}

a img {
	transition:all 0.3s ease;
	}
	a:hover img {
/*	opacity:0.9;*/
	}

/*::-moz-selection { color:#fff; background: #5c4622; }
::selection { color:#fff; background:#5c4622; }*/

/*　レスポンシブ切り替え（brなど）　*/
@media screen and (max-width: 767px) {
.pc, .br_pc { display: none !important; }
.txt_c_sp, .txt_c_sp p  {	text-align:center !important;}
}
@media screen and (min-width: 768px) {
.sp, .br_sp { display: none !important; }
.txt_c_pc, .txt_c_pc p {	text-align:center !important;}
}

/*　リンク
------------------------------------------------------------*/
a {
	color: inherit;
	outline:none;
	border:none;
	text-decoration: underline;
	}
@media screen and (min-width: 768px) {
	a:hover {
	color: #666;
	transition: 0.3s;
	}
	.entry-content a:hover,
	p > a:hover,
	.a_bk a:hover,
	dl.news dd  a:hover {
	color: #fff;
	background-color: var(--b90);
	text-decoration: none;
	transition: background-color 0.3s;
	}
}

/*　フォント
------------------------------------------------------------*/
.font_b {
	font-weight: bold !important;
	}
.font_n{
	font-weight: normal !important;
	font-style: normal !important;
	}
.red {
	color: #CC0000;
}

/*　float解除（共通）
------------------------------------------------------------*/
.cf::after {
	content: "";
	clear: both;
	display: block;
	}