@charset "UTF-8";

/**
 * 00: Vars
 * 01: BASE
 * 02: Layout
 * 03: Module: Element
 * 04: Module: Block
 * 05: WP Blocks
 * 06: Template
 * 07: Unique
 * 08: Helper
 * 09: Print
 */
/* CSS Variables */
:root {
	/* Font Family */
	/*--global--font-primary: zen-kaku-gothic-new, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;*/
	/* dnp-shuei-gothic-gin-std */
	/*--global--font-secondary: superclarendon, serif;*/
	
	/* Font Family - aiziro md */
	--global--font-primary: "Zen Kaku Gothic New", zen-kaku-gothic-new, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	/* dnp-shuei-gothic-gin-std - aiziro md */
	--global--font-secondary: "Besley", superclarendon, serif;

	/* Line Height */
	--global--line-height-body: 1.5;
	--global--line-height-heading: 1.25;
	--global--line-height-page-title: 1.125;
	--global--line-height-paragraph: 1.75;
	/* Font Size */
	--global--font-size-base: 1rem;
	--global--font-size-xs: 0.75rem;
	--global--font-size-sm: 0.875rem;
	--global--font-size-md: 1.125rem;
	--global--font-size-lg: 1.3125rem;
	--global--font-size-xl: 1.5rem;
	--global--font-size-xxl: 1.75rem;
	--global--letter-spacing: 0em;
	/* Headings */
	--heading--font-size-h1: var(--global--font-size-xxl);
	--heading--font-size-h2: clamp(var(--global--font-size-xl), 6.4vw, var(--global--font-size-xxl));
	--heading--font-size-h3: clamp(var(--global--font-size-lg), 5.6vw, var(--global--font-size-xl));
	--heading--font-size-h4: clamp(var(--global--font-size-md), 4.8vw, var(--global--font-size-lg));
	--heading--font-size-h5: clamp(var(--global--font-size-base), 4.3vw, var(--global--font-size-md));
	--heading--font-size-h6: var(--heading--font-size-h5);
	--heading--font-family: var(--global--font-primary);
	--heading--font-weight: 400;
	--heading--font-weight-page-title: 400;
	--heading--font-weight-strong: 700;
	/* Colors */
	--global--color-black: #000;
	--global--color-dark-gray: #333;
	--global--color-gray: #777;
	--global--color-light-gray: #f0f0f0;
	--global--color-white: #fff;
	--global--color-primary: var(--global--color-black);
	--global--color-border: #e5e5e5;
	--global--color-link: var(--global--color-primary);
	--global--color-keycolor: #feffa6;
	--global--color-subcolor: #464646;
	--global--color-accent: #f3a9c9;
	/* Spacing */
	--global--spacing-horizontal: clamp(2.25rem, 5vw, 3.75rem);
	--global--spacing-paragraph: 1.7em;
	--global--spacing-heading: 2.5em;
	--global--spacing-section: clamp(5rem, 10vw, 10rem);
	--global--spacing-section-padding: clamp(3.125rem, 13vw, 5rem);
	--global--horizon-gap: var(--global--spacing-horizontal);
	/* Content Width */
	--global--content--default-width: 48rem;
	--global--content--max-width: 60rem;
	/* Elevation */
	--global--elevation: 0 1px 2px 1px rgba(0, 0, 0, .125);
	/* Transition */
	--global--transition: 0.2s ease-out;
	/* Hover Opacity */
	--global--hover--opacity: 0.6;
	/* Buttons */
	--button--color-text: var(--global--color-white);
	--button--color-background: var(--global--color-primary);
	--button--font-family: var(--global--font-primary);
	--button--font-size: var(--global--font-size-base);
	--button--font-weight: 500;
	--button--line-height: 1.25;
	--button--border-width: 0;
	--button--border-radius: 3em;
	--button--padding-vertical: 0.75em;
	--button--padding-horizontal: calc(2 * var(--button--padding-vertical));
	--button--color-disabled-text: #eee;
	--button--color-disabled-background: #bbb;
	/* Separator */
	--separator--border-color: var(--global--color-border);
	--separator--height: 1px;
	--separator--spacing: var(--global--spacing-paragraph);
	/* Table */
	--table--border-color: var(--global--color-border);
	--table--background-color: #f8f8f5;
	--table--has-background-text-color: var(--global--color-primary);
	--global--menu--btn-icon--w: clamp(1.5rem, calc(1rem + 1.75vw), 3rem);
}

/*! 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;
	/* 1 */
	-webkit-text-size-adjust: 100%;
	/* 2 */
}

/* 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;
	/* 1 */
	height: 0;
	/* 1 */
	overflow: visible;
	/* 2 */
}

/**
 * 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;
	/* 1 */
	font-size: 1em;
	/* 2 */
}

/* 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;
	/* 1 */
	text-decoration: underline;
	/* 2 */
	text-decoration: underline dotted;
	/* 2 */
}

/**
 * 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;
	/* 1 */
	font-size: 1em;
	/* 2 */
}

/**
 * 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;
	/* 1 */
	font-size: 100%;
	/* 1 */
	line-height: 1.15;
	/* 1 */
	margin: 0;
	/* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	/* 1 */
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	/* 1 */
	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;
	/* 1 */
	color: inherit;
	/* 2 */
	display: table;
	/* 1 */
	max-width: 100%;
	/* 1 */
	padding: 0;
	/* 3 */
	white-space: normal;
	/* 1 */
}

/**
 * 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;
	/* 1 */
	padding: 0;
	/* 2 */
}

/**
 * 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;
	/* 1 */
	outline-offset: -2px;
	/* 2 */
}

/**
 * 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;
	/* 1 */
	font: inherit;
	/* 2 */
}

/* 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;
}

/**
 * Reset specific elements to make them easier to style in other contexts.
 */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
form,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
	padding: 0;
	margin: 0;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

/**
 * Apply generic border-box to all elements.
 * See:
 * https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
html {
	/* Apply border-box across the entire page. */
	box-sizing: border-box;
	font-family: var(--global--font-secondary);
	line-height: var(--global--line-height-body);
	scroll-behavior: smooth;
}

/**
 * Relax the definition a bit, to allow components to override it manually.
 */
*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	font-family: var(--global--font-primary);
	font-size: var(--global--font-size-base);
	font-weight: normal;
	text-align: start;
	overflow-x: hidden;
}

@media screen and (min-width: 75em) {
	body {
		font-size: var(--global--font-size-md);
	}
}

button {
	cursor: pointer;
}

figure {
	margin: 0;
}

img {
	max-width: 100%;
	height: auto;
}

svg {
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: middle;
}

svg * {
	fill: currentColor;
}

section {
	margin-block-start: 3em;
	margin-block-end: 3em;
	padding-bottom: 1px;
}

pre {
	font-size: 0.75rem;
	color: var(--global--color-primary);
	background-color: var(--global--color-light-gray);
	max-width: 100%;
	overflow: auto;
	padding: 2rem;
}

pre::-webkit-scrollbar {
	width: 5px;
	height: 8px;
	background-color: rgba(136, 136, 136, 0.5333333333);
}

pre::-webkit-scrollbar-thumb {
	background: var(--global--color-keycolor);
}

