@charset "UTF-8";

/*
Theme Name: 常総市表書士事務所 2025
Text Domain: joso-2025
Description: 常総司法書士事務所専用ワードプレステーマ
Author: ONZE
Author URI: https://on-ze.com
Theme URI: https://wp-neoclassic.com
Version: 0.9
*/


/******************/



:root {
--color-black:#1a1a1a;
--color-dark:#4d4646;
--color-border:#d2d8d6;
--color-background:#efefef;
--color-white:#ffffff;
--color-gold:#937f74;
--color-beige:#c9bfb9;
--color-orange:#ffbf53;
--font-light:100;
--font-regular:400;
--font-medium:500;
--font-bold:700;
--border-radius:4px;
--letter-spacing:0.1em;
--line-height:1.8;
--line-height-small:1.2;
}


/******************/
/******************/
/* ONZE RESET CSS */

*,
*::before,
*::after {
	box-sizing:border-box;
}

* {
border:0;
margin:0;
outline:0;
padding:0;
font:inherit;
font-family:inherit;
font-size:100%;
font-style:inherit;
font-weight:inherit;
text-decoration:none;
vertical-align:baseline;
/*	all:unset;
	display:revert;*/
}


article, aside, footer, header, main, nav, article, section {display:block;}
img, picture, audio, canvas, video, svg {display:block; max-width:100%; height:auto;}

br,
hr {display:block;}

ol,
ul {list-style:none;}

blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:none;}

input,
select {vertical-align:middle;}

body {
	line-height:1;
	line-break:strict;
	overflow-wrap:break-word;
	overflow-wrap:anywhere;
	word-break:normal;
	font-feature-settings:"palt";
	-webkit-text-size-adjust:100%;
	-webkit-font-smoothing:antialiased;
}

a {-webkit-tap-highlight-color:transparent;}

/******************/
/******************/
/* html format ****/

html {
	font-size:62.5%;
}
html.is-fixrem {font-size:62.5%;}

@media (max-width:1200px) {
	html {font-size:56.25%;}
}

body {
background-color:var(--color-background);
color:#1a1a1a;
color:var(--color-black);
font-family:"M PLUS 1p",'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo', 'メイリオ', 'Helvetica', sans-serif;
	font-weight: 400;
	font-style: normal;
font-size:18px;
font-size:1.8rem;
position:relative;
text-align:center;
width:100%;
}

a,
a:link,
a:visited,
a:hover,
a:active {
	color:inherit;
	-webkit-tap-highlight-color:transparent rgba(0,0,0,0);
	text-decoration:none;
	-webkit-text-decoration-skip:objects;
}


