@charset "UTF-8";
/*!
Theme Name: fair
Author URI: https://sougi.or.jp/fair/
*/
/*
Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

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

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* 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;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}
html {
	-webkit-font-smoothing: antialiased; /*アンチエイリアス調節ギザギザなしの滑らかfontに*/
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
body, button, input, select, optgroup, textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}
dfn, cite, em, i {
	font-style: italic;
}
blockquote {
	margin: 0 1.5em;
}
pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code, kbd, tt, var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}
abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark, ins {
	background: #fff9c0;
	text-decoration: none;
}
.big { font-size: 125%; }
.small { font-size: 80%; }

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
ul, ol, dl, p, figure { /*pはmargin-bottom: 1.5em*/
	margin: 0;
}
.entry-header p, .entry-content p:not(.mb-0 p:last-child) {
	margin-bottom: 1rem;
}
ul { list-style: none; }
ol { list-style: decimal; }
ul, ol { line-height: 1.8; }
dt { font-weight: 700; }
dd:not(.horizontal-dl__item) {
	margin: 0 0 1.5em; /*0 1.5em 1.5em;*/
}

/* Make sure embeds and iframes fit their containers. */
embed, iframe, object {
	max-width: 100%;
}
img {
	height: auto;
	max-width: 100%;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
	border-collapse: collapse;
}
.h1, .h2, .h3, .h4, h5, h6 {
	clear: both;
	color: #454545;
	font-weight: 500;
	line-height: 1.2;
	margin: 0 0 1.25rem 0;
}
.h1 {
	padding-bottom: 0.5rem;
	border-bottom: 0.25rem solid #231815;
	text-align: center;
	font-size: 2.5rem;
}
.h1--front {
	border-bottom: 0.5rem solid #009944;
}
.h1--category {
	color: #CC1479; /*#e40077*/
}
.h2 {
	text-align: center;
	font-size: 2rem;
}
.h2--category {
	margin: 0 -15px 2rem -15px;
	padding: 0 15px 0.5rem 15px;
	border-bottom: 0.25rem solid #231815;
}
.h3 {
	font-size: 1.75rem;
}
.h3--category {
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	padding-right: 6%;
	background-color: #0062b1; /*#009944*/
	color: #fff;
}
.h--category {
	margin-top: 3rem;
	margin-right: -15px;
	margin-left: -15px;
	padding: 0.25rem;
	background-color: #5897B0; /*#81b11a #61B000*/
	color: #fff;
}
.h--category:first-of-type {
	margin-top: 0;
}
h4, .h4 {
	font-size: 1.5rem;
}
h5, .h5 {
	font-size: 1.25rem;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}