time {
	color: var(--global--color-gray);
	letter-spacing: 0.1em;
}

ul,
ol {
	padding-inline-start: 2em;
	margin-block-start: 0;
	margin-block-end: 1.5em;
	margin-inline: auto;
}

nav :where(ul, ol) {
	padding: 0;
	margin-block: 0;
	margin-inline: auto;
	list-style: none;
}

table {
	border-collapse: collapse;
	border: 1px solid var(--table--border-color);
}

th,
td {
	padding: var(--table--padding, 0.375em);
	border-color: var(--table--border-color);
	border-style: solid dashed;
	border-width: 1px;
}

hr {
	margin-block: var(--separator--spacing);
	margin-inline: auto;
	border: 0 none;
	border-block-end: 1px solid var(--separator--border-color);
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

@media (prefers-reduced-motion) {

	*,
	*::before,
	*::after {
		transition-delay: 0s !important;
		transition-duration: 0s !important;
	}
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-block-start: 2em;
	margin-block-end: 0.5em;
	clear: both;
	font-family: var(--heading--font-family);
	letter-spacing: 0;
}

h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {
	font-weight: var(--heading--font-weight-strong);
}

h1 {
	font-size: var(--heading--font-size-h1);
	font-weight: var(--heading--font-weight);
	line-height: var(--heading--line-height-h1);
}

h2 {
	font-size: var(--heading--font-size-h2);
	font-weight: var(--heading--font-weight);
	line-height: var(--heading--line-height-h2);
}

h3 {
	font-size: var(--heading--font-size-h3);
	font-weight: var(--heading--font-weight);
	line-height: var(--heading--line-height-h3);
}

h4 {
	font-size: var(--heading--font-size-h4);
	font-weight: var(--heading--font-weight-strong);
	line-height: var(--heading--line-height-h4);
}

h5 {
	font-size: var(--heading--font-size-h5);
	font-weight: var(--heading--font-weight-strong);
	line-height: var(--heading--line-height-h5);
}

h6 {
	font-size: var(--heading--font-size-h6);
	font-weight: var(--heading--font-weight-strong);
	line-height: var(--heading--line-height-h6);
}

p {
	margin-block-end: var(--global--spacing-paragraph);
	line-height: var(--global--line-height-paragraph);
}

/*
 * リンク要素の基本スタイリング
 */
a {
	color: inherit;
	text-decoration: none;
	transition: var(--global--transition);
}

a:hover {
	opacity: var(--global--hover--opacity);
}

/*
 * フォーム系
 */
:root {
	--form--color-text: var(--global--color-primary);
	--form--border-width: 0.0625rem;
	--form--border-color: var(--global--color-light-gray);
	--form--border-radius: 0;
	--form--spacing-unit: 1em;
	--form--font-size: var(--global--font-size-base);
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
	border: var(--form--border-width) solid var(--form--border-color);
	border-radius: var(--form--border-radius);
	color: var(--form--color-text);
	line-height: var(--global--line-height-page-title);
	padding: var(--form--spacing-unit);
	margin: 0 2px;
	margin-inline: 2px;
	max-width: 100%;
}

textarea {
	line-height: var(--global--line-height-paragraph);
}

input[type=text]:disabled,
input[type=email]:disabled,
input[type=url]:disabled,
input[type=password]:disabled,
input[type=search]:disabled,
input[type=number]:disabled,
input[type=tel]:disabled,
input[type=date]:disabled,
input[type=month]:disabled,
input[type=week]:disabled,
input[type=time]:disabled,
input[type=datetime]:disabled,
input[type=datetime-local]:disabled,
input[type=color]:disabled,
textarea:disabled {
	opacity: 0.7;
}

input[type=email],
input[type=url] {
	/*rtl:ignore*/
	direction: ltr;
}

textarea {
	width: 100%;
}

label {
	font-size: var(--form--font-size);
	font-weight: var(--form--label-weight);
}

/**
 * 02: Layout
 * PPRECSS レイアウトCSS (ly_)
 * 
 */
/*
 * ヘッダー
 */
.ly_header {
	position: sticky;
	left: 0;
	top: 0;
	z-index: 10;
	width: 100%;
	background-color: #fff;
}
.is_useJS .ly_header {
	background-color: transparent;
	transition: var(--global--transition);
}
.is_useJS.is_showLogo .ly_header {
	background-color: #fff;
}

.bl_headerLogo,
.un_homeHeaderLogo {
	position: relative;
	z-index: 11;
	
	max-width: min(60%, 15rem);
	margin: 0;
	padding: 0.75rem;
	font-size: 1rem;
}

@media (min-width: 75rem) {
	.bl_headerLogo {
		padding-top: 2rem;
	}
}

.is_useJS .bl_headerLogo {
	opacity: 0;
	transition: var(--global--transition);
}
.is_useJS.is_showLogo .bl_headerLogo {
	opacity: 1;
}


.ly_header .bl_btnMenu {
	position: fixed;
	top: 1rem;
	right: calc( var(--global--menu--btn-icon--w) * 0.25 );
	z-index: 11;
}

/*
 * グローバルナビゲーション
 */
.bl_globalNav li + li {
	margin-top: 0.25em;
}
.bl_globalNav a {
	color: var(--global--color-gray);
	font-size: var(--global--font-size-md);
}
.bl_globalNav a:hover {
	opacity: 0.7;
}

/*
 * メニュー開閉エリア
 */
.ly_siteNav {
	position: fixed;
	right: -110%;
	top: 0;
	z-index: 10;
	width: min(100%, 40rem);
	height: 100vh;
	padding: 1.25rem;
	padding-top: 5rem;
	background-color: #f0e7e2;
	transition: var(--global--transition);
}

.is_menuOpen .ly_siteNav {
	right: 0;
}
.ly_siteNav .bl_globalNav {
	/*border-top: 1px solid var(--global--color-gray);*/
}
.ly_siteNav .bl_globalNav li {
	margin-top: 0;
	/*border-bottom: 1px solid var(--global--color-gray);*/
}
.ly_siteNav .bl_globalNav a {
	display: block;
	padding: 0.75em 0.25em;
	color: var(--global--color-primary);
	font-size: var(--global--font-size-md);
}
.ly_siteNav .bl_globalNav a:hover {
	opacity: 0.7;
	background-color: #fff;
}


/*
 * フッター
 */
.ly_footer {
	position: relative;
	z-index: 5;
	margin-top: 5rem
}

.bl_footerLogo {
	max-width: min(80%, 25rem);
	margin-bottom: 4rem;
}


/*
 * フッター：ナビ
 */
.bl_footerNav {
	margin-bottom: 5rem;
}
.bl_footerNav li + li {
}
.bl_footerNav a {
}

/*
 * フッター：協賛バナー類
 */
.bl_footerBnr {
	--bl--column--gap: 1em;
	text-align: center;
}
.bl_footerBnr ul {
	list-style: none;
	padding: 0;
}
.bl_footerBnr li {
	margin-left: auto;
	margin-right: auto;
	max-width: min(40%, 15rem);
}

.bl_stack {
	
}

.bl_footerInfo {
	font-size: var(--global--font-size-sm);
	font-style: normal;
	text-decoration: none;
}




/*
 * コピーライト
 */
.bl_copyright {
	font-size: var(--global--font-size-xs);
}

@media (min-width: 62em) {
	.bl_copyright {
		margin-block-start: 0;
	}
}

/**
 * Root Media Query Variables
 */
:root {
	--responsive--spacing-horizontal: var(--global--spacing-horizontal);
	--a11y--width: min(calc(100% - var(--global--spacing-horizontal)), 40em);
	--responsive--aligndefault-width: calc(100% - var(--global--spacing-horizontal));
	--responsive--alignwide-width: calc(100% - var(--global--spacing-horizontal));
	--responsive--alignfull-width: 100%;
	--responsive--alignright-margin: var(--global--spacing-horizontal);
	--responsive--alignleft-margin: var(--global--spacing-horizontal);
	--content--default--width: var(--global--content--default-width);
	--content--max-width: var(--global--content--max-width);
}

@media (min-width: 36em) {
	:root {
		--responsive--aligndefault-width: min(calc(100% - 2 * var(--responsive--spacing-horizontal)), var(--content--default--width));
		--responsive--alignwide-width: min(calc(100% - 2 * var(--responsive--spacing-horizontal)), var(--content--max-width));
		--responsive--alignright-margin: calc(0.5 * (100% - var(--responsive--aligndefault-width)));
		--responsive--alignleft-margin: calc(0.5 * (100% - var(--responsive--aligndefault-width)));
	}
}

@media screen and (min-width: 75em) {
	:root {
		--responsive--aligndefault-width: min(calc(100vw - 2 * var(--responsive--spacing-horizontal)), var(--content--default--width));
		--responsive--alignwide-width: min(calc(100vw - 2 * var(--responsive--spacing-horizontal)), var(--content--max-width));
		--responsive--alignright-margin: calc(0.5 * (100vw - var(--responsive--aligndefault-width)));
		--responsive--alignleft-margin: calc(0.5 * (100vw - var(--responsive--aligndefault-width)));
	}
}

/**
 * Extends
 */
body .entry-content.is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.default-max-width,
.ly_cont {
	max-width: var(--responsive--aligndefault-width);
	margin-left: auto;
	margin-right: auto;
}

body .entry-content.is-layout-constrained> :where(.alignwide),
.alignwide,
.wide-max-width {
	max-width: var(--responsive--alignwide-width);
	margin-left: auto;
	margin-right: auto;
}

.alignfull {
	max-width: var(--responsive--alignfull-width);
	width: var(--responsive--alignfull-width);
	margin-left: auto;
	margin-right: auto;
}

@media (min-width: 24.0625em) {

	.alignfull,
	.full-max-width {
		max-width: var(--responsive--alignfull-width);
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}
}

.alignwide [class*=inner-container]>.alignwide,
.alignfull [class*=inner-container]>.alignwide {
	margin-left: auto;
	margin-right: auto;
	width: var(--responsive--alignwide-width);
	max-width: var(--responsive--alignfull-width);
}

@media (min-width: 24.0625em) {
	.entry-content>.alignleft {
		/*rtl:ignore*/
		margin-left: var(--responsive--alignleft-margin);
		/*rtl:ignore*/
		margin-right: var(--global--spacing-horizontal);
	}
}

@media (min-width: 24.0625em) {
	.entry-content>.alignright {
		/*rtl:ignore*/
		margin-left: var(--global--spacing-horizontal);
		/*rtl:ignore*/
		margin-right: var(--responsive--alignright-margin);
	}
}

.ly_cont.ly_cont__thin {
	max-width: var(--a11y--width);
}

.ly_cont.ly_cont__wide {
	max-width: var(--responsive--alignwide-width);
}

.ly_cont__2col {
	display: flex;
	flex-direction: column;
	gap: min(5vw, 5rem);
}

@media (min-width: 62em) {
	.ly_cont__2col {
		flex-direction: row-reverse;
	}

	.ly_cont__2col .ly_cont__2col_main {
		max-width: 57.5rem;
		flex: 5;
	}

	.ly_cont__2col .ly_cont__2col_sub {
		flex: 1;
	}
}

:where(.entry-content) > * {
	margin-block-end: var(--global--spacing-paragraph);
}


.ly_main {
	position: relative;
	z-index: 5;
	overflow: hidden;
}

/**
 * 03: Module: Element
 * PRECSS エレメントモジュールCSS (el_)
 * 
 */
/**
 * スクリーンリーダ
 */
.el_readerOnly,
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	overflow: hidden;
	padding: 0;
	border: 0;
	margin: -1px;
	word-wrap: normal !important;
	word-break: normal;
}

