/*
Theme Name: lightpress arranged
Theme URI: http://phantomthemes.com/items/lightpress-wordpress-theme/
Author: Synchro
Description: LightPress is fast loading responsive, modern & creative WordPress theme, specially designed for the Personal, Corporate and Photography Blogging Website. Theme is beautifully handcrafted with minimalist design approach and based on Twitter Bootstrap 4  and Underscore S Framework. High quality clean code with Search Engine Optimized (SEO) and can be used as blog for businesses related to travel, fitness, yoga, gym, education, arts, sports and news etc. It supports easy installation and setup with One Click Demo Builder Plugin. To view detail and demo http://phantomthemes.com/items/lightpress-wordpress-theme/ and  http://phantomthemes.com/view?theme=LightPress
Version: 99999
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lightpress
Tags: footer-widgets, one-column, featured-images, custom-background, custom-colors, custom-menu, editor-style, theme-options, threaded-comments, blog, news, photography		

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

*/

:root {
	--text-brack: #231815;
	--separater-linestyle: 1px solid #c5c7c9;
	--thumbnail-nopeColor: #818181;
	--information-listDateSize: 10.5pt;
	--wp--style--gallery-gap-default: 16px;
}
@media screen and (max-width: 540px) {
	:root {
		--information-listDateSize: 9pt;
	}
}
@media screen and (max-width: 480px) {
	:root {
		--wp--style--gallery-gap-default: 12px;
	}
}

html {
	box-sizing: border-box;
	font-size: 72%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	margin: 0;
	background: #fff;
	color: var(--text-brack);
	/*font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;*/
	/*font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;*/
	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;*/
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.4rem;
	letter-spacing: 0.5px;
	line-height: 140%;
}
@media screen and (max-width: 960px) {
	html {
		font-size: 67%;
	}
}
@media screen and (max-width: 480px) {
	html {
		font-size: 62.5%;
	}
}

/* リセット */
*, *:before, *:after {
	box-sizing: inherit;
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
	display: block;
}
audio, canvas, progress, video {
	display: inline-block;
	vertical-align: baseline;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
[hidden], template {
     display: none;
}
abbr[title] {
	border-bottom: 1px dotted;
}
b, strong {
	font-weight: bold;
}
dfn {
	font-style: italic;
}
mark {
	background: #ff0;
	color: var(--text-brack);
}
small {
	font-size: 80%;
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
img {
	border: 0;
}
svg:not(:root) {
	overflow: hidden;
}
figure {
	margin: 1em 0;
}
hr {
	box-sizing: content-box;
	height: 0;
}
pre {
	overflow: auto;
}
code, kbd, pre, samp {
	font-family: monospace, monospace;
	font-size: 1em;
}
button, input, optgroup, select, textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}
button {
	overflow: visible;
}
button, select {
	text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled], html input[disabled] {
	cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input {
	line-height: normal;
}
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
button, input[type="button"], input[type="reset"], input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), inset 0 15px 17px rgba(255, 255, 255, 0.5), inset 0 -5px 12px rgba(0, 0, 0, 0.05);
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
}
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), inset 0 15px 17px rgba(255, 255, 255, 0.8), inset 0 -5px 12px rgba(0, 0, 0, 0.02);
}
button:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, button:active, input[type="button"]:active, input[type="reset"]:active, input[type="submit"]:active {
	border-color: #aaa #bbb #bbb;
	box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.5), inset 0 2px 5px rgba(0, 0, 0, 0.15);
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, textarea:focus {
	color: #111;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"] {
	padding: 3px;
}
textarea {
	padding-left: 3px;
	width: 100%;
}
fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}
legend {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
}
optgroup {
	font-weight: bold;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
td, th {
	padding: 0;
}
button, input, select, textarea {
     font-size: 16px;
     font-size: 1rem;
     line-height: 1.5;
}
p {
	margin-bottom: 1.5em;
}
p ruby[data-ruby] {
    position: relative;
    line-height: 220%;
}
p ruby[data-ruby]::before {
	content: attr(data-ruby);
	position: absolute;
	top: -2.4em;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 0.6em;
	letter-spacing: 2px;
	white-space: nowrap;
}
p ruby rt {
    display: none;
}
dfn, cite, em, i {
	font-style: italic;
}
blockquote {
	margin: 0 1.5em;
}
address {
	margin: 0 0 1.5em;
}
pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}
abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
mark, ins {
	background: #fff9c0;
	text-decoration: none;
}
big {
	font-size: 125%;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}
hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}
ul, ol {
	margin: 0 0 1.5em 3em;
}
ul {
	list-style: disc;
}
ol {
	list-style: decimal;
}
li > ul, li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}
dl dt {
	float: left;
	font-weight: normal;
	clear: left;
}
dl dd {
	margin: 0 0 15px 0;
}

ul, ol {
	line-height: 180%;
}

img {
	height: auto;
	max-width: 100%;
}
table {
	margin: 0 0 1.5em;
	width: 100%;
}
embed, iframe, object {
	max-width: 100%;
}
dl {
	margin: 0 auto;
	line-height: 180%;
}


/* lightpress classes */
.site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}
.comment-navigation .nav-previous, .posts-navigation .nav-previous, .post-navigation .nav-previous {
	float: left;
	width: 50%;
}
.comment-navigation .nav-next, .posts-navigation .nav-next, .post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}
#content[tabindex="-1"]:focus {
	outline: 0;
}
.clear:before, .clear:after, .entry-content:before, .entry-content:after, .comment-content:before, .comment-content:after, .site-header:before, .site-header:after, .site-content:before, .site-content:after, .site-footer:before, .site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}
.clear:after, .entry-content:after, .comment-content:after, .site-header:after, .site-content:after, .site-footer:after {
	clear: both;
}
.widget {
	margin: 0 0 1.5em;
}
.widget select {
	max-width: 100%;
}
.widget-area .widget {
	width: 100%;
	padding: 30px;
}
.widget-area {
	background: #2A4286;
	color: #fff;
}
.widget-area a{
	color: #fff;
}
.widget-area h3.widget-title{
	color: #fff;
	font-size: 1.25em;
}
.widget-area .widget{
	font-size: 0.84em;
	float: left;
	padding: 30px;
}
.widget-area ul{
	margin: 0;
	padding-left: 15px;
}
h3.widget-title{
	font-size: 2em;
}
@media(min-width: 767px){
	.widget-area {
		overflow: hidden;
	}

	.widget-area .widget {
		width: 18%;
		padding: 5px;
		float: left;
	}
}

.sticky {
	display: block;
}
.hentry {
	margin: 0 0 1.5em;
}
.byline, .updated:not(.published) {
	display: none;
}
.single .byline, .group-blog .byline {
	display: inline;
}
.page-content, .entry-content, .entry-summary {
	margin: 1.5em 0 0;
}
.entry-content {
	margin-top: 0;
}
.entry-content section:not(:last-child) {
	margin-bottom: 120px;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}
@media screen and (max-width: 680px) {
	.entry-content section:not(:last-child) {
		margin-bottom: 90px;
	}
}
@media screen and (max-width: 480px) {
	.entry-content section:not(:last-child) {
		margin-bottom: 70px;
	}
}
@media screen and (max-width: 380px) {
	.entry-content section:not(:last-child) {
		margin-bottom: 46px;
	}
}
.blog .format-aside .entry-title, .archive .format-aside .entry-title {
	display: none;
}
.comment-content a {
	word-wrap: break-word;
}
.bypostauthor {
	display: block;
}
.page-content .wp-smiley, .entry-content .wp-smiley, .comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/*-------------------------------------------------------------- 
## Galleries 
--------------------------------------------------------------*/
.gallery {
	margin-left: -10px;
	margin-bottom: 1.5em;
	width: calc(100% + 20px);
}
.gallery-item {
	box-sizing: border-box;
	display: inline-block;
	margin: 0;
	width: 100%;
	padding: 0 10px;
	text-align: center;
	vertical-align: top;
}
 .gallery-columns-2 .gallery-item {
     max-width: 50%;
}
 .gallery-columns-3 .gallery-item {
     max-width: 33.33%;
}
 .gallery-columns-4 .gallery-item {
     max-width: 25%;
}
 .gallery-columns-5 .gallery-item {
     max-width: 20%;
}
 .gallery-columns-6 .gallery-item {
     max-width: 16.66%;
}
 .gallery-columns-7 .gallery-item {
     max-width: 14.28%;
}
 .gallery-columns-8 .gallery-item {
     max-width: 12.5%;
}
 .gallery-columns-9 .gallery-item {
     max-width: 11.11%;
}
.gallery-columns-2 .gallery-item:nth-child(n + 3),
.gallery-columns-3 .gallery-item:nth-child(n + 4),
.gallery-columns-4 .gallery-item:nth-child(n + 5),
.gallery-columns-5 .gallery-item:nth-child(n + 6),
.gallery-columns-6 .gallery-item:nth-child(n + 7),
.gallery-columns-7 .gallery-item:nth-child(n + 8),
.gallery-columns-8 .gallery-item:nth-child(n + 9),
.gallery-columns-9 .gallery-item:nth-child(n + 10) {
	margin-top: 20px;
}

.gallery-item img {
	width: 100%;
}
.gallery-caption {
	display: block;
	margin-top: 6px;
	font-size: 1.2rem;
	line-height: 160%;
}
@media screen and (max-width: 1000px) {
	.gallery-columns-9 .gallery-item {
		max-width: 20%;
	}
	.gallery-columns-9 .gallery-item:nth-child(n + 6) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 940px) {
	.gallery-columns-8 .gallery-item {
		max-width: 25%;
	}
	.gallery-columns-8 .gallery-item:nth-child(n + 5) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 860px) {
	.gallery-columns-7 .gallery-item {
		max-width: 25%;
	}
	.gallery-columns-7 .gallery-item:nth-child(n + 5) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 780px) {
	.gallery-columns-6 .gallery-item {
		max-width: 33.33%;
	}
	.gallery-columns-6 .gallery-item:nth-child(n + 4) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 700px) {
	.gallery-columns-5 .gallery-item,
	.gallery-columns-9 .gallery-item {
		max-width: 33.33%;
	}
	.gallery-columns-5 .gallery-item:nth-child(n + 4),
	.gallery-columns-9 .gallery-item:nth-child(n + 4) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 640px) {
	.gallery-columns-4 .gallery-item,
	.gallery-columns-7 .gallery-item,
	.gallery-columns-8 .gallery-item {
		max-width: 50%;
	}
	.gallery-columns-4 .gallery-item:nth-child(n + 3),
	.gallery-columns-7 .gallery-item:nth-child(n + 3),
	.gallery-columns-8 .gallery-item:nth-child(n + 3) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 580px) {
	.gallery-columns-3 .gallery-item,
	.gallery-columns-5 .gallery-item,
	.gallery-columns-6 .gallery-item,
	.gallery-columns-9 .gallery-item {
		max-width: 50%;
	}
	.gallery-columns-3 .gallery-item:nth-child(n + 3),
	.gallery-columns-5 .gallery-item:nth-child(n + 3),
	.gallery-columns-6 .gallery-item:nth-child(n + 3),
	.gallery-columns-9 .gallery-item:nth-child(n + 3) {
		margin-top: 20px;
	}
}
@media screen and (max-width: 480px) {
	.gallery {
		margin-left: -5px;
		width: calc(100% + 10px);
	}
	.gallery-item {
		padding: 0 5px;
	}
	.gallery-caption {
		font-size: 10pt;
	}
}

