@charset "utf-8";
/*
Theme Name: Aikawa Law Office
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%;
}
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;
	top: 0;
	width: 100%;
	position: fixed;
	-moz-transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	z-index: 500;
}
header .inner {
	border-bottom: 1px solid #4169E1;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	background-color: #fff;
}
header .inner .logo {
	margin: auto auto auto 0;
	background: #4169E1;
	font-size: 0;
	padding: 2.4rem 3.2rem;
	flex-basis: 220px;
}
header .inner nav {
	margin: auto 0 auto auto;
}

/* nav */

header .inner nav .menu {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: 0;
}
header .inner nav .menu li {
	display: inline-block;
	font-size: 1.6rem;
	vertical-align: middle;
	margin-right: 2em;
}
header .inner nav .menu li a {
	color: #222;
	text-decoration: none;
	position: relative;
}
header .inner nav .menu li.home a:before {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
	content: "\e88a";
}
header .inner nav .menu li a:hover {
	color: #4169E1;
}
header .inner nav .menu li a:hover:after {
	content: '.';
	font-size: 0;
	display: block;
	height: 6px;
	width: 6px;
	background: #4169E1;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	margin: auto;
	right: 0;
	bottom: -1.5rem;
	left: 0;
}
header .inner nav .menu li .sub-menu {
	display: none;
	width: auto;
	max-width: none;
	min-width: 10em;
	text-align: left;
	position: absolute;
	z-index: 10;
	padding: 1.5em 0 0 0;
}
header .inner nav .menu li:hover > .sub-menu {
	display: block;
	animation: appear .5s ease;
}
header .inner nav .menu li .sub-menu li {
	display: block;
	white-space: nowrap;
	margin-right: 0;
}
header .inner nav .menu li .sub-menu li a, header .inner nav .menu .current-menu-item .sub-menu li a {
	padding: 0.5em 1em;
	background: #191970;
	color: #fff;
	border-bottom: none;
	display: block;
}
header .inner nav .menu li .sub-menu li:first-of-type > a {
	-moz-border-radius: 0.25em 0.25em 0 0;
	-webkit-border-radius: 0.25em 0.25em 0 0;
	border-radius: 0.25em 0.25em 0 0;
}
header .inner nav .menu li .sub-menu li:last-of-type > a {
	-moz-border-radius: 0 0 0.25em 0.25em;
	-webkit-border-radius: 0 0 0.25em 0.25em;
	border-radius: 0 0 0.25em 0.25em;
}
header .inner nav .menu li .sub-menu li:only-of-type > a {
	-moz-border-radius: 0.25em;
	-webkit-border-radius: 0.25em;
	border-radius: 0.25em;
}
header .inner nav .menu li .sub-menu li a:hover {
	background: #4169E1;
}
header .inner nav .menu li .sub-menu li a:hover:after {
	content: none;
}
header .inner nav .menu li.home .sub-menu li a:before {
	content: none;
}
header .inner nav .menu li .sub-menu li .sub-menu {
	padding: 0 0 0 0.5em;
	top: 0;
	left: 100%;
}

/* main */

main {
	display: block;
}
main > .logo {
	display: none;
}

/* footer */

footer {
	font-size: 1.6em;
	padding-bottom: 10em;
}
footer .top {
	background: #191970;
	color: #fff;
	text-align: left;
	padding: 7.5em 10%;
	-moz-border-radius: 3em 0 0 0;
	-webkit-border-radius: 3em 0 0 0;
	border-radius: 3em 0 0 0;
	margin-bottom: 3em;
}
footer .top a {
	color: #fff;
}
footer .top .logo {
	margin-bottom: 2em;
}
footer .top .logo img {
	width: 220px;
}
footer .top .left, footer .top .center, footer .top .right {
	display: inline-block;
	vertical-align: top;
}
footer .top .left, footer .top .center {
	margin-right: 5em;
}
footer .top .left h2 {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	margin-bottom: 0.25em;
}
footer .top .left p {
	font-size: 1.2rem;
}
footer .top .left p a {
	font-size: 3.6rem;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
	text-decoration: none;
}
footer .top .left p a:before {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
	content: "\e61d";
}
footer .top ul li {
	margin-bottom: 0.5em;
	padding-left: 1.25em;
}
footer .top ul li:before {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
	content: "\e5df";
	margin-left: -1.25em;
	display: block;
	float: left;
	width: 1em;
}
footer .top ul li .sub-menu {
	margin-top: 0.5em;
}
footer .top ul li .sub-menu li:before {
	content: "\e15b";
}
footer > ul, footer > small {
	display: block;
	margin: 0 10%;
	text-align: left;
	font-size: 1.2rem;
}
footer > ul {
	margin-bottom: 0.5em;
}
footer > ul li {
	display: inline-block;
	margin-right: 1em;
}
footer > small {
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 400;
}

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