/**
 * スキップリンク
 */
.el_skipLink:focus {
	top: 5px;
	left: 5px;
	z-index: 100000;
	display: block;
	width: auto;
	height: auto;
	clip: auto !important;
	-webkit-clip-path: none;
	clip-path: none;
	padding: 15px 23px 14px;
	color: #21759b;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: normal;
	text-decoration: none;
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

/**
 * ボタン WP向け 塗りつぶしとアウトラインボタン
 */
.el_btn {
	display: inline-block;
	width: min( 80%, 16em);
	padding: var(--button--padding-vertical) var(--button--padding-horizontal);
	font-weight: var(--button--font-weight);
	font-size: var(--button--font-size);
	line-height: var(--button--line-height);
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: var(--global--transition);
	color: var(--button--color-text);
	background-color: var(--button--color-background);
	border-radius: var(--button--border-radius);
	border: 0 none;
}
.el_btn:hover {
	opacity: var(--global--hover--opacity);
}

.el_btn:disabled,
.el_btn.is_disabled {
	cursor: default !important;
	color: var(--button--color-disabled-text) !important;
	background: var(--button--color-disabled-background) !important;
	border-color: transparent !important;
}

.el_btn:disabled:hover,
.el_btn.is_disabled:hover {
	background-color: var(--button--color-disabled-background) !important;
	border-color: transparent !important;
}

/**
 * キャッチコピー
 */
.el_catchCopy {
	margin-block-end: 2rem;
	font-size: var(--el--catch-copy--fz, var(--heading--font-size-h2));
	letter-spacing: 0.1em;
	line-height: var(--global--line-height-heading);
}

/**
 * クリップメディア
 * Emmet figure.el_clipMedia>img
 */
.el_clipMedia {
	position: relative;
	display: block;
	padding-top: var(--el--clip-media--pt, 100%);
}

.el_clipMedia br {
	display: none;
}

.el_clipMedia > * {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
}

.el_clipMedia>img {
	object-fit: var(--el--clip-media--object-fit, cover);
}

.el_clipMedia.el_clipMedia__4to3 {
	--el--clip-media--pt: 75%;
}

.el_clipMedia.el_clipMedia__16to9 {
	--el--clip-media--pt: 56.25%;
}

.el_clipMedia.el_clipMedia__circle {
	overflow: hidden;
	border-radius: 50%;
}

/**
 * CSSの矢印
 * ↓　下向きを基本に矢の長さ（＝要素の高さ）を調整可能に
 */
.el_arrow {
	position: relative;
	display: inline-block;
	width: 1em;
	height: var(--el--arrow--h, 1em);
	line-height: 1;
}

.el_arrow::before,
.el_arrow::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
}