.wp-block-gallery.has-nested-images {
	margin: 38px 0;
}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	flex-grow: 0;
	flex-basis: unset;
	position: static;
	background: transparent;
	padding: 0.6em 5px 0;
	color: var(--text-brack);
	text-shadow: none;
}
.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before {
	content: none;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a {
	overflow: hidden;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a img {
	transform: scale(1.01);
	transition: transform .4s cubic-bezier(0, 0.03, 0.21, 1);
	will-change: transform;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a:hover {
	opacity: 1;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a:hover img {
	transform: scale(1.15);
}
@media screen and (max-width: 640px) {
	.wp-block-gallery.has-nested-images {
		margin: 28px 0;
	}
}

.container{
	width: 100%;
	max-width: none;
	padding: 0;
}
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}
.wp-caption-text {
	text-align: center;
}

.page-header {
	margin: 0;
	border:none;
	padding-bottom: 15px;
}
.page-content {
	min-height: 300px;
}
.pagination>.active>a, .pagination>.active>a:focus, .pagination>.active>a:hover, .pagination>.active>span, .pagination>.active>span:focus, .pagination>.active>span:hover {
	background-color: #2A4286;
	border-color: #2A4286;
	color: #FFF;
}
.pagination>li>a, .pagination>li>span {
	color: #999;
}


/* リンク：a */
a {
	background-color: transparent;
}
a, a:visited {
	color: #999;
	text-decoration: none;
}
a:active, a:hover, a:focus, *:focus {
	outline:none;
}
a:hover, a:focus, a:active {
	color: #191970;
}
a:hover {
	opacity: 0.9;
}

/* 見出し：h1-h6 */
h1, h2, h3, h4, h5, h6 {
    margin:0 0 15px 0;
    font-weight: 700;
	clear: both;
}
h1{
	font-size: 3rem;
}
h2 {
	margin-bottom: 50px;
	text-align: center;
	font-size: 2.8rem;
	font-weight: normal;
	line-height: 140%;
}
h2 img {
	width: 100%;
}
h2.en span {
	padding-bottom: 20px;
}
 h2.entry-title{
    font-size: 2em;
}
 h2.entry-title a{
    color: #2F3035;
}
 h2.entry-title a:hover{
    color: #2A4286;
    text-decoration: none;
}
h3 {
	margin-bottom: 30px;
	border-bottom: 1px solid #1764a5;
	padding: 0 0 4px 2px;
	font-size: 2.4rem;
	font-weight: normal;
	line-height: 136%;
}
h3.withen {
	margin: 0 0 56px;
	border-bottom: none;
	padding: 0;
	text-align: center;
	font-size: 3.4rem;
	font-weight: 700;
	line-height: 134%;
}
h3.withen small {
	position: relative;
	display: block;
	margin-top: 14px;
	padding-top: 20px;
	color: #393939;
	font-size: 11pt;
	font-weight: 500;
	letter-spacing: 3px;
	line-height: 100%;
	text-transform: uppercase;
}
h3.withen small:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: 120px;
	height: 3px;
	background-color: var(--text-brack);
	transform: translatex(-50%);
}

h4 {
	font-size: 2.1rem;
}
p{
	margin: 0 0 1em;
	line-height: 200%;
}
p.intro {
	font-size: 1.6rem;
	line-height: 174%;
}
body.logged-in.admin-bar .site-header:not(.noFixed) {
	top: 32px;
}
@media screen and (max-width: 940px) {
	h3.withen {
		margin-bottom: 56px;
	}
}
@media screen and (max-width: 840px) {
	h3.withen {
		font-size: 3.2rem;
	}
}
@media screen and (max-width: 782px) {
	body.logged-in.admin-bar .site-header:not(.noFixed) {
		top: 46px;
	}
}
@media screen and (max-width: 767px) {
	h3.withen {
		margin-bottom: 48px;
	}
}
@media screen and (max-width: 640px) {
	h2 {
		margin-bottom: 40px;
		font-size: 22pt;
	}
	h2:not(.nttl) span:after {
		height: 4px;
	}
	h3 {
		font-size: 2.3rem;
	}
}
@media screen and (max-width: 540px) {
	h3.withen {
		margin-bottom: 44px;
		font-size: 2.5rem;
	}
	h3.withen small {
		margin-top: 11px;
		padding-top: 16px;
		font-size: 10pt;
		letter-spacing: 2px;
	}
}
@media screen and (max-width: 480px) {
	body {
		font-size: 10.5pt;
	}
	p {
		line-height: 180%;
	}
	h2 {
		margin-bottom: 30px;
		font-size: 16pt;
	}
	h2:not(.nttl) span:after {
		height: 2px;
	}
	h3 {
		margin-bottom: 20px;
		font-size: 2.0rem;
	}
	h3.withen {
		margin-bottom: 34px;
		font-size: 2.0rem;
	}
	h3.withen small {
		margin-top: 7px;
		padding-top: 11px;
		font-size: 9pt;
		letter-spacing: 1px;
	}
	h3.withen small:before {
		height: 2px;
	}
	h4 {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 380px) {
	h2 {
		font-size: 13pt;
	}
}

/* ヘッダー：サイトタイトル */
.site{
	margin-bottom: 0px;
 }
.site-header {
	box-sizing: border-box;
	position: relative;
	border-bottom: 1px solid #e2e2e2;
	width: 100%;
	height: 70px;
	padding: 24px 0 14px;
	background: #fff;
	z-index: 100;
}
.site-header:not(.noFixed) {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
}
.site-header.transparent {
	border-bottom: none;
	background-color: transparent;
	pointer-events: none;
}
.site-header.transparent a, .site-header.transparent ul li, .site-header.transparent button {
	pointer-events: auto;
}
.site-header .siteWidth {
	width: calc(100% - 80px);
}
.site-title a {
	display: block;
	color: #2A4286;
	text-decoration: none;
	font-size: 18px;
	font-weight: 400;
	transition: opacity 0.3s;
}
.site-title a:hover {
	opacity: 0.6;
}
.site-title a img {
	width: 100%;
}
.site-branding{
	float:left;
	width: 174px;
	padding-top: 4px;
	padding-left: 9px;
}
.site-content {
	margin-top: 0;
	min-height: calc(100vh - 422px);
}
.site-branding h1 {
	margin: 0;
	font-size: 2em;
	white-space: nowrap;
}
.site-branding p {
	margin: 0;
	color: #999;
	font-size: 0.8em;
}
 .content-post-area{
    padding:30px 90px;
}
 .featured-image{
    padding: 5px;
     border:1px dotted #eee;
    display: block;
}
.hentry{
    margin-bottom: 0;
}

.site-header:not(.noFixed):not(.transparent) + * {
	margin-top: 70px !important;
}
@media screen and (max-width: 990px) {
	.site-header:not(.noFixed):not(.transparent) + * {
		margin-top: 60px !important;
	}
}
@media screen and (max-width: 480px) {
	.site-header:not(.noFixed):not(.transparent) + * {
		margin-top: 44px !important;
	}
}

.subHeader {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	background-color: #000;
	background-image: url(/wp-content/uploads/2025/08/bg_mainv-0819.jpg);
	background-position: center 62%;
	background-size: cover;
}
.site-header.transparent + .subHeader {
	padding-top: 48px;
}
.subHeader:before {
	content: "";
	display: block;
	width: 0;
	padding-top: 260px;
}
.subHeader h2 {
	margin: 0;
	text-align: center;
	font-size: 3.4rem;
	font-weight: 700;
	letter-spacing: 2px;
	line-height: 100%;
}
.subHeader h2 small {
	position: relative;
	display: block;
	margin-top: 17px;
	padding-top: 16px;
	font-size: 10pt;
	font-weight: 500;
	letter-spacing: 2px;
	text-transform: uppercase;
	line-height: 100%;
}
.subHeader h2 small:before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	display: block;
	width: calc(100% - 3em);
	height: 2px;
	background-color: var(--text-brack);;
	transform: translatex(-50%);
}
@media screen and (max-width: 920px) {
	.site-header.transparent + .subHeader {
		padding-top: 40px;
	}
	.subHeader:before {
		padding-top: 234px;
	}
}
@media screen and (max-width: 767px) {
	.subHeader:before {
		padding-top: 200px;
	}
	.subHeader h2 {
		font-size: 3.6rem;
	}
	.subHeader h2 {
		padding: 15px 60px 16px;
	}
}
@media screen and (max-width: 640px) {
	.subHeader h2 {
		font-size: 3.4rem;
	}
}
@media screen and (max-width: 540px) {
	.subHeader:before {
		padding-top: 160px;
	}
	.subHeader h2 {
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 480px) {
	.site-header.transparent + .subHeader {
		padding-top: 20px;
	}
	.subHeader:before {
		padding-top: 130px;
	}
	.subHeader h2 {
		font-size: 2rem;
		letter-spacing: 1px;
	}
	.subHeader h2 small {
		margin-top: 7px;
		font-size: 9pt;
		letter-spacing: 1px;
	}
	.subHeader h2 {
		padding: 8px 18px;
	}
}

footer,.entry-meta{
    font-style: italic;
    font-size: 0.8em;
}
.entry-meta {
	margin-bottom: 6px;
	color: var(--text-brack);
	font-size: 9pt;
	font-weight: normal;
	font-style: normal;
}
.cat-links, .tags-links {
    float: right;
    font-size: 8pt;
    line-height: 13pt;
    clear: both;
}
.cat-links a {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
.cat-links a:hover {
	text-decoration: none;
}
.cat-links a:not(:last-child), .tags-links a:not(:last-child) {
	margin-right: 6px;
}
body.single div.entry-content {
	padding-top: 40px;
	font-size: 11pt;
	clear: right;
}
body.single figure.eyecatch {
	margin: 0;
	width: 100%;
	padding-top: 20px;
	clear: both;
}
body.single figure.eyecatch img {
	width: 100%;
}
@media screen and (max-width: 480px) {
	body.single div.entry-content {
		padding-top: 20px;
	}	
}
@media screen and (max-width: 380px) {
	body.single div.entry-content {
		padding-top: 15px;
	}	
}

/* ヘッダー：メインメニュー */
.main-navigation {
	float: right;
	width: calc(100% - 210px);
	text-align: right;
	clear: none;
}
.main-navigation .menuWrap {
	display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
}
.main-navigation ul {
	display: block;
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 1.5em;
	left: -999em;
	z-index: 99999;
}
.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}
.main-navigation ul li:hover > ul, .main-navigation ul li.focus > ul {
	left: auto;
}
.main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
	left: 100%;
}
.main-navigation li{
	position: relative;
	display: inline-block;
	float: none;
}
.main-navigation a {
	display: block;
	text-decoration: none;
}
.main-navigation li.sml a {
	text-align: left;
	font-size: 9pt;
	line-height: 120%;
}
.main-navigation li.sml a span {
	display: block;
}
.main-navigation ul > li > a {
	position: relative;
	display: inline-block;
	padding: 0 17px;
	color: inherit;
	font-size: 10pt;
	font-weight: bold;
	line-height: 23px;
}
.site-header.transparent .main-navigation ul > li > a {
	color: var(--text-brack);
}
.main-navigation ul > li > a:after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -9px;
	display: block;
	width: 0%;
	height: 2px;
	background-color: var(--text-brack);
	transform: translatex(-50%);
	transition: width 0.3s;
}
.main-navigation ul > li > a:hover {
	color: inherit;
	text-decoration: none;
	opacity: 1;
}
.main-navigation ul > li > a:hover:after {
	width: 100%;
}
.main-navigation ul > li > a img {
	display: block;
	width: 91px;
}
.main-navigation ul ul a {
	width: 200px;
}
 .main-navigation ul li:hover ul{
    display: block;
}
 .main-navigation ul ul{
    box-shadow: none;
    width:150px;
    display: none;
     top: 55px;
    left:0;
    text-align: left;
    background: #fff;
    border-bottom:1px solid #ddd;
}
 .main-navigation ul ul a{
    width: 100%;
    line-height: 30px;
    border-top:1px solid #ddd;
    display: block;
}
.main-navigation ul ul li{
    display: block;
}

.main-navigation .sns {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	margin-left: 12px;
	line-height: 100%;
	transform: translatey(-1px);
}
.main-navigation .sns a {
	padding: 0;
}
.main-navigation .sns a:not(:last-child) {
	margin-right: 10px;
}
.main-navigation .sns a img {
	display: block;
	width: 27px;
	transform: translateY(1px);
}
.main-navigation .sns.circleBtn a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	width: 34px;
	height: 34px;
	background-color: #fff;
}
.main-navigation .sns.circleBtn a img {
	width: calc(100% - 14px);
	transform: translateY(0px);
}