/* hgroup */

article > #hgroup {
	font-size: 1.6em;
	background-color: #E5E5E6;
	background-size: contain;
	background-position: 50% 100%;
	background-repeat: no-repeat;
	padding: 12.5em 10% 10em 10%;
	text-align: left;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
article > #hgroup a {
	color: #222;
}
article > #hgroup h1 {
	font-size: 3.6rem;
	letter-spacing: .1em;
	font-weight: 500;
}
article > #hgroup time {
	display: block;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
}
article > #hgroup ul li {
	display: inline-block;
	margin-right: 1em;
	font-size: 1.2rem;
}
article > #hgroup ul li a:before {
	font-family: "Material Symbols Outlined";
	content: "\f05b";
}
article > #hgroup .post-categories li a:before {
	content: "\e2c7";
}

/* bread */

article > #bread {
	font-size: 0;
	text-align: left;
	margin: 0 10% 8rem 10%;
	color: #999;
}
article > #bread li {
	font-size: 1.2rem;
	display: inline-block;
}
article > #bread li:not(:last-child):after {
	font-family: "Material Symbols Outlined";
	content: '\f81d';
	margin: 0 1em;
	vertical-align: bottom;
}
article > #bread li:first-child a:before {
	font-family: "Material Symbols Outlined";
	content: "\e88a";
}

/* pagelink */

article > #pagelink {
	font-size: 1.6em;
	margin: -5em 1.5em 5em 1.5em;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
}
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;
	background: #191970;
	color: #fff;
}
article > #pagelink li span, article > #pagelink li a:hover {
	background: #4169E1;
	color: #fff;
}

/* postlink */

article > #postlink {
	margin: -5em 10% 5em 10%;
	font-size: 1.6em;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	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 {
	display: inline-block;
	border-bottom: 2px solid rgba(34,34,34,0);
}
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: "\f818";
}
article > #postlink li a[rel="next"]:after {
	content: '\f81d';
}

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

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

/* post */

article > .archives .post {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	float: left;
	width: 48.5%;
	padding: 2em 0;
	border-top: 1px solid #4169E1;
}
article > .archives .post:nth-of-type(odd) {
	clear: left;
	margin-right: 3%;
}
article > .archives .post a {
	color: #222;
}
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-weight: 500;
	letter-spacing: .1em;
	font-size: 2.1rem;
}
article > .archives .post h2 sup {
	font-size: 1rem;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 400;
	color: #fff;
	background: #4169E1;
	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(65,105,225,0) 50%, rgba(65,105,225,1) 50%);
	background-image: -webkit-linear-gradient( left bottom, rgba(65,105,225,0) 50%, rgba(65,105,225,1) 50%);
	background-image: linear-gradient(to right top, rgba(65,105,225,0) 50%, rgba(65,105,225,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: "\f05b";
}
article > .archives .post .post-categories li a:before {
	font-family: "Material Symbols Outlined";
	content: "\e2c7";
}
article > .archives .post time {
	display: block;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
}

/* pagination */

article > .navigation.pagination {
	margin: -5em 1.5em 5em 1.5em;
	font-size: 1.6em;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
}
article > .navigation.pagination .nav-links .page-numbers {
	margin: 0 0.1em;
	text-decoration: none;
	background: #191970;
	color: #fff;
	display: inline-block;
	-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: #4169E1;
}
article > .navigation.pagination .nav-links .prev.page-numbers, article > .navigation.pagination .nav-links .next.page-numbers {
	padding: 0;
	background: transparent;
	font-family: "Noto Sans JP", sans-serif;
	color: #1a0dab;
	text-decoration: underline;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
}
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: "\f818";
}
article > .navigation.pagination .nav-links .next.page-numbers:after {
	content: '\f81d';
}