.h3--category .d-block {
	color: inherit;
	text-decoration: none;
}
a:visited:not(.btn):not(.h3--category .d-block) {
	color: #800080;
}
a:hover,
a:focus,
a:active {
	color: #191970;
}
a:focus {
	outline: thin dotted;
}
a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.btn {
	border: 1px solid;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1.2;
	padding: 0.6em 1em 0.5em;
}
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.btn:hover {
	border-color: #ccc #bbb #aaa;
}
button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 8px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}
select { border: 1px solid #ccc; }
textarea { width: 100%; }
.not-found .search-field { width: 70%; }
.btn-primary.btn {
	color: #fff;
	background-color: #1d2088;
	/*border-color: #007bff;*/
}
.btn-primary.btn:hover {
	color: #fff;
	background-color: #1d2088;
	/*border-color: #0062cc;*/
}
.btn-primary.btn:focus, .btn-primary.btn.focus {
	color: #fff;
	background-color: #0069d9;
	border-color: #0062cc;
	box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}
.btn-primary.btn.disabled, .btn-primary.btn:disabled {
	color: #fff;
	background-color: #007bff;
	border-color: #007bff;
}
.btn-primary.btn:not(:disabled):not(.disabled):active, .btn-primary.btn:not(:disabled):not(.disabled).active,
  .show > .btn-primary.dropdown-toggle {
	color: #fff;
	background-color: #0062cc;
	border-color: #005cbf;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
  .show > .btn-primary.dropdown-toggle:focus {
	box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}
.btn--category {
	background-color: #0062b1; /*#009944*/
	color: #fff;
	border-radius: 1.25rem;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Header, Footer
--------------------------------------------- */
.site-header {
	background: linear-gradient(180deg, #fff 70%, #fffde5 90%);
	border-bottom: 5px solid #0062b1;
}
.site-branding {
	padding-left: 0;
	padding-right: 0;
}
.color-bar {
	background-color: #0062b1;
	color: #fff;
}
.color-bar__inner, .color-bar__inner + .d-sm-none {
	font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
	font-weight: 700;
}
.color-bar__inner a {
	text-decoration: none;
}
.color-bar__inner a:visited {
	color: inherit !important;
}
.color-bar__name {
	position: relative;
	font-size: clamp(14px, calc((100vw - 320px) / 128 + 14px), 17.5px); /*1.08em*/
	line-height: 1;
	letter-spacing: 0.03em;
	vertical-align: middle;
}
.color-bar__nameset {
	text-align: right;
}
.color-bar__name::after {
	position: absolute;
	top: 50%;
	left: 102%; /*242px*/
	transform: translateY(-50%);
	content: '\f105';
	font-family: 'FontAwesome';
	font-size: 1.7em;
	color: #fff;
	line-height: 1.5;
}
.color-bar__logo {
	/*height: clamp(17px, calc((100vw - 320px) * 0.0195 + 17px), 22px);*/
	width: clamp(39.22px, calc((100vw - 320px) * 0.0449 + 39.22px), 50.72px);
	vertical-align: -40%;
}
.color-bar__text {
	vertical-align: middle;
}
.color-bar__year {
	display: inline-block;
	font-size: clamp(14px, calc((100vw - 320px) * 0.0109 + 14px), 16.8px); /*1.05em*/
	line-height: 1;
}
.color-bar__inner + .d-sm-none {
	font-size: clamp(13px, calc((100vw - 320px) * 0.0117 + 13px), 16px);
	font-weight: 500;
	border-top: 1px solid #fff;
	margin-left: 15px;
	margin-right: 15px;
	padding-top: 2px;
	padding-bottom: 4px;
}
.site-logo {
	width: 42vw;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.site-logo__link {
	position: absolute;
	top: clamp(8px, calc((100vw - 576px) / 156 + 8px), 12px);
	left: 50%;
	transform: translateX(-50%);
	width: max-content;
}
.site-footer {
	padding-top: 2rem;
	background-color: #fff;
	border-top: 7px solid #0062b1;
}
.site-footer__org {
	padding-top: 0.5rem;
	padding-bottom: 2rem;
}
.site-footer__org .d-block {
	margin-bottom: 0.5rem;
	padding: 0.5rem;
	border-bottom: 1px solid #154688;
}
.site-footer__address {
	font-style: normal;
}
#toTop {
	position: fixed;
	right: 15px;
	bottom: 8%;
	width: clamp(40px, calc((100vw - 320px) / 88 + 40px), 50px);
	height: clamp(40px, calc((100vw - 320px) / 88 + 40px), 50px);
	border-radius: 8px;
	background-color: #0062b1;
	font-size: clamp(24px, calc((100vw - 320px) / 110 + 24px), 32px);
	color: #fff;
	text-align: center;
	line-height: clamp(32px, calc((100vw - 320px) / 88 + 32px), 42px);
	z-index: 99;
	opacity: 0.7;
}
.chevron {
	position: relative;
	display: block;
}
.chevron::after {
	position: absolute;
	top: 50%;
	right: -2.5%;
	display: block;
	content: '';
	width: 1.125rem;
	height: 1.125rem;
	margin-top: -7px;
	border-top: 2px solid;
	border-top-color: inherit;
	border-right: 2px solid;
	border-right-color: inherit;
	transform: rotate(45deg);
}
.triangle {
	border-top: 9px solid transparent;
	border-bottom: 9px solid transparent;
	border-left: 15px solid #fff;
	display: inline-block;
	vertical-align: bottom;
}

.tab__label {
	padding: 10px 5px;
	background-color: #fff;
	border-width: 1px 1px 0px 1px;
	border-style: solid;
	border-color: #ccc;
	border-radius: 6px 6px 0px 0px;
	cursor: pointer;
	font-size: clamp(18px, calc((100vw - 320px) * 0.0159 + 18px), 32px);
	line-height: 1.2;
	text-align: center;
	width: 49.5%;
}
.tab__on-off, .tab__panel { display: none; }
.tab__on-off:checked + .tab__label {
	background-color: #FFEAC5;
	border-color: #FF9C45;
	border-bottom-width: 0.25rem;
	color: #002566;
}
.tab__on-off--map:checked ~ .tab__panel--map, .tab__on-off--list:checked ~ .tab__panel--list {
	display: block;
	padding-top: 2rem;
	padding-bottom: 2rem;
	border: 1px solid #FF9C45;
}

.horizontal-dl__item {
	border-top: 1px solid #dee2e6;
	padding-top: 0.5rem;
	padding-bottom: 1rem;
	margin-left: 0;
}
.horizontal-dl__item:last-of-type {
	border-bottom: 1px solid #dee2e6;
}
.horizontal-dl__item--dt, .no-gutters > .horizontal-dl__item--dt {
	padding-left: 5px;
	padding-right: 5px;
	background-color: #ddf1fc;
}
.panel {
	padding-bottom: 1.25rem;
	border: 1px solid #333;
}

.typingin {
	width: calc(((100vw - 320px) * 0.0109 + 14px) * 8); /*113.14px*/
	white-space: nowrap;
	overflow: hidden;
	animation: typing 1.5s steps(8)/*, SlideInFromLeft 1.2s 2.7s forwards*/; /*1.5s*/
}
@keyframes typing {
	0% { width: 0;}
}

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	padding-left: 0;
	padding-right: 0;
	transform: translateY(5px);
}
.menu {
	display: flex;
	align-items: stretch;
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.menu-item-object-category, .menu-item-126 {
	flex-grow: 1;
	display: table;
	color: #fff;
	border-bottom: 5px solid #0062b1; /*#dee2e6*/
}
.menu-item-object-category a, .menu-item-126 a {
	display: table-cell;
	padding: 0.75rem;
	text-decoration: none;
	color: #444746;
	line-height: 1.2;
	vertical-align: middle;
}
.menu-item-object-category a:visited, .menu-item-126 a:visited {
	color: #444746 !important;
}
.current.menu-item-object-category {
	font-weight: 600;
	border-bottom-color: #f08307 ; /*#0062b1*/
}
.current.menu-item-object-category a, .current.menu-item-object-category a:visited {
	color: #f08307  !important; /*#0062b1*/
}
.footer-menu-item a {
	display: block;
	padding: 0.5rem;
	text-decoration: none;
	color: inherit;
}
.footer-menu-item a:visited {
	color: #808080 !important;
}
.border-over {
	position: relative;
	border-bottom: 1px solid #154688;
}
.page-nav {
	border-top: 1px solid #b3b3b3;
	padding-top: 1.25rem;
}
.prev-page, .next-page, .archive-page {
	position: relative;
	text-decoration: none;
}
.prev-page {
	padding-left: 24px;
	order: 1;
}
.next-page {
	padding-right: 24px;
	order: 2;
}
.prev-page::before, .next-page::after {
	display: inline-block;
	font-family: 'FontAwesome';
	font-size: 3em;
	color: #b3b3b3;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.prev-page::before {
	content: '\f104';
	left: 0;
}
.next-page::after {
	content: '\f105';
	right: 0;
}
.archive-page {
	order: 3;
}

/* Posts and pages
--------------------------------------------- */
.updated:not(.published) {
	display: none;
}
.page-content, .entry-content, .entry-summary {
	margin: 1.5em 0 0;
}

/* Comments
--------------------------------------------- */
.bypostauthor { display: block; }

/* Widgets
--------------------------------------------- */
/* Media
--------------------------------------------- */
#scratch {
	margin: 0 auto 1.5rem;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}
.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
	float: left;
	margin-right: 1.5em;
}
.alignright {
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}
@media (max-width: 575.98px) {
	.color-bar__inner.not-home {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding-top: 4px;
		padding-bottom: 2px;
	}
	.color-bar__inner.not-home a.d-sm-none {
		margin-left: clamp(-5px, calc((100vw - 320px) * 0.0195 + -5px), 0px);
		font-size: clamp(20px, calc((100vw - 320px) / 64 + 20px), 24px); /*1.5em*/
		color: #fff583 !important;
	}
	.color-bar__name {
		display: block;
		width: max-content;
		color: inherit;
	}
	.color-bar__logo {
		margin-right: -2px;
	}
	.main-navigation {
		margin-top: -5px;
	}
	.fa-arrow-right.fa-3x {
		transform: rotate(90deg);
		margin-bottom: 1rem;
	}
}
@media (min-width: 576px) {
	.site-header {
		background:
		url(images/leaf_topleft.png) left 40px / calc((100vw - 576px) / 12 + 72px) auto no-repeat,
		url(images/leaf_topright.png) right 40px / calc((100vw - 576px) / 12 + 72px) auto no-repeat,
		url(images/leaf_bottomright.png) right bottom / calc((100vw - 576px) / 12 + 72px) auto no-repeat,
		url(images/leaf_bottomleft.png) left bottom / calc((100vw - 576px) / 12 + 72px) auto no-repeat,
		linear-gradient(180deg, #fff 70%, #fffde5 90%);
	}
	.site-header .color-bar {
		padding-top: 7.4px; /*3.4px*/
		padding-bottom: 7.4px;
	}
	.color-bar__nameset {
		display: flex;
		align-items: center;
	}
	.site-logo {
		height: clamp(94px, calc((100vw - 576px) * 0.1506 + 94px), 188px);
	}
	.site-logo__img {
		/*width: clamp(232px, calc((100vw - 576px) * 0.3654 + 232px), 460px); /*site_logo03.png*/
		/*width: clamp(333px, calc((100vw - 576px) * 0.5224 + 333px), 659px); /*site_logo04.png*/
		width: clamp(440px, calc((100vw - 576px) * 0.6731 + 440px), 860px); /*site_logo05.png*/
	}
	#toTop {
		right: calc(50% - 47%);
	}

	.typingin {
		width: 130.2px; /*113.14px, calc((100vw - 320px) * 0.0109 + 14px)*/
		transform: translateX(calc(((100vw - 320px) / 128 + 14px) * 1.7)); /*.color-bar__name::afterのfont-size*/
		animation: typing 2.7s steps(8), SlideInFromLeft 1.2s 2.7s forwards; /*1.5s*/
	}
	@keyframes typing {
		0% { width: 0;}
		44.4% { width: 0; } /*1.2s/2.7s=0.444*/
	}
	.slidein-from-right {
		animation: SlideInFromRight 1.3s;
	}
	@keyframes SlideInFromRight {
		0% {
			transform: translateX(calc(100vw - 100%));
			opacity: 0;
		}
		100% {
			transform: translateX(0);
			opacity: 1;
		}
	}
	@keyframes SlideInFromLeft {
		0% {
			transform: translateX(0); /*translateX(calc((100vw - 100%) * -1))*/
			opacity: 1;
		}
		100% {
			transform: translateX(calc((100vw - ((100vw - 320px) * 0.0449 + 39.22px) - (((100vw - 320px) / 128 + 14px) * 1.03 * 10) - (15px + 15px) - 100%))); /*100vw-.color-bar__logoのwidth-.color-bar__textのwidth-両端padding-自要素.typinginのwidth*/
			opacity: 1;
		}
	}
	.fadeIn {
		animation-name: fadeInAnime;
		animation-duration: 1.6s;
		animation-fill-mode: forwards;
		animation-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
		opacity: 0;
	}
	@keyframes fadeInAnime {
		0% { opacity: 0; }
		100% { opacity: 1; }
	}
}
@media (max-width: 767.98px) {
	.no-gutters > dd.horizontal-dl__item {
		margin-bottom: 1rem;
	}
	dd.horizontal-dl__item.row {
		text-align: right;
	}
	.main-navigation {
		background: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) 0 0/20px 100%,
			linear-gradient(to right, rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.2)) right/20px 100%;
		background-repeat: no-repeat;
		background-attachment: scroll;
	}
	.horizontal-scroll {
		scrollbar-width: none;
		overflow-x: auto;
		background: linear-gradient(to left, rgba(255, 255, 255, 0), transparent 15px) 0 0/50px 100%,
			linear-gradient(to right, rgba(255, 255, 255, 0), transparent 15px) right/50px 100%;
		background-repeat: no-repeat;
		background-attachment: local;
	}
	.horizontal-scroll .menu-item {
		flex: 0 0 auto !important;
	}
	.link-tel::before {
		display: inline-block;
		font-family: 'FontAwesome';
		font-size: 1.15em;
		content: '\f095';
		margin-right: 3px;
	}
	.archive-page {
		margin-top: 1.25rem;
		padding-top: 1.25rem;
		border-top: 1px solid #b3b3b3;
	}
}
@media (min-width: 768px) {
	.menu a {
		text-align: center;
	}
	.menu-item-object-category a, .menu-item-126 a {
		padding: 0.5rem;
	}
	.no-gutters > dd.horizontal-dl__item {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	.link-tel {
		pointer-events: none;
		text-decoration: none;
		color: inherit;
	}
	.footer-menu:nth-of-type(2) {
		padding-top: 44.8px;
	}
	.border-over::after {
		display: block;
		content: ' ';
		position: absolute;
		right: calc(-100% + -30px);
		width: calc(100% + 30px);
		border-bottom: 1px solid #154688;
	}
	.archive-page {
		order: 2;
	}
	.next-page {
		order: 3;
	}
	.typingin {
		transform: translateX(29.75px);
	}
	@keyframes SlideInFromLeft {
		100% {
			transform: translateX(calc((100vw - 265.89px - 100%))); /*235.89+15+15=265.89*/
			opacity: 1;
		}
	}
}
@media (min-width: 992px) {
	.site-header, .menu-item-object-category, .menu-item-126 {
		border-bottom-width: 7px;
	}
	.main-navigation {
		transform: translateY(7px);
	}
}
@media (min-width: 1200px) {
	.site-header {
		background-size: 124px;
	}
	.no-gutters > .horizontal-dl__item--dt {
		padding-left: 1rem;
		padding-right: 1rem;
	}
	@keyframes SlideInFromLeft {
		100% {
			transform: translateX(calc((1140px - 265.94px - 100%)));
			opacity: 1;
		}
	}
}
@media (min-width: 1400px) {
	#toTop {
		right: calc(50% - 658px);
	}
}