/* comments */
.comments-area{
	margin-top: 30px;
	border-top: 1px dotted #ccc;
	padding-top: 30px;
}
.comments-area h2{
	margin-bottom: 15px;
}
.comments-area ol{
	margin: 0;
	list-style: none;
}
.comments-area ol.comment-list{
	padding: 0;
}
.comments-area ol.comment-list article{
	margin-bottom: 15px;
	background: #eee;
	padding: 15px;
	border-radius: 5px;
}
.comments-area footer{
	background: none;
	padding: 0;
}
.comments-area .comment-form label,.comments-area .comment-form input{
	display: block;
	font-weight: 400;
}
.comments-area .comment-form input,.comments-area .comment-form textarea{
	border:1px solid #ddd;
	border-radius: 0;
	box-shadow: none;
	padding: 10px;
	width: 100%;
}
.comments-area .comment-form .form-submit input{
	background:#2A4286;
	color: #fff;
	border:none;
	font-size: 13px;
	text-shadow:none;
}

/* secondary */
#secondary {
	display: none;
}

/* フッター */
.entry-footer {
	display: none;
}
.entry-footer span{
    display: block;
}
footer .footer-info {
    background: #000;
    padding:  40px 0 10px;
	text-align: center;
    color: #fff;
	font-size: 1.3rem;
    font-style: normal;
}
footer .footer-info .container > div {
	margin: 0 auto 15px;
	width: 100%;
	max-width: 800px;
	text-align: left;
}
footer .footer-info .container > div + div {
	margin-bottom: 40px;
}
footer .footer-info .mainlogo {
	display: inline-block;
	margin-bottom: 30px;
	width: 100%;
	max-width: 320px;
}
footer .footer-info .lg {
	display: inline-block;
	border: 1px solid #bcbfd3;
	border-radius: 2px;
	margin-right: 16px;
	width: 100%;
    max-width: 200px;
	padding: 8px 16px;
	vertical-align: middle;
}
footer .footer-info .lg img {
	display: block;
	width: 100%;
}
footer .footer-info a {
	color: #fff;
}
footer .footer-info .contact {
	display: inline-block;
	display: none;
	margin: 15px 0;
	border-radius: 4px;
	background-color: #fff;
	padding: 10px 1.5em 9px;
	color: #125993;
	font-size: 11pt;
	letter-spacing: 0.5px;
	line-height: 100%;
}
footer .footer-info .contact:hover {
	text-decoration: none;
}
footer .footer-info .logo {
	margin: 0 auto 38px;
    width: 100%;
    max-width: 180px;
}
footer .footer-info .logo a img {
	display: block;
	width: 100%;
}
footer .footer-info .copyright {
	margin: 0;
	text-align: center;
	color: #fff;
	font-size: 8.5pt;
	opacity: 0.5;
}
footer .footer-info p {
	width: 100%;
	text-align: center;
}
footer .footer-info p.address {
	margin-bottom: 24px;
}
footer .footer-info .links {
	margin-bottom: 36px !important;
	text-align: center !important;
	font-size: 10.5pt;
}
footer .footer-info .links a:first-child {
	margin-right: 20px;
}
footer .footer-info ul{
	margin: 0;
	padding: 0;
}
 footer .footer-info ul li{
    list-style: none;
    display: inline-block;
    padding: 0 10px;
}
 footer .footer-info ul ul{
    display: none;
}
footer .footer-info ul li a:hover{
    text-decoration: underline;
    color: #aaa;
}
@media screen and (max-width: 840px) {
	footer .footer-info .container > div {
		margin-bottom: 25px;
		text-align: center;
	}
	footer .footer-info .lg {
		display: block;
		margin: 0 auto 12px;
	}
	footer .footer-info .container > div number, footer .footer-info .container > div span {
		display: inline-block;
	}
}
@media screen and (max-width: 640px) {
	footer .footer-info {
		padding-top: 30px;
	}
	footer .footer-info .mainlogo {
		max-width: 240px;
	}
}
@media screen and (max-width: 540px) {
	footer .footer-info p.address {
		margin-bottom: 18px;
	}
	footer .footer-info .links {
		margin-bottom: 24px !important;
	}
	footer .footer-info .logo {
		margin-bottom: 26px;
		max-width: 160px;
	}
}
@media screen and (max-width: 480px) {
	footer .footer-info {
		padding-top: 23px;
	}
	footer .footer-info .mainlogo {
		margin-bottom: 20px;
		max-width: 200px;
	}
	footer .footer-info .lg {
		max-width: 166px;
	}
	footer .footer-info .contact {
		margin-top: 0;
		margin-bottom: 12px;
		width: 164px;
		font-size: 9pt;
	}
	footer .footer-info .container > div + div {
		margin-bottom: 25px;
	}

}
@media screen and (max-width: 380px) {
	footer .footer-info {
		font-size: 8pt;
	}
	footer .footer-info .container > div {
		margin-bottom: 20px;
		max-width: 300px;
	}
	footer .footer-info .lg {
		margin-bottom: 8px;
	}
	footer .footer-info .copyright {
		font-size: 7pt;
	}
}

#footer {
    background: #232429;
    font-size: 12px;
    color: #fff;
    padding: 30px 0;
}