.el_arrow::before {
	bottom: 1px;
	width: 1.5px;
	margin: auto;
	height: var(--el--arrow--h, 1em);
	background-color: currentcolor;
}

.el_arrow::after {
	bottom: 0.1em;
	margin: auto;
	display: inline-block;
	width: 0.5em;
	height: 0.5em;
	border-bottom: 1px solid currentcolor;
	border-left: 1px solid currentcolor;
	transform: rotate(-45deg);
}

/**
 * ラベル
 */
.el_label {
	display: inline-block;
	margin: 0 1em;
	vertical-align: middle;
	font-size: var(--el--label--fz, var(--global--font-size-sm));
	font-weight: 400;
	line-height: 1;
}

/**
 * メニューボタン
 * Emmet button[type="button"].bl_btnMenu.js_spNavToggle>span.bl_btnMenu_icon+span.bl_btnMenu_ttl
 */
.bl_btnMenu {
	position: relative;
	display: block;
	height: 3rem;
	width: 3rem;
	padding: 0;
	margin: 0;
	color: var(--global--color-primary);
	line-height: 1;
	background: transparent;
	border: 0 none;
	transition: var(--global--transition);
}

.bl_btnMenu:hover,
.bl_btnMenu:focus {
	text-decoration: none;
	cursor: pointer;
	opacity: 0.7;
}

.bl_btnMenu_icon {
	position: relative;
	display: block;
	margin: calc(var(--global--menu--btn-icon--w) * 0.25) auto;
}

.bl_btnMenu_icon,
.bl_btnMenu_icon::before,
.bl_btnMenu_icon::after {
	height: 2px;
	width: var(--global--menu--btn-icon--w);
	background-color: currentcolor;
	transition: var(--global--transition);
}

.bl_btnMenu_icon::before,
.bl_btnMenu_icon::after {
	display: inline-block;
	content: "";
	position: absolute;
	left: 0;
}

.bl_btnMenu_icon::before {
	top: calc(var(--global--menu--btn-icon--w) * 0.25 * -1);
}

.bl_btnMenu_icon::after {
	top: calc(var(--global--menu--btn-icon--w) * 0.25);
}

.bl_btnMenu_ttl {
	position: absolute;
	left: 0;
	bottom: 0.25rem;
	width: 100%;
	font-size: 0.625rem;
	font-weight: var(--button--font-weight);
	text-align: center;
}

.is_menuOpen .bl_btnMenu .bl_btnMenu_icon {
	background-color: transparent;
}

.is_menuOpen .bl_btnMenu .bl_btnMenu_icon::before,
.is_menuOpen .bl_btnMenu .bl_btnMenu_icon::after {
	top: 0;
}

.is_menuOpen .bl_btnMenu .bl_btnMenu_icon::before {
	transform: rotate(45deg);
}

.is_menuOpen .bl_btnMenu .bl_btnMenu_icon::after {
	transform: rotate(-45deg);
}


/**
 * スペーサー
 * Emmet div.el_spacer[aria-hidden="true"]
 */
.el_spacer {
	clear: both;
	margin: 0;
	padding: 0;
	height: var(--el--spaser--h, var(--global--spacing-section));
}

/**
 * ページの先頭に戻るボタン
 */
.el_toPageTop {
	position: fixed;
	bottom: 3rem;
	right: 1rem;
	z-index: 9;
	
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	color: var(--global--color-primary);
	font-size: 1.375rem;
	line-height: 1;
	background-color: var(--global--color-white);
	border-radius: 50%;
	box-shadow: 0 1px 2px 0 #0003;
	transition: var(--global--transition);
}

.el_toPageTop:hover {
	opacity: var(--global--hover--opacity);
}

.el_toPageTop .el_arrow {
	top: 0.25em;
	transform: rotate(180deg);
}

.el_toPageTop .el_arrow::before {
	content: none;
}

.el_toPageTop.is_hide {
	opacity: 0;
}

/**
 * 04: Module: Block
 * PRECSS ブロックモジュールCSS (bl_)
 * 
 */


/**
 * 不均等カラム
 * Emmet div.bl_flexCol>div.bl_flexCol_hasWidth+div.bl_flexCol_fill
 */
.bl_flexCol {
	display: flex;
	flex-wrap: wrap;
	gap: var(--bl--flex-column--gap, var(--global--horizon-gap));
}

.bl_flexCol .bl_flexCol_hasWidth {
	flex-basis: var(--bl--flex-column--flex-basis, 10rem);
	flex-grow: 1;
	max-width: var(--bl--flex-column--flex-basis, 10rem);
}

.bl_flexCol .bl_flexCol_fill {
	flex-basis: 0;
	flex-grow: 999;
	min-width: var(--bl--flex-column--fill--min-width, 50%);
}


/**
 * カラム
 */
.bl_column {
	display: flex;
	flex-wrap: wrap;
	gap: var(--bl--column--gap, var(--global--horizon-gap));
	list-style: none;
}

.bl_column > * {
	flex-grow: 1;
	flex-basis: calc((var(--bl--column--bp, 40rem) - 100%) * 999);
}

.bl_column> :nth-last-child(n+5),
.bl_column> :nth-last-child(n+5)~* {
	flex-basis: 100%;
}

.bl_column:where(ul, ol) {
	padding-left: 0;
	list-style: none;
}
.bl_column.bl_column__nowrap {
	flex-wrap: nowrap;
}
.bl_column.bl_column__nowrap > * {
	flex: 1;
}

/**
 * グリッドレイアウト
 */
.bl_grid {
	display: grid;
	gap: var(--bl--grid--gap, var(--global--horizon-gap));
	grid-template-columns: repeat(auto-fit, minmax(min(var(--bl--grid--minimum, 10rem), 100%), 1fr));
}

.bl_grid:where(ul, ol) {
	padding-left: 0;
	list-style: none;
}

/**
 * スタックレイアウト		bl_stack
 */
.bl_stack {
	display: flex;
	flex-direction: column;
	gap: calc(var(--bl--stack--gap, 2em) * 0.5);
}

.bl_stack > * {
}

.bl_stack:where(ul, ol) {
	padding-left: 0;
	list-style: none;
}



.bl_projectTtl h2 {
	padding-bottom: 0.25em;
	font-family: var(--global--font-secondary);
	font-size: var(--global--font-size-h3);
	border-bottom: 1px solid var(--global--color-gray);
}
.bl_projectTtl h2 + p {
	font-size: var(--heading--font-size-h4);
	line-height: var(--global--line-height-heading);
}
.bl_projectTtl h2 + p small {
	font-size: var(--global--font-size-sm);
}




/*
 * スクロールイベント
 */
.is_useJS .js_inView,
.is_useJS .js_inViewFadeIn,
.is_useJS .js_inViewFadeInBottom {
	transition: 2s all ease;
}

.is_useJS .js_inViewFadeIn {
	transition: 2s opacity ease;
	opacity: 0;
}

.is_useJS .js_inViewFadeIn.is_inView {
	opacity: 1;
}