/*-----------------------------------------------------
	js
------------------------------------------------------*/

/* drawer */

.drawer-hamburger {
	display: none;
}

/* navigation */

ul#navigation {
	display: table;
	position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	-moz-transition: 0.5s;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size: 1.6em;
	z-index: 1;
	background: #4169E1;
	color: #fff;
	padding: 1em;
	-moz-border-radius: 3.6em 3.6em 0 0;
	-webkit-border-radius: 3.6em 3.6em 0 0;
	border-radius: 3.6em 3.6em 0 0;
}
ul#navigation li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 2em;
}
ul#navigation li a {
	color: #fff;
	text-decoration: none;
}
ul#navigation li.contact {
	font-size: 1.2rem;
	border-right: 1px solid #fff;
}
ul#navigation li.contact a {
	display: block;
	font-size: 3.6rem;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
	line-height: 1.25;
}
ul#navigation li.contact a:before {
	font-family: "Material Symbols Outlined";
	content: '\e61d';
	vertical-align: bottom;
}
ul#navigation li.pagetop {
	font-family: "Google Sans Flex", sans-serif;
	border-right: 1px solid #fff;
}
ul#navigation li.pagetop a:before, ul#navigation li.access a:before {
	display: block;
	font-family: "Material Symbols Outlined";
	line-height: 1;
}
ul#navigation li.pagetop a:before {
	content: '\e5c7';
}
ul#navigation li.access a:before {
	content: '\e0c8';
}

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

/* clearfix */

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

/*-----------------------------------------------------
	editor-styles-wrapper
------------------------------------------------------*/

.editor-styles-wrapper {
	text-align: left;
	font-size: 1.6em;
}
.editor-styles-wrapper h1, .editor-styles-wrapper h2, .editor-styles-wrapper h3, .editor-styles-wrapper h4, .editor-styles-wrapper h5, .editor-styles-wrapper h6 {
	margin-bottom: 1em;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	letter-spacing: .1em;
}
.editor-styles-wrapper h1 {
	font-size: 3.6rem;
}
.editor-styles-wrapper h2 {
	font-size: 3rem;
}
.editor-styles-wrapper h3 {
	font-size: 2.4rem;
}
.editor-styles-wrapper h4 {
	font-size: 2.1rem;
}
.editor-styles-wrapper h5 {
	font-size: 1.8rem;
}
.editor-styles-wrapper h6 {
	font-size: inherit;
}
.editor-styles-wrapper p, .editor-styles-wrapper pre, .editor-styles-wrapper ul, .editor-styles-wrapper ol {
	margin-bottom: 2em;
	text-align: left;
}
.editor-styles-wrapper pre {
	font-family: monospace;
	white-space: pre-wrap;
}
.editor-styles-wrapper ul {
	list-style: disc;
	padding-left: 2em;
}
.editor-styles-wrapper ol {
	list-style: decimal;
	padding-left: 2em;
}
.editor-styles-wrapper ul ul, .editor-styles-wrapper ul ol, .editor-styles-wrapper ol ol, .editor-styles-wrapper ol ul {
	margin-bottom: 0;
}
.editor-styles-wrapper table th, .editor-styles-wrapper strong {
	font-weight: bold;
}
.editor-styles-wrapper table th, .editor-styles-wrapper table td {
	text-align: left;
}
.editor-styles-wrapper em, .editor-styles-wrapper cite {
	font-style: italic;
}
.editor-styles-wrapper sup {
	font-size: 50%;
	vertical-align: top;
}
.editor-styles-wrapper sub {
	font-size: 50%;
	vertical-align: bottom;
}
.editor-styles-wrapper blockquote {
	padding-left: 2em;
	border-left: 2px solid #ccc;
	position: relative;
	margin: 0;
	font-family: serif;
}
.editor-styles-wrapper blockquote:before {
	content: '“';
	position: absolute;
	top: 0;
	left: 0.75em;
}
.editor-styles-wrapper blockquote cite {
	margin-top: -1em;
}
.editor-styles-wrapper figure figcaption {
	margin-bottom: 0;
}