@media screen and (max-width: 1080px) {
	.main-navigation li:not(:last-child) {
		margin-right: 5px;
	}
	.main-navigation ul > li > a {
		padding: 0 5px;
	}
}
@media (min-width: 921px){
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: flex !important;
		flex-direction: row;
		align-items: center;
		justify-content: flex-end;
	}
	.main-navigation li.onsp {
		display: none;
	}
	.main-navigation ul > li > a img.onsp {
		display: none;
	}
}
@media (max-width: 920px) {
	.site-header {
		height: 60px;
		padding-top: 0;
		padding-bottom: 0;
	}
	.site-header .siteWidth {
		width: 100%;
	}
	
	.site-branding {
		box-sizing: border-box;
		padding-top: 18px;
		padding-left: 20px;
	}
	
	.main-navigation a.sns {
		display: none;
	}
	
	.menu-main-container {
		margin-bottom: 16px;
		width: 100%;
	}
	.menu-toggle, .main-navigation.toggled ul {
		display: block;
	}
	#site-navigation .menu-toggle {
		box-sizing: border-box;
		position: absolute;
        top: 50%;
        right: 16px;
		display: block;
		border: none;
		border-radius: 3px;
		width: 43px;
		height: 34px;
		background-color: transparent;
		padding: 6px;
		box-shadow: none;
		-webkit-tap-highlight-color: transparent;
		touch-action: manipulation;
		z-index: 100;
		cursor: pointer;
		transition: border 0.6s;
		transform: translateY(-50%);
    }
    #site-navigation .menu-toggle:focus {
	    outline: 0;
    }
	#site-navigation .menu-toggle > div {
		position: relative;
		margin-top: 7px;
		margin-bottom: 7px;
	}
	#site-navigation .menu-toggle > div, #site-navigation .menu-toggle > div:before, #site-navigation .menu-toggle > div:after {
		display: block;
		width: 30px;
		height: 2px;
		background-color: #585F63;
		transition-property: background-color, transform;
		transition-duration: 0.4s;
	}
	.site-header.transparent #site-navigation .menu-toggle > div, 
	.site-header.transparent #site-navigation .menu-toggle > div:before, 
	.site-header.transparent #site-navigation .menu-toggle > div:after {
		background-color: var(--text-brack);
	}
	#site-navigation .menu-toggle > div:before, #site-navigation .menu-toggle > div:after {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
	}
	#site-navigation .menu-toggle > div:before {
		transform: translate(-50%, -9px);
	}
	#site-navigation .menu-toggle > div:after {
		transform: translate(-50%, 7px);
	}
	#site-navigation.toggled .menu-toggle > div {
		background-color: transparent !important;
		box-shadow: none !important;
	}
	#site-navigation.toggled .menu-toggle > div:before,
	#site-navigation.toggled .menu-toggle > div:after {
		top: 50%;
		left: 50%;
		width: 33px;
	}
	#site-navigation.toggled .menu-toggle > div:before {
		background-color: #fff !important;
		transform: translate(-50%, -50%) rotate(45deg);
	}
	#site-navigation.toggled .menu-toggle > div:after {
		background-color: #fff !important;
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	
	.main-navigation {
		width: 100%;
		padding-top: 0;
	}
	.main-navigation .menuWrap {
		position: absolute;
		top: 100%;
		left: 0;		
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		width: 100%;
		height: 0;
		padding: 0 5px;
		background-color: #999;
		overflow: hidden;
		transition: height 0.6s ease;
	}
	.main-navigation.toggled .menuWrap {
		height: 302px;
	}
	.site-header.transparent .main-navigation .menuWrap {
		top: 0;
	}
	.site-header.transparent .menu-main-container {
		padding-top: 20px;
	}
	.site-header.transparent .main-navigation.toggled .menuWrap {
		height: 380px;
	}
	.main-navigation ul {
		margin-bottom: 12px;
	}	
	.main-navigation li {
		display: block;
		float: left;
		margin-right: 0;
		width: 100%;
		text-align: left;
	}
	.main-navigation ul > li > a {
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		border-bottom: 1px solid #d0d0d0;
		height: 42px;
		background: none;
		padding: 0 20px;
		color: #fff !important;
	}
	.main-navigation ul > li.sns > a {
		height: 54px;
	}
	.main-navigation ul li.sns a img {
		width: 30px;
	}
	.main-navigation ul > li > a img.onpc {
		display: none;
	}
	.main-navigation ul li > a:before {
		content: none;
	}
	.main-navigation ul > li > a::after {
		content: none;
	}

     .main-navigation ul ul{
        padding-left: 15px;
    }
     footer .footer-info ul li{
        padding: 0 15px 0 0;
    }
	.main-navigation .sns {
		margin-left: 0;
	}
}
@media screen and (max-width: 480px) {
	.site-header {
		height: 44px;
	}
	.site-branding {
		padding-top: 10px;
		padding-left: 11px;
	}
	.main-navigation {
		padding-top: 10px;
	}
	.site-header.transparent .menu-main-container {
		padding-top: 8px;
	}
	.site-header.transparent .main-navigation.toggled .menuWrap {
		height: 366px;
	}
	#site-navigation .menu-toggle {
		right: 8px;
		width: 38px;
	}
	#site-navigation .menu-toggle > div, 
	#site-navigation .menu-toggle > div:before, 
	#site-navigation .menu-toggle > div:after {
		width: 26px;
	}
	#site-navigation.toggled .menu-toggle > div:before, 
	#site-navigation.toggled .menu-toggle > div:after {
		width: 28px;
	}
	#site-navigation .menu-toggle > div:before {
		transform: translate(-50%, -8px);
	}
	#site-navigation .menu-toggle > div:after {
		transform: translate(-50%, 6px);
	}
}

/* トップページ：mainv */
#mainv {
	position: relative;
	padding-top: 73%;
	background-color: #fff;
	background-image: url(/wp-content/uploads/2025/08/bg_mainv-0819.jpg);
	background-position: center top;
	background-size: cover;
	overflow: hidden;
}
#mainv:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-image: url(/wp-content/uploads/2025/07/bg_mainv-bottom.png);
	background-position: bottom left;
	background-size: 100% auto;
	background-repeat: no-repeat;
	transform: translateY(1px);
	pointer-events: none;
}
body:not(.home) #mainv {
	padding-top: 260px;
}
#mainv .slider {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#mainv img.concept {
	position: absolute;
	top: 4%;
	left: 3.5%;
	width: 416px;
}
#mainv .onimg {
	position: absolute;
	top: 40%;
	left: 50%;
	display: inline-block;
	margin: 0;
	width: 100%;
	max-width: 370px;
	color: #fff;
	line-height: 100%;
	transform: translate(-50%, -50%);
}
#mainv .onimg figure {
	margin: 0;
}
#mainv .onimg figure img {
	display: block;
	width: 100%;
}
#mainv .onimg.anim .logoWrap {
	position: relative;
	margin: 80px auto 0;
	width: 34.6%;
	transform: translateX(-9%);
}
#mainv .onimg.anim .logoWrap.ready {
	transform: translateX(-9%) rotate(45deg);
}
#mainv .onimg figure.logo {
	margin: 0;
	width: 100%;
}
#mainv .onimg.anim figure.logo.guide {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transform: scale(3);
}
#mainv .onimg.anim figure.logo div {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: flex-start;
}
#mainv .onimg.anim figure.logo div span {
	display: block;
	border-radius: 50%;
	width: calc(100% / 7 - 0.1px);
	background-color: #fff;
	opacity: 0;
	transform-origin: top left;
	will-change: transform;
}
#mainv .onimg.anim .logoWrap.ready figure.logo div span {
	transition: opacity 0.3s linear, transform 0.3s cubic-bezier(0.3, 0, 0.5, 1), background 0.3s;
}
#mainv .onimg.anim .logoWrap.ready figure.logo div span.core {
	background-color: #fff;
}
#mainv .onimg.anim .logoWrap.ready figure.logo div span.active {
	opacity: 1;
	transform: translate(0px, 0px) scale(1);
}
#mainv .onimg.anim .logoWrap.ready figure.logo div span.core.colored {
	background-color: #F29600;
	transform-origin: center;
	animation: jumping 0.5s cubic-bezier(0.25, 1, 0.8, 1) forwards;
	z-index: 1;
}
@keyframes jumping {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scale(2.5);
  }
  100% {
    transform: scale(1);
  }
}

