/* parent */
body.admin-bar #header header {
	top: 32px;
	z-index: 9999;
}

#dashboard #header .logo:not(.dashboard), #dashboard #header li:not(.dashboard) {
	display: block;
}

#dashboard #footer .logo:not(.dashboard), #dashboard #footer li:not(.dashboard) {
	display: block;
}

/* ----------------------------------------------
    form
---------------------------------------------- */
.contact-form .flow ul {
	width: 100%;
	max-width: 400px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: relative;
}
.contact-form .flow ul::after {
	content: "";
	width: 100%;
	height: 1px;
	background: var(--color-GrayN);
	position: absolute;
	top: 20px;
	left: 0;
}
.contact-form .flow li {
	text-align: center;
	font-family: var(--font-Serif);
	position: relative;
	z-index: 1;
}
.contact-form .flow li span {
	width: 40px;
	aspect-ratio: 1;
	background: #fff;
	border: solid 1px var(--color-GrayN);
	font-size: 2.0rem;
	line-height: 1;
	text-align: center;
	display: grid;
	place-content: center;
}
.contact-form .flow li.active span {
	color: #fff;
	background: var(--color-Gold);
}
.contact-form .flow li.active p {
	color: var(--color-Gold);
}
@media screen and (max-width: 768px) {
	.contact-form .flow ul {
		max-width: 200px;
	}
	.contact-form .flow ul::after {
		top: 15px;
	}
	.contact-form .flow li span {
		width: 30px;
		font-size: 1.6rem;
	}
}
/* ------------------------------------------- */
.contact-form .box01 {
	padding: 4em 0;
	border: 1px solid;
}
.contact-form .box01 dl {
	border-bottom: 1px solid var(--color-GrayN);
	gap: 0;
}
.contact-form .box01 dl > div {
	border-top: 1px solid var(--color-GrayN);
	display: flex;
	padding: 2em;
}
.contact-form .box01 dl > div dt {
	width: 100%;
	max-width: 360px;
	gap: .5em;
	padding: .7em 0 0;
}
.contact-form .box01 dl > div:has(.check, .radio) dt {
	padding: 0;
}
@media screen and (max-width: 768px) {
	.contact-form .box01 {
		padding: 3em 0 4em;
	}
	.contact-form .box01 .title01 .en {
		font-size: 3.0rem;
	}
	.contact-form .box01 .title01 .jp {
		font-size: 1.6rem;
	}
	.contact-form .box01 dl > div {
		padding: 1em 1em 1.5em;
		gap: .5em;
		flex-direction: column;
	}
}
/* ------------------------------------------- */
.contact-form dl {
	display: grid;
	gap: 1em;
}
.contact-form dl div dt {
	width: 200px;
	font-size: 1.6rem;
	font-family: var(--font-Serif);
	display: flex;
	align-items: baseline;
}
.contact-form dl div dt .status {
	width: 50px;
	height: 25px;
	font-size: 1.2rem;
	font-family: var(--font-Sans);
	display: flex;
	align-items: center;
	justify-content: center;
}
.contact-form dl div dt .status.required {
	color: #fff;
	background: var(--color-Gold);
	border: 1px solid var(--color-Gold);
}
.contact-form dl div dt .status.any {
	border: 1px solid;
}
.contact-form dl div dd {
	width: 100%;
}
.contact-form input,
.contact-form select,
.contact-form textarea {
	width: 100%;
	padding: .8em 1em;
	background: var(--color-GrayL);
	border: 1px solid var(--color-GrayN);
	border-radius: .2em;
	cursor: pointer;
}
.contact-form input:focus-visible,
.contact-form select:focus-visible,
.contact-form textarea:focus-visible {
	outline: none;
	border: 1px solid #333;
}
.contact-form .small {
	max-width: 100px;
}
.contact-form .middle {
	max-width: 420px;
}
.contact-form .age {
	display: flex;
	gap: .5em;
	align-items: center;
}
.contact-form .address {
	display: grid;
	gap: 1.5em;
}
.contact-form .address .zip {
	display: flex;
	gap: .5em;
	align-items: flex-end;
}
.contact-form .address .small {
	max-width: 140px;
}
.contact-form .check,
.contact-form .radio {
	display: flex;
	gap: 1.5em 1em;
	flex-wrap: wrap;
	align-items: center;
}
.contact-form .check.column01,
.contact-form .radio.column01 {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}
.contact-form .check.column02,
.contact-form .radio.column02 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
.contact-form .check.column03,
.contact-form .radio.column03 {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}
.contact-form .check.column04,
.contact-form .radio.column04 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}
.contact-form .check li input[type="checkbox"],
.contact-form .radio li input[type="radio"] {
	display: none;
}
.contact-form .check li label,
.contact-form .radio li label {
	display: flex;
	align-items: center;
	cursor: pointer;
}
.contact-form .check li label span,
.contact-form .radio li label span {
	width: 30px;
	aspect-ratio: 1;
	margin-right: .5em;
	background: var(--color-GrayL);
	border: 1px solid var(--color-GrayN);
	border-radius: .2em;
	flex-shrink: 0;
	position: relative;
	transition: border 0.2s linear;
	-webkit-transition: border 0.2s linear;
	transition: background 0.2s linear;
	-webkit-transition: background 0.2s linear;
}
.contact-form .radio li label span {
	border-radius: 100%;
}
.contact-form .check li label span::before {
	content: "";
	width: 9px;
	aspect-ratio: 9 / 13;
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	position: absolute;
	top: 50%;
	left: 30%;
	z-index: 1;
	transform: rotate(45deg) translate(-50%, -50%);
	-ms-transform: rotate(45deg) translate(-50%, -50%);
	-webkit-transform: rotate(45deg) translate(-50%, -50%);
	transition: opacity 0.2s linear;
	-webkit-transition: opacity 0.2s linear;
	opacity: 0;
}
.contact-form .radio li label span::before {
	content: "";
	width: 12px;
	height: 12px;
	background: #fff;
	border-radius: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	transition: opacity 0.2s linear;
	-webkit-transition: opacity 0.2s linear;
	opacity: 0;
}
.contact-form .check li input:checked + label span,
.contact-form .radio li input:checked + label span {
	background: #333;
	border: 1px solid #333;
}
.contact-form .check li input:checked + label span::before,
.contact-form .radio li input:checked + label span::before {
	opacity: 1.0;
}
.contact-form textarea {
	min-height: 160px;
}
.contact-form .select {
	max-width: 300px;
	position: relative;
}
.contact-form .select::after {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border-right: 2px solid var(--color-GrayB);
	border-bottom: 2px solid var(--color-GrayB);
	position: absolute;
	top: 45%;
	right: 1em;
	transform: rotate(45deg) translateY(-50%);
	pointer-events: none;
}
.contact-form .privacy {
	font-size: 1.6rem;
	font-family: var(--font-Serif);
	display: flex;
	align-items: center;
	justify-content: center;
}