.is_useJS .js_inViewFadeInBottom {
	transition: 2s opacity ease, 2s transform ease;
	transform: translateY(40px);
	opacity: 0;
}

.is_useJS .js_inViewFadeInBottom.is_inView {
	transform: translateY(0);
	opacity: 1;
}


/**
 * 07: Unique
 * PRECSS ユニークモジュールCSS (un_)
 * 
 */
/**
 * ホーム（トップページ）
 */

.ly_header.un_homeHeader {
	position: fixed;
	
}
.is_useJS .ly_header.un_homeHeader {
	background-color: transparent;
	transition: var(--global--transition);
}
.is_hasHeaderBG.is_showLogo .ly_header.un_homeHeader {
	background-color: #fff;
}

.is_useJS .un_homeHeaderLogo {
	opacity: 0;
	transition: var(--global--transition);
}
.is_useJS.is_showLogo .un_homeHeaderLogo {
	opacity: 1;
}



/**
 * ホーム：メインビジュアル
 */
.un_homeMV {
	--el--clip-media--pt: 100vh;
	position: relative;
	z-index: 1;
	width: 100%;
	color: var(--global--color-white);
	background-color: #a29792;
}
.un_homeMV_imgSlider {
	position: sticky;
	top: 0;
	width: 100%;
	height: 100vh;
	height: 100lvh;
	z-index: 1;
}
.un_homeMV_imgSlider::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #4c3a32;
	z-index: 10;
	opacity: 0.6;
}
.un_homeMV_imgSlider .el_clipMedia {
	position: absolute;
	width: 100%;
	height: 100lvh;
}
.un_homeMV_imgSlider .el_clipMedia:nth-child(1) {
	z-index: 3;
}
.un_homeMV_imgSlider .el_clipMedia:nth-child(2) {
	z-index: 2;
}
.un_homeMV_imgSlider .el_clipMedia:nth-child(3) {
	z-index: 1;
}

.un_homeMV_scroll {
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
	padding-top: 40vh;
	font-family: var(--global--font-secondary);
	text-align: center;
}
.is_useJS .un_homeMV_scroll {
	opacity: 0;
	transition: 1s all ease-out;
}
.is_useJS .un_homeMV_scroll.is_show {
	opacity: 1;
}
.un_homeMV_scroll a {
	color: inherit;
}
.un_homeMV_scroll .el_arrow {
	--el--arrow--h: max(30vh, 10rem);
	font-size: 1.5rem;
	margin-top: 1rem;
}

.un_homeMV .un_homeMV_overlay {
	position: relative;
	z-index: 2;
	padding-bottom: 1px;
	padding-top: 3rem;
}
.un_homeMV .un_homeMV_overlay p {
	margin-bottom: 40vh;
	font-size: var(--heading--font-size-h4);
	font-weight: 700;
}
.un_homeMV .un_homeMV_overlay p + p {
	margin-top: 40vh;
}

@media (min-width: 48em) {
	.un_homeMV .un_homeMV_overlay p {
		margin-bottom: 20vh;
	}
	.un_homeMV .un_homeMV_overlay p + p {
		margin-top: 20vh;
	}
}




/**
 * ホーム：コンテンツ
 */
.bl_homeTtl {
	position: relative;
	margin-top: 0;
	font-size: clamp( var(--global--font-size-lg), calc(1.563vw + 1.0rem), var(--global--font-size-xxl) );
	font-weight: 700;
	text-align: center;
}
@media (min-width: 48em) {
	.bl_homeTtl br {
		display: none;
	}
}
.un_homeLogo {
	padding: 50vh 0 5rem;
}
@media (min-width: 48em) {
	.un_homeLogo {
		padding: 25vh 0 5rem;
	}
}
.un_homeLogo img {
	max-width: min(25rem, 100%);
}
.un_homeProjectMessage {
	position: relative;
	z-index: 1;
	padding: 3rem 0 2rem;
}
.un_homeProjectMessage::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-color: #f0e7e2;
	transition: var(--global--transition);
}
.is_useJS .un_homeProjectMessage::before {
	left: 110%;
}
.is_useJS .un_homeProjectMessage.is_inView::before {
	left: 0;
}
.un_homeProjectMessage .el_catchCopy {
	font-weight: 700;
}
@media (min-width: 48em) {
	.un_homeProjectMessage .el_catchCopy {
		text-align: center;
	}
}

.un_homeProjectMessage_osae {
	max-width: min(25rem,100%);
	margin-left: auto;
	margin-right: auto;
	margin-top: 4rem;
}



.un_homeMovie {
	position: relative;
	padding-top: 3rem;
}
.un_homeMovie .bl_homeTtl small {
	display: block;
	font-size: min(0.75em, 3.75vw);
}
.un_homeMovie_PRmovie {
	margin-bottom: 3rem;
}
@media (min-width: 48em) {
	.un_homeMovie_movie,
	.un_homeMovie_PRmovie {
		max-width: var(--responsive--aligndefault-width);
		margin-left: auto;
		margin-right: auto;
	}
}
.un_homeMovie .el_clipMedia,
.un_homeMovie_PRmovie .el_clipMedia {
	margin-bottom: 2rem;
}

.fancybox-slide:has(iframe) {
	padding: 1rem calc(50vw - 30rem);
}

.un_homePhoto {
	position: relative;
	padding-top: 3rem;
}
.js_un_homePhoto_slider_wrap {
	--swiper-navigation-sides-offset: 0px;
	--swiper-navigation-size: 1.5rem;
	--swiper-pagination-color: currentcolor;
	--swiper-navigation-color: currentcolor;

	position: relative;
	padding-bottom: 2rem;
	margin-bottom: 1rem;
	margin-top: 1rem;
}
.un_homePhoto .swiper-slide {
	text-align: center;
}
.un_homePhoto .swiper-slide .el_clipMedia {
	--el--clip-media--pt: 54%;
	max-width: 81%;
	margin: 0 auto;
}
.un_homePhoto .swiper-slide .el_clipMedia img {
	object-fit: contain;
}

.un_homePhoto_morebtn {
	text-align: center;
}

.un_homeMessage {
	--bl--grid--minimum: 13rem;
	position: relative;
	margin-top: 7rem;
	padding-bottom: 1px;
}
.un_homeMessage .bl_homeTtl {
	position: relative;
}
.un_homeMessage_body::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	color: var(--global--color-primary);
	background-color: #fff7ee;
	transition: var(--global--transition);
}

.is_useJS .un_homeMessage_body::before {
	left: 110%;
}
.is_useJS .un_homeMessage_body.is_inView::before {
	left: 0;
}
.is_useJS .un_homeMessage_body > * {
	opacity: 0;
	transition: var(--global--transition);
	transition-delay: 1s;
}
.is_useJS .un_homeMessage_body.is_inView > * {
	opacity: 1;
}


.un_homeMessage_body {
	position: relative;
	padding-top: 2rem;
	--bl--stack--gap: 9em;
}
.bl_messageItem > * {
	padding: 0.875em 1em;
}
.bl_messageItem p {
	margin: 0;
}
.bl_messageItem .bl_messageItem_yell {
	color: var(--global--color-white);
	font-weight: 700;
	background-color: #f3a9c9;
}
.bl_messageItem .bl_messageItem_real {
	color: var(--global--color-primary);
	background-color: var(--global--color-white);
}
.bl_messageItem .bl_messageItem_real+ p {
	text-align: right;
	color: var(--global--color-gray);
	padding: 0;
	margin-top: 0.25em;
}