/*
#mainv .onimg.anim figure.logo div:first-child {
	opacity: 1;
	transform: translatey(0px);
	transition: opacity 0.4s, transform 1.1s cubic-bezier(0.32, -1.5, 0.9, 1);
	will-change: transform;
}
#mainv .onimg.anim:not(.active) figure.logo div:first-child {
	transform: translatey(-20px);
	opacity: 0;
}
#mainv .onimg.anim figure.logo div:first-child span {
	transform: scale(1) translate(0, 0);
	transition: transform 1.1s cubic-bezier(0.32, -1.5, 0.9, 1);
	will-change: transform;
}
#mainv .onimg.anim:not(.active) figure.logo div:first-child span {
	transform: scale(1.3) translate(-5px, -5px);
}
#mainv .onimg.anim figure.logo div:not(:first-child) {
	opacity: 1;
	transform: translatey(0px);
	transition: opacity 0.3s, transform 0.8s cubic-bezier(0.32, -1.5, 0.9, 1);
	transition-delay: 0.6s;
	will-change: transform;
}
#mainv .onimg.anim:not(.active) figure.logo div:not(:first-child) {
	transform: translatey(-17px);
	opacity: 0;
}
#mainv .onimg.anim figure.logo div:not(:first-child) span {
	transform: scale(1) translate(0, 0);
	transition: transform 0.8s cubic-bezier(0.32, -1.5, 0.9, 1);
	transition-delay: 0.5s;
	will-change: transform;
}
#mainv .onimg.anim:not(.active) figure.logo div:not(:first-child) span {
	transform: scale(1.2) translate(-7px, -7px);
}
#mainv .onimg.anim figure.logo div:nth-child(3),
#mainv .onimg.anim figure.logo div:nth-child(3) span {
	transition-delay: 0.7s;
}
#mainv .onimg.anim figure.logo div:nth-child(4),
#mainv .onimg.anim figure.logo div:nth-child(4) span {
	transition-delay: 0.9s;
}
#mainv .onimg.anim figure.logo div:nth-child(5),
#mainv .onimg.anim figure.logo div:nth-child(5) span {
	transition-delay: 1.1s;
}
#mainv .onimg.anim figure.logo div:nth-child(6),
#mainv .onimg.anim figure.logo div:nth-child(6) span {
	transition-delay: 1.3s;
}
#mainv .onimg.anim figure.logo div:nth-child(7),
#mainv .onimg.anim figure.logo div:nth-child(7) span {
	transition-delay: 1.5s;
}
#mainv .onimg.anim figure.logo div:nth-child(8),
#mainv .onimg.anim figure.logo div:nth-child(8) span {
	transition-delay: 1.7s;
}
#mainv .onimg.anim figure.logo div:nth-child(9),
#mainv .onimg.anim figure.logo div:nth-child(9) span {
	transition-delay: 1.9s;
}
*/
/*#mainv .onimg.anim:not(.active) figure.logo div span.toDown {
	transform: translatey(-10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toUp {
	transform: translatey(10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toLeft {
	transform: translatex(10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toRight {
	transform: translatex(-10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toUpRight {
	transform: translate(-10px, 10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toUpLeft {
	transform: translate(10px, 10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toDownRight {
	transform: translate(-10px, -10px) scale(var(--scale-small));
}
#mainv .onimg.anim:not(.active) figure.logo div span.toDownLeft {
	transform: translate(10px, -10px) scale(var(--scale-small));
}

#mainv .onimg.anim figure.logo div span.delay1 {
	transition-delay: 0.6s;
}
#mainv .onimg.anim figure.logo div span.delay2 {
	transition-delay: 0.48s;
}
#mainv .onimg.anim figure.logo div span.delay3 {
	transition-delay: 0.36s;
}
#mainv .onimg.anim figure.logo div span.delay4 {
	transition-delay: 0.24s;
}
#mainv .onimg.anim figure.logo div span.delay5 {
	transition-delay: 0.12s;
}
#mainv .onimg.anim figure.logo div span.delay6 {
	transition-delay: 0s;
}
#mainv .onimg.anim:not(.active) figure.logo div span {
	opacity: 0;
	transform: scale(0.1);
}*/
/*
#mainv .onimg.anim:not(.active) figure.logo div span.core {
	opacity: 0;
	transform: scale(2);
}*/
#mainv .onimg.anim figure.logo div span:before {
	content: "";
	display: block;
	padding-top: 100%;
}
#mainv .onimg figure.txt {
	position: relative;
	width: 100%;
}
#mainv .onimg.anim figure.txt img.delay1,
#mainv .onimg.anim figure.txt img.delay2 {
	position: absolute;
	top: 0;
	left: 0;
}
#mainv .onimg.anim figure.txt img {
	opacity: 1;
	transition: opacity 0.8s, transform 0.8s cubic-bezier(0, 0, 0.2, 1);
}
#mainv .onimg.anim figure.txt:not(.active) img {
	opacity: 0;
}
#mainv .onimg.anim figure.txt:not(.active) img.delay2 {
	transform: translatex(-44px);
}
#mainv .onimg.anim figure.txt.active img.delay1 {
	transition-delay: 0.6s;
}
#mainv .onimg.anim figure.txt.active img.delay2 {
	transition-delay: 1.5s;
	transition-duration: 1.2s;
}
@media screen and (min-width: 1401px) {
	#mainv .onimg {
		top: 36%;
		width: 29.4%;
		max-width: 722px;
	}
}
@media screen and (min-width: 1601px) {
	#mainv .onimg {
		top: 34%;
	}
	#mainv .onimg.anim .logoWrap {
		margin-top: 100px;
	}
}
@media screen and (max-width: 1040px) {
	#mainv .onimg.anim .logoWrap {
		margin-top: 52px;
	}
	#mainv img.concept {
		width: 340px;
	}
}
@media screen and (max-width: 920px) {
	#mainv .onimg {
		top: 37%;
		max-width: 320px;
	}
	#mainv .onimg.anim .logoWrap {
		margin-top: 44px;
	}
}
@media screen and (max-width: 840px) {
	#mainv img.concept {
		width: 280px;
	}
}
@media screen and (max-width: 680px) {
	#mainv {
		padding-top: 96%;
	}
	#mainv .onimg {
		top: 32%;
		max-width: 280px;
	}
	#mainv .onimg.anim .logoWrap {
		margin-top: 38px;
	}
}
@media screen and (max-width: 640px) {
	#mainv img.concept {
		top: auto;
		left: auto;
		right: 1.5%;
		bottom: 8%;
		width: 240px;
	}
	#mainv h1 img.about {
		width: 177px;
	}
	#mainv h1 img.event {
		width: 150px;
	}
	#mainv h1 img.facilities {
		width: 129px;
	}
	#mainv h1 img.admission {
		width: 178px;
	}
	#mainv h1 img.contact {
		width: 180px;
	}
	#mainv h1 img.news {
		width: 210px;
	}
	#mainv h1 img.news2 {
		width: 116px;
	}
	#mainv .slick-dots {
		display: none !important;
	}
}
@media screen and (max-width: 540px) {
	#mainv .onimg {
		max-width: 220px;
	}
	#mainv .onimg.anim .logoWrap {
		margin-top: 30px;
	}
	#mainv .onimg figure.logo {
		/*margin-bottom: 22px;*/
	}
}
@media screen and (max-width: 480px) {
	#mainv {
		padding-top: 108%;
	}
	#mainv img.concept {
		width: 200px;
	}
	body:not(.home) #mainv {
		padding-top: 180px;
	}
	#mainv h1 {
		padding: 14px 40px;
	}
	#mainv h1 img.about {
		width: 141px;
	}
	#mainv h1 img.event {
		width: 120px;
	}
	#mainv h1 img.facilities {
		width: 103px;
	}
	#mainv h1 img.admission {
		width: 142px;
	}
	#mainv h1 img.contact {
		width: 143px;
	}
	#mainv h1 img.news {
		width: 168px;
	}
	#mainv h1 img.news2 {
		width: 92px;
	}
	#mainv .onimg {
		top: 34%;
	}
}
@media screen and (max-width: 440px) {
	#mainv {
		padding-top: 116%;
	}
}
@media screen and (max-width: 380px) {
	body:not(.home) #mainv {
		padding-top: 116px;
	}
	#mainv img.concept {
		bottom: 4%;
	}
	#mainv .codmon {
		width: 120px;
	}
	#mainv h1 img.about {
		width: 111px;
	}
	#mainv h1 img.event {
		width: 94px;
	}
	#mainv h1 img.facilities {
		width: 81px;
	}
	#mainv h1 img.admission {
		width: 112px;
	}
	#mainv h1 img.contact {
		width: 113px;
	}
	#mainv h1 img.news {
		width: 132px;
	}
	#mainv h1 img.news2 {
		width: 73px;
	}
}

/* 汎用Class */
.siteWidth {
	width: calc(100% - 40px);
	/*max-width: 960px;*/
	margin: 0 auto;
}
@media screen and (max-width: 420px) {
	.siteWidth {
		width: calc(100% - 20px);
	}
}

.inbl {
	display: inline-block;
}

.cf:after {
	content: "";
	display: table;
	clear: both;
}

.blk:not(:last-child) {
	margin-bottom: 80px;
}
@media screen and (max-width: 640px) {
	.blk:not(:last-child) {
		margin-bottom: 60px;
	}
}
@media screen and (max-width: 480px) {
	.blk:not(:last-child) {
		margin-bottom: 40px;
	}
}

.cols2 {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
}

/* 戻るボタン */
#rwdwp {
	position: fixed;
	right: 32px;
	bottom: 65px;
	width: 48px;
	height: 48px;
	z-index: 120;
}
#rwd {
	box-sizing: border-box;
	border: 1px solid #F29600;
	border-radius: 24px;
	background-color: #F29600;
	width: inherit;
	height: inherit;
	opacity: 0;
	transition: opacity 0.7s;
}
#rwd a {
	box-sizing: border-box;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: inherit;
	height: inherit;
	padding: 4px 3px 0 0;
	text-align: center;
	color: #3a2b20;
	font-size: 18px;
	vertical-align: middle;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	outline: none;
}
#rwd a div {
	width: 14px;
	height: 14px;
	border-top: 1px solid;
	border-right: 1px solid;
	border-color: #fff #fff transparent transparent;
	transform: rotate(-45deg);
}
@media screen and (max-width: 420px) {
	#rwdwp {
		right: 12px;
		bottom: 26px;
	}
}

/* アンカーリンク：とび先スクロール地点ずらし */
.ankerLocationer {
	position: absolute;
	left: 0;
	top: -100px;
}
@media screen and (max-width: 767px) {
	.ankerLocationer {
		top: -80px;
	}
}

/* コンテンツブロック */
.wr, .wr.nowidth > .inr,
body.single #pagecol, body.archive #pagecol, body.blog #pagecol,
body.search-results #pagecol, body.error404 #pagecol {
	margin-left: auto;
	margin-right: auto;
	width: calc(100% - 40px);
	max-width: 1100px;
}
.wr {
	position: relative;
	padding: 108px 0 140px;
}
.wr.nowidth {
	width: 100%;
	max-width: none;
}
body.home .wr:not(:last-child) {
	padding-bottom: 30px;
}
@media screen and (max-width: 480px) {
	.wr, .wr.nowidth > .inr,
	body.single #pagecol, body.archive #pagecol, body.blog #pagecol,
	body.search-results #pagecol, body.error404 #pagecol {
		width: calc(100% - 20px);
	}
}