/* layout */

article > .editor-styles-wrapper {
	margin-left: 10%;
	margin-right: 10%;
	margin-bottom: 10em;
}
article.post-2 > .editor-styles-wrapper, article.post-45 > .editor-styles-wrapper {
	margin-left: 0;
	margin-right: 0;
	padding-left: 1.5em;
	padding-right: 1.5em;
}

/*-----------------------------------------------------
	editor
------------------------------------------------------*/

body.editor-styles-wrapper {
	padding-left: 1.5em;
	padding-right: 1.5em;
}
html :where(.wp-block) {
	max-width: 1260px;
}
body :where(.editor-styles-wrapper) {
	text-align: left;
	font-size: 1.6em;
}

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

/* 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;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
}
.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;
	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: "Noto Sans JP", sans-serif;
	font-weight: 500;
	justify-content: center;
	gap: 0 1em;
}
.wp-block-buttons .wp-block-button .wp-block-button__link {
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	padding: 0 0 0 36px;
	color: #222;
	background-color: transparent;
	position: relative;
	z-index: 1;
}
.wp-block-buttons .wp-block-button .wp-block-button__link:hover {
	color: #4169E1;
}
.wp-block-buttons .wp-block-button .wp-block-button__link:before {
	content: '.';
	font-size: 0;
	display: block;
	width: 72px;
	height: 72px;
	background: #87CEEB;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.wp-block-buttons .wp-block-button .wp-block-button__link:after {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
	content: '\f81d';
}
.wp-block-buttons .wp-block-button .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 */

h3.subtitle {
	color: #87CEEB;
	font-size: inherit;
	font-family: "Google Sans Flex", sans-serif;
	padding-left: 0;
}
h3.subtitle + h2 {
	margin-top: -0.5em;
}

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

/* home_g */