.un_homeMessage_body_morebtn {
	margin-top: 4em;
	padding-bottom: 3rem;
	text-align: center;
}






.un_homeMore {
	position: relative;
	padding-top: 3rem;
}

.un_homeMore_yell {
	--swiper-navigation-sides-offset: 0px;
	--swiper-navigation-size: 1.5rem;
	--swiper-navigation-color: currentcolor;
	padding: 1px 0;
	background-color: #f0f0ec;
}
.un_homeMore_yell h3 small {
	font-family: var(--global--font-secondary);
}
.un_homeMore_yell .swiper {
	margin-top: 2rem;
	margin-bottom: 2rem;
}
.un_homeMore_yell .swiper-slide {
	text-align: center;
}
.un_homeMore_yell .swiper-slide img {
	max-width: 80%;
}
.un_homeMore_morebtn {
	padding-bottom: 4rem;
	margin-top: 1rem;
	text-align: center;
}


/**
 * メッセージ一覧
 */
.un_messageList {
	--bl--grid--minimum: 18rem;
	padding: 3rem 0;
	background-color: #fff7ee;
}


/**
 * 写真一覧
 */
.un_photoList {
	--bl--grid--gap: 5px;
	--bl--grid--minimum: 15rem;
	
}
.un_photoList img {
	vertical-align: bottom;
}

/**
 * エール一覧
 */
.un_yellList {
	--bl--grid--gap: 5px;
	--bl--grid--minimum: 15rem;
	
}
.un_yellList img {
	vertical-align: bottom;
}


/* 2024追加のインデックスページ */
.un_indexBody {
	position: relative;
}
.un_indexBody::after {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	
	width: 100vw;
	height: 100vh;
	
	background: url(../images/home_mv_bg01.jpg) no-repeat center center;
	background-size: cover;
}
.un_indexBody .ly_footer {
	padding-block: 3rem 1px;
	background-color: #fff;
}


/**
 * 08: Helper
 * PRECSS ヘルパーモジュールCSS (hp_)
 * 
 */
/*
 * 背景色 
 */
.hp_bgcPrimary {
	background-color: var(--global--color-primary) !important;
}

.hp_bgcDGray {
	background-color: var(--global--color-dark-gray) !important;
}

.hp_bgcGray {
	background-color: var(--global--color-gray) !important;
}

.hp_bgcLGray {
	background-color: var(--global--color-light-gray) !important;
}

.hp_bgcPaleGray {
	background-color: var(--global--color-pale-gray-bg) !important;
}

.hp_bgcWhite {
	background-color: var(--global--color-white) !important;
}

.hp_bgcKeycolor {
	background-color: var(--global--color-keycolor) !important;
}

.hp_bgcSubcolor {
	background-color: var(--global--color-subcolor) !important;
}

.hp_bgcAccent {
	background-color: var(--global--color-accent) !important;
}

.hp_bgcYellow {
	background-color: #FF0 !important;
}

.hp_bgcBlue {
	background-color: #00F !important;
}

/*
 * clear fix 
 */
.clear::before,
.clear::after,
.hp_clearFix::before,
.hp_clearFix::after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear::after,
.hp_clearFix::after {
	clear: both;
}

/*
 * ブレイクポイントに応じて非表示
 */
@media screen and (max-width: 61.9375em) {
	.hp_headerLessNone {
		display: none !important;
	}
}

@media screen and (max-width: 47.9375em) {
	.hp_ipadLessNone {
		display: none !important;
	}
}

@media screen and (max-width: 35.9375em) {
	.hp_mobileLgLessNone {
		display: none !important;
	}
}

@media (min-width: 36em) {
	.hp_mobileLgNone {
		display: none !important;
	}
}

@media (min-width: 48em) {
	.hp_ipadNone {
		display: none !important;
	}
}

@media print,
(min-width: 62em) {
	.hp_headerNone {
		display: none !important;
	}
}

/*
 * flex制御 
 */
.hp_aiC {
	align-items: center !important;
}

.hp_aiFs {
	align-items: flex-start !important;
}

.hp_aiFe {
	align-items: flex-end !important;
}

.hp_asC {
	align-self: center !important;
}

.hp_asFs {
	align-self: flex-start !important;
}

.hp_asS {
	align-self: stretch !important;
}

.hp_asFe {
	align-self: flex-end !important;
}

.hp_jcC {
	justify-content: center !important;
}

.hp_jcFs {
	justify-content: flex-start !important;
}

.hp_jcFe {
	justify-content: flex-end !important;
}

/*
 * フォントサイズ
 */
.hp_fzXS {
	font-size: var(--global--font-size-xs) !important;
}

.hp_fzSm {
	font-size: var(--global--font-size-sm) !important;
}

.hp_fzMd {
	font-size: var(--global--font-size-md) !important;
}

.hp_fzLg {
	font-size: var(--global--font-size-lg) !important;
}

.hp_fzXL {
	font-size: var(--global--font-size-xl) !important;
}

.hp_fzXXL {
	font-size: var(--global--font-size-xxl) !important;
}

.hp_fzXXXL {
	font-size: var(--global--font-size-xxxl) !important;
}

.hp_fzPageTtl {
	font-size: var(--global--font-size-page-title) !important;
}

/*
 * 上マージン
 */
.hp_mt1rem {
	margin-top: 1rem !important;
}

.hp_mt2rem {
	margin-top: 2rem !important;
}

.hp_mt3rem {
	margin-top: 3rem !important;
}

.hp_mt4rem {
	margin-top: 4rem !important;
}

.hp_mt5rem {
	margin-top: 5rem !important;
}

.hp_mt6rem {
	margin-top: 6rem !important;
}

.hp_mt7rem {
	margin-top: 7rem !important;
}

.hp_mt8rem {
	margin-top: 8rem !important;
}

.hp_mt9rem {
	margin-top: 9rem !important;
}

.hp_mt10rem {
	margin-top: 10rem !important;
}

.hp_mt0 {
	margin-top: 0 !important;
}

.hp_MT0_5rem {
	margin-top: -0.5rem !important;
}

.hp_MT1rem {
	margin-top: -1rem !important;
}

.hp_MT1_5rem {
	margin-top: -1.5rem !important;
}

.hp_MT2rem {
	margin-top: -2rem !important;
}

.hp_mtSec {
	margin-top: var(--global--spacing-section) !important;
}

/*
 * 下マージン
*/
.hp_mb1rem {
	margin-bottom: 1rem !important;
}

.hp_mb2rem {
	margin-bottom: 2rem !important;
}

.hp_mb3rem {
	margin-bottom: 3rem !important;
}

.hp_mb4rem {
	margin-bottom: 4rem !important;
}

.hp_mb5rem {
	margin-bottom: 5rem !important;
}

.hp_mb6rem {
	margin-bottom: 6rem !important;
}

.hp_mb7rem {
	margin-bottom: 7rem !important;
}

