@charset "utf-8";
/*
Theme Name: FarStar
Version: 1.0beta
Author: Tomofumi Aizawa
*/

/*-----------------------------------------------------
	base
------------------------------------------------------*/

html {
	font-size: 62.5%;
	scroll-behavior: smooth;
}
body {
	line-height: 1.75;
	text-align: center;
	font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif;
	color: #222;
	letter-spacing: .1em;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	position: relative;
}
a {
	color: #1a0dab;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
img, iframe, object {
	max-width: 100%;
}
img {
	height: auto;
}

/*-----------------------------------------------------
	layout
------------------------------------------------------*/

/* header */

header {
	font-size: 1.6em;
	position: fixed;
	top: 0;
	z-index: 500;
	background-color: #f6f6f6;
	width: calc(100% - 80px);
}
header:after {
	content: '.';
	font-size: 0;
	display: block;
	width: 30px;
	aspect-ratio: 1;
	background-color: #f6f6f6;
	clip-path: polygon(
		0 100%,
		calc(sin(pi * 0.5 * 0.1) * 100%) calc(cos(pi * 0.5 * 0.1) * 100%),
		calc(sin(pi * 0.5 * 0.2) * 100%) calc(cos(pi * 0.5 * 0.2) * 100%),
		calc(sin(pi * 0.5 * 0.3) * 100%) calc(cos(pi * 0.5 * 0.3) * 100%),
		calc(sin(pi * 0.5 * 0.4) * 100%) calc(cos(pi * 0.5 * 0.4) * 100%),
		calc(sin(pi * 0.5 * 0.5) * 100%) calc(cos(pi * 0.5 * 0.5) * 100%),
		calc(sin(pi * 0.5 * 0.6) * 100%) calc(cos(pi * 0.5 * 0.6) * 100%),
		calc(sin(pi * 0.5 * 0.7) * 100%) calc(cos(pi * 0.5 * 0.7) * 100%),
		calc(sin(pi * 0.5 * 0.8) * 100%) calc(cos(pi * 0.5 * 0.8) * 100%),
		calc(sin(pi * 0.5 * 0.9) * 100%) calc(cos(pi * 0.5 * 0.9) * 100%),
		calc(sin(pi * 0.5 * 1) * 100%) calc(cos(pi * 0.5 * 1) * 100%),
		100% 0,
		100% 100%
	);
	position: absolute;
	right: 0;
	bottom: -30px;
	transform: rotate(-90deg);
}
header .inner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	padding: 0 2em;
}
header .inner .logo {
	margin: auto auto auto 0;
	font-size: 0;
	flex-basis: 145px;
}
header .inner nav {
	margin: auto 0 auto auto;
}

/* nav */

header .inner nav .menu {
	font-size: 0;
	font-family: "Kosugi", sans-serif;
}
header .inner nav .menu li {
	font-size: 1.6rem;
	display: inline-block;
	vertical-align: middle;
}
header .inner nav .menu li a {
	display: block;
	color: #222;
	text-decoration: none;
	border-bottom: 3px solid rgba(0,0,0,0);
	position: relative;
	padding: 1em;
}
header .inner nav .menu li a:after {
	content: '.';
	font-size: 0;
	display: block;
	position: absolute;
	width: 10px;
	height: 5px;
	clip-path: polygon(50% 0, 0 100%, 100% 100%);
	background: transparent;
	margin: auto;
	right: 0;
	bottom: 0;
	left: 0;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
header .inner nav .menu li a:hover, header .inner nav .menu li.current-menu-item a {
	border-bottom: 3px solid #0852A0;
}
header .inner nav .menu li a:hover:after, header .inner nav .menu li.current-menu-item a:after {
	background: #0852A0;
}

/* main */

main {
	display: block;
	margin-right: 80px;
	min-height: 100vh;
}
main > .logo {
	display: none;
}

/* footer */

footer {
	font-size: 1.6em;
	background: #f6f6f6;
	position: relative;
	margin-right: 80px;
	text-align: left;
	padding: 3em 4em;
}
footer:after {
	content: '.';
	font-size: 0;
	display: block;
	width: 30px;
	aspect-ratio: 1;
	background-color: #f6f6f6;
	clip-path: polygon(
		0 100%,
		calc(sin(pi * 0.5 * 0.1) * 100%) calc(cos(pi * 0.5 * 0.1) * 100%),
		calc(sin(pi * 0.5 * 0.2) * 100%) calc(cos(pi * 0.5 * 0.2) * 100%),
		calc(sin(pi * 0.5 * 0.3) * 100%) calc(cos(pi * 0.5 * 0.3) * 100%),
		calc(sin(pi * 0.5 * 0.4) * 100%) calc(cos(pi * 0.5 * 0.4) * 100%),
		calc(sin(pi * 0.5 * 0.5) * 100%) calc(cos(pi * 0.5 * 0.5) * 100%),
		calc(sin(pi * 0.5 * 0.6) * 100%) calc(cos(pi * 0.5 * 0.6) * 100%),
		calc(sin(pi * 0.5 * 0.7) * 100%) calc(cos(pi * 0.5 * 0.7) * 100%),
		calc(sin(pi * 0.5 * 0.8) * 100%) calc(cos(pi * 0.5 * 0.8) * 100%),
		calc(sin(pi * 0.5 * 0.9) * 100%) calc(cos(pi * 0.5 * 0.9) * 100%),
		calc(sin(pi * 0.5 * 1) * 100%) calc(cos(pi * 0.5 * 1) * 100%),
		100% 0,
		100% 100%
	);
	position: absolute;
	right: 0;
	top: -30px;
}
footer .logo {
	width: 97px;
	display: inline-block;
	vertical-align: top;
}
footer .right {
	display: inline-block;
	vertical-align: top;
	font-size: 1.2rem;
	padding-left: 2em;
	margin-left: 2em;
	border-left: 1px solid rgba(0,0,0,0.25);
}
footer .right h2 {
	font-weight: bold;
}
footer .right h2 a {
	color: #222;
	text-decoration: none;
}
footer .bottom {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	margin-top: 1em;
}
footer .bottom ul {
	font-size: 0;
	margin: auto auto auto 0;
}
footer .bottom ul li {
	display: inline-block;
	font-size: 1.2rem;
	margin-right: 1em;
}
footer .bottom small {
	font-family: "Inter Tight", sans-serif;
	font-weight: 400;
	display: block;
	font-size: 1.2rem;
	margin: auto 0 auto auto;
}

/*-----------------------------------------------------
	module
------------------------------------------------------*/

/* hgroup */

article > #hgroup {
	font-size: 1.6em;
	color: #fff;
	padding: 15em 10% 12.5em 10%;
	text-align: left;
	background-size: cover;
	background-position: 50% 50%;
	position: relative;
	margin-bottom: 8em;
}
article > #hgroup a {
	color: #fff;
}
article > #hgroup h1 {
	font-size: 3.6rem;
	letter-spacing: .1em;
	font-family: "Kosugi", sans-serif;
}
article > #hgroup time {
	display: block;
	font-family: "Inter Tight", sans-serif;
	font-weight: 400;
	font-size: 1.2rem;
}
article > #hgroup ul {
	font-size: 1.2rem;
}
article > #hgroup ul li {
	display: inline-block;
	margin-right: 1em;
}
article > #hgroup ul li a:before {
	font-family: "Material Symbols Outlined";
	content: "\e9ef";
}
article > #hgroup .post-categories li a:before {
	content: "\e2c7";
}
article > #hgroup #bread {
	position: absolute;
	top: 7.5rem;
	width: 100%;
	text-align: center;
	left: 0;
	right: 0;
	font-size: 0;
	font-weight: bold;
}
article > #hgroup #bread li {
	font-size: 1.2rem;
	margin-right: 0;
}
article > #hgroup #bread li:not(:last-child):after {
	content: '/';
	margin: 0 1em;
}
article > #hgroup #bread li a:before {
	content: none;
}
article > #hgroup #bread li:first-child a:before {
	font-family: "Material Symbols Outlined";
	content: "\e88a";
}