.home_g {
	margin: 0 calc(10% - 1.5em);
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	gap: 0 5em;
}
.home_g .left {
	writing-mode: vertical-rl;
	text-align: left;
	margin: 0 auto auto 0;
}
.home_g .left h3.subtitle + h2 {
	margin-top: 0;
}
.home_g .right {
	margin: 0 0 auto auto;
	flex: 1;
}
.home_g .right .post {
	display: table;
	width: 100%;
	border-bottom: 1px solid #E5E5E6;
}
.home_g .right .post time, .home_g .right .post h3 {
	display: table-cell;
	vertical-align: top;
	padding: 1em 0;
}
.home_g .right .post time {
	width: 11em;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
}
.home_g .right .post time:before {
	font-family: "Material Symbols Outlined";
	content: "\e8b5";
	vertical-align: bottom;
}
.home_g .right .post h3 {
	font-size: inherit;
}
.home_g .right .post h3 sup {
	font-size: 1rem;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 400;
	color: #fff;
	background: #DF0515;
	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;
}
.home_g .right .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(223,5,21,0) 50%, rgba(223,5,21,1) 50%);
	background-image: -webkit-linear-gradient( left bottom, rgba(223,5,21,0) 50%, rgba(223,5,21,1) 50%);
	background-image: linear-gradient(to right top, rgba(223,5,21,0) 50%, rgba(223,5,21,1) 50%);
	position: absolute;
	margin: auto;
	bottom: -0.4rem;
	left: 0;
	z-index: -1;
}
.home_g .right .post:last-of-type {
	margin-bottom: 3em;
}
.home_g .right p {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
}
.home_g .right p a {
	padding: 0 0 0 36px;
	color: #222;
	position: relative;
	z-index: 1;
	text-decoration: none;
}
.home_g .right p a:hover {
	color: #4169E1;
}
.home_g .right p a:before {
	content: '.';
	font-size: 0;
	display: block;
	width: 72px;
	height: 72px;
	background: #87CEEB;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	position: absolute;
	margin: auto;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.home_g .right p a:after {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
	content: '\e241';
}

/* home_f */

.home_f {
	margin-left: -1.5em;
	margin-right: -1.5em;
	background: #E5E5E6;
	padding: 7.5em 10%;
	counter-reset: number;
}
.home_f h3.subtitle, .home_f h2 {
	text-align: center;
}
.home_f .wp-block-details {
	background: #fff;
	padding: 1.5em 2em;
	-moz-border-radius: 0 1em 0 0;
	-webkit-border-radius: 0 1em 0 0;
	border-radius: 0 1em 0 0;
}
.home_f .wp-block-details summary {
	font-size: 2.4rem;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	list-style: none;
	position: relative;
	padding-right: 1em;
}
.home_f .wp-block-details summary::marker, .home_f .wp-block-details summary::-webkit-details-marker {
	display: none;
}
.home_f .wp-block-details summary::after {
	font-family: "Material Symbols Outlined";
	content: "\f3dd";
	color: #4169E1;
	transition: transform 0.2s;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
}
.home_f .wp-block-details[open] summary::after { 
	transform: rotate(45deg);
}
.home_f .wp-block-details summary:before {
	counter-increment: number;
	content: counter(number, decimal-leading-zero);
	color: #4169E1;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
	margin-right: 0.5em;
}
.home_f .wp-block-details p {
	margin-top: 1em;
}
.home_f .wp-block-details :last-child {
	margin-bottom: 0;
}

/* home_e */

.home_e.is-layout-grid {
	gap: 0 3em;
	margin: 0 calc(10% - 1.5em);
}
.home_e.is-layout-grid > .wp-block-group {
	border: 3px solid #E5E5E6;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	padding: 2em 1.5em 1.5em 1.5em;
	text-align: center;
	position: relative;
}
.home_e.is-layout-grid > .wp-block-group h4 a {
	text-decoration: none;
	color: #fff;
	display: inline-block;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	padding: 0 1em;
}
.home_e.is-layout-grid > .wp-block-group.business h4 a {
	background: #4169E1;
}
.home_e.is-layout-grid > .wp-block-group.private h4 a {
	background: #DC143C;
}
.home_e.is-layout-grid > .wp-block-group h4 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: 1.6rem;
	-webkit-border-radius: 1.6rem;
	border-radius: 1.6rem;
}
.home_e.is-layout-grid > .wp-block-group h4 a:hover:before {
	background: rgba(255,255,255,0.5);
}
.home_e.is-layout-grid > .wp-block-group:before {
	content: '.';
	font-size: 0;
	display: block;
	width: 2.4rem;
	height: 2.4rem;
	background-image: -moz-linear-gradient( left top, rgba(229,229,230,0) 50%, rgba(229,229,230,1) 50%);
	background-image: -webkit-linear-gradient( left top, rgba(229,229,230,0) 50%, rgba(229,229,230,1) 50%);
	background-image: linear-gradient(to right bottom, rgba(229,229,230,0) 50%, rgba(229,229,230,1) 50%);
	transform: rotate(45deg);
	position: absolute;
	bottom: 2.4rem;
	left: 0;
	right: 0;
	margin: auto;
}
.home_e.is-layout-grid > .wp-block-group p {
	text-align: center;
}

/* home_d */