/* ニュース一覧 */
ul.newsList {
	list-style: none;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 0;
	padding: 0;
}
ul.newsList > li {
	margin-right: 40px;
	border: 1px solid #ddd;
	border-radius: 2px;
	width: calc((100% - 80px) / 3 - 0.1px);
	overflow: hidden;
}
ul.newsList.separate4 > li {
	width: calc((100% - 72px) / 4 - 0.1px);
}
ul.newsList:not(.separate4) > li:nth-child(n + 4) {
	margin-top: 24px;
}
ul.newsList.separate4 > li:nth-child(n + 5) {
	margin-top: 24px;
}
ul.newsList > li .thumb {
	position: relative;
	display: block;
	margin-bottom: 14px;
	padding-top: 76%;
	overflow: hidden;
}
ul.newsList > li .thumb figure {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	transform: scale(1.01);
	transition: transform .4s cubic-bezier(0, 0.03, 0.21, 1);
	will-change: transform;
}
ul.newsList > li .thumb figure.nope {
	background-color: var(--thumbnail-nopeColor);
}
ul.newsList li > .thumb figure.nope:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-image: url(/wp-content/uploads/2025/07/favicon.png);
	background-position: center;
	background-size: 170px;
	background-repeat: no-repeat;
	color: #c9c9c9;
	font-weight: bold;
	line-height: 100%;
}
ul.newsList > li a.thumb:hover {
	opacity: 1;
}
ul.newsList > li a.thumb:hover figure {
	transform: scale(1.15);
}
ul.newsList li > div {
	padding: 0 25px 35px;
}
ul.newsList li .date {
	color: var(--text-brack);
	font-size: var(--information-listDateSize);
}
ul.newsList li h4 {
	margin-bottom: 0;
	max-height: 4.7em;
	text-align: justify;
	font-size: 1.4rem;
	line-height: 160%;
	overflow: hidden;
}
ul.newsList li h4 a {
	color: inherit;
}
ul.newsList li .opt {
	display: inline-block;
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	line-height: 180%;
}
ul.newsList li .opt a {
    display: inline-block;
    margin: 0 5px 3px 0;
    font-size: 9px;
    line-height: 9px;
    font-weight: bold;
    background: var(--text-brack);
    padding: 4px 6px;
    border-radius: 100px;
    color: #fff;
    letter-spacing: 0;
}
ul.newsList li .opt a:hover {
	text-decoration: none;
}
ul.newsList li p.exp {
	margin-bottom: 0;
	font-size: 1.3rem;
	line-height: 160%;
}
ul.newsList li .info {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	min-height: 1.8em;
	line-height: 100%;
}
ul.newsList li .info .date {
	flex-shrink: 0;
	transform: translateY(3px);
}
ul.newsList li .info .opt {
	flex-grow: 1;
	padding-left: 12px;
	text-align: right;
}
@media screen and (min-width: 981px) {
	ul.newsList.separate4 > li:nth-child(4n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 980px) {
	ul.newsList.separate4 > li {
		width: calc((100% - 48px) / 3 - 0.1px);
	}
	ul.newsList.separate4 > li:nth-child(n + 4) {
		margin-top: 24px;
	}
}
@media screen and (max-width: 980px) and (min-width: 768px) {
	ul.newsList.separate4 > li:nth-child(3n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 880px) {
	ul.newsList li > .thumb figure.nope:before {
		background-size: 140px;
	}
}
@media screen and (min-width: 768px) {
	ul.newsList:not(.separate4) > li:nth-child(3n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 767px) {
	ul.newsList > li, ul.newsList.separate4 > li {
		margin-right: 26px;
		width: calc((100% - 26px) / 2 - 0.1px);
	}
	ul.newsList > li h4 a {
		color: inherit;
	}
	ul.newsList > li .opt {
		font-size: 1.2rem;
	}
	ul.newsList > li:nth-child(2n) {
		margin-right: 0;
	}
	ul.newsList > li:nth-child(n + 3) {
		margin-top: 26px;
	}
	ul.newsList li > .thumb figure.nope:before {
		background-size: 124px;
	}
}
@media screen and (max-width: 640px) {
	ul.newsList li .info {
		flex-wrap: wrap;
	}
	ul.newsList li .info .date {
		margin-bottom: 7px;
	}
	ul.newsList li .info .opt {
		margin-bottom: 5px;
	}
}
@media screen and (max-width: 540px) {
	ul.newsList > li {
		margin-right: 20px;
		width: calc((100% - 20px) / 2 - 0.1px);
	}
	ul.newsList li > div {
		padding: 0 15px 28px;
	}
}
@media screen and (max-width: 480px) {
	ul.newsList li .opt {
		font-size: 1.2rem;
	}
	ul.newsList li p.exp {
		max-height: 7.2em;
		overflow: hidden;
	}
	ul.newsList li > .thumb figure.nope:before {
		background-size: 90px;
	}
}

/* ニュース一覧：デザインその２ */
ul.newsList2 {
	margin-left: 0;
	padding-left: 0;
}
ul.newsList2 li {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
}
ul.newsList2 li:not(:last-child) {
	margin-bottom: 80px;
	border-bottom: var(--separater-linestyle);
	padding-bottom: 80px;
}
ul.newsList2 li .info {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 3px;
	line-height: 100%;
}
ul.newsList2 li .date {
	display: block;
	margin-bottom: 10px;
	color: var(--text-brack);
	font-size: var(--information-listDateSize);
	line-height: 100%;
	transform: translateY(1px);
}
ul.newsList2 li h4 {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 10px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 140%;
}
ul.newsList2 li .opt {
	display: inline-block;
	margin-left: 20px;
	text-align: right;
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	line-height: 100%;
}
ul.newsList2 li .opt a, .cat-links a {
	display: inline-block;
	margin: 0 5px 3px 0;
	font-size: 9px;
	line-height: 9px;
	font-weight: bold;
	background: var(--text-brack);
	padding: 4px 6px;
	border-radius: 100px;
	color: #fff;
	letter-spacing: 0;
}
ul.newsList2 li a {
	color: inherit;
	text-decoration: none;
}
ul.newsList2 li > div {
	width: calc(100% - 100px);
}
ul.newsList2 li > .thumb {
	width: 88px;
	overflow: hidden;
}
ul.newsList2 li > .thumb figure {
	margin: 0;
	padding-top: 72%;
	background-position: center;
	background-size: cover;
	transform: scale(1);
	transition: transform .4s cubic-bezier(0, 0.03, 0.21, 1);
	will-change: transform;
}
ul.newsList2 li > .thumb figure.nope {
	position: relative;
	background-color: var(--thumbnail-nopeColor);
}
ul.newsList2 li > .thumb figure.nope:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-image: url(/wp-content/uploads/2025/07/favicon.png);
	background-position: center;
	background-size: 90px;
	background-repeat: no-repeat;
	color: #c9c9c9;
	font-weight: bold;
	line-height: 100%;
}
ul.newsList2 > li a.thumb:hover {
	opacity: 1;
}
ul.newsList2 > li a.thumb:hover figure {
	transform: scale(1.15);
}
ul.newsList2 li p.exp {
	margin-bottom: 0;
	font-size: 1.4rem;
	line-height: 160%;
}
ul.newsList2 li.parallax {
	opacity: 0;
	transform: translatey(60px);
	transition: transform 0.5s cubic-bezier(0, 0, 0.5, 1), opacity 0.5s;
}
ul.newsList2 li.parallax.animated {
	opacity: 1;
	transform: translatey(0px);
}
@media screen and (max-width: 767px) {
	ul.newsList2 li .opt a, .cat-links a {
		padding: 5px 6px 4px;
		text-indent: 1px;
	}
}
@media screen and (min-width: 481px) {
	ul.newsList2 li > div {
		width: calc(100% - 186px);
	}
	ul.newsList2 li > .thumb {
		width: 146px;
	}
}
@media screen and (min-width: 641px) {
	ul.newsList2 li > div {
		width: calc(100% - 210px);
	}
	ul.newsList2 li > .thumb {
		width: 170px;
	}
}
@media screen and (max-width: 640px) {
	ul.newsList2 li:not(:last-child) {
		margin-bottom: 70px;
		padding-bottom: 70px;
	}
}
@media screen and (max-width: 540px) {
	ul.newsList2 li {
		flex-direction: column-reverse;
	}
	ul.newsList2 li > div, ul.newsList2 li > .thumb {
		width: 100%;
	}
	ul.newsList2 li > .thumb {
		margin-bottom: 16px;
	}
	ul.newsList2 li > .thumb figure {
		padding-top: 56.65%;
	}
	ul.newsList2 li > .thumb figure.nope {
		padding-top: 120px;
		background-size: auto 80%;
	}
	ul.newsList2 li .opt {
		margin-left: 10px;
	}
	ul.newsList2 li p.exp {
		font-size: 10pt;
	}
}
@media screen and (max-width: 480px) {
	ul.newsList2 li:not(:last-child) {
		margin-bottom: 64px;
		padding-bottom: 60px;
	}
}

/* ニュース一覧：デザインその３ */
ul.newsList3 {
	margin-left: 0;
	padding-left: 0;
}
ul.newsList3 li {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
}
ul.newsList3 li:not(:last-child) {
	margin-bottom: 18px;
	border-bottom: var(--separater-linestyle);
	padding-bottom: 18px;
}
ul.newsList3 li .info {
	flex-shrink: 0;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	margin-right: 20px;
	padding-top: 4px;
	line-height: 100%;
}
ul.newsList3 li .date {
	display: block;
	margin-bottom: 0;
	color: var(--text-brack);
	font-size: var(--information-listDateSize);
	line-height: 100%;
	transform: translateY(1px);
}
ul.newsList3 li h4 {
	flex-grow: 1;
	margin-bottom: 0;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 160%;
}
ul.newsList3 li h4 a {
	display: block;
}
ul.newsList3 li h4 a:hover {
	opacity: 0.8;
}
ul.newsList3 li .opt {
	display: inline-block;
	margin-left: 20px;
	width: 72px;
	text-align: right;
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	line-height: 100%;
}
ul.newsList3 li .opt a {
	display: inline-block;
	margin: 0;
	border-radius: 100px;
	width: 100%;
	background: var(--text-brack);
	padding: 5px 6px;
	color: #fff;
	text-align: center;
	font-size: 9px;
	line-height: 9px;
	font-weight: bold;
	letter-spacing: 0;
}
ul.newsList3 li a {
	color: inherit;
	text-decoration: none;
}
ul.newsList3 li p.exp {
	margin-bottom: 0;
	font-size: 1.4rem;
	line-height: 160%;
}
ul.newsList3 li.parallax {
	opacity: 0;
	transform: translatey(60px);
	transition: transform 0.5s cubic-bezier(0, 0, 0.5, 1), opacity 0.5s;
}
ul.newsList3 li.parallax.animated {
	opacity: 1;
	transform: translatey(0px);
}
@media screen and (max-width: 767px) {
	ul.newsList3 li .opt a, .cat-links a {
		padding: 5px 6px 4px;
		text-indent: 1px;
	}
}
@media screen and (max-width: 540px) {
	ul.newsList3 li {
		flex-direction: column;
	}
	ul.newsList3 li .info {
		margin: 0 0 6px;
	}
	ul.newsList3 li .opt {
		margin-left: 16px;
		transform: translateY(-1px);
	}
}


.toNews {
	margin-top: 28px;
	text-align: right;
}
.toNews a {
	color: inherit;
	font-weight: 600;
}
.toNews a:before {
	content: '';
	display: inline-block;
	margin-right: 26px;
	width: 32px;
	height: 6px;
	border-bottom: solid 1px;
	border-right: solid 2px;
	transform: skew(45deg) translate(14px, -2px);
	transition: transform 0.15s cubic-bezier(0, 0, 0.5, 1);
	backface-visibility: hidden;
}
.toNews a:hover:before {
	transform: skew(45deg) translate(18px, -2px);
}
@media screen and (max-width: 640px) {
	.toNews {
		margin-top: 10px;
	}
}

/* セパレートブロック */
#pagecol {
	/*padding: 280px 0 400px;*/
	padding: 140px 0 210px;
}
#pagecol:after {
	content: "";
	display: table;
	clear: both;
}
#pagecol > div.pagemain {
	float: left;
	width: calc(100% - 315px);
}
#pagecol > div.pagemain .entry-content p {
	font-size: 15pt;
    line-height: 26pt;
    letter-spacing: 0px;
}
body.single #pagecol > div.pagemain .entry-content h4 {
	font-size: 1.5rem;
	line-height: 150%;
}
body.single #pagecol > div.pagemain .entry-content p {
	font-size: 1.4rem;
	line-height: 180%;
}
body.single #pagecol > div.pagemain .entry-content p:not(:last-child) {
	margin-bottom: 38px;
}
#pagecol h2 {
	text-align: left;
	font-weight: 800;
	font-size: 2.4rem;
	line-height: 150%;
	letter-spacing: 1px;
	border-bottom: solid 2px #555;
	padding: 0 0 6px 3px;
	margin-bottom: 100px;
}
#pagecol h3:not(.enbg) {
	margin-bottom: 64px;
	border-bottom: 2px solid #343a40;
	padding-bottom: 8px;
	text-align: left;
	font-size: 2.4rem;
	font-weight: 800;
	line-height: 140%;
}
body.single #pagecol h3:not(.enbg) {
	margin-bottom: 40px;
}
#pagecol > div.pagemain .blk:last-child {
	padding-bottom: 0;
}