a:hover {color:#937f74; color:var(--color-gold);}

h1,
h2,
h3,
h4,
h5,
h6 {display:block; line-height:1.2;}

b {color:#937f74; color:var(--color-gold);}
i {font-style:normal;}
u {text-decoration:underline;}
em {font-weight:bold;}
strong {font-weight:bold; font-size:1.4em;}
mark {background:transparent;}

q {}
q:before,
q:after {content:'"';}
s {text-decoration:underline;}
del {text-decoration:line-through;}

ins {}
iframe {}

ruby {}
rt {font-size:0.5em;}

sup {vertical-align:super; font-size:smaller;}
sub {vertical-align:sub; font-size:smaller;}

details {margin:0 0 40px 0;}

hr {margin:2em 0; border:0; border-top:1px solid #c9bfb9; border-color:var(--color-border); height:0;}

table {
	border-collapse:collapse; border-spacing:0; empty-cells:show; border:0; width:100%; margin:0 0 2em 0; border-top:1px solid #c9bfb9; border-color:var(--color-border);
}
table th,
table td {
	padding:16px 4px; vertical-align:top; border-bottom:1px solid #c9bfb9; border-color:var(--color-border);
}
table caption {
	text-align:left; padding:8px;
}

::-moz-selection {background-color:#937f74; background-color:var(--color-gold); color:#efefef;}
::selection {background-color:#937f74; background-color:var(--color-gold); color:#efefef;}

/******************/
/******************/
/* shortcodes *****/

.alignright,
.align-right,
.textright,
.text-right {text-align:right;}
.alignleft, .align-left, .textleft, .text-left {text-align:left;}
.center, .aligncenter, .align-center, .textcenter, .text-center {text-align:center; margin-left:auto; margin-right:auto;}
.clear {clear:both;}
.clearfix:after {content:""; clear:both; display:block; height:0; visibility:hidden;}
.empty {visibility:hidden;}
.hide,
.none {display:none;}
.hidden {overflow:hidden;}
.left, .floatleft, .float-left {float:left;}
.right, .float-right, .float-right {float:right;}
.relative {position:relative;}
.absolute {position:absolute;}
.nowrap {white-space:nowrap;}
.small,
.text-small {font-size:0.8em;}

img.left,
img.alignleft,
img.align-left {margin:0 20px 20px 0; float:left;}
img.right,
img.alignright,
img.align-right {margin:0 0 20px 20px; float:right;}

img.full {max-width:100%; width:100%; height:auto;}

table.table-border,
table.table-border th,
table.table-border td {border:1px solid #c9bfb9; border-color:var(--color-border);}

table.table-hover tbody tr:hover,
table.table-hover tbody tr:nth-child(odd):hover,
table.table-hover tbody tr:nth-child(even):hover {background-color:#937f74; background-color:var(--color-gold); color:#efefef; cursor:text;
}

table.table-stripe tbody tr:nth-child(odd) {background-color:#c9bfb9; background-color:var(--color-border);}
table thead th {vertical-align:bottom;}


.inner {
	clear:both; display:block; margin:0 auto; position:relative; max-width:1600px; width:100%;
	padding:0 2%;
}
/*
.inner[data-width="max"] {max-width:2400px;}
.inner[data-width="mid"] {max-width:1600px;}
.inner[data-width="min"] {max-width:1100px;}
*/

/******************/
/******************/
/* WordPress Tags */

img.size-full,
img.size-large,
.wp-post-image,
.post-thumbnail img {
max-width:100%;
width:100%;
height:auto;
}

.wp-caption {}
.wp-caption-text {}
.sticky {}
.gallery-caption {}
.bypostauthor {}
#wpstats {display:none;}

.wp-embedded-content {max-width:100%; width:100%;}
.wp-video {margin:0 0 1em 0; max-width:100%; width:100%;}
.wp-video-shortcode {margin:0 0 1em 0; max-width:100%; width:100%;}

/******************/
/******************/

.site {}
.site-header {}
.site-navi {}
.site-main {}
.site-footer {}
.site-background {}

/******************/
/******************/
/* header *********/

.site-header {
	background-color:var(--color-white);
	width:100%; padding:0; display:block; position:fixed;
	box-shadow:0 15px 20px rgba(0,0,0,0.15);
	left:0; right:0; top:0; z-index:9999;
}


.site-header .inner {
	display:flex; justify-content:space-between; align-items:stretch;
	padding:0 0 0 20px;
}

.header-logo {margin:0 0 0; padding:15px 0; flex-basis:300px;}
.header-logo .site-title {display:block; margin:0; white-space:nowrap; overflow:hidden; position:relative; width:100%;}
.header-logo .site-title img {width:100%;}
.header-logo .site-title a:hover {color:#937f74; color:var(--color-gold);}
.header-logo .site-description {display:none;}

/******************/
/******************/
/* navi ***********/

.header-navi {
	margin: 0 0 0 auto;
	position: relative;
	flex-basis: calc(100% - 700px);
	display: flex;
	align-items: center;
}
.header-navi ul {display:flex; list-style:none; margin:0 0 0 auto;
	align-items:center; padding:0; border-collapse:collapse;
	font-size:18px; font-size:1.8rem;
}
.header-navi ul li {margin:0 0 0 2em;}
.header-navi ul li a {display:block; padding:0 6px;}
/*
.header-navi ul li a:hover {
	text-decoration:underline;
	text-underline-offset:3px;
	text-decoration-thickness:1px;
}
*/
.header-navi ul li a {position: relative;}
.header-navi ul li a::after {
	content: "";
	position: absolute;
	bottom:-5px;
	left:0;
	display: block;
	width:0;
	height:1px;
	background-color: var(--color-gold);
	transition:width 0.5s;
}
.header-navi ul li a:hover::after {width: 100%;}
/******************/
/* utility ********/

.header-utility {
	margin:0 0 0 1em; background-color:var(--color-dark); color:#fff;
	/*border-bottom-left-radius:var(--border-radius);
	border-bottom-right-radius:var(--border-radius);*/
	display:flex; align-items:center;
}
.header-utility dl {display:flex; align-items:center; padding:0 1em 0 1em;
	font-size:18px; font-size:1.8rem;
}
.header-utility dl dt { border-right:1px solid var(--color-border);}
.header-utility dl dt a,
.header-utility dl dd a{white-space:nowrap; display:flex; align-items:center;
	background:url("images/icon-mail.svg") left 0.5em center no-repeat;
	background-size:1em 1em;padding:0.5em 0.7em 0.5em 2em;
	transition: 0.3s;
	border-radius: 5px;
}
.header-utility dl dt a {background-image:url("images/icon-mail.svg");margin: 0 1em 0 0;
}
.header-utility dl dd a { margin: 0 0 0 1em;
	background-image:url("images/icon-tel.svg");
}
.header-utility dl dt a:hover,
.header-utility dl dd a:hover {
	background-color: rgba(0, 0, 0, 0.2);
	color: var(--color-white);
}


.header-toggle {
	display: none;
	background: transparent;
	cursor: pointer;
	z-index: 9999;
	margin-left: 1em;
	margin-right: 1em;
}
.header-toggle.on {
	color: var(--color-background);
}
.header-toggle i {
	color: var(--color-dark);
	line-height: 1;
	display: block;
}
.header-toggle span {
	display: block;
	width: 40px;
	height: 40px;
	position: relative;
	margin-bottom: 2px;
}

.header-toggle span:before,
.header-toggle span:after {
	position: absolute;
	content: "";
	display: inline-block;
	left: 0;
	width: 100%;
	height: 2px;
	transition: all 0.4s;
	background-color: #4d4646;
	background-color: var(--color-dark);
	border-radius: 2px;
}
.header-toggle span:before {top:12px;}
.header-toggle span:after {bottom:12px;}
.header-toggle.on span:before {
-webkit-transform:translateY(-50%) rotate(45deg);
-ms-transform:translateY(-50%) rotate(45deg);
transform:translateY(-50%) rotate(45deg);
background-color: var(--color-background);
top: 50%;
}
.header-toggle.on span:after {
-webkit-transform:translateY(-50%) rotate(-45deg);
-ms-transform:translateY(-50%) rotate(-45deg);
transform:translateY(-50%) rotate(-45deg);
background-color: var(--color-background);
bottom:auto;
top: 50%;
}
.header-toggle.on i {
	color: var(--color-background);
}
@media (max-width:1400px) {
	.header-navi {position: fixed;top: 0;right:-100vw;width: fit-content;padding: 5rem 10rem;background-color: var(--color-dark);height: 100dvh;overflow-y: auto;transition: right 0.5s;}
	.header-navi.is-active {right: 0;}
	.lity {margin-right:100px;}
	.header-toggle {display:block;}
	.header-utility {margin:0 0 0 auto;}
	.header-navi ul {
		display: block;
	}
	.header-navi ul li + li {
		margin-top: 5rem;
	}
	.header-navi ul li a {
		font-size: 2.4rem;
		text-align: left;
		color: var(--color-background);
	}
}
@media (max-width:800px) {
	.header-utility {display:none;}
}

@media screen and (max-width: 600px) {
	.header-navi {
		width: 100%;
		overflow-y: auto;
		padding: 0;
	}
	.header-navi ul {
		margin: 0 auto;
		padding: 6rem 0;
	}
	.header-navi ul li {
		margin: 0;
	}
	.header-navi ul li a {
		text-align: center;
	}
}

/******************/
/******************/
/* widget *********/

.footer-widget {
	background-color:var(--color-dark); color:#fff;
	overflow:hidden; width:100%;
	padding:1em 0;
	text-align:left;
	line-height:var(--line-height);
}
.footer-widget dl {display: grid;
    grid-template-columns: 14em calc(100% - 14em - 2rem);
    grid-template-rows: repeat(2, auto);
    column-gap: 2rem;row-gap: 1rem;}
.footer-widget dl dt {
	background-color:var(--color-white); color:var(--color-dark); white-space:nowrap;
	padding:1em 2em;
	display:flex; align-items:center;
	justify-content: center;
	text-align:center;
	border-radius:var(--border-radius);
	font-weight: var(--font-bold);
	grid-area: 1 / 1 / 3 / 2;
}
.footer-widget dl dd {
	padding:0.5em 0;
	font-size:12px; font-size:1.2rem;
}
.footer-widget dl dd:nth-of-type(1) {
	grid-area: 1 / 2 / 2 / 3;
}
.footer-widget dl dd:nth-of-type(2) {
	grid-area: 2 / 2 / 3 / 3;
}
.footer-widget dl dd b {
	display:block; width:fit-content;
	font-size:14px; font-size:1.4rem;
	font-weight: var(--font-medium);
	color:var(--color-white);
}

@media (max-width:700px) {
	.footer-widget dl {display:block;}
	.footer-widget dl dt {display:block;}
}

/******************/
/******************/
/* footer *********/

.site-footer {text-align:center; padding:0; line-height:1.8;}

.site-footer:before,
.site-footer:after {
height:12px;
content:"";
clear:both;
display:block;
	background:url("images/background-slash.svg") center center repeat;
	background-size:3px 3px;
position:relative;
}
.site-footer:before {margin:0 0 2em 0;}
.site-footer:after {margin:2em 0 0 0;}

.site-footer .flex-container {
	justify-content:space-between;
}

.footer-navi {
	position:relative; padding:0;
}
.footer-navi ul {
	clear:both; display:block; width:auto; text-align:left;
	margin:0 auto; font-size:14px; font-size:1.4rem;
}
.footer-navi ul li {
	display:block; padding:0; white-space:nowrap;
	margin:0 0 0.5em 0;
}
.footer-navi ul li a {
	display:flex; justify-content:space-between;
	align-items:center;
	padding:1em 2em 1em 3.5em;
	background:left 1.5em center no-repeat;
	background-size:1.2em 1.2em;
	background-color:var(--color-white);
	border:1px solid var(--color-border);
	border-radius:var(--border-radius);
	transition: 0.3s;
}
.footer-navi ul li:nth-child(1) a {background-image:url("images/icon-tel-black.svg");}
.footer-navi ul li:nth-child(2) a {background-image:url("images/icon-mail-black.svg");}
.footer-navi ul li:nth-child(3) a {background-image:url("images/icon-pin-black.svg");}
.footer-navi ul li:nth-child(1) a:hover {background-image:url("images/icon-tel-white.svg");}
.footer-navi ul li:nth-child(2) a:hover {background-image:url("images/icon-mail-white.svg");}
.footer-navi ul li:nth-child(3) a:hover {background-image:url("images/icon-pin-white.svg");}

.footer-navi ul li a::after {
	content:"";
	width:1em; height:1em; margin:0 0 0 5em;
	background:url("images/arrow-right-dark.svg") center center no-repeat;
	background-size:1em 1em;
	display:block;
}
.footer-navi ul li a:hover {background-color:var(--color-gold); color:#fff;}
.footer-navi ul li a:hover::after {background-image:url("images/arrow-right-white.svg");animation: button-fade-footer 0.7s ease 1 normal forwards;}
@keyframes button-fade-footer {
0% { opacity: 1;transform: translateX(0%); }
50% { opacity: 0;transform: translateX(100%); }
51% { opacity: 0;transform: translateX(-100%); }
100% { opacity: 1;transform: translateX(0%); }
}



.footer-logo {text-align:left;}
.footer-logo dl {margin:0 0 2em 0;}
.footer-logo dl dt {margin:0 0 1.5em 0;}
.footer-logo dl dt a {}
.footer-logo dl dt a:hover {}
.footer-logo dl dd {font-size:14px; font-size:1.4rem; padding:0 0 0 0.5em;}

small.site-info {clear:both; font-size:14px; font-size:1.4rem; text-align:left;display:block;}

/******************/
/******************/
/* main ***********/

.site-main {
	padding:80px 0 2em 0; line-height:1.8;
	-webkit-hyphens:auto;
	-moz-hyphens:auto;
	-ms-hyphens:auto;
	hyphens:auto;
}

.main-header {}
.main-thumbnail {}
.main-content {}
.main-sidebar {}
.main-footer {}


.site-main a {
/*	-webkit-transition:0.2s ease-in-out;
	-moz-transition:0.2s ease-in-out;
	-ms-transition:0.2s ease-in-out;
	-o-transition:0.2s ease-in-out;
	transition:0.2s ease-in-out;
-webkit-transition:all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
-moz-transition:all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
transition:all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
*/
}

/******************/
/******************/
/* sidebar.php ****/


.main-content {
float:left;
width:100%;
	width:calc( (100% - 280px) - 2%);
}

.main-sidebar {width:280px; float:right; padding:0; text-align:left;}
.main-sidebar .module {margin-bottom:2em; display:block; clear:both;}
.main-sidebar a {}
.main-sidebar a:hover {}
.main-sidebar h4 {font-size:18px; font-size:1.8rem; margin:0 0 4px 0; display:block;}

.main-sidebar p {margin:0 0 12px 0; clear:both;}
.main-sidebar ul {padding:0; margin:0; clear:both;}
.main-sidebar ul li {padding:0; margin:0;}

.main-sidebar label {display:block;}
.main-sidebar select {margin:0 0 1em 0; width:99%; border:1px solid #ffbf53; border-color:var(--color-orange);}

.main-sidebar label.screen-reader-text {display:none;}
.main-sidebar .search-submit {display:none;}


.section-sidebar-access {overflow:hidden;}
.section-sidebar-access .title {
	margin:0 auto 1em; padding:0; text-align:center;
	font-size:28px; font-size:2.8rem;
	letter-spacing:var(--letter-spacing);
}
.section-sidebar-access .title::after {
	content:"";
	margin:0.5em 0 0 0;
	display:block; width:120%;
	margin-left:-1em;
	margin-right:-1em;
	border-bottom:2px solid var(--color-dark);
}

.section-sidebar-access .maps {
	height:auto; aspect-ratio:3 / 2;
	border:1px solid var(--color-border); border-radius:var(--border-radius);
	overflow:hidden;
	margin:0 0 1em 0;
}
.section-sidebar-access .contact {text-align:center;}
.section-sidebar-access .access {}

.section-sidebar-access .contact {line-height:var(--line-height-small); margin:0 auto 1em;}
.section-sidebar-access .contact dt {font-weight:var(--font-bold);}
.section-sidebar-access .contact dd {white-space:nowrap;}
.section-sidebar-access .contact dd i {font-size:46px; font-size:4.6rem; letter-spacing:0;}
.section-sidebar-access .contact dd.note {line-height:var(--line-height);}

.section-sidebar-access p {font-weight:var(--font-bold);}

.section-sidebar-access .access {}
.section-sidebar-access .access dd {padding:0 0 0 1em;}

.section-sidebar-access .button {width:100%;}
.section-sidebar-access .button a {width:100%;}

.sidebar-utility ul li {margin:0 0 1em 0;}
.sidebar-utility ul li a {display:block; overflow:hidden; border-radius:var(--border-radius);}

.sidebar-navi ul {font-size:14px; font-size:1.4rem;}
.sidebar-navi ul li {
	padding:0 0 0 2em;
	margin:0 0 0.5em 0;;
	background:url("images/arrow-right-dark.svg") left 0.5em center no-repeat;
	background-size:1em auto;
}
/*
.sidebar-navi ul li a {
	text-underline-offset:3px;
	text-decoration-thickness:1px;
}
.sidebar-navi ul li a:hover {
	text-decoration:underline;
}
*/
.sidebar-navi ul li a {position: relative;}
.sidebar-navi ul li a::after {
	content: "";
	position: absolute;
	bottom:-3px;
	left:0;
	display: block;
	width:0;
	height:1px;
	background-color: var(--color-gold);
	transition:width 0.5s;
}
.sidebar-navi ul li a:hover::after {width: 100%;}



.main-footer {clear:both;}


@media (max-width:1000px) {
	.main-content,
	.main-sidebar {float:none; width:100%;}
	
	.sidebar-utility ul {display:flex; justify-content:space-between;}
	.sidebar-utility ul li {flex-basis:48%;}
}

/******************/
/******************/
/* post-type ******/

.main-header {
	line-height:1.2; text-align:center;
	padding:10em 0;
	margin:0 0 2em 0; min-height:300px; display:flex; align-items:flex-start; flex-direction:column; justify-content:flex-start;
}

.main-header .title {
	font-size:80px; font-size:8.0rem;
	display:flex; align-items:center; line-height:var(--line-height-small);
	letter-spacing:var(--letter-spacing);
	font-weight:var(--font-light);
	color:var(--color-dark);
	text-align: left;
}
/*
.main-header .title::before {
	content:""; width:5px; height:5px; margin:0 12px 0 0;
	background-color:var(--color-gold);
	border-radius:5px;
}
*/
@media screen and (max-width: 600px) {
	.main-header {
		padding: 4em 0;
		min-height: auto;
	}
	.main-header .title {
		font-size: 5rem;
	}
}
.main-thumbnail {}

.main-content {text-align:left;}

.main-banner {
	background-color: var(--color-dark);
	border-radius: var(--border-radius);
	border: 1px solid var(--color-border);
	border-radius: var(--border-radius);
	flex-direction: row-reverse;
	float: left;
	padding: 3em;
	display: flex;
	justify-content: space-between;
	text-align: left;
	margin-bottom: 5em;
}
.main-banner .thumbnail {
	overflow: hidden;
	border-radius: var(--border-radius);
	flex-basis: 40%;
}
.main-banner .thumbnail img {
	width: 100%;
}
.main-banner .content {
	flex-basis: 56%;
	color: var(--color-white);
}
.main-banner .title {
	margin: 0 0 3rem 0;
	white-space: nowrap;
	text-align: center;
	color: var(--color-white);
	font-size: 42px;
	font-size: 4.2rem;
	font-weight: var(--font-medium);
	letter-spacing: 0.1em;
	background-color: rgba(147, 127, 116, 0.5);
	background: linear-gradient(transparent 60%, rgba(147, 127, 116, 0.5) 60%);
	padding: 0 0.3em;
	width: fit-content;
}
.main-banner .button {
	margin-top: 3rem;
}
@media screen and (max-width: 700px) {
	.main-banner .thumbnail {
		margin-bottom: 3rem;
	}
	.main-banner {
		display: block;
		padding: 1.5em;
	}
}
@media screen and (max-width: 600px) {
	.main-banner .button a {
		font-size: 2rem;
		width: 100%;
	}
}





.article h1,
.article h2,
.article h3,
.article h4,
.article h5,
.article h6 {margin:0 auto 1em auto; line-height:1.3;}

.article h1 {font-size:40px; font-size:4.0rem;}
.article h2 {font-size:32px; font-size:3.2rem;}
.article h3 {font-size:28px; font-size:2.8rem;}
.article h4 {font-size:24px; font-size:2.4rem;}
.article h5 {font-size:20px; font-size:2.0rem;}
.article h6 {font-size:18px; font-size:1.8rem;}

.article p {margin:0 0 2em 0;}

.article ul,
.article ol {margin:0 0 2em 0; padding:0; list-style:outside;}

.article ul ul,
.article ul ol,
.article ol ul,
.article ol ol {margin-bottom:0;}

.article ul {list-style:none;}
.article ul ul {list-style:circle;}
.article ol {list-style:none;}
.article ol ol {list-style:upper-roman;}


.article ul li a {color:#1d2b6f; color:var(--color-gold);}
.article ul li a:hover {color:#1d2b6f; color:var(--color-gold); text-decoration:underline;}

.article ol li {padding:0 0 0 1.6em; text-indent:-1.4em; text-indent:calc(-12px - 0.4em);
	list-style:none;
	counter-increment:number;
}
.article ol li:before {content:counter(number) "."; margin:0 0.4em 0 0;}

.article dl {margin:0 0 2em 0; padding:0;}
.article dl dt {margin:0; position:relative; font-size:1.1em;}
.article dl dd {margin:0 0 1em 0; padding:0;}


.article img {max-width:100%; height:auto;}

.article blockquote {
padding:1em;
margin:0 0 2em 1em;
border-left:2px solid #1a1a1a;
}

.article blockquote > *:last-child,
.article blockquote > *:last-child > *:last-child,
.article blockquote > *:last-child > *:last-child > *:last-child {margin:0;}

.article blockquote cite {font-size:0.8em;}
.article blockquote cite:before {content:"— "; margin:0 0 0 1em;}


.post-content ul li {padding:0 0 0 1.4em; padding-right:1.4em; text-indent:-1.4em;}
.post-content ul li:before {content:""; display:inline-block;
background:url("images/arrow-r-dark.svg") center center no-repeat; width:1em; height:1em; background-size:12px 12px;
vertical-align:middle;
margin:0 0.4em 0 0;
}

/******************/
/******************/
/* archive.php ****/

.archives {width:100%; margin:0 auto; text-align:left;}
.archives ul {list-style:none; padding:0;}

.archives ul li {clear:both; display:block; margin:0 0 0.7em 0;}
.archives ul li a {
	background-color:var(--color-white); display:block;
	border:1px solid var(--color-border);
	padding:1em 1em 1em 3em;
	border-radius:var(--border-radius);
	position:relative;
}
.archives ul li a::before {
	content:"";
	position:absolute;
	width:4px; height:4px; border-radius:10px;
	background-color:var(--color-gold);
	left:1.5em; top:50%;
}
.archives span {display:block;}
.archives .title {font-size:16px; font-size:1.6rem; color:var(--color-dark); line-height:var(--line-height-small);}
.archives .meta {font-size:12px; font-size:1.2rem; display:block; color:var(--color-gold);font-family: "Saira Condensed", sans-serif;}
.archives .a-summary {display:none;}

.archives .a-author {display:none;}
.archives .a-none {display:none;}


.archives ul li a:hover {background-color:var(--color-gold); color:#fff; text-decoration:none;}
.archives ul li a:hover .title,
.archives ul li a:hover .meta {color:#fff;}
.archives ul li a:hover::before {background-color:var(--color-white);}

.archives-box {
	display: block;
	width: fit-content;
	background-color: var(--color-gold);
	color: #fff;
	margin: 0 auto 1.5em 0;
	padding: 0 1em;
	border-radius: var(--border-radius);
	letter-spacing: var(--letter-spacing);
}
.archives-box p {margin:0;
	font-size: 36px;
	font-size: 3.6rem;
}
/******************/
/******************/
/* archive-custom-post.php */

.archives-service ul {
	list-style:none; padding:0 0 0; margin:0;
	display:-webkit-flex;
	display:flex;
flex-wrap:wrap;
flex-direction:row;
align-items:stretch;
align-content:stretch;
-webkit-justify-content:space-between;
justify-content:space-between;
}
.archives-service ul li {
	position:relative; display:block; margin:0 0 2% 0; padding:1.5em 1em 1em;
	flex:0 1 auto;
	flex-grow:0;
	flex-shrink:1;
	flex-basis:32%;
	background-color:#ffffff;
	border:1px solid var(--color-border);
	border-radius:var(--border-radius);
	overflow:hidden;
}
.archives-service ul li.empty {visibility:hidden;}
.archives-service span {display:block;}
.archives-service .label {
	position:absolute; top:0; right:0; color:#fff;
	max-width:2.4em; height:2.4em;
	display:flex; justify-content:center; align-items:center; text-align:center;
	white-space:normal;
	background-color:var(--color-dark);
	font-size:18px; font-size:1.8rem;
	font-weight:var(--font-bold);
	border-bottom-left-radius:var(--border-radius);
	line-height:1;
}
.archives-service ul li .thumbnail {
	display:block; margin:0 0 0.5em 0; line-height:1;
	aspect-ratio: 3 /2;
	overflow:hidden;
	border-radius:var(--border-radius);
	border:1px solid var(--color-border);
}
.archives-service ul li img {
	display:block; width:100%; height:100%; object-fit:cover;
}
.archives-service ul li .title {
	font-size:28px; font-size:2.8rem; font-weight:var(--font-bold);
	line-height:1.2;
	margin:0 auto 0.5em;
	text-align:left;
}
.archives-service ul li .title i {
	display:block; font-size:18px; font-size:1.8rem; 
}
.archives-service ul li .summary {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size:14px; font-size:1.4rem;
}
.archives-service ul li .button {text-align:center; margin:1em auto 1em;}
.archives-service ul li .button a {
	color:#fff; text-decoration:none;
}

.archives-service ul li:nth-child(even) .title {color:var(--color-gold);}
.archives-service ul li:nth-child(even) .label {background-color:var(--color-gold);}
.archives-service ul li:nth-child(even) .button a {background-color:var(--color-gold);}
.archives-service ul li:nth-child(even) .button a:hover {background-color:var(--color-dark);}



@media (max-width:1200px) {
	.archives-service ul li {flex-basis:32%;}
}

@media (max-width:680px) {
	.archives-service ul li {flex-basis:49%;}
}
@media screen and (max-width: 600px) {
	.archives-service .label {
		position: relative;
		top: -2rem;
		max-width: none;
		height: auto;
		width: fit-content;
		padding: 1rem 2rem;
		border-bottom-right-radius: var(--border-radius);
	}
	.section-top-service .archives-service ul li {
		padding: 2rem 1rem 1rem;
	}
	.archives-service ul li .button a {
		width: 100%;
	}
}



/******************/
/* section ********/

.module {
	background-color:#fff; border-radius:var(--border-radius); text-align:left; padding:1em;
	border:1px solid var(--color-border);
	margin:0 0 2em 0;
}
.module.--border {
	border:2px solid var(--color-dark);
}

.section {
	position:relative; display:block; background-color:var(--color-white);
	border-radius:var(--border-radius);
	border:1px solid var(--color-border);
	padding:3em;
	margin:0 0 5em 0;
}
@media screen and (max-width: 600px) {
	.section {
		padding:1em;
	}
}

.section-title {margin:0 0 1em 0; margin-top:-3em; text-align:left; line-height:var(--line-height-small);}
.section-title .title,
.section-title h1 {
	display:block; width:fit-content; background-color:var(--color-gold); color:#fff;
	transform:translateY(-50%);
	font-size:36px; font-size:3.6rem;
	margin:0 auto 0 0; padding:0 1em;
	border-radius:var(--border-radius);
	letter-spacing:var(--letter-spacing);
}
.section-title .title::before {}
.section-title .title::after {}
.section-title .subtitle {font-weight:bold;}
.section-title .description {font-size:15px; font-size:1.5rem;}
@media screen and (max-width: 600px) {
	.section-title {
		margin-top: -1em;
	}
	.section-title .title, 
	.section-title h1 {
		font-size: 28px;
		font-size: 2.8rem;
	}
}


/******************/
/******************/
/* front-page.php */

.home .main-header {display:none;}
.home .site-main{overflow: hidden;}


.main-left {float:left; width:300px;}
.main-right {float:right; width:calc( (100% - 300px) - 2% );}

.loading-overlay {
	position: fixed;
	z-index: 99999;
	background-color: var(--color-dark);
	opacity: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: var(--color-background);
	font-size: 2.2rem;
	transition: 0.5s opacity;
}
.loading-overlay::before {
	content: "";
	display: block;
	margin-bottom: 2rem;
	max-width: 7rem;
	aspect-ratio: 1/1;
	width: 50%;
	background-image: url("images-page/loading-decoration.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.loading-overlay.hide {
	opacity: 0;
	user-select: none;
	pointer-events: none;
}

.section-top-slider {
	clear:both;
	position:relative; width:100%; overflow:hidden; margin:0; padding:3em 0 0 0; z-index:1;
}

.section-top-slider .slider-title {
	text-align:center; position:absolute; line-height:1.2;
	top:50%;
	left:5%;
	transform:translateY(-50%);
	height:auto;
	width:auto;
	border-radius:var(--border-radius); overflow:visible;
	padding:2em; text-align:left;
	background-color:var(--color-dark);
	color:#efefef;
	box-shadow:15px 15px 20px rgba(0,0,0,0.5);
	z-index:3;
}
.section-top-slider .slider-title img.spacer {position:relative; max-width:350px; width:100%; min-width:250px;}
.section-top-slider .slider-title img.decoration {
	position:absolute; top:-4em; right:-3em;
	width:100%;
}
.section-top-slider .slider-title .title {
	position:absolute; white-space:nowrap; font-size:30px; font-size:3.0rem;
	bottom:1em;
	line-height:var(--line-height-small);
	letter-spacing:var(--letter-spacing);
	font-weight:var(--font-regular);
}

.section-top-slider .swiper-container {overflow:visible; padding:0; margin:0; text-align:center; clear:both; position:relative;}
.section-top-slider .swiper-wrapper {}
.section-top-slider .swiper-slide {transition:0.5s ease-in-out;}
.section-top-slider .swiper-slide img {margin:0 auto; display:block; width:100%;}
.section-top-slider .swiper-slide.swiper-slide-prev,
.section-top-slider .swiper-slide.swiper-slide-next {transform:scale(0.9);opacity: 0.3;}
@media screen and (max-width: 600px) {
	.section-top-slider {
		padding-bottom: 40vw;
	}
	.section-top-slider .slider-title {
		width: 50vw;
		height: 50vw;
		padding: 2rem;
		top: auto;
		transform: none;
		bottom: 5vw;
		box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
	}
	.section-top-slider .slider-title .title {
		font-size: 4.6vw;
	}
}

.section-top-decoration {
	line-height:1; position:relative; margin:-5em 0 3em 0; width:100%; overflow:hidden;
	opacity:0.7;
	z-index:3;
}
.section-top-decoration .scroll {
	display: flex;
	white-space: nowrap;
	margin:0;
}
.section-top-decoration .scroll p {
	color: var(--color-white);
	font-size: 14.0vw;
	margin:0 1em 0 0;
	letter-spacing:0;
	flex-shrink:0;
	padding-left:0;
	width:fit-content;
}
.section-top-decoration .scroll p i {
font-family: var(--font-serif);
font-family: "Zen Old Mincho", serif;
font-weight: 400;
font-style: normal;
text-transform:uppercase;
}
.section-top-decoration .scroll p:nth-child(odd) {
	animation: move-left-01 340s -170s infinite linear;
}
.section-top-decoration .scroll p:nth-child(even) {
	animation: move-left-02 340s infinite linear;
}

@keyframes move-left-01 {
	0% { transform: translateX(100%); }
	100% { transform: translateX(-100%); }
}
@keyframes move-left-02 {
	0% { transform: translateX(0); }
	100% { transform: translateX(-200%); }
}
@media screen and (max-width: 600px) {
	.section-top-decoration {
		margin-top: 1rem;
		margin-top: -30vw;
		z-index: 0;
		padding-bottom: 15vw;
	}
}

.section-top-message {
	margin:0 0 2% 0;
	padding:0 2em 2em;
}
.section-top-message .section-title {
	position:relative;
	line-height:1;
	margin:0;
}
.section-top-message .section-title .title {
	background-color:var(--color-gold);
	color:#ffffff;
	padding:0.3em 1.2em; margin:0;
	font-size:26px; font-size:2.6rem; font-weight:var(--font-medium);
	letter-spacing:0.1em;
	border-radius:var(--border-radius);
	transform:translateY(-50%);
}
.section-top-message .subtitle {font-size:38px; font-size:3.8rem;
	font-weight:var(--font-medium);
	margin:0 0 0.5em 0;
}
.section-top-message p {font-size:18px; font-size:1.8rem;margin-bottom: 0;}
@media screen and (max-width: 600px) {
	.section-top-message {
		padding: 0 2rem 2rem 2rem;
		margin-bottom: 3rem;
	}
	.section-top-message .section-title .title {
		font-size: 2rem;
	}
}
.section-top-first .title {
	white-space:nowrap; text-align:center;
	color:var(--color-dark);
	font-size:38px; font-size:3.8rem; font-weight:var(--font-medium);
	letter-spacing:0.1em;
	background-color: rgba(147, 127, 116, 0.5);
	background:linear-gradient(transparent 60%, rgba(147, 127, 116, 0.5) 60%);
}
.section-top-first .thumbnail {
	overflow:hidden; border-radius:var(--border-radius);
	border: 1px solid var(--color-border);
	margin:0 0 1em 0;
}
.section-top-first .button {width:100%; font-weight:var(--font-medium); font-size:16px; font-size:1.6rem;}
.section-top-first .button a {width:100%; padding-top:0.5em; padding-bottom:0.5em;}

.section-top-news {
	margin:0 auto 2em; padding:1em; position:relative;
}
.section-top-news .section-title {margin-top:-1em; margin-bottom:1.5em;}
.section-top-news .section-title .title {
	transform:translateY(0); font-size:24px; font-size:2.4rem; padding:0.2em 0;
	width:fit-content; text-align:left;padding: 0.7rem 3rem;
	background-color:var(--color-dark);
	border-top-left-radius:0;
	border-top-right-radius:0;
}
.section-top-news .button {
	margin-bottom: 2rem;
}
.section-top-news .archives ul {
	margin-bottom: 3rem;
}
.section-top-news .archives ul li {border-bottom:1px solid var(--color-border); padding:0 0 0.7em 0;}
.section-top-news .archives ul li a {padding:0 0.5em; border:0;}
.section-top-news .archives ul li a::before {display:none;}
.section-top-news .archives ul li a:hover {background:none;}
.section-top-news .archives ul li a:hover .title {color:var(--color-dark);
	text-decoration:underline;
	text-underline-offset:3px;
	text-decoration-thickness:1px;
}
.section-top-news .archives ul li a:hover .meta {color:var(--color-dark);}


.section-top-news .decoration {
	position:absolute;
	bottom:0; right:-1.5em;
	pointer-events:none;
	z-index:2;
}

@media (max-width:1300px) {
	.section-top-service .archives-service ul li {flex-basis:49%;}
}
@media (max-width:1200px) {
	.section-top-service .archives-service ul li {flex-basis:32%;}
}
@media (max-width:680px) {
	.section-top-service .archives-service ul li {flex-basis:49%;}
}
@media (max-width:600px) {
	.section-top-news .decoration {
		right: 0;
	}
}

@media (max-width:1200px) {
	.main-left {float:none; width:100%;}
	.main-right {float:none; width:100%;}
}


/******************/
/* page.php *******/

.article-first img.left {max-width:40%;}
.article-first .buttons {justify-content:space-between; clear:both;column-gap: 4%;}
.article-first .buttons .button {flex-basis:49%;}
.article-first .buttons .button a {display:block;}
.article-first .section-first-intro .flex-container {margin-bottom: 5rem;}
.article-first .section-first-intro .flex-container-2 .flex-item {
	flex-basis: 48%;
}
.article-first .section-first-intro .flex-container.reverse {    flex-direction: row-reverse;}
.article-first img {width: 100%;}
@media screen and (max-width: 700px) {
	.article-first .section-first-intro .flex-container {display: block;}
}
.article-first .section-first-consultation .button a {
	position: relative;
	padding-left: 4em;
}
.article-first .section-first-consultation .button a::before {
	position: absolute;top: 50%;left: 1.5em;transform: translateY(-50%);
	content: "";background-repeat:no-repeat;background-size:contain;background-position:center;width:1.7em;height:1.7em;
}
.article-first .section-first-consultation .button.tel a::before {background-image:url("images/icon-tel.svg");}
.article-first .section-first-consultation .button.mail a::before {background-image:url("images/icon-mail.svg");}

.section-agent-intro .flex-container + .flex-container {margin-top: 5rem;}
.section-agent-intro .flex-container.reverse {    flex-direction: row-reverse;}
.section-agent-intro .flex-container-2 .flex-item {
	flex-basis: 48%;
}
@media screen and (max-width: 600px) {
	.section-agent-intro .flex-container {
		display: block;
	}
}
.section-flow ol li + li {
	border-top: 1px solid var(--color-border);
}
.section-flow ol li {display: flex;text-indent: 0;padding: 3.5rem 0;justify-content: space-between;}
.section-flow ol li:before {display: none;}
.section-flow ol li .thumbnail {flex-basis: 23rem;display: block;}
.section-flow ol li .description {flex-basis: calc(100% - 26rem);}
.section-flow ol li .label {width: fit-content;display: block;background-color: var(--color-dark);color: var(--color-white);padding: 0.05em 1.2em;margin-bottom: 1.5rem;font-size: 1.4rem;text-transform: uppercase;font-weight: 600;}
.section-flow ol li b {font-size: 2.6rem;color: var(--color-dark);margin-bottom: 1rem;display: block;}
.section-flow ol li p {margin-bottom: 0;}
@media screen and (max-width: 700px) {
	.section-flow ol li {display:block;}
	.section-flow ol li .thumbnail {margin-bottom: 3rem;}
}

.article-company .section-company-info {}
.article-company .section-company-info table th,
.article-company .section-company-info table td {padding:30px 0;}
.article-company .section-company-info table th {font-weight:bold; min-width:200px;}
.article-company .section-company-history ol {columns:2;}


.section-service-list .archives-service ul li {
	flex-basis:23.5%;
}
@media (max-width:1240px) {
	.section-service-list .archives-service ul li {flex-basis:32%;}
}
@media (max-width:680px) {
	.section-service-list .archives-service ul li {flex-basis:49%;}
}



.article-office .section-office-outline .office-swiper {
	overflow: hidden;
	border-radius: 3px;
	margin-bottom: 5rem;
	aspect-ratio: 5 / 3;
}
.article-office .section-office-outline img {display:block; width:100%;height: 100%;object-fit: cover;}
.article-office .section-office-outline table {
	margin-bottom: 0;
}
.article-office .section-office-outline table th {
	min-width: 5em;
	color: var(--color-gold);
}
.article-office .section-office-outline table td {
	padding-left: 2em;
}
@media screen and (max-width: 700px) {
	.article-office .section-office-outline table th,
	.article-office .section-office-outline table td {
		display: block;
	}
	.article-office .section-office-outline table th {
		border-bottom: none;
		padding-left: 0;
		padding-bottom: 0;
	}
	.article-office .section-office-outline table td {
		padding-left: 0;
		padding-top: 0.5em;
	}
}
.article-office .section-office-access h4.icon {
	position: relative;
	padding-left: 1.8em;
}
.article-office .section-office-access h4.icon::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	display: block;
	width: 1.4em;
	height: 1.4em;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
.article-office .section-office-access h4.icon-car::before {
	background-image: url("images-page/office-icon-car.svg");
}
.article-office .section-office-access h4.icon-train::before {
	background-image: url("images-page/office-icon-train.svg");
}
.article-office .section-office-access h4.icon-bus::before {
	background-image: url("images-page/office-icon-bus.svg");
}
.article-office .section-office-access .maps {
	margin-bottom: 1rem;
}

.section-service .flex-container .thumbnail {
	flex-basis: 40%;
	border-radius: 3px;
	overflow: hidden;
}
.section-service .flex-container .thumbnail img {
	line-height: 0;
	width: 100%;
	object-fit: cover;
    height: 100%;
}
.section-service .flex-container p {
	flex-basis: 55%;
}
.section-service dl {
	margin-top: 5rem;
}
.section-service dl dt {
	color: var(--color-gold);
	margin-bottom: 0.5rem;
}
.section-service dl dd + dt {
	margin-top: 3.5rem;
}
.section-service dl dt::before {
	content: "";
	width: 0.8em;
	height: 0.8em;
	background-color: var(--color-gold);
	display: inline-block;
	margin-right: 0.5em;
}
@media screen and (max-width: 600px) {
	.section-service .flex-container {
		display: block;
	}
	.section-service .flex-container .thumbnail {
		margin-bottom: 2rem;
	}
}


.article-faq dl {margin-bottom: 0;}
.article-faq dl dt {font-size:18px; font-size:1.8rem; font-weight:var(--font-medium); color:var(--color-gold);}
.article-faq dl dd {font-size:15px; font-size:1.5rem;margin: 1rem 0 2em 0;}
.article-faq dl dd:last-child {margin: 0;}
.article-faq h2 {
	margin-top: 7rem;
	margin-bottom: 3rem;
	padding-left: 0.5em;
	border-left: 2px solid var(--color-dark);
}

.article-recruit dl {margin-bottom: 0;}
.article-recruit dl + dl {margin-top: 1em;}

.article-recruit table th {min-width: 7em;color: var(--color-gold);}
.article-recruit table td {padding-left: 2em;}
@media screen and (max-width: 700px) {
	.article-recruit table th,
	.article-recruit table td {
		display: block;
		padding-left: 0;
	}
	.article-recruit table th {
		padding-bottom: 0;
		border-bottom: none;
	}
	.article-recruit table td {
		padding-top: 0.5em;
	}
}

.article-privacy .columns {margin:2em 0; font-size:13px; font-size:1.3rem;}

.article-sitemap h2 {
	margin-bottom: 0.4em;
}
.article-sitemap ul li {
	padding: 0 0 0 2em;
	background: url(images/arrow-right-dark.svg) left 0.5em center no-repeat;
	background-size: 1em auto;
}
.article-sitemap ul li a {
	color: var(--color-black);
}

.maps {width:100%; height:300px; overflow:hidden; position:relative; padding-top:0; margin:0 0 40px 0;}
.googlemaps {width:100%; height:100%; position:absolute; top:0;}
.maps iframe {position:absolute; top:0; left:0; right:0; bottom:0; width:100%;}



/******************/
/* page.php single.php single-custompost.php *****/

.page-title {}
.single-title {}
.single-custompost-title {}

.page-meta {}
.single-meta {}
.single-custompost-title {}

.page-thumbnail {}
.single-thumbnail {}
.single-custompost-thumbnail {}

.page-content {}
.single-content {}
.single-custompost-content {}



.single-meta {margin:0 0 1em 0;}
.single-meta .date {line-height:1.2;}


.single-title {
	padding:0 0 1em 0;
	margin:0 0 2em 0;
	border-bottom:1px solid var(--color-border);
}
.single-title .title {
	font-size:32px; font-size:3.2rem; margin:0 auto 0 0;
	letter-spacing:var(--letter-spacing);
}

.single-links {
	position:absolute; right:1em; bottom:-0.5em; font-size:16px; font-size:1.6rem;
	line-height:var(--line-height-small);
	z-index:3;
}
.single-links span a {
	background-color:var(--color-gold); border:1px solid var(--color-gold);
	color:#fff;
	border-radius: var(--border-radius);
	padding:0.2em 2em;
}
.single-links span a:hover {
	background-color:var(--color-white); color: var(--color-gold);
}
/* #post-ID {} */

/******************/
/* single-custom-post.php */

.article-custompost {}
.article-custompost .title {
	text-align:left;
	font-size:45px; font-size:4.5rem; color:var(--color-gold);
	margin:0 0 1em 0; line-height:1.2;
}
.article-custompost .custompost-content p {margin:0 0 2em 0;}
.article-custompost .partner ul {display:flex; justify-content:flex-start; flex-wrap:wrap; gap:2%;}
.article-custompost .partner ul li {flex-basis:16.5%; margin:0 0 2% 0;}


/******************/
/******************/
/* breadcrumbs ****/

.breadcrumbs {
	clear:both; display:block; margin:2em 0 0 0; padding:0.5em 1em; text-align:left; font-size:12px; font-size:1.2rem;max-width: 100%;
	background-color:var(--color-white); border-radius:var(--border-radius);
}
.breadcrumbs p {}
.breadcrumbs ul {
	padding:0; margin:0 auto; list-style:none; white-space:nowrap;
	color:var(--color-dark);
	overflow:auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling:touch;
	overflow-scrolling:touch;
}
.breadcrumbs ul li {display:inline-block;}
.breadcrumbs ul li:after {content:"\00BB"; margin:0 12px;}
.breadcrumbs ul li:first-child:before {}
.breadcrumbs ul li:last-child:after {content:"";}
.breadcrumbs ul li a {}
.breadcrumbs ul li a:hover {}

/******************/
/******************/
/* navigation *****/
/*
.navigation {margin:0 auto 40px; clear:both;}
.navigation:after {content:""; clear:both; display:block; height:0; visibility:hidden;}
.navigation span {}
.navigation .navi-prev {text-align:left; float:left;}
.navigation .navi-next {text-align:right; float:right;}
.navigation .navi-prev a:before {content:"＜"; margin-right:4px;}
.navigation .navi-next a:after {content:"＞"; margin-left:4px;}
*/
/******************/
/* pagination *****/

.pagination {margin:0 auto 40px; clear:both;}
.pagination ul {text-align:center; font-size:12px; font-size:1.2rem;}
.pagination ul li {display:inline-block; margin:0 2px;}
.pagination span,
.pagination ul li a {padding:8px 12px; background-color:#47b7ff; background-color:var(--oz-color-blue); color:#efefef;
	background-color:#292548; background-color:var(--oz-color-navy);
	border:1px solid #292548; border-color:var(--oz-color-navy); color:#fff;
}
.pagination ul li a:hover {background-color:#47b7ff; background-color:var(--oz-color-blue);}
.pagination span.dots {border:0; background:transparent;}
.pagination span.current {background-color:#47b7ff; background-color:var(--oz-color-blue);}




/******************/
/* post-links *****/

.post-links {clear:both; text-align:center; margin:0 auto 80px; max-width:320px; width:100%; display:table; table-layout:fixed;}
.post-links span {display:table-cell; padding:8px 2px;}
.post-links .navi-prev {text-align:center;}
.post-links .navi-next {text-align:center;}
.post-links a {border:1px solid #937f74; border-color:var(--color-gold); background-color:#937f74; background-color:var(--color-gold); color:#efefef; display:block;}
.post-links a:hover {background:transparent; color:#937f74; color:var(--color-gold);}


/******************/
/******************/
/* comments.php ***/

/******************/
/* button *********/
/* .article button */

.buttons {display:flex; justify-content:flex-start;}

.button {margin:1em 0; font-size:14px; font-size:1.4rem;}

.button a {
	display:inline-block; min-width:120px; padding:0.5em 4em 0.5em 2em;
	border-radius:var(--border-radius);
	text-align:center; background:transparent;
	border:1px solid #937f74; border-color:var(--color-border); color:var(--color-white);
	background-color:var(--color-dark);
	position:relative;
}
.button a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1.5em;
	transform: translateY(-50%);
	display: block;
	background-image: url("images/arrow-right-white.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 1.5em;
	aspect-ratio: 120 / 75;
}

.button a:hover {background-color:#937f74; background-color:var(--color-gold); color:#ffffff; cursor:pointer;}
.button a:hover::after {
	animation: button-fade 0.7s ease 1 normal forwards;
}

@keyframes button-fade {
0% { opacity: 1;transform: translate(0%, -50%); }
50% { opacity: 0;transform: translate(100%, -50%); }
51% { opacity: 0;transform: translate(-100%, -50%); }
100% { opacity: 1;transform: translate(0%, -50%); }
}


.button.-right {margin:1em 0 1em auto; text-align:right;}

.button.-small a {font-size:12px; font-size:1.2rem;}
.button.-large a {padding:0.8em 6em 0.8em 3em; min-width:200px; font-size:16px; font-size:1.6rem;
	font-weight: var(--font-medium);
	text-align:left;
}

.button.button-success a {border-color:#937f74; border-color:var(--color-gold); color:blue;}
.button.button-success a:hover {background-color:#937f74; background-color:var(--color-gold); color:#efefef;}

.button.button-error a {border-color:red; color:red;}
.button.button-error a:hover {background-color:red; color:#efefef;}

.button.button-warning a {border-color:yellow; color:yellow;}
.button.button-warning a:hover {background-color:yellow; color:#efefef;}


/******************/
/******************/

.alert {
clear:both; display:block;color: inherit;
border:1px solid transparent;
display:block;
padding:1rem;
-webkit-border-radius:4px;
-moz-border-radius:4px;
-ms-border-radius:4px;
-o-border-radius:4px;
border-radius:4px;
color:red;
border-color:red;
background-color:transparent;
margin:0 0 1em 0;
}

.alert-success {border-color:blue; color:blue;}
.alert-error {border-color:red; color:red;}
.alert-warning {border-color:yellow; color:yellow;}

.alert > p {margin:0;}
.alert em, .alert strong {font-weight:bold;}

span.close {float:right; color:inherit; cursor:pointer;}

/******************/
/* Flexbox System & Table System */


.table-container {
	display:table; table-layout:fixed; border-collapse:collapse; width:100%; position:relative; margin:0; padding:0;
}
.table-cell {
	display:table-cell; vertical-align:top; position:relative; margin:0; padding:0; empty-cells:show;
}

.flex-container {
	margin:0; padding:0; list-style:none;
	display:-webkit-flex;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	align-items:stretch;
	align-content:stretch;
	-webkit-justify-content:space-between;
	justify-content:space-between;
}
.flex-container.-reverse {
	flex-direction:row-reverse;
}

.flex-item {
margin:0; padding:0;
flex:0 1 auto;
flex-grow:0;
flex-shrink:1;
}

.flex-container-2 .flex-item {
	flex-basis:49%;
}
.flex-container-3 .flex-item {
	flex-basis:32%;
}
.flex-container-4 .flex-item {
	flex-basis:24%;
}

.columns {
	column-gap:4em;
	column-rule:1px dotted;
}
.columns-2 {columns:2;}


/******************/
/* responsive-table */

.r-table,
.responsive-table {overflow:scroll; width:100%;}


/******************/
/* jquery-tabs ****/


.tab-selector ol {
	display:table; table-layout:fixed; text-align:center;
	padding:0 20px; margin:0 auto; width:100%;
	position:relative; bottom:-1px;
	z-index:3;
}
.tab-selector ol li {
	display:table-cell;
	padding:12px 0; cursor:pointer; background-color:#c9bfb9; background-color:var(--color-border);
	border:1px solid #ffbf53; border-color:var(--color-orange);
	white-space:nowrap;
	overflow:hidden;
}

.tab-selector ol li:not(:last-child) {border-right:0;}
.tab-selector ol li:hover {background-color:#937f74; background-color:var(--color-gold); color:#efefef;}
.tab-selector ol li:first-child {border-top-left-radius:4px;}
.tab-selector ol li:last-child {border-top-right-radius:4px;}
.tab-selector ol li.is-current {background-color:#efefef; background-color:var(--color-background); color:#937f74; color:var(--color-gold); border-bottom:1px solid #efefef;}
.tab-selector ol li.is-current:hover {background-color:#efefef; background-color:var(--color-background); color:#937f74; color:var(--color-gold);}

.tab-content {position:relative; z-index:2;}
.tab-content > div {display:none;}
.tab-content > div:first-child {display:block;}



/******************/
/******************/
/* materials ******/

.adr span {margin:0; display:inline-block;}


a.underline {position: relative;}
a.underline::after {
	content: "";
	position: absolute;
	bottom:3px;
	left:0;
	display: block;
	width:0;
	height:1px;
	background-color: var(--color-gold);
	transition:width 0.5s;
}
a.underline:hover::after {width: 100%;}


/******************/
/******************/
/* plugins ********/


body.is-modal {overflow:hidden;}


/******************/
/* ContactForm7 ***/



.form {clear:both; display:block; margin:0;}
.form table {line-height:1.2;border: none;}
.form table th,
.form table td {padding:16px 4px 0.1em; vertical-align:middle;border: none;align-items: center;
column-gap: 1em;}
.form table th {text-align:left; color:#4d4646; color:var(--color-dark); font-size:18px; font-size:1.8rem; padding-top: 1.5em;display: flex;}
.form table td { padding-top: 1em;display: block;}
.form table th i {display:block; font-size:20px; font-size:2.0rem;}
.form table th b {color: var(--color-dark);padding: 0.3em 0.8em;background-color: var(--color-dark);border-radius: 0.2em;color: var(--color-white);font-size: 16px;font-size: 1.6rem;}
.form table input,
.form table select,
.form table textarea {width: 100%;border: 1px solid var(--color-dark);}
.form table textarea{resize: vertical;}

@media (max-width:700px) {
	.form table,
	.form table tbody,
	.form table tr,
	.form table th,
	.form table td {display:block;}
	.form table th,
	.form table td {display:block; text-align:left; padding:0;}
	.form table th {border:0; padding:32px 0 0 0; margin:0 0 12px 0;}
	.form table th i {display:inline-block; margin:0 1em 0 0;}
	.form table td {padding:0 0 16px 0;}	
}


form {}
fieldset {}
label {}

::-webkit-input-placeholder,
::-moz-placeholder,
:-moz-placeholder,
:-ms-input-placeholder {color:#ffbf53; color:var(--color-orange);}

[type="search"] {
/*-webkit-appearance:textfield;
-moz-appearance:textfield;
-ms-appearance:textfield;
-o-appearance:textfield;
appearance:textfield;*/
}

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="file"],
select,
textarea {
	width:auto;
	max-width:100%;
	border-radius:4px;
	display:block;
	position:relative;
/*-webkit-appearance:none;
-moz-appearance:none;
-ms-appearance:none;
-o-appearance:none;
appearance:none;*/
padding:16px 8px; margin-bottom:16px; line-height:normal;
border:1px solid #f5f5f5;
background:#f5f5f5;
background-color:var(--oz-color-bg);
}


input[type="checkbox"],
input[type="radio"] {}
input[type="file"] {cursor:pointer; width:auto;}
input[name="your-address"] {width:100%;}
select {width:auto; padding:12px; border:1px solid #c9bfb9;}
textarea {width:100%;}

input[type="submit"] {
text-align:center;
appearance:none;
display:block;
margin:0 auto; text-align:center;
background-size:1.5em auto;
background-color:var(--color-dark);
border:2px solid var(--color-dark); border-radius:4px;
color:var(--color-white);
padding:1em 4em 1em 3em;
width: 100%;
cursor: pointer;
transition: 0.3s;
}


input[type="submit"][disabled],
input[type="submit"][disabled]:hover {
	color:var(--color-border);background:transparent; border:1px solid var(--color-border); cursor:not-allowed;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
select:focus,
textarea:focus {
border:1px solid #937f74; border-color:var(--color-gold);
}

textarea {height:auto; min-height:100px;}
select {}


@media (max-width:960px) {
	input[type="text"],
	input[type="password"],
	input[type="date"],
	input[type="datetime"],
	input[type="email"],
	input[type="number"],
	input[type="search"],
	input[type="tel"],
	input[type="time"],
	input[type="url"] {width:100%;}
	select {width:auto;}
	textarea {width:100%;}
}
	

.wpcf7{}

.screen-reader-response {display:none;}

.wpcf7-response-output:empty {display:none;}
.wpcf7-response-output {
margin:0 auto 1em; padding:1em; line-height:1.2;
border:0;
	border-radius:4px;
text-align:center; display:block;
clear:both;
background:red;
}

.wpcf7-mail-sent-ok {
border:1px solid #937f74; border-color:var(--color-gold);
color:blue;
padding:12px;
margin:0 0 20px 0;
}

.wpcf7-validation-errors {
border:1px solid red;
color:red;
padding:12px;
margin:0 0 20px 0;
}

.wpcf7 span {}
.wpcf7-form-control-wrap {display:block; position:relative;}
.wpcf7-form-control-wrap[data-name="your-name"],
.wpcf7-form-control-wrap[data-name="your-answer"],
.wpcf7-form-control-wrap[data-name="your-email"],
.wpcf7-form-control-wrap[data-name="your-tel"],
.wpcf7-form-control-wrap[data-name="your-type"] {max-width: 400px;}
.wpcf7 span.wpcf7-list-item-label {margin:0 1em 0 0; display:inline-block;}
.wpcf7 span.use_label_element {margin-bottom:20px; display:block;}
.wpcf7 span.wpcf7-not-valid-tip {
	color:red; font-size:12px; font-size:1.2rem; display:block;
	position:absolute;
}
.wpcf7 span.wpcf7-not-valid-tip-no-ajax {display:none;}

.wpcf7 .wpcf7-form-control {}
.wpcf7 .wpcf7-list-item {margin:0 0 16px 0;}

.wpcf7 input[type="radio"],
.wpcf7 input[type="checkbox"] {display:none;}
.wpcf7 label {cursor:pointer;}
.wpcf7-list-item {position:relative; display:inline-block;}
.wpcf7-list-item-label {min-height:20px; line-height:24px; vertical-align:middle; padding:0 0 0 32px; display:inline-block; position:relative;}
.wpcf7-list-item-label:before {width:20px; height:20px; content: ''; position: absolute; left:0; top:0; background-color:#efefef; background-color:var(--color-background); border:2px solid #c9bfb9; display:inline-block;}
.wpcf7-list-item-label:after{
width:10px; height:6px; left:6px; top:6px;
border:2px solid #937f74; border-color:var(--color-gold);
content:''; position:absolute; transform:rotate(-45deg);
border-top:none; border-right:none; transition:all 0.3s; opacity:0;
}
input[type="radio"]:checked + .wpcf7-list-item-label:after,
input[type="checkbox"]:checked + .wpcf7-list-item-label:after {opacity:1;}

.wpcf7 input.wpcf7-submit {margin:0 auto;}

img.ajax-loader {display:block; margin:12px auto 0;}

.wpcf7 .sent .form {display:none;}
.wpcf7 .form .under-line{text-decoration: underline;}



/******************/
/* facebook *******/

/******************/
/* twitter ********/


/******************/
/******************/
/* Media Query ****/




/******************/
/******************/
/* fonts **********/

/* cyrillic-ext */


/*
@font-face {
font-family:'Axis-ExtraLight';
src:url("fonts/AxisStd-ExtraLight.eot");
src:url("fonts/AxisStd-ExtraLight.eot?#iefix") format("eot"),
	url("fonts/AxisStd-ExtraLight.woff") format("woff"),
	url("fonts/AxisStd-ExtraLight.ttf") format("truetype"),
	url("fonts/AxisStd-ExtraLight.svg") format("svg");
}
*/

.font-gothic {font-family:'YuGothic', 'Yu Gothic', '游ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Meiryo', 'メイリオ', 'Helvetica', sans-serif;}
.font-mincho {font-family:'YuMincho', 'Yu Mincho', '游明朝', 'Hiragino Mincho ProN', 'ヒラギノ明朝 ProN W3', 'Meiryo', 'メイリオ', 'Times New Roman', serif;}
.font-mono {font-family:"Osaka-mono", "MS Gothic", monospace;}
.bold {font-weight:bold;}

i {
	font-family: "Saira Condensed", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}

/******************/
/******************/
/* Keyframes ******/



/* end ************/
/******************/
/******************/