.hp_mb8rem {
	margin-bottom: 8rem !important;
}

.hp_mb9rem {
	margin-bottom: 9rem !important;
}

.hp_mb10rem {
	margin-bottom: 10rem !important;
}

.hp_mb0 {
	margin-bottom: 0 !important;
}

.hp_mbSec {
	margin-bottom: var(--global--spacing-section) !important;
}

/*
 * 文章の揃え
 */
.hp_txtCenter {
	text-align: center !important;
}

.hp_txtLeft {
	text-align: left !important;
}

.hp_txtRight {
	text-align: right !important;
}

/*
 * 文字色 
 */
.hp_tcPrimary {
	color: var(--global--color-primary) !important;
}

.hp_tcDGray {
	color: var(--global--color-dark-gray) !important;
}

.hp_tcGray {
	color: var(--global--color-gray) !important;
}

.hp_tcLGray {
	color: var(--global--color-light-gray) !important;
}

.hp_tcWhite {
	color: var(--global--color-white) !important;
}

.hp_tcKeycolor {
	color: var(--global--color-keycolor) !important;
}

.hp_tcSubcolor {
	color: var(--global--color-subcolor) !important;
}

.hp_tcAccent {
	color: var(--global--color-accent) !important;
}


/*
 * フォントファミリー 
 */
.hp_ffPrimary {
	font-family: var(--global--font-primary) !important;
}
.hp_ffSecondary {
	font-family: var(--global--font-secondary) !important;
}


/*
 * aiziro 追加 
 */

.bl_projectTtl h2 {
	font-weight: 600;
	font-size:18px;
	letter-spacing: 0.5px;
}
.ly_siteNav {
	padding-top: 2.5rem;
}
.ly_siteNav .bl_globalNav a {
	padding: 0.5em 0.25em;
}