#pagecol > div.pagesub {
	float: right;
	width: 260px;
	padding-top: 50px;
}
#pagecol > div.pagesub section:not(:last-child) {
	margin-bottom: 40px;
}
#pagecol > div.pagesub > a:first-child {
	margin-top: 27px;
	display: inline-block;
}
#pagecol > div.pagesub > a:first-child img {
	width: 100%;
}
#pagecol > div.pagesub h3 {
	margin-bottom: 8px !important;
	border-bottom: solid 2px #ccc;
	padding: 0 0 0.3em 0.3em;
	font-size: 11pt;
	font-weight: 700;
	letter-spacing: 0.5px;
}
#pagecol > div.pagesub ul {
	margin-left: 0;
	padding-left: 0;
}
#pagecol > div.pagesub li {
	list-style: none;
}
#pagecol > div.pagesub ul > li {
	line-height: 140%;
}
ul.list_cat > li.year > a:after {
	content: "\25B6\FE0E";
}
ul.list_cat > li.year > a.open:after {
	content: "\25BC";
}
ul.list_cat > li.year > a:not(.open) + ul {
	display: none;
}
ul.list_cat > li.year > a + ul > li:last-child {
	border-bottom: none;
}
ul.list_cat > li.year > a + ul > li > a {
	padding-left: 22px;
}
@media screen and (max-width: 940px) {
	#pagecol {
		padding-top: 110px;
	}
}
@media screen and (max-width: 840px) {
	#pagecol {
		padding-bottom: 190px;
	}
	#pagecol > div.pagemain, #pagecol > div.pagesub {
		float: none;
	}
	#pagecol > div.pagemain {
		margin-bottom: 60px;
		width: 100%;
	}
	#pagecol > div.pagesub {
		display: flex;
		flex-direction: row;
		align-items: flex-start;
		justify-content: space-between;
		margin: 0 auto;
		width: 100%;
		padding-top: 0;
	}
	#pagecol > div.pagesub section {
		width: calc(50% - 17px);
	}
	#pagecol > div.pagesub > a {
		display: block !important;
		margin: 0 auto;
		max-width: 280px;
	}
	#pagecol > div.pagesub iframe {
		width: 100%;
	}
}
@media screen and (max-width: 840px) and (min-width: 581px) {
	#pagecol > div.pagesub section:not(:last-child) {
		margin-bottom: 0;
	}
}
@media screen and (max-width: 767px) {
	#pagecol, .wr {
		padding: 94px 0 150px;
	}
	#pagecol h3:not(.enbg) {
		font-size: 2.2rem;
	}
}
@media screen and (max-width: 640px) {
	#pagecol, .wr {
		padding-top: 76px;
		padding-bottom: 130px;
	}
	#pagecol h2 {
		font-size: 16pt;
	}
	body.single #pagecol > div.pagemain .entry-content p:not(:last-child) {
		margin-bottom: 28px;
	}
}
@media screen and (max-width: 580px) {
	#pagecol h3:not(.enbg) {
		margin-bottom: 48px;
		font-size: 2rem;
	}
	#pagecol > div.pagesub {
		display: block;
	}
	#pagecol > div.pagesub section {
		width: 100%;
	}
}
@media screen and (max-width: 540px) {
	#pagecol, .wr {
		padding: 70px 0 104px;
	}
}
@media screen and (max-width: 480px) {
	#pagecol h2 {
		font-size: 14pt;
	}
	#pagecol h3:not(.enbg) {
		margin-bottom: 40px;
	}
	body.single #pagecol > div.pagemain .entry-content p {
		font-size: 10pt;
	}
}

ul.list_cat, ul.dsc {
	margin-left: 0;
	margin-bottom: 50px;
	padding-left: 0;
}
.pagesub ul.list_cat:last-child {
	margin-bottom: 0;
}
.cols2.typelist ul.list_cat {
	margin-bottom: 30px;
}
ul.list_cat li, ul.dsc li {
	list-style: none;
	border-bottom: solid 1px #ccc;
}
ul.dsc li:last-child {
	border-bottom: none;
}
ul.list_cat li ul {
	margin-left: 0;
	padding-left: 0;
}
ul.list_cat li a, ul.dsc li a {
	color: #161616;
	font-size: 10pt;
	line-height: 17pt;
	text-decoration: none;
	padding: 8px 11px;
	letter-spacing: 0.5px;
	display: block;
}
ul#relates.list_cat li a {
	padding: 12px 10px;
}
.cols2.typelist ul.list_cat li a {
	padding-top: 10px;
	padding-bottom: 10px;
}
ul.list_cat li a .chargeMark {
	display: inline-block;
	margin-left: 15px;
}
ul.list_cat li a, ul.list_cat li a .chargeMark img {
	vertical-align: sub;
}
ul.list_cat li a .chargeMark img:first-child {
	margin-right: 8px;
}
/*ul.list_cat li a, */ul.dsc li a i {
	font-size: 28pt;
}
/*ul.list_cat li a, */ul.dsc li a i.fa-file-pdf {
	color: #e30000;
}
ul.list_cat li a:hover, ul.dsc li a:hover {
	background: #fafafa;
}
ul.list_cat li a span {
	padding: 0 10px;
}
.num {
	padding: 0 10px;
	letter-spacing: 2px;
	font-family: 'Abel', sans-serif;
}
ul.list_cat li a span.num {
	font-family: inherit;
}
@media screen and (max-width: 640px) {
	ul.list_cat, ul.dsc {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 480px) {
	ul.dsc li a i {
		font-size: 16pt;
	}
}
@media screen and (max-width: 420px) {
	ul.list_cat li a .chargeMark {
		margin-left: 5px;
		padding: 0;
	}
}

/* 記事一覧：ページ送り */
.pagenav {
	margin-top: 30px;
	padding: 0 10px;
	text-align: center;
}
.pagenav:empty {
	margin-top: 0;
}
.pagenav .pagination {
	justify-content: center;
}
.pagenav span, .pagenav a {
	display: inline-block;
	margin: 0 12px 10px 0;
	border: 1px solid #707070;
	min-width: 32px;
	height: 32px;
	padding: 7px 8px 5px;
	font-family: Arial, sans-serif;
	font-weight: bold;
	font-size: 1.6rem;
	letter-spacing: 0.5px;
	text-indent: 0.5px;
	line-height: 100%;
}
.pagenav span:not(.dots) {
	background-color: var(--text-brack);
	color: #fff;
}
.pagenav .dots {
	border: none;
	padding-left: 4px;
	padding-right: 4px;
	color: #888;
}
.pagenav a {
	text-decoration: none;
}
.pagenav a:hover {
	opacity: 0.8;
}
.pagenav a.prev {
	padding-left: 4px;
}
.pagenav a.next {
	padding-right: 4px;
}

.mapwrap {
	position: relative;
	padding-top: 37%;
}
.mapwrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 1101px) {
	.mapwrap {
		padding-top: 400px;
	}
}

#philosophy {
	text-align: center;
}
#philosophy h4 {
	margin-bottom: 1em;
	font-size: 2.5rem;
	line-height: 150%;
}
#philosophy p.intro {
	margin-bottom: 0;
	font-size: 1.7rem;
	line-height: 240%;
}
@media screen and (max-width: 640px) {
	#philosophy h4 {
		margin-bottom: 0.6em;
		font-size: 2.3rem;
	}
	#philosophy p.intro {
		font-size: 1.6rem;
		line-height: 200%;
	}
}
@media screen and (max-width: 480px) {
	#philosophy h4 {
		font-size: 1.8rem;
	}
	#philosophy p.intro {
		line-height: 190%;
	}
}

#business {
	text-align: center;
}

#archives .gallery {
	margin-left: -14px;
	margin-bottom: 0;
	width: calc(100% + 28px);
}
#archives .gallery .slick-slide > div {
	margin: 0 14px;
}
#archives .gallery .slick-slide > div a {
	position: relative;
	display: block;
	border: 1px solid #ddd;
	border-radius: 2px;
	width: 100%;
	padding-top: 100%;
	overflow: hidden;
}
#archives .gallery .slick-slide > div a .figure {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	transform: scale(1);
    transition: transform .4s cubic-bezier(0, 0.03, 0.21, 1);
    will-change: transform;
}
#archives .gallery .slick-slide > div a:hover {
	opacity: 1;
}
#archives .gallery .slick-slide > div a:hover .figure {
	transform: scale(1.15);
}
@media screen and (max-width: 480px) {
	#archives .gallery {
		margin-left: -7px;
		width: calc(100% + 14px);
	}
	#archives .gallery .slick-slide > div {
		margin: 0 7px;
	}
}

#company dl {
	margin: 0 auto;
	border-top: var(--separater-linestyle);
	width: 100%;
	max-width: 640px;
	padding-top: 24px;
}
#company dl dt {
	width: 8em;
	padding-left: 0.7em;
}
#company dl dd {
	margin-bottom: 24px;
	border-bottom: var(--separater-linestyle);
	padding-left: 9.8em;
	padding-bottom: 24px;
}
#company dl dd a {
	color: inherit;
}
#company dl dd:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 640px) {
	#company dl {
		max-width: 460px;
	}
	#company dl dt {
		float: none;
		margin-bottom: 4px;
		width: 100%;
		padding-left: 0;
		font-weight: bold;
	}
	#company dl dd {
		padding-left: 0;
	}
}