.contact-form .submit ul {
	display: flex;
	gap: 0 2em;
	align-items: center;
	justify-content: center;
}
.contact-form .submit ul li {
	width: 100%;
	max-width: 360px;
}
.contact-form .submit ul li input {
	width: 100%;
	height: 70px;
	background: var(--gradient-Silver);
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	display: grid;
	place-items: center;
}
.contact-form .submit ul li input.next {
	color: #fff;
	background: var(--color-Black);
}

@media screen and (max-width: 768px) {
	.contact-form dl div dt {
		width: 200px;
		font-size: 1.4rem;
	}
	.contact-form dl div dt .status {
		width: 40px;
		height: 20px;
		font-size: 1.0rem;
	}
	.contact-form input,
	.contact-form select,
	.contact-form textarea {
		padding: .5em 1em;
	}
	.contact-form .address {
		gap: .8em;
	}
	.contact-form .address .zip span {
		font-size: 1.0rem;
		line-height: 1.6;
		letter-spacing: 0;
	}
	.contact-form .check,
	.contact-form .radio {
		gap: .5em;
	}
	.contact-form .check.column01,
	.contact-form .radio.column01,
	.contact-form .check.column02,
	.contact-form .radio.column02,
	.contact-form .check.column03,
	.contact-form .radio.column03,
	.contact-form .check.column04,
	.contact-form .radio.column04 {
		grid-template-columns: repeat(1, 1fr);
	}
	.contact-form .check li label span,
	.contact-form .radio li label span {
		width: 25px;
	}
	.contact-form .check li label span::before {
		top: 45%;
	}
	.contact-form .privacy {
		font-size: 1.4rem;
	}
}