.home_d.is-layout-flex {
	margin-left: -1.5em;
	margin-right: -1.5em;
	padding: 7.5em 10% 0 10%;
	gap: 0 3em;
	background-image: -moz-linear-gradient( top, rgba(229,229,230,1) 400px, rgba(229,229,230,0) 400px);
	background-image: -webkit-linear-gradient( top, rgba(229,229,230,1) 400px, rgba(229,229,230,0) 400px);
	background-image: linear-gradient(to bottom, rgba(229,229,230,1) 400px, rgba(229,229,230,0) 400px);
}
.home_d.is-layout-flex .wp-block-image {
	flex-shrink: 0;
	flex-basis: 640px;
}
.home_d.is-layout-flex .wp-block-image img {
	-moz-border-radius: 2em;
	-webkit-border-radius: 2em;
	border-radius: 2em;
}
.home_d.is-layout-flex .hgroup {
	writing-mode: vertical-rl;
}
.home_d.is-layout-flex .hgroup h3.subtitle + h2 {
	margin-top: 0;
}
.home_d.is-layout-flex .right p {
	font-size: 1.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
.home_d.is-layout-flex .right .wp-block-buttons.is-layout-flex {
	justify-content: flex-start;
	padding-top: 1em;
}

/* home_c */

.home_c {
	margin-left: -1.5em;
	margin-right: -1.5em;
}
.home_c > .wp-block-group__inner-container {
	margin: 0 10%;
}
.home_c > .wp-block-group__inner-container .wp-block-group {
	writing-mode: vertical-rl;
	text-align: left;
	float: left;
	margin-right: 5em;
}
.home_c > .wp-block-group__inner-container .wp-block-group h3.subtitle + h2 {
	margin-top: 0;
}
.home_c > .wp-block-group__inner-container p {
	font-size: 1.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
.home_c > .wp-block-group__inner-container .wp-block-buttons.is-layout-flex {
	justify-content: flex-start;
	padding-top: 1em;
	padding-bottom: 4em;
}
.home_c > .wp-block-group__inner-container .wp-block-image img {
	-moz-border-radius: 2em;
	-webkit-border-radius: 2em;
	border-radius: 2em;
}

/* home_b */

.home_b {
	background: #E5E5E6;
	margin-left: -1.5em;
	margin-right: -1.5em;
	padding-top: 5em;
}
.home_b > .wp-block-group__inner-container {
	margin: 0 10%;
}
.home_b > .wp-block-group__inner-container .wp-block-image {
	margin-bottom: 0;
}
.home_b > .wp-block-group__inner-container .wp-block-image img {
	-moz-border-radius: 2em;
	-webkit-border-radius: 2em;
	border-radius: 2em;
	-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);
}
.home_b > .wp-block-group__inner-container .wp-block-image .alignleft {
	margin: 0 5em 0 0;
}
.home_b > .wp-block-group__inner-container p {
	font-size: 1.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
}
.home_b > .wp-block-group__inner-container .wp-block-buttons.is-layout-flex {
	justify-content: flex-start;
	padding-top: 1em;
	padding-bottom: 5em;
}

/* home_a */

h1.home_a {
	background-image: url('images/bg_01.svg');
	background-size: contain;
	background-position: 50% 100%;
	background-repeat: no-repeat;
	padding: 24rem 10% 20rem 10%;
	margin-right: -2.4rem;
	margin-left: -2.4rem;
	margin-bottom: 0;
}

/* profile_f */

.profile_f.wp-block-buttons .wp-block-button .wp-block-button__link[target*="blank"]:after {
	content: '\e0c8';
}

/* profile_e */

.profile_e.is-layout-grid {
	gap: 3em 3em;
}
.profile_e.is-layout-grid .wp-block-group {
	border-bottom: 2px solid #E5E5E6;
	padding-bottom: 3em;
}
.profile_e.is-layout-grid .wp-block-group .wp-block-image {
	margin-bottom: 0;
}
.profile_e.is-layout-grid .wp-block-group .wp-block-image .alignleft {
	margin: 0 2em 0 0;
}
.profile_e.is-layout-grid .wp-block-group .wp-block-image img {
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
}

/* profile_d */

.profile_d, .profile_d p {
	text-align: center;
}
.profile_d p a {
	font-size: 3.6rem;
	font-family: "Google Sans Flex", sans-serif;
	font-weight: 500;
	text-decoration: none;
	color: #222;
}
.profile_d p a:before {
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
	content: "\e61d";
}

/* profile_c */

ul.profile_c {
	padding-left: 0;
	list-style: none;
}
ul.profile_c li {
	padding-left: 1.5em;
}
ul.profile_c li:before {
	font-family: "Material Symbols Outlined";
	content: "\e5df";
	display: block;
	float: left;
	width: 1em;
	margin-left: -1.5em;
	color: #4169E1;
}

/* profile_b */

.profile_b.is-layout-flex {
	gap: 0 5em;
}
.profile_b.is-layout-flex .wp-block-table td, .profile_b.is-layout-flex .wp-block-table th {
	border: none;
	padding: 0.75em 0.5em;
}
.profile_b.is-layout-flex .wp-block-table tr {
	border-bottom: 1px solid #E5E5E6;
}
.profile_b.is-layout-flex .wp-block-table tr > :first-child {
	font-weight: bold;
	width: 15em;
}
.profile_b.is-layout-flex .wp-block-image {
	flex-shrink: 0;
	flex-basis: 480px;
}
.profile_b.is-layout-flex .wp-block-image img {
	-moz-border-radius: 2em;
	-webkit-border-radius: 2em;
	border-radius: 2em;
}

/* profile_a */

.profile_a.is-layout-flex {
	gap: 0 5em;
}
.profile_a.is-layout-flex .wp-block-image {
	flex-shrink: 0;
	flex-basis: 360px;
}
.profile_a.is-layout-flex .wp-block-image img {
	-moz-border-radius: 2em;
	-webkit-border-radius: 2em;
	border-radius: 2em;
}
.profile_a.is-layout-flex .wp-block-group ul {
	padding-left: 0;
	list-style: none;
}
.profile_a.is-layout-flex .wp-block-group ul li {
	padding-left: 1.5em;
}
.profile_a.is-layout-flex .wp-block-group ul li:before {
	font-family: "Material Symbols Outlined";
	content: "\e5df";
	display: block;
	float: left;
	width: 1em;
	margin-left: -1.5em;
	color: #4169E1;
}

/* fee_a */

.fee_a {
	margin: 0 auto;
	border: 3px solid #E5E5E6;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	padding: 2em 3.5em 3em 3.5em;
}
.fee_a .wp-block-table table {
	max-width: 720px;
	table-layout: fixed;
}
.fee_a .wp-block-table thead {
	border-bottom: none;
}
.fee_a .wp-block-table td, .fee_a .wp-block-table th {
	border: none;
	padding: 0.75em 0.5em;
}
.fee_a .wp-block-table tr > :first-child {
	border-bottom: 2px solid #191970;
	width: 15em;
}
.fee_a .wp-block-table tr > * {
	border-bottom: 2px solid #E5E5E6;
}
.fee_a ul {
	list-style: none;
	padding-left: 0;
}
.fee_a ul li, .fee_a p {
	padding-left: 1.25em;
}
.fee_a ul li:before, .fee_a p:before {
	font-family: "Material Symbols Outlined";
	content: "\e1eb";
	display: block;
	float: left;
	width: 1em;
	margin-left: -1.25em;
}
.fee_a :last-child {
	margin-bottom: 0;
}

/* policy_c */

.policy_c {
	max-width: 1024px;
	margin: 0 auto 3em auto;
	border: 3px solid #E5E5E6;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	padding: 1.5em 2.5em 2em 2.5em;
	position: relative;
}
.policy_c :last-child {
	margin-bottom: 0;
}
.policy_c:not(:last-of-type):after {
	content: '.';
	font-size: 0;
	display: block;
	width: 2.4rem;
	height: 2.4rem;
	background-image: -moz-linear-gradient( left top, rgba(229,229,230,0) 50%, rgba(229,229,230,1) 50%);
	background-image: -webkit-linear-gradient( left top, rgba(229,229,230,0) 50%, rgba(229,229,230,1) 50%);
	background-image: linear-gradient(to right bottom, rgba(229,229,230,0) 50%, rgba(229,229,230,1) 50%);
	transform: rotate(45deg);
	position: absolute;
	bottom: -1.3rem;
	left: 0;
	right: 0;
	margin: auto;
}
.policy_c + ul {
	max-width: 1024px;
	margin-left: auto;
	margin-right: auto;
	list-style: none;
	padding-left: 0;
}
.policy_c + ul li {
	padding-left: 1.25em;
}
.policy_c + ul li:before {
	font-family: "Material Symbols Outlined";
	content: "\e1eb";
	display: block;
	float: left;
	width: 1em;
	margin-left: -1.25em;
}

/* policy_b */

.policy_b {
	text-align: center;
}
.policy_b p {
	text-align: center;
	font-size: 1.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
}

/* policy_a */

.policy_a {
	padding: 5em 10% 6.5em 10%;
	margin: 0 -1.5em;
}
.policy_a :last-child {
	margin-bottom: 0;
}
.policy_a .wp-block-buttons.is-layout-flex {
	justify-content: flex-start;
}
.policy_a .wp-block-buttons.is-layout-flex .wp-block-button .wp-block-button__link:after {
	content: '\e258';
}
.policy_a.gray {
	background: #E5E5E6;
}

/* service_b */

.is-layout-grid.service_b {
	gap: 2em 2em;
}
.is-layout-grid.service_b > .wp-block-group {
	border: 3px solid #E5E5E6;
	-moz-border-radius: 1em;
	-webkit-border-radius: 1em;
	border-radius: 1em;
	padding: 1.5em 2.5em 2.5em 2.5em;
}
.is-layout-grid.service_b > .wp-block-group :last-child {
	margin-bottom: 0;
}
.is-layout-grid.service_b > .wp-block-group ul {
	padding-left: 0;
	list-style: none;
}
.is-layout-grid.service_b > .wp-block-group ul li {
	padding-left: 1.5em;
}
.is-layout-grid.service_b > .wp-block-group ul li:before {
	font-family: "Material Symbols Outlined";
	content: "\e5df";
	display: block;
	float: left;
	width: 1em;
	margin-left: -1.5em;
	color: #4169E1;
}

/* service_a */

h2.service_a {
	padding-left: 0.75em;
	border-left: 5px solid;
}
h2.service_a.blue {
	border-left-color: #4169E1;
}
h2.service_a.red {
	border-left-color: #DC143C;
}

/* privacy_a */

p.privacy_a {
	padding-left: 2em;
	border-left: 2px solid rgba(0,0,0,0.25);
}

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

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

/*-----------------------------------------------------
	keyframes
------------------------------------------------------*/
@keyframes appear {

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

}
@-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;
	}

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

	/* footer */

	footer .top {
		padding: 7.5em 1.5em;
	}
	footer > ul, footer > small {
		margin: 0 2em;
	}

	/* hgroup */

	article > #hgroup {
		padding: 12.5em 1.5em 10em 1.5em;
	}

	/* bread */

	article > #bread {
		margin: 0 2.4rem 8rem 2.4rem;
	}

	/* postlink */

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

	/* archives */

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

	/* layout */

	article > .editor-styles-wrapper {
		margin-left: 1.5em;
		margin-right: 1.5em;
	}

	/* policy_a */

	.policy_a {
		padding: 5em 1.5em 6.5em 1.5em;
	}

	/* profile_b */

	.profile_b.is-layout-flex .wp-block-image {
		flex-basis: 360px;
	}

	/* home_g */

	.home_g {
		margin: 0;
	}

	/* home_f */

	.home_f {
		padding: 7.5em 1.5em;
	}

	/* home_e */

	.home_e.is-layout-grid {
		margin: 0;
	}

	/* home_d */

	.home_d.is-layout-flex {
		padding: 7.5em 1.5em 0 1.5em;
	}
	.home_d.is-layout-flex .wp-block-image {
		flex-basis: 540px;
	}

	/* home_c */

	.home_c > .wp-block-group__inner-container {
		margin: 0 1.5em;
	}

	/* home_b */

	.home_b > .wp-block-group__inner-container {
		margin: 0 1.5em;
	}

	/* home_a */

	h1.home_a {
		padding: 24rem 2.4rem 20rem 2.4rem;
	}

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

}
/*-----------------------------------------------------
	Google Fonts
------------------------------------------------------*/
/*
	font-family: "Noto Sans JP", sans-serif;
	font-family: "Google Sans Flex", 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;
	font-family: "Material Symbols Outlined";
	vertical-align: bottom;
*/