/* pagelink */

article > #pagelink {
	font-size: 1.6em;
	margin: -5em 2em 5em 2em;
	font-weight: bold;
}
article > #pagelink li {
	display: inline-block;
	margin: 0 0.25em;
}
article > #pagelink li span, article > #pagelink li a {
	display: block;
	-moz-border-radius: 1.15em;
	-webkit-border-radius: 1.15em;
	border-radius: 1.15em;
	min-width: 2em;
	padding: 0.15em 0;
}
article > #pagelink li a {
	text-decoration: none;
	border: 2px solid #0852A0;
	color: #0852A0;
}
article > #pagelink li span, article > #pagelink li a:hover {
	border: 2px solid #0852A0;
	background: #0852A0;
	color: #fff;
}

/* postlink */

article > #postlink {
	margin: -5em 10% 5em 10%;
	font-size: 1.6em;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
article > #pagelink + #postlink {
	margin: 0 10% 5em 10%;
}
article > #postlink li {
	display: block;
	margin: auto auto auto 0;
}
article > #postlink li:nth-child(2) {
	margin: auto 0 auto auto;
}
article > #postlink li a[rel="prev"]:before, article > #postlink li a[rel="next"]:after {
	font-family: "Material Symbols Outlined";
}
article > #postlink li a[rel="prev"]:before {
	content: "\e5de";
}
article > #postlink li a[rel="next"]:after {
	content: "\e5df";
}

/* privacy */

article > #privacy {
	display: none;
}

/*-----------------------------------------------------
	archives
------------------------------------------------------*/

article > .archives {
	font-size: 1.6em;
	text-align: left;
	margin: 0 10% 10em 10%;
}

/* post */

article > .archives .post {
	float: left;
	width: 48.5%;
	padding: 2em 0;
	border-top: 1px solid rgba(0,0,0,0.25);
	color: #222;
}
article > .archives .post a {
	color: #222;
}
article > .archives .post a:hover {
	color: #0852A0;
}
article > .archives .post:nth-of-type(odd) {
	clear: left;
	margin-right: 3%;
}
article > .archives .post figure {
	float: right;
	margin-left: 1em;
}
article > .archives .post figure img {
	width: 125px;
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
}
article > .archives .post h2 {
	font-family: "Kosugi", sans-serif;
	letter-spacing: .1em;
	font-size: 2.1rem;
	margin-bottom: 0.25em;
}
article > .archives .post h2 a {
	color: #0852A0;
}
article > .archives .post h2 sup {
	font-size: 1rem;
	font-family: "Inter Tight", sans-serif;
	font-weight: 400;
	color: #fff;
	background: #0852A0;
	letter-spacing: .1em;
	display: inline-block;
	vertical-align: top;
	position: relative;
	padding: 0 0.5em;
	z-index: 1;
	-webkit-animation: blink 0.5s ease-in-out infinite alternate;
	-moz-animation: blink 0.5s ease-in-out infinite alternate;
	animation: blink 0.5s ease-in-out infinite alternate;
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
}
article > .archives .post h2 sup:after {
	content: '.';
	font-size: 0;
	display: block;
	width: 1rem;
	height: 1rem;
	transform: rotate(45deg);
	background-image: -moz-linear-gradient( left bottom, rgba(0,82,160,0) 50%, rgba(0,82,160,1) 50%);
	background-image: -webkit-linear-gradient( left bottom, rgba(0,82,160,0) 50%, rgba(0,82,160,1) 50%);
	background-image: linear-gradient(to right top, rgba(0,82,160,0) 50%, rgba(0,82,160,1) 50%);
	position: absolute;
	margin: auto;
	bottom: -0.4rem;
	left: 0;
	z-index: -1;
}
article > .archives .post ul li {
	display: inline-block;
	margin-right: 1em;
	font-size: 1.2rem;
}
article > .archives .post ul li a:before {
	font-family: "Material Symbols Outlined";
	content: "\e9ef";
}
article > .archives .post .post-categories li a:before {
	content: "\e2c7";
	vertical-align: bottom;
}
article > .archives .post time {
	display: block;
	font-size: 1.2rem;
	font-family: "Inter Tight", sans-serif;
	font-weight: 400;
}