/* form additional */
.contact-form .address .zip {
	flex-wrap: wrap;
}

.contact-form .address .zip .error {
	width: 100%;
}

.contact-form .privacy {
	flex-direction: column;
}

.contact-form .privacy a {
	text-decoration: underline;
}

.contact-form .privacy .error {
	display: block;
}

.contact-form .submit ul li:empty {
	display: none;
}

.contact-form .mw_wp_form_confirm dl div dt .status,
.contact-form .mw_wp_form_confirm .select::after,
.contact-form .mw_wp_form_confirm .address .zip .notice,
.contact-form .mw_wp_form_confirm .privacy {
	display: none;
}

.contact-form .box01 .mw_wp_form_confirm dl > div dt {
	padding-top: 0;
}

.contact-form .box01 .mw_wp_form_complete {
	display: flex;
	justify-content: center;
}


/* child */
#password_protected_rememberme {
	-webkit-appearance: auto;
	appearance: auto;
	width: auto;
}


/* entry-content */
#dashboard.news .sec01 .inner .box {
	display: block;
}

:where(.entry-content) h1,
:where(.entry-content) h2,
:where(.entry-content) h3,
:where(.entry-content) h4,
:where(.entry-content) h5,
:where(.entry-content) h6,
:where(.entry-content) p,
:where(.entry-content) ol,
:where(.entry-content) ul,
.wp-block-image,
.wp-block-gallery,
.wp-block-table {
	margin-top: 14px;
	margin-bottom: 14px;
}

:where(.entry-content) h1,
:where(.entry-content) h2,
:where(.entry-content) h3,
:where(.entry-content) h4,
:where(.entry-content) h5,
:where(.entry-content) h6 {
	font-weight: bold;
}

:where(.entry-content) h1 {
	font-size: 2em;
}

:where(.entry-content) h2 {
	font-size: 1.5em;
}

:where(.entry-content) h3 {
	font-size: 1.17em;
}

:where(.entry-content) h4 {
	font-size: 1em;
}

:where(.entry-content) h5 {
	font-size: .83em;
}

:where(.entry-content) h6 {
	font-size: .67em;
}

:where(.entry-content) ol ol,
:where(.entry-content) ol ul,
:where(.entry-content) ul ol,
:where(.entry-content) ul ul {
	margin-top: 0;
	margin-bottom: 0;
}

:where(.entry-content) ol,
:where(.entry-content) ul {
	padding-left: 40px;
}

:where(.entry-content) ul {
	list-style-type: disc;
}

:where(.entry-content) ul ul {
	list-style-type: circle;
}

:where(.entry-content) ul ul ul {
	list-style-type: square;
}

:where(.entry-content) > :first-child,
:where(.post-new-format) :where(.entry-content) :where(.is-layout-flow) > :first-child {
	margin-block-start: 0;
}

:where(.entry-content) > :last-child,
:where(.entry-content) :where(.is-layout-flow) > :last-child {
	margin-block-end: 0;
}