.p-footer__logos{width: 240px; margin: 0 auto 30px;}
.p-footer__sns{text-align: center;}
.p-footer__sns-link{display: inline-block; width: 50px; height: 50px; background-color: #000; border-radius: 50%; margin-right: 10px;}
.p-footer__sns-link:last-child{margin-right: 0;}

.p-footer__logos-str{margin: 0 auto 50px; letter-spacing: -9999px;}
.p-footer__sns-link-str{display: inline-block; width: 140px; height: 45px; line-height: 42px; background-color: #000; border-radius: 30px; margin-right: 10px; color: #fff; font-size: 16px; font-weight: bold; letter-spacing: 0.5px;}
.p-footer__sns-link-str:last-child{margin-right: 0;}

@media screen and (max-width: 414px){
.ly_siteNav .bl_globalNav a {
	padding: 0.4em 0.25em;
	font-size: 1rem;
}
.ly_siteNav .bl_stack{
	gap: calc(var(--bl--stack--gap, 2em) * 0.3);
}

}

.u-marT0 {margin-top:0px !important;}
.u-marT3 {margin-top:3px !important;}
.u-marT5 {margin-top:5px !important;}
.u-marT8 {margin-top:8px !important;}
.u-marT10 {margin-top:10px !important;}
.u-marT15 {margin-top:15px !important;}
.u-marT20 {margin-top:20px !important;}
.u-marT25 {margin-top:25px !important;}
.u-marT30 {margin-top:30px !important;}
.u-marT40 {margin-top:40px !important;}
.u-marT50 {margin-top:50px !important;}
.u-marT60 {margin-top:60px !important;}
.u-marT80 {margin-top:80px !important;}
.u-marT100 {margin-top:100px !important;}
.u-marB0 {margin-bottom:0px !important;}
.u-marB3 {margin-bottom:3px !important;}
.u-marB5 {margin-bottom:5px !important;}
.u-marB8 {margin-bottom:8px !important;}
.u-marB10 {margin-bottom:10px !important;}
.u-marB15 {margin-bottom:15px !important;}
.u-marB20 {margin-bottom:20px !important;}
.u-marB25 {margin-bottom:25px !important;}
.u-marB30 {margin-bottom:30px !important;}
.u-marB40 {margin-bottom:40px !important;}
.u-marB50 {margin-bottom:50px !important;}
.u-marB60 {margin-bottom:60px !important;}
.u-marB80 {margin-bottom:80px !important;}
.u-marB100 {margin-bottom:100px !important;}
.u-marL0 {margin-left:0px !important;}
.u-marL3 {margin-left:3px !important;}
.u-marL5 {margin-left:5px !important;}
.u-marL8 {margin-left:8px !important;}
.u-marL10 {margin-left:10px !important;}
.u-marL15 {margin-left:15px !important;}
.u-marL20 {margin-left:20px !important;}
.u-marL25 {margin-left:25px !important;}
.u-marL30 {margin-left:30px !important;}
.u-marL40 {margin-left:40px !important;}
.u-marL50 {margin-left:50px !important;}
.u-marL60 {margin-left:60px !important;}
.u-marL80 {margin-left:80px !important;}
.u-marL100 {margin-left:100px !important;}
.u-marR0 {margin-right:0px !important;}
.u-marR3 {margin-right:3px !important;}
.u-marR5 {margin-right:5px !important;}
.u-marR8 {margin-right:8px !important;}
.u-marR10 {margin-right:10px !important;}
.u-marR15 {margin-right:15px !important;}
.u-marR20 {margin-right:20px !important;}
.u-marR25 {margin-right:25px !important;}
.u-marR30 {margin-right:30px !important;}
.u-marR40 {margin-right:40px !important;}
.u-marR50 {margin-right:50px !important;}
.u-marR60 {margin-right:60px !important;}
.u-marR80 {margin-right:80px !important;}
.u-marR100 {margin-right:100px !important;}

.u-padT0 {padding-top:0px !important;}
.u-padT3 {padding-top:3px !important;}
.u-padT5 {padding-top:5px !important;}
.u-padT8 {padding-top:8px !important;}
.u-padT10 {padding-top:10px !important;}
.u-padT15 {padding-top:15px !important;}
.u-padT20 {padding-top:20px !important;}
.u-padT25 {padding-top:25px !important;}
.u-padT30 {padding-top:30px !important;}
.u-padT40 {padding-top:40px !important;}
.u-padT50 {padding-top:50px !important;}
.u-padT60 {padding-top:60px !important;}
.u-padT80 {padding-top:80px !important;}
.u-padT100 {padding-top:100px !important;}
.u-padB0 {padding-bottom:0px !important;}
.u-padB3 {padding-bottom:3px !important;}
.u-padB5 {padding-bottom:5px !important;}
.u-padB8 {padding-bottom:8px !important;}
.u-padB10 {padding-bottom:10px !important;}
.u-padB15 {padding-bottom:15px !important;}
.u-padB20 {padding-bottom:20px !important;}
.u-padB25 {padding-bottom:25px !important;}
.u-padB30 {padding-bottom:30px !important;}
.u-padB40 {padding-bottom:40px !important;}
.u-padB50 {padding-bottom:50px !important;}
.u-padB60 {padding-bottom:60px !important;}
.u-padB80 {padding-bottom:80px !important;}
.u-padB100 {padding-bottom:100px !important;}
.u-padL0 {padding-left:0px !important;}
.u-padL3 {padding-left:3px !important;}
.u-padL5 {padding-left:5px !important;}
.u-padL8 {padding-left:8px !important;}
.u-padL10 {padding-left:10px !important;}
.u-padL15 {padding-left:15px !important;}
.u-padL20 {padding-left:20px !important;}
.u-padL25 {padding-left:25px !important;}
.u-padL30 {padding-left:30px !important;}
.u-padL40 {padding-left:40px !important;}
.u-padL50 {padding-left:50px !important;}
.u-padL60 {padding-left:60px !important;}
.u-padL80 {padding-left:80px !important;}
.u-padL100 {padding-left:100px !important;}
.u-padR0 {padding-right:0px !important;}
.u-padR3 {padding-right:3px !important;}
.u-padR5 {padding-right:5px !important;}
.u-padR8 {padding-right:8px !important;}
.u-padR10 {padding-right:10px !important;}
.u-padR15 {padding-right:15px !important;}
.u-padR20 {padding-right:20px !important;}
.u-padR25 {padding-right:25px !important;}
.u-padR30 {padding-right:30px !important;}
.u-padR40 {padding-right:40px !important;}
.u-padR50 {padding-right:50px !important;}
.u-padR60 {padding-right:60px !important;}
.u-padR80 {padding-right:80px !important;}
.u-padR100 {padding-right:100px !important;}

.u-size10{font-size: 10px !important;}
.u-size11{font-size: 11px !important;}
.u-size12{font-size: 12px !important;}
.u-size13{font-size: 13px !important;}
.u-size14{font-size: 14px !important;}
.u-size15{font-size: 15px !important;}
.u-size16{font-size: 16px !important;}
.u-size18{font-size: 18px !important;}
.u-size20{font-size: 20px !important;}
.u-size22{font-size: 22px !important;}
.u-size24{font-size: 24px !important;}
.u-size26{font-size: 26px !important;}
.u-size28{font-size: 28px !important;}
.u-height10{line-height: 1.0em !important;}
.u-height12{line-height: 1.2em !important;}
.u-height14{line-height: 1.4em !important;}
.u-height16{line-height: 1.6em !important;}
.u-height18{line-height: 1.8em !important;}
.u-height20{line-height: 2.0em !important;}

.u-ta-center {text-align: center !important;}
.u-ta-right {text-align: right !important;}
.u-ta-left {text-align: left !important;}
.u-plain {font-weight: 400 !important;}
.u-bold {font-weight: 700 !important;}
.u-italic {font-style: italic !important;}
.u-inline {display: inline !important;}
.u-inline-block {display: inline-block !important;}
.u-block {display: block !important;}

@media screen and (max-width: 1024px){
.u-marT0-sp {margin-top:0px !important;}
.u-marT3-sp {margin-top:3px !important;}
.u-marT5-sp {margin-top:5px !important;}
.u-marT8-sp {margin-top:8px !important;}
.u-marT10-sp {margin-top:10px !important;}
.u-marB0-sp {margin-bottom:0px !important;}
.u-marB3-sp {margin-bottom:3px !important;}
.u-marB5-sp {margin-bottom:5px !important;}
.u-marB8-sp {margin-bottom:8px !important;}
.u-marB10-sp {margin-bottom:10px !important;}
.u-marL0-sp {margin-left:0px !important;}
.u-marL3-sp {margin-left:3px !important;}
.u-marL5-sp {margin-left:5px !important;}
.u-marL8-sp {margin-left:8px !important;}
.u-marL10-sp {margin-left:10px !important;}
.u-marR0-sp {margin-right:0px !important;}
.u-marR3-sp {margin-right:3px !important;}
.u-marR5-sp {margin-right:5px !important;}
.u-marR8-sp {margin-right:8px !important;}
.u-marR10-sp {margin-right:10px !important;}
.u-padT0-sp {padding-top:0px !important;}
.u-padT3-sp {padding-top:3px !important;}
.u-padT5-sp {padding-top:5px !important;}
.u-padT8-sp {padding-top:8px !important;}
.u-padT10-sp {padding-top:10px !important;}
.u-padB0-sp {padding-bottom:0px !important;}
.u-padB3-sp {padding-bottom:3px !important;}
.u-padB5-sp {padding-bottom:5px !important;}
.u-padB8-sp {padding-bottom:8px !important;}
.u-padB10-sp {padding-bottom:10px !important;}
.u-padL0-sp {padding-left:0px !important;}
.u-padL3-sp {padding-left:3px !important;}
.u-padL5-sp {padding-left:5px !important;}
.u-padL8-sp {padding-left:8px !important;}
.u-padL10-sp {padding-left:10px !important;}
.u-padR0-sp {padding-right:0px !important;}
.u-padR3-sp {padding-right:3px !important;}
.u-padR5-sp {padding-right:5px !important;}
.u-padR8-sp {padding-right:8px !important;}
.u-padR10-sp {padding-right:10px !important;}
}
@media screen and (min-width: 1025px){
.u-marT0-dt {margin-top:0px !important;}
.u-marT3-dt {margin-top:3px !important;}
.u-marT5-dt {margin-top:5px !important;}
.u-marT8-dt {margin-top:8px !important;}
.u-marT10-dt {margin-top:10px !important;}
.u-marB0-dt {margin-bottom:0px !important;}
.u-marB3-dt {margin-bottom:3px !important;}
.u-marB5-dt {margin-bottom:5px !important;}
.u-marB8-dt {margin-bottom:8px !important;}
.u-marB10-dt {margin-bottom:10px !important;}
.u-marL0-dt {margin-left:0px !important;}
.u-marL3-dt {margin-left:3px !important;}
.u-marL5-dt {margin-left:5px !important;}
.u-marL8-dt {margin-left:8px !important;}
.u-marL10-dt {margin-left:10px !important;}
.u-marR0-dt {margin-right:0px !important;}
.u-marR3-dt {margin-right:3px !important;}
.u-marR5-dt {margin-right:5px !important;}
.u-marR8-dt {margin-right:8px !important;}
.u-marR10-dt {margin-right:10px !important;}
.u-padT0-dt {padding-top:0px !important;}
.u-padT3-dt {padding-top:3px !important;}
.u-padT5-dt {padding-top:5px !important;}
.u-padT8-dt {padding-top:8px !important;}
.u-padT10-dt {padding-top:10px !important;}
.u-padB0-dt {padding-bottom:0px !important;}
.u-padB3-dt {padding-bottom:3px !important;}
.u-padB5-dt {padding-bottom:5px !important;}
.u-padB8-dt {padding-bottom:8px !important;}
.u-padB10-dt {padding-bottom:10px !important;}
.u-padL0-dt {padding-left:0px !important;}
.u-padL3-dt {padding-left:3px !important;}
.u-padL5-dt {padding-left:5px !important;}
.u-padL8-dt {padding-left:8px !important;}
.u-padL10-dt {padding-left:10px !important;}
.u-padR0-dt {padding-right:0px !important;}
.u-padR3-dt {padding-right:3px !important;}
.u-padR5-dt {padding-right:5px !important;}
.u-padR8-dt {padding-right:8px !important;}
.u-padR10-dt {padding-right:10px !important;}
}