/* pagination */

article > .navigation.pagination {
	margin: -5em 2em 5em 2em;
	font-size: 1.6em;
}
article > .navigation.pagination .nav-links .page-numbers {
	margin: 0 0.1em;
	text-decoration: none;
	border: 2px solid #0852A0;
	color: #0852A0;
	display: inline-block;
	font-weight: bold;
	-moz-border-radius: 1.15em;
	-webkit-border-radius: 1.15em;
	border-radius: 1.15em;
	min-width: 2em;
	padding: 0.15em 0;
}
article > .navigation.pagination .nav-links .page-numbers.current, article > .navigation.pagination .nav-links .page-numbers:hover {
	background: #0852A0;
	color: #fff;
}
article > .navigation.pagination .nav-links .prev.page-numbers, article > .navigation.pagination .nav-links .next.page-numbers {
	padding: 0;
	background: transparent;
	font-weight: normal;
	color: #1a0dab;
	text-decoration: underline;
	border: none;
}
article > .navigation.pagination .nav-links .prev.page-numbers:hover, article > .navigation.pagination .nav-links .next.page-numbers:hover {
	color: #1a0dab;
	background: transparent;
}
article > .navigation.pagination .nav-links .prev.page-numbers:before, article > .navigation.pagination .nav-links .next.page-numbers:after {
	font-family: "Material Symbols Outlined";
}
article > .navigation.pagination .nav-links .prev.page-numbers:before {
	content: "\e5de";
}
article > .navigation.pagination .nav-links .next.page-numbers:after {
	content: "\e5df";
}

/*-----------------------------------------------------
	default
------------------------------------------------------*/

/* mailformpro */

#mailformpro {
	margin-top: -16em;
	margin-right: 10%;
	margin-bottom: 16em;
	margin-left: 10%;
}

/* modaal */