#contact form {
	margin: 0 auto;
	max-width: 840px;
}
#contact form section {
	border-top: none;
}
#contact form section > div {
	border-bottom: var(--separater-linestyle);
}
#contact form section > div:first-child {
	padding-top: 0;
}
#contact form section div > h4 {
	width: 174px;
	padding-left: 0.7em;
}
form section {
	display: block;
	margin-bottom: 50px !important;
	border-top: 1px solid #b0b0b0;
}
form section > div {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 40px 0;
	border-bottom: 1px solid #b0b0b0;
}
form section div > h4 {
	box-sizing: border-box;
	float: left;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	margin: 0;
	width: 120px;
	font-size: 1.4rem;
	font-weight: normal;
	letter-spacing: 0.5px;
	line-height: 140%;
	clear: left;
}
form section div > h4.text {
	padding-top: 0.8em;
}
form section div > h4.select {
	padding-top: 0.3em;
}
form section div > div {
	display: block;
	margin-left: 0;
	width: calc(100% - 210px);
	padding: 0;
}
form section div > div p {
	margin: 0;
}
form section div > div h5 {
	margin: 0 0 5px;
	font-size: 11pt;;
}
form section div > div h5:not(:first-child) {
	margin-top: 20px;
}
form section div > div.full {
	width: 100%;
}
form section div > div.twofield {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: space-between;
}
form section div > div.twofield label {
	width: calc(50% - 12px);
	display: flex;
	margin-right: 0;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	white-space: nowrap;
}
form section div > div.twofield label span {
	box-sizing: border-box;
	min-width: 2.7em;
	padding-right: 0.7em;
	text-align: right;
}
form section div > div.birth p {
	display: inline-block;
}
form section div > div.birth p:empty {
	display: none;
} 
form section div > div.multiInput > div {
	width: 100%;
}
form section div > div.multiInput > div:not(:last-child) {
	margin-bottom: 6px;
}
form section div > div.multiInput label {
	display: flex;
	margin-right: 0;
	margin-bottom: 10px;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	white-space: nowrap;
}
form section div > div.multiInput label:last-child {
	margin-bottom: 0;
}
form section div > div.multiInput label span {
	box-sizing: border-box;
	min-width: 4.8em;
	padding-right: 0.7em;
	text-align: right;
}
form section div > div label {
	margin-right: 15px;
	font-size: 1.4rem;
}
form section div > div > label:last-child {
	margin-right: 0;
}
form .acceptance {
	margin-bottom: 40px;
	padding: 8px 0;
	text-align: center;
}
form .acceptance label {
	margin: 0;
}
form .acceptance a {
	color: #787878;
	text-decoration: underline;
}
.wpcf7 form .wpcf7-response-output {
	margin: 0 0 40px;
}
.wpcf7 form.invalid .wpcf7-response-output {
	border-color: #d00;
	color: #d00;
}
input:not([type="checkbox"]), button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input[type="text"], input[type="tel"], input[type="email"], textarea {
	box-sizing: border-box;
	font-size: 12pt;
	line-height: 160%;
	border: solid 1px #b7b7b7;
	border-radius: 5px;
	padding: 6px 12px;
	margin: 0;
	width: 100%;
	background-color: #fff;
}
input[name=zip] {
	max-width: 8em;
}
input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus,
textarea:focus, input[type="radio"]:focus, input[type="checkbox"] {
	background: #fff;
	border: 1px solid #f2b2b2;
}
select {
	position: relative;
	font-family: monospace;
	font-size: 12pt;
	line-height: 160%;
	border: solid 1px #b7b7b7;
	border-radius: 5px;
	background-color: #fff;
	padding: 6px 12px;
	padding-right: calc(12px + 1.5em);
	margin: 0;
	color: #333;
	cursor: pointer;
}
select::-ms-expand {
    display: none;
}

.selwrap {
	position: relative;
	display: inline-block;
	width: auto;
}
.selwrap:after {
	content: "\25BD";
	position: absolute;
	top: 0;
	right: 10px;
	height: 100%;
	font-size: 1.2rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	line-height: 100%;
	transform: translatey(0px);
	pointer-events: none;
}

input[type=radio], input[type=checkbox] {
	display: none;
}
input[type=radio] + label, input[type=checkbox] + label, input[type=checkbox] + .wpcf7-list-item-label {
	position: relative;
	padding-left: 1.5em;
	font-size: 1.4rem;
}
input[type=radio] + label:after, input[type=radio] + label:before,
input[type=checkbox] + label:after, input[type=checkbox] + label:before,
input[type=checkbox] + .wpcf7-list-item-label:after, input[type=checkbox] + .wpcf7-list-item-label:before {
	position: absolute;
	content: "";
	display: block;
	top: 50%;
}
input[type=radio] + label:after {
	left: 0;
	margin-top: -8px;
	width: 16px;
	height: 16px;
	border: 1px solid #b7b7b7;
	border-radius: 50%;
}
input[type=radio] + label:before {
	left: 4px;
	margin-top: -4px;
	width: 10px;
	height: 10px;
	background: #827e5e;
	border-radius: 50%;
	opacity: 0;
}
input[type=radio]:checked + label:before {
	opacity: 1;
}
input[type=radio]:checked + label:hover:after {
	border-color: #0171bd;
}
input[type=checkbox] + label:after,
input[type=checkbox] + .wpcf7-list-item-label:after {
	left: 0;
	margin-top: -8px;
	width: 15px;
	height: 15px;
	border: 1px solid #b7b7b7;
	border-radius: 3px;
}
input[type=checkbox] + label:before,
input[type=checkbox] + .wpcf7-list-item-label:before {
	top: 52%;
	left: 2px;
	margin-top: -4px;
	width: 11px;
	height: 4px;
	opacity: 0;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(-55deg);
	z-index: 1;
}
input[type=checkbox]:checked + label:before,
input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	opacity: 1;
}
input[type=checkbox]:checked + label:after,
input[type=checkbox]:checked + .wpcf7-list-item-label:after {
	/*border-color: #827e5e;
	background-color: #827e5e;*/
	background-color: #2e3138;
}

input[type="reset"] {
	color: #fff;
	font-size: 11pt;
	font-weight: bold;
	letter-spacing: 0.5px;
	background: #d5d3bd;
	text-align: center;
	padding: 16px 0;
	box-sizing: border-box;
	border-radius: 4px;
	cursor: pointer;
}
input[type="reset"]:hover {
	opacity: 0.8;
}
input[type="submit"] {
	color: #fff;
	font-size: 11pt;
	letter-spacing: 0.5px;
	background: #827e5e;
	text-align: center;
	padding: 16px 0;
	box-sizing: border-box;
	border-radius: 3px;
	cursor: pointer;
}
input[type="submit"]:hover {
	opacity: 0.8;
}
form .btns {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: center;
}
form .btns p {
	margin-bottom: 0;
	width: 100%;
	text-align: center;
}
form .btns input[type="reset"] {
	width: 30%;
}
form .btns input[type="submit"] {
	display: block;
	margin: 0 auto;
	border-radius: 100px;
	width: 100%;
	max-width: 540px;
	background-color: var(--text-brack);
	padding: 19px 0 20px;
	font-size: 1.6rem;
	box-shadow: none;
}
form .btns .submitwrap {
	position: relative;
	display: inline-block;
	width: 100%;
	max-width: 480px;
}
form .btns .submitwrap:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 22px;
	display: inline-block;
	width: 0.55em;
	height: 0.55em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg) translateY(-75%);
}
form .wpcf7-spinner {
	display: block;
	margin: 10px auto 0;
}
form .must {
	float: right;
	margin-left: 12px;
	border-radius: 3px;
	background: #e00;
	padding: 4px 5px 3px 6px;
	color: #fff;
	font-size: 8pt;
	line-height: 100%;
	font-weight: bold;
}
form .wpcf7-turnstile {
	margin-bottom: 40px;
	text-align: center;
}
@media screen and (max-width: 820px) and (min-width: 641px) {
	form section div > div.twofield {
		display: block;
	}
	form section div > div.twofield label {
		width: 100%;
	}
	form section div > div.twofield label:first-child {
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 640px) {
	form section div > h4 {
		display: block;
		margin-bottom: 14px;
		width: 100%;
		font-weight: bold;
	}
	#contact form section div > h4 {
		padding-left: 0;
	}
	form section div > h4 br {
		display: none;
	}
	form section div > h4.text, form section div > h4.select {
		padding-top: 0;
	}
	form section div > div {
		width: 100%;
	}
	form .must {
		float: none;
		display: inline-block;
		vertical-align: baseline;
		margin-left: 10px;
	}
}
@media screen and (max-width: 520px) {
	form section div > div.twofield {
		display: block;
	}
	form section div > div.twofield label {
		width: 100%;
	}
	form section div > div.twofield label:first-child {
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 480px) {
	form section {
		margin-bottom: 30px !important;
	}
	form section > div {
		padding-top: 18px;
		padding-bottom: 18px;
	}
	form section div > h4 {
		margin-bottom: 12px;
	}
	form .btns .submitwrap {
		width: calc(70% - 10px);
	}
	input[type=checkbox] + .wpcf7-list-item-label {
		font-size: 1.3rem;
	}
	form .wpcf7-turnstile {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 434px) {
	form dl dt, form dl dd {
		padding-left: 0;
	}
}

#access.wr {
	background-color: transparent;
	padding-bottom: 0;
}
#access .inr {
	margin-bottom: 50px;
}
#access .address {
	text-align: center;
}
#access .address a {
	color: inherit;
}

.policyDesign.wr {
	max-width: 980px;
}
.policyDesign p.intro {
	margin-bottom: 50px;
}
.policyDesign h3 {
	margin-bottom: 16px;
	border-bottom: none;
	padding: 0;
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 160%;
}
.policyDesign section:not(:last-child) {
	margin-bottom: 60px;
}
.policyDesign section p:last-child {
	margin-bottom: 0;
}
.policyDesign section a {
	color: #539dca;
}
.policyDesign .written {
	text-align: right;
}
@media screen and (max-width: 640px) {
	.policyDesign h3 {
		font-size: 2.1rem;
	}
}
@media screen and (max-width: 480px) {
	.policyDesign h3 {
		margin-bottom: 18px;
		font-size: 1.8rem;
	}
	.policyDesign section {
		font-size: 1.5rem;
	}
	.policyDesign section:not(:last-child) {
		margin-bottom: 50px;
	}
}

figure.wp-block-image figcaption {
	text-align: center;
}