.modaal-wrapper {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.modaal-close {
	background: #0852A0 !important;
	right: 1em !important;
	top: 1em !important;
	left: auto !important;
	color: #fff !important;
	padding: 0.4em 1.1em 1em 1.1em !important;
	width: auto !important;
	height: auto !important;
	line-height: 1;
}
.modaal-close:before {
	font-family: "Material Symbols Outlined";
	content: "\e5cd" !important;
	transform: none !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	height: auto !important;
	font-size: 3.6em !important;
	background: transparent !important;
}
.modaal-close:after {
	font-family: "Inter Tight", sans-serif !important;
	font-weight: 700 !important;
	letter-spacing: .1em;
	content: 'CLOSE' !important;
	transform: none !important;
	font-size: 1rem !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	width: auto !important;
	height: auto !important;
	background: transparent !important;
	line-height: 1;
}
.modaal-close:hover:after, .modaal-close:hover:before {
	background: transparent !important;
}
.modaal-content-container {
	padding: 0 !important;
	overflow: hidden;
}

/* drawer */

.drawer-hamburger {
	display: none;
}

/* wp-block */

.wp-block-file, .wp-block-image, .wp-block-table, .wp-block-details {
	margin-bottom: 2em;
}

/* wp-block-image */

.wp-block-image .alignleft {
	margin: 0 1em 1em 0;
}
.wp-block-image .alignright {
	margin: 0 0 1em 1em;
}

/* wp-block-file */

.wp-block-file:not(.wp-element-button) {
	font-size: inherit;
}
.wp-block-file + .wp-block-file {
	margin-top: -1em;
}
.wp-block-file:not(.wp-element-button) a {
	text-decoration: none;
	border: 2px solid #222;
	color: #222;
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
	padding: 0.5em 1em;
	font-family: "Kosugi", sans-serif;
	display: block;
}
.wp-block-file:not(.wp-element-button) a[href*=".doc"], .wp-block-file:not(.wp-element-button) a[href*=".docx"] {
	border: 2px solid #000080;
	color: #000080;
}
.wp-block-file:not(.wp-element-button) a[href*=".xls"], .wp-block-file:not(.wp-element-button) a[href*=".xlsx"] {
	border: 2px solid #008000;
	color: #008000;
}
.wp-block-file:not(.wp-element-button) a[href*=".pdf"] {
	border: 2px solid #b22222;
	color: #b22222;
}
.wp-block-file:not(.wp-element-button) a:hover {
	color: #fff;
	background: #222;
}
.wp-block-file:not(.wp-element-button) a[href*=".doc"]:hover, .wp-block-file:not(.wp-element-button) a[href*=".docx"]:hover {
	background: #000080;
}
.wp-block-file:not(.wp-element-button) a[href*=".xls"]:hover, .wp-block-file:not(.wp-element-button) a[href*=".xlsx"]:hover {
	background: #008000;
}
.wp-block-file:not(.wp-element-button) a[href*=".pdf"]:hover {
	background: #b22222;
}
.wp-block-file:not(.wp-element-button) a:before {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
}
.wp-block-file:not(.wp-element-button) a[href*=".doc"]:before, .wp-block-file:not(.wp-element-button) a[href*=".docx"]:before {
	content: "\ea7d";
}
.wp-block-file:not(.wp-element-button) a[href*=".xls"]:before, .wp-block-file:not(.wp-element-button) a[href*=".xlsx"]:before {
	content: "\f191";
}
.wp-block-file:not(.wp-element-button) a[href*=".pdf"]:before {
	content: "\e415";
}
.wp-block-file:not(.wp-element-button) a[href*=".zip"]:before {
	content: "\eb2c";
}

/* wp-block-buttons */

.wp-block-buttons {
	font-family: "Kosugi", sans-serif;
	justify-content: center;
}
.wp-block-buttons > .wp-block-button {
	margin: 0 0.5em;
	text-align: center;
}
.wp-block-buttons > .wp-block-button a.wp-block-button__link {
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
	padding: 0.5em 1em;
	font-size: inherit;
	min-width: calc(300px - 2em);
	background-color: #0852A0;
	color: #fff;
	border: 2px solid #0852A0;
}
.wp-block-buttons > .wp-block-button a.wp-block-button__link:hover {
	background-color: transparent;
	color: #0852A0;
}
.wp-block-buttons > .wp-block-button a.wp-block-button__link:after {
	font-family: "Material Symbols Outlined";
	content: '\e5df';
	vertical-align: bottom;
}
.wp-block-buttons > .wp-block-button a.wp-block-button__link[target*="blank"]:after {
	content: "\e89e";
}

/* notice */

p.notice {
	-moz-box-shadow: 0 0 0.25em rgba(0,0,0,0.15);
	-webkit-box-shadow: 0 0 0.25em rgba(0,0,0,0.15);
	box-shadow: 0 0 0.25em rgba(0,0,0,0.15);
	background: #fff;
	padding: 0.5em 1em;
	border-left: 4px solid #c3c4c7;
}
p.notice.notice-success {
	border-left: 4px solid #00a32a;
}
p.notice.notice-success.notice-alt {
	background-color: #edfaef;
}
p.notice.notice-warning {
	border-left: 4px solid #dba617;
}
p.notice.notice-warning.notice-alt {
	background-color: #fcf9e8;
}
p.notice.notice-error {
	border-left: 4px solid #d63638;
}
p.notice.notice-error.notice-alt {
	background-color: #fcf0f1;
}
p.notice.notice-info {
	border-left: 4px solid #72aee6;
}
p.notice.notice-info.notice-alt {
	background-color: #f0f6fc;
}
p.notice + p.notice {
	margin-top: -1em;
}

/* subtitle */

.entry h3.subtitle {
	font-size: inherit;
	color: #0852A0;
	font-family: "Inter Tight", sans-serif;
	font-weight: 400;
}
.entry h3.subtitle + h2 {
	margin-top: -0.75em;
}

/*-----------------------------------------------------
	entry
------------------------------------------------------*/

.entry {
	text-align: left;
	font-size: 1.6em;
	margin: 0 10% 10em 10%;
}
.entry h1, .entry h2, .entry h3, .entry h4, .entry h5, .entry h6 {
	margin-bottom: 1em;
	letter-spacing: .1em;
	font-family: "Kosugi", sans-serif;
}
.entry h1 {
	font-size: 3.6rem;
}
.entry h2 {
	font-size: 3rem;
	position: relative;
}
.entry h2:before {
	content: '.';
	font-size: 0;
	display: block;
	height: 3px;
	width: 50%;
	background: #0852A0;
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: calc(-50% - 10px);
}
.entry h3 {
	font-size: 2.4rem;
}
.entry h4 {
	font-size: 2.1rem;
}
.entry h5 {
	font-size: 1.8rem;
}
.entry p, .entry pre, .entry ul, .entry ol {
	margin-bottom: 2em;
}
.entry p a {
	word-break: break-all;
}
.entry pre {
	font-family: monospace;
	white-space: pre-wrap;
}
.entry ul {
	list-style: disc;
	padding-left: 2em;
}
.entry ol {
	list-style: decimal;
	padding-left: 2em;
}
.entry ul ul, .entry ul ol, .entry ol ol, .entry ol ul {
	margin-bottom: 0;
}
.entry table th, .entry strong {
	font-weight: bold;
}
.entry table th, .entry table td {
	text-align: left;
}
.entry em, .entry cite {
	font-style: italic;
}
.entry sup {
	font-size: 50%;
	vertical-align: top;
}
.entry sub {
	font-size: 50%;
	vertical-align: bottom;
}
.entry blockquote {
	padding-left: 1.75em;
	border-left: 1px solid #0852A0;
	position: relative;
	font-family: serif;
}
.entry blockquote:before {
	font-family: "Material Symbols Outlined";
	content: "\e244";
	position: absolute;
	top: 0;
	left: 0.5em;
	color: #ccc;
}
.entry blockquote cite {
	margin-top: -1em;
}
.entry figure figcaption {
	margin-bottom: 0;
}

/* modaal-content-container */

.modaal-content-container .entry {
	margin: 0;
	padding: 3em 2em;
}

/* width */

.post-2 .entry {
	margin: 0 0 10em 0;
}
.post-19 .entry {
	margin: 0 0 10em 10%;
}

/*-----------------------------------------------------
	class
------------------------------------------------------*/

/* clearfix */

.clearfix:after {
	content: '.';
	height: 0;
	font-size: 0;
	display: block;
	width: 100%;
	clear: both;
	visibility: hidden;
}

/*-----------------------------------------------------
	custom
------------------------------------------------------*/

/* contact_a */

.entry ul.contact_a {
	background: #D8EBFF;
	padding: 2em 3em;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
}
.entry ul.contact_a li {
	display: inline-block;
	vertical-align: middle;
}
.entry ul.contact_a li.phone {
	font-size: 1.2rem;
	position: relative;
	padding-left: 6em;
}
.entry ul.contact_a li.phone:before {
	font-family: "Material Symbols Outlined";
	content: "\e61d";
	font-size: 3rem;
	background: #fff;
	color: #0852A0;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	height: 1.75em;
	width: 1.75em;
	text-align: center;
	position: absolute;
	margin: auto;
	left: 0;
	top: 0;
	bottom: 0;
}
.entry ul.contact_a li.phone a {
	display: block;
	font-size: 3rem;
	color: #0852A0;
	text-decoration: none;
	font-family: "Inter Tight", sans-serif;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: .05em;
}
.entry ul.contact_a li.charge {
	padding-left: 2em;
	margin-left: 2em;
	border-left: 1px solid #0852A0;
}
.entry ul.contact_a li.mail {
	padding-left: 9em;
	margin-left: 3em;
	border-left: 1px solid #0852A0;
	text-align: center;
	font-size: 1.2rem;
	position: relative;
}
.entry ul.contact_a li.mail:before {
	font-family: "Material Symbols Outlined";
	content: "\e158";
	font-size: 3rem;
	background: #fff;
	color: #0852A0;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	height: 1.75em;
	width: 1.75em;
	text-align: center;
	position: absolute;
	margin: auto;
	left: 1.25em;
	top: 0;
	bottom: 0;
}
.entry ul.contact_a li.mail a {
	display: block;
	background: #0852A0;
	color: #fff;
	font-family: "Kosugi", sans-serif;
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
	padding: 0.5em 1em;
	font-size: 1.6rem;
	min-width: calc(300px - 2em);
	border: 2px solid #0852A0;
	text-decoration: none;
	margin-top: 0.25em;
}
.entry ul.contact_a li.mail a:hover {
	background: transparent;
	color: #0852A0;
}

/* product_c */

.entry .product_c {
	margin-bottom: -8em;
}

/* product_b */

.entry ol.product_b {
	list-style: none;
	padding-left: 0;
	counter-reset: number;
}
.entry ol.product_b li {
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
	border: 1px solid rgba(0,0,0,0.15);
	padding: 1em 2em;
	position: relative;
}
.entry ol.product_b li:not(:last-child) {
	margin-bottom: 3.5em;
}
.entry ol.product_b li:not(:last-child):after {
	font-family: "Material Symbols Outlined";
	content: "\e5c5";
	font-size: 6rem;
	color: #0852A0;
	position: absolute;
	line-height: 1;
	height: 1em;
	width: 1em;
	display: block;
	bottom: -1em;
	left: 1em;
	margin: auto;
	text-shadow: 0 -0.1em 0 rgba(0,0,0,0.1);
}
.entry ol.product_b li strong {
	color: #0852A0;
	font-family: "Kosugi", sans-serif;
	font-size: 2.1rem;
	display: block;
}
.entry ol.product_b li:before {
	counter-increment: number;
	content: counter(number);
	display: block;
	position: absolute;
	top: -0.5em;
	left: -0.5em;
	font-family: "Kosugi", sans-serif;
	background: #0852A0;
	color: #fff;
	text-align: center;
	width: 1.75em;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

/* product_a */

.entry .product_a {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	border: 1px solid #0852A0;
	padding: 3em 4em;
}
.entry .product_a .wp-block-image {
	margin-bottom: 0;
}
.entry .product_a .wp-block-image img {
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
	-moz-box-shadow: 0 0 0.5em rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0 0.5em rgba(0,0,0,0.1);
	box-shadow: 0 0 0.5em rgba(0,0,0,0.1);
}
.entry .product_a h3:before {
	font-family: "Material Symbols Outlined";
	content: "\eb39";
	vertical-align: bottom;
	color: #0852A0;
	margin-right: 0.1em;
}
.entry .product_a h4 {
	color: #0852A0;
}
.entry .product_a :last-child {
	margin-bottom: 0;
}

/* testing_c */

.entry .testing_c.wp-block-columns {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	border: 1px solid #0852A0;
	padding: 3em 4em;
}
.entry .testing_c.wp-block-columns .wp-block-column :last-child {
	margin-bottom: 0;
}
.entry .testing_c.wp-block-columns .wp-block-column ul {
	list-style: none;
	padding-left: 0;
}
.entry .testing_c.wp-block-columns .wp-block-column ul li {
	padding-left: 1.25em;
}
.entry .testing_c.wp-block-columns .wp-block-column ul li:before {
	font-family: "Material Symbols Outlined";
	content: "\e5df";
	color: #0852A0;
	float: left;
	margin-left: -1.25em;
	display: block;
	width: 1em;
}

/* testing_b */

.entry .testing_b.is-layout-flex ul {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	border: 1px solid #0852A0;
	padding-top: 2em;
	padding-right: 5em;
	padding-bottom: 2em;
	margin-right: -4em;
	list-style: none;
	margin-top: 0;
	margin-bottom: auto;
}
.entry .testing_b.is-layout-flex ul li {
	padding-left: 1.25em;
}
.entry .testing_b.is-layout-flex ul li:before {
	font-family: "Material Symbols Outlined";
	content: "\e5df";
	color: #0852A0;
	float: left;
	margin-left: -1.25em;
	display: block;
	width: 1em;
}
.entry .testing_b.is-layout-flex .wp-block-image {
	margin-bottom: 0;
	padding-top: 8em;
}
.entry .testing_b.is-layout-flex .wp-block-image img {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	min-width: 512px;
}
/* 写真なし */
.entry ul.testing_b {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	border: 1px solid #0852A0;
	padding-top: 2em;
	padding-right: 4em;
	padding-left: 4em;
	padding-bottom: 2em;
	list-style: none;
}
.entry ul.testing_b li {
	padding-left: 1.25em;
}
.entry ul.testing_b li:before {
	font-family: "Material Symbols Outlined";
	content: "\e5df";
	color: #0852A0;
	float: left;
	margin-left: -1.25em;
	display: block;
	width: 1em;
}

/* testing_a */

.entry .testing_a.is-layout-flex .wp-block-image {
	z-index: 1;
	padding-bottom: 3em;
	margin-top: 0;
	margin-bottom: auto;
}
.entry .testing_a.is-layout-flex .wp-block-image img {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	min-width: 512px;
}
.entry .testing_a.is-layout-flex .wp-block-group {
	margin-top: auto;
	margin-bottom: 0;
	-moz-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	padding: 3em 3em 3em 7em;
	margin-left: -4em;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	font-family: "Kosugi", sans-serif;
}
.entry .testing_a.is-layout-flex .wp-block-group p {
	color: #0852A0;
	margin-bottom: 0;
}
.entry .testing_a.is-layout-flex > p {
	margin-top: auto;
	margin-bottom: 0;
	-moz-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	padding: 3em 3em 3em 7em;
	margin-left: -4em;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	color: #0852A0;
	font-family: "Kosugi", sans-serif;
}
/* 写真なし */
.entry p.testing_a {
	-moz-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	padding: 3em;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	color: #0852A0;
	font-family: "Kosugi", sans-serif;
}

/* environment_d */

.entry .environment_d.wp-block-table {
	max-width: 840px;
}
.entry .environment_d.wp-block-table table {
	margin-bottom: 1em;
}
.entry .environment_d.wp-block-table td, .entry .environment_d.wp-block-table th {
	border: none;
	padding: 1em 0.5em;
	border-bottom: 1px solid rgba(0,0,0,0.15);
}
.entry .environment_d.wp-block-table tr td:first-child {
	border-bottom: 1px solid #0852A0;
	width: 12em;
}

/* environment_c */

.entry .environment_c {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	background: #D8EBFF;
	text-align: center;
	padding: 2em;
}
.entry .environment_c h3 {
	margin-bottom: 0.25em;
}
.entry .environment_c p {
	margin-bottom: 1em;
}

/* environment_b */

.entry .environment_b img {
	-moz-border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	border-radius: 0.5em;
}

/* environment_a */

.entry ul.environment_a {
	border: 1px solid #0852A0;
	text-align: center;
	padding-left: 1.6rem;
	padding-right: 1.6rem;
	padding-top: 4.8rem;
	padding-bottom: 4.8rem;
	-moz-border-radius: 1.6rem;
	-webkit-border-radius: 1.6rem;
	border-radius: 1.6rem;
	color: #0852A0;
	font-family: "Kosugi", sans-serif;
	font-size: 0;
}
.entry ul.environment_a li {
	display: inline-block;
	vertical-align: middle;
	font-size: 2.1rem;
	position: relative;
	z-index: 1;
	margin: 0 1em;
	width: 11em;
}
.entry ul.environment_a li:before {
	font-family: "Material Symbols Outlined";
	content: "\eee1";
	position: absolute;
	width: 1em;
	line-height: 1;
	height: 1em;
	display: block;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	font-size: 9.6rem;
	color: #D8EBFF;
	z-index: -1;
}
.entry ul.environment_a li:first-child:after {
	font-family: "Material Symbols Outlined";
	content: "\e5cd";
	position: absolute;
	vertical-align: bottom;
	right: -1.5em;
}

/* company_c */

.entry figure.company_c.wp-block-table {
	margin-right: 10%;
}
.entry figure.company_c.wp-block-table tbody tr:nth-child(even) {
	background: rgba(0,0,0,0.05);
}
.entry figure.company_c.wp-block-table td, .entry figure.company_c.wp-block-table th {
	border: none;
	padding: 1em;
}
.entry figure.company_c.wp-block-table tr td:first-child {
	width: 6em;
}

/* company_b */

.entry .company_b {
	gap: 0 5em;
}
.entry .company_b .wp-block-table, .entry .company_b .wp-block-image {
	margin-bottom: 0;
}
.entry .company_b .wp-block-image img {
	-moz-border-radius: 1em 0 0 1em;
	-webkit-border-radius: 1em 0 0 1em;
	border-radius: 1em 0 0 1em;
	min-width: 480px;
}
.entry .company_b .wp-block-table td, .entry .company_b .wp-block-table th {
    border: none;
    padding: 1em 0.5em;
	border-bottom: 1px solid rgba(0,0,0,0.15);
}
.entry .company_b .wp-block-table tr td:first-child {
	border-bottom: 1px solid #0852A0;
	width: 7em;
}

/* company_a */

.entry .company_a {
	margin-right: 10%;
	position: relative;
}
.entry .company_a .wp-block-image {
	z-index: 1;
	padding-bottom: 6em;
	margin-top: 0;
	margin-bottom: auto;
}
.entry .company_a .wp-block-image img {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	min-width: 512px;
}
.entry .company_a p {
	margin-bottom: 0;
	margin-top: auto;
	-moz-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	-webkit-box-shadow: 0 0 1em rgba(0,0,0,0.1);
	box-shadow: 0 0 1em rgba(0,0,0,0.1);
	padding: 3em 3em 3em 7em;
	margin-left: -4em;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	position: relative;
}
.entry .company_a p:after {
	content: 'SINCE 1989';
	font-family: "Inter Tight", sans-serif;
	font-weight: 900;
	color: rgba(8,82,160,0.1);
	position: absolute;
	right: 0;
	bottom: 0;
	line-height: 1;
	font-size: 8.4rem;
	letter-spacing: .1em;
}

/* home_d */

.entry .home_d {
	background: #D8EBFF;
	-moz-border-radius: 1em 0 0 1em;
	-webkit-border-radius: 1em 0 0 1em;
	border-radius: 1em 0 0 1em;
	padding: 3em 10% 3em 6em;
}
.entry .home_d .post {
	display: table;
	width: 100%;
	max-width: 720px;
}
.entry .home_d .post:last-of-type {
	margin-bottom: 2em;
}
.entry .home_d .post time, .entry .home_d .post h3 {
	display: table-cell;
	vertical-align: top;
	padding: 1em 0;
}
.entry .home_d .post time {
	font-family: "Inter Tight", sans-serif;
	font-weight: 500;
	width: 11em;
	border-bottom: 1px solid #0852A0;
}
.entry .home_d .post time:before {
	font-family: "Material Symbols Outlined";
	content: "\e8b5";
	vertical-align: bottom;
}
.entry .home_d .post h3 {
	font-size: inherit;
	border-bottom: 1px solid rgba(0,0,0,0.15);
}
.entry .home_d .post h3 sup {
	font-size: 0.8rem;
	font-family: "Inter Tight", sans-serif;
	font-weight: 400;
	color: #fff;
	background: #0852A0;
	letter-spacing: .1em;
	display: inline-block;
	vertical-align: top;
	position: relative;
	padding: 0 0.5em;
	z-index: 1;
	-webkit-animation: blink 0.5s ease-in-out infinite alternate;
	-moz-animation: blink 0.5s ease-in-out infinite alternate;
	animation: blink 0.5s ease-in-out infinite alternate;
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
}
.entry .home_d .post h3 sup:after {
	content: '.';
	font-size: 0;
	display: block;
	width: 1rem;
	height: 1rem;
	transform: rotate(45deg);
	background-image: -moz-linear-gradient( left bottom, rgba(0,82,160,0) 50%, rgba(0,82,160,1) 50%);
	background-image: -webkit-linear-gradient( left bottom, rgba(0,82,160,0) 50%, rgba(0,82,160,1) 50%);
	background-image: linear-gradient(to right top, rgba(0,82,160,0) 50%, rgba(0,82,160,1) 50%);
	position: absolute;
	margin: auto;
	bottom: -0.4rem;
	left: 0;
	z-index: -1;
}
.entry .home_d p {
	font-family: "Kosugi", sans-serif;
	margin-bottom: 0;
}
.entry .home_d p a {
	display: block;
	max-width: calc(300px - 2em);
	text-align: center;
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
	padding: 0.5em 1em;
	background: #0852A0;
	color: #fff;
	border: 2px solid #0852A0;
	text-decoration: none;
}
.entry .home_d p a:hover {
	background: transparent;
	color: #0852A0;
}
.entry .home_d p a:before {
	font-family: "Material Symbols Outlined";
	content: '\e241';
	vertical-align: bottom;
}

/* home_c */

.entry .home_c {
	margin-left: 10%;
}
.entry .home_c ul {
	background: #D8EBFF;
	-moz-border-radius: 1em 0 0 1em;
	-webkit-border-radius: 1em 0 0 1em;
	border-radius: 1em 0 0 1em;
	padding-right: 10%;
	padding-left: 5em;
	padding-bottom: 3em;
	margin-top: calc(150px + 2em);
}
.entry .home_c ul li {
	display: inline-block;
	width: 300px;
	text-align: left;
	margin-top: -150px;
	margin-right: 1em;
	margin-left: 1em;
	vertical-align: top;
}
.entry .home_c ul li a {
	text-align: center;
	display: block;
	background-position: 50% 50%;
	background-size: cover;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	color: #fff;
	text-decoration: none;
	font-family: "Kosugi", sans-serif;
	font-size: 2.4rem;
	padding: 4.8em 0;
	margin-bottom: 1em;
	position: relative;
}
.entry .home_c ul li.environment a {
	background-image: -moz-linear-gradient( left, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_01.jpg');
	background-image: -webkit-linear-gradient( left, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_01.jpg');
	background-image: linear-gradient(to right, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_01.jpg');
}
.entry .home_c ul li.testing a {
	background-image: -moz-linear-gradient( left, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_02.jpg');
	background-image: -webkit-linear-gradient( left, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_02.jpg');
	background-image: linear-gradient(to right, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_02.jpg');
}
.entry .home_c ul li.product a {
	background-image: -moz-linear-gradient( left, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_03.jpg');
	background-image: -webkit-linear-gradient( left, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_03.jpg');
	background-image: linear-gradient(to right, rgba(8,82,160,0.5) 0%, rgba(8,82,160,0.5) 100%), url('images/bg_03.jpg');
}
.entry .home_c ul li a:before {
	content: '.';
	font-size: 0;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	pointer-events: auto;
	background-color: transparent;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}
.entry .home_c ul li a:hover:before {
	background: rgba(0,102,153,0.5);
}
.entry .home_c ul li a:after {
	font-family: "Material Symbols Outlined";
	content: "\e5c5";
	display: block;
	line-height: 1;
}

/* home_b */

.entry .home_b {
	margin: 0 0 0 10%;
	gap: 0 3em;
}
.entry .home_b .wp-block-image img {
	min-width: 640px;
	-moz-border-radius: 1em 0 0 1em;
	-webkit-border-radius: 1em 0 0 1em;
	border-radius: 1em 0 0 1em;
}

/* home_a */

.entry .home_a {
	color: #fff;
	animation-name: parallax;
	animation-timing-function: linear;
	animation-fill-mode: both;
	animation-timeline: view();
}
.entry .home_a > .wp-block-group__inner-container {
	min-height: 100vh;
	padding: 0 10%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-direction: column;
	flex-direction: column;
	background-image: -moz-linear-gradient( bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 25%);
	background-image: -webkit-linear-gradient( bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 25%);
	background-image: linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 25%);
}
.entry .home_a h2 {
	font-size: 3.6rem;
}
.entry .home_a h2:before {
	content: none;
}

/*-----------------------------------------------------
	section
------------------------------------------------------*/

/* recent */

#recent.entry {
	margin-top: -4em;
	margin-left: 10%;
}

/*-----------------------------------------------------
	widget
------------------------------------------------------*/

/* block-2 */

#block-2.widget_block {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	height: auto;
	width: 80px;
	margin: auto;
	background: #F6F6F6;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	align-items: center;
}
#block-2.widget_block ul {
	font-family: "Kosugi", sans-serif;
}
#block-2.widget_block ul li {
	padding: 1em 0;
}
#block-2.widget_block ul li a {
	text-decoration: none;
	color: #999;
	display: block;
}
#block-2.widget_block ul li a:hover {
	color: #0852A0;
}
#block-2.widget_block ul li a:before {
	font-family: "Material Symbols Outlined";
	display: block;
	font-size: 3rem;
	line-height: 1;
}
#block-2.widget_block ul li.home a:before {
	content: "\e88a";
}
#block-2.widget_block ul li.contact a:before {
	content: "\e158";
}
#block-2.widget_block ul li.pagetop a:before {
	content: "\e25a";
}

/*-----------------------------------------------------
	keyframes
------------------------------------------------------*/
@-webkit-keyframes blink {

	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}

}
@-moz-keyframes blink {

	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}

}
@keyframes blink {

	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}

}
@keyframes parallax {

	0% {
		background-position: center 360px;
	}
	100% {
		background-position: center -360px;
	}

}
/*-----------------------------------------------------
	max-width: 1260px
------------------------------------------------------*/
@media only screen and (max-width: 1260px) {

	/* footer */

	footer {
		padding: 3em 2em;
	}

	/* mailformpro */

	#mailformpro {
		margin-right: 3.2em;
		margin-left: 3.2em;
	}

	/* hgroup */

	article > #hgroup {
		padding: 15em 2em 12.5em 2em;
	}

	/* postlink */

	article > #postlink {
		margin: -5em 2em 5em 2em;
	}
	article > #pagelink + #postlink {
		margin: 0 2em 5em 2em;
	}

	/* archives */

	article > .archives {
		margin: 0 2em 10em 2em;
	}

	/* entry */

	.entry {
		margin: 0 2em 10em 2em;
	}

	/* width */

	.post-19 .entry {
		margin: 0 0 10em 2em;
	}

	/* company_b */

	.entry .company_b {
		gap: 0 3em;
	}

	/* company_a */

	.entry .company_a {
		margin-right: 2em;
	}
	.entry .company_a .wp-block-image {
		padding-bottom: 8em;
	}

	/* home_c */

	.entry .home_c {
		margin-left: 2em;
	}
	.entry .home_c ul {
		padding-right: 2em;
		padding-left: 2em;
	}

	/* home_b */

	.entry .home_b {
		margin: 0 0 0 2em;
	}
	.entry .home_b .wp-block-image img {
		min-width: 480px;
	}

	/* home_a */

	.entry .home_a > .wp-block-group__inner-container {
		padding: 0 2em;
	}

	/* home_d */

	.entry .home_d {
		padding: 3em 2em;
	}

	/* recent */

	#recent.entry {
		margin-left: 2em;
	}

}
/*-----------------------------------------------------
	Media Queries
------------------------------------------------------*/
@media print {

}
/*-----------------------------------------------------
	Google Fonts
------------------------------------------------------*/
/*
	font-family: "Kosugi", sans-serif;
	font-family: "Inter Tight", sans-serif;
	font-weight: 100;
	font-weight: 200;
	font-weight: 300;
	font-weight: 400;
	font-weight: 500;
	font-weight: 600;
	font-weight: 700;
	font-weight: 800;
	font-weight: 900;
*/
