/*
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.

*/

html {
	box-sizing: border-box;
	font-size: 72%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	margin: 0;
	background: #fff;
	color: #222;
	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: #000;
}
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: 15px 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;
	min-height: calc(100vh - 440px);
}
.entry-content {
	margin-top: 0;
}
.entry-content section:not(:last-child) {
	margin-bottom: 150px;
}
.page-links {
	clear: both;
	margin: 0 0 1.5em;
}
@media screen and (max-width: 840px) {
	.entry-content section:not(:last-child) {
		margin-bottom: 120px;
	}
}
@media screen and (max-width: 680px) {
	.entry-content section:not(:last-child) {
		margin-bottom: 100px;
	}
}
@media screen and (max-width: 480px) {
	.entry-content section:not(:last-child) {
		margin-bottom: 86px;
	}
}

.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;
}
.gallery {
	margin-bottom: 1.5em;
}
.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}
.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-caption {
	display: block;
}
.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;
}

.subHeader {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	background-color: #273f75;
	padding-top: 76px;
}
.subHeader:before {
	content: "";
	display: block;
	width: 0;
	padding-top: 310px;
}
.subHeader h2 {
	margin: 0;
	text-align: center;
	color: #fff;
	font-size: 3.8rem;
	font-weight: 700;
	letter-spacing: 2px;
	line-height: 100%;
}
.subHeader h2 small {
	display: block;
	margin-top: 11px;
	font-size: 10pt;
	font-weight: 500;
	letter-spacing: 2px;
	line-height: 100%;
}
.subHeader.phbg {
	background-color: #A8ADB3;
	background-image: url(/wp-content/uploads/2025/06/bg_subheader1.jpg);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.subHeader.phbg.ver2 {
	background-color: #E1E8F2;
	background-image: url(/wp-content/uploads/2025/06/bg_subheader2.jpg);
}
.subHeader.phbg h2 {
	border-radius: 6px;
	background-color: #ffffffbd;
	padding: 20px 2.5em 21px;
	color: #000;
	backdrop-filter: blur(8px);
}
@media screen and (max-width: 960px) {
	.subHeader {
		padding-top: 74px;
	}
	.subHeader:before {
		padding-top: 270px;
	}
}
@media screen and (max-width: 767px) {
	.subHeader:before {
		padding-top: 240px;
	}
	.subHeader h2 {
		font-size: 3.6rem;
	}
	.subHeader.phbg h2 {
		padding: 15px 60px 16px;
	}
}
@media screen and (max-width: 640px) {
	.subHeader {
		padding-top: 60px;
	}
	.subHeader h2 {
		font-size: 3.4rem;
	}
}
@media screen and (max-width: 560px) {
	.subHeader.phbg h2.long {
		width: calc(100% - 40px);
		padding-left: 0;
		padding-right: 0;
	}
}
@media screen and (max-width: 540px) {
	.subHeader {
		padding-top: 56px;
	}
	.subHeader:before {
		padding-top: 220px;
	}
	.subHeader h2 {
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 480px) {
	.subHeader {
		padding-top: 50px;
	}
	.subHeader:before {
		padding-top: 160px;
	}
	.subHeader h2 {
		font-size: 2rem;
		letter-spacing: 1px;
	}
	.subHeader h2 small {
		margin-top: 7px;
		font-size: 9pt;
		letter-spacing: 1px;
	}
	.subHeader.phbg h2,
	.subHeader.phbg h2.long {
		padding: 8px 18px;
	}
	.subHeader.phbg h2 .ja {
		padding: 0 8px;
	}
}

/* リンク：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.7;
}

/* 見出し：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 68px;
	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: #000;
	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 {
    top: 56px;
}
@media screen and (max-width: 940px) {
	h3.withen {
		margin-bottom: 56px;
	}
	.overbg h3.withen {
		margin-bottom: 44px;
	}
}
@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 {
		top: 70px;
	}
}
@media screen and (max-width: 767px) {
	h3.withen {
		margin-bottom: 48px;
	}
	.overbg h3.withen {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 640px) {
	body.logged-in.admin-bar .site-header {
		top: 58px;
	}
	h2 {
		margin-bottom: 40px;
		font-size: 22pt;
	}
	h2:not(.nttl) span:after {
		height: 4px;
	}
	h2 img.chuo {
		max-width: 362px;
	}
	h2 img.higashi {
		max-width: 330px;
	}
	h2 img.news {
		max-width: 168px;
	}
	h2 img.instagram {
		max-width: 146px;
	}
	h3 {
		font-size: 2.3rem;
	}
	h3 img.chuo {
		max-width: 309px;
	}
	h3 img.higashi {
		max-width: 282px;
	}
}
@media screen and (max-width: 540px) {
	h3.withen {
		margin-bottom: 44px;
		font-size: 2.5rem;
	}
	.overbg h3.withen {
		margin-bottom: 32px;
	}
	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;
	}
	h2 img.chuo {
		max-width: 214px;
	}
	h2 img.higashi {
		max-width: 195px;
	}
	h2 img.news {
		max-width: 99px;
	}
	h2 img.instagram {
		max-width: 86px;
	}
}

/* ヘッダー：サイトタイトル */
.site{
	margin-bottom: 0px;
 }
.site-header {
	position: fixed;
	top: 24px;
	left: 0;
	display: block;
	width: 100%;
	z-index: 10;
}
.site-header .siteWidth {
	box-sizing: border-box;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: space-between;
	margin: 0 auto;
	border-radius: 12px;
	width: calc(100% - 40px);
	max-width: 1240px;
	background-color: #fffffff5;
	padding: 0 34px;
	padding-right: 20px;
}
.site-header .siteWidth h1.site-title {
	margin: 0;
	padding: 15px 0 16px;
	font-size: 1.7rem;
	line-height: 100%;
}
.site-header .siteWidth h1.site-title a {
	color: #ac8c47;
	text-decoration: none;
}
.site-header .siteWidth h1.site-title a:hover {
	opacity: 0.9;
}
.site-header .siteWidth h1.site-title a .ensize {
	display: inline-block;
	font-size: 115%;
	vertical-align: bottom;
}
.site-branding{
	padding: 0;
}
.site-content{
	margin-top: 0;
}
 .site-branding h1{
    margin: 0;
    font-size: 2em;
}
 .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;
}

.entry-meta {
	margin-bottom: 10px;
	color: #686868;
	font-size: 11pt;
	font-weight: normal;
	font-style: normal;
}
.cat-links, .tags-links {
    float: right;
    font-size: 8pt;
    line-height: 13pt;
    clear: both;
}
.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 {
	min-height: auto;
	padding-top: 40px;
	font-size: 11pt;
	clear: right;
}
@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 {
	width: calc(100% - 210px);
	text-align: right;
	clear: none;
}
.main-navigation .menuWrap {
	display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
	height: 100%;
}
.main-navigation .menuWrap .menu-main-container {
	height: 100%;
}
.main-navigation ul {
	display: block;
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.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;
	height: 100%;
}
.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-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 0 10px;
	color: #000;
	font-size: 1.2rem;
	line-height: 23px;
}
.main-navigation ul > li > a:after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	display: block;
	width: 0%;
	height: 2px;
	background-color: #856c36;
	transform: translatex(-50%);
	transition: width 0.3s;
}
.main-navigation ul > li > a:hover {
	color: #000;
	text-decoration: none;
	opacity: 1;
}
.main-navigation ul > li > a:hover:after {
	width: calc(100% + 8px);
}
.main-navigation ul > li > a img {
	display: block;
	width: 91px;
}
 .main-navigation ul li:hover ul{
    display: block;
}
.main-navigation ul ul.sub-menu {
	position: absolute;
	top: 100%;
	left: 0px;
	float: none;
	flex-direction: column;
	align-items: flex-start;
	width: 300px;
	height: auto;
	padding: 20px;
	padding-top: 40px;
	opacity: 0;
	transition: opacity 0.6s;
}
.main-navigation ul ul.sub-menu:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 0;
	display: block;
	border-radius: 12px;
	width: 100%;
	height: calc(100% - 20px);
	background-color: #fff;
}
.site-header .siteWidth .menu-main-container > ul > li:hover ul.sub-menu {
	opacity: 1;
}
.site-header .siteWidth .menu-main-container > ul > li:not(:hover) ul.sub-menu {
	pointer-events: none;
}
.main-navigation ul ul.sub-menu li {
    display: block;
	width: 100%;
	height: auto;
}
.main-navigation ul ul.sub-menu a {
	width: 100%;
	padding: 0;
	line-height: 30px;
	display: block;
	text-align: left;
}

.main-navigation .sns {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	margin-left: 12px;
	line-height: 100%;
	transform: translatey(-6px);
}
.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);
}

/* 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 {
	position: relative;
	background-color: #564c44;
	padding: 90px 0 14px;
	color: #fff;
	overflow: hidden;
}
footer .fbg {
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0;
	width: 36%;
	transform: translate(5%, 35%);
}
footer .inner {
	position: relative;
	margin: 0 auto;
	width: calc(100% - 40px);
	max-width: 1240px;
}
footer .fmenu {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 12px;
}
footer .fmenu ul {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 1.2rem;
	font-weight: 400;
}
footer .fmenu ul li:not(:last-child) {
	margin-bottom: 0.6em;
}
footer .fmenu ul.sub {
	display: block;
	margin-top: 5px;
	text-align: left;
	max-width: 274px;
	line-height: 150%;
}
footer .fmenu ul.sub li {
	display: inline-block;
	margin-right: 12px;
	margin-bottom: 5px;
	font-size: 9pt;
	line-height: 100%;
}
footer .fmenu a {
	color: #fff;
	text-decoration: none;
}
footer .fmenu .tel a {
	display: block;
	font-size: 1.8rem;
	font-weight: 600;
}
footer .fmenu .tel a img {
	display: inline-block;
	margin-right: 14px;
	width: 0.75em;
	vertical-align: 0px;
}
footer .fmenu .tel a + a {
	margin-top: 14px;
}
footer .fmenu .lft, footer .fmenu .rgt {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	width: calc((100% - 390px) / 2);
	padding-top: 48px;
}
footer .fmenu .rgt {
	align-items: center;
}
footer .fmenu .logo {
	box-sizing: border-box;
	flex-shrink: 0;
	padding: 0 80px;
	width: 390px;
}
footer .fmenu .logo img {
	display: block;
	width: 100%;
}
footer .cname {
	margin-bottom: 30px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 100%;
}
footer .cname big {
	font-size: 106%;
}
footer .cname small {
	display: block;
	margin-top: 10px;
	font-size: 9.5pt;
	font-weight: 400;
}
footer .copyright {
	margin: 0;
	text-align: center;
	color: #afa49c;
	font-size: 9pt;
}
@media screen and (max-width: 1300px) {
	footer {
		padding-top: 60px;
	}
	footer .fmenu {
		flex-direction: column;
		align-items: center;
		margin-bottom: 24px;
	}
	footer .fmenu .lft {
		display: none;
	}
	footer .fmenu .logo {
		width: 220px;
		padding: 0;
	}
	footer .fmenu .rgt {
		flex-direction: column;
		align-items: center;
		padding-top: 30px;
		width: 100%;
	}
	footer .fmenu ul {
		display: block;
		margin-bottom: 14px;
		text-align: center;
	}
	footer .fmenu ul li {
		display: inline-block;
	}
	footer .fmenu ul li:not(:last-child) {
		margin-right: 1em;
		margin-bottom: 0;
	}
	footer .fmenu .tel a {
		display: inline-block;
		font-size: 1.7rem;
	}
	footer .fmenu .tel a + a {
		margin-top: 0;
		margin-left: 1em;
	}
	footer .cname {
		margin-bottom: 24px;
	}
}
@media screen and (max-width: 980px) {
	footer .fbg {
		width: 48%;
	}
}
@media screen and (max-width: 540px) {
	footer {
		padding-top: 34px;
	}
	footer .fbg {
		width: 68%;
	}
	footer .fmenu .logo {
		width: 140px;
	}
	footer .fmenu .rgt {
		padding-top: 20px;
	}
	footer .fmenu .tel a img {
		margin-right: 8px;
	}
	footer .cname {
		margin-bottom: 20px;
	}
	footer .cname small {
		line-height: 140%;
	}
}
@media screen and (max-width: 480px) {
	footer {
		padding-bottom: 7px;
	}
	footer .fmenu {
		margin-bottom: 18px;
	}
	footer .fmenu .logo {
		width: 120px;
	}
	footer .fmenu .rgt {
		padding-top: 12px;
	}
	footer .cname {
		margin-bottom: 12px;
	}
	footer .copyright {
		font-size: 9pt;
	}
}

#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 (max-width: 990px) {
	.site-header {
		height: 60px;
	}
	.site-branding {
		padding-top: 0;
		width: 200px;
	}
	.main-navigation {
		padding-top: 4px;
		width: calc(100% - 140px);
	}
}
@media (min-width: 891px){
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: flex !important;
		flex-direction: row;
		align-items: center;
		justify-content: flex-end;
		height: 100%;
	}
	.main-navigation li.onsp {
		display: none;
	}
	.main-navigation ul > li > a img.onsp {
		display: none;
	}
}
@media (max-width: 890px) {
	.site-header {
		padding-top: 0;
		padding-bottom: 0;
	}
	.site-header .siteWidth {
		padding: 0 24px;
	}
	.site-branding {
		flex-shrink: 0;
		box-sizing: border-box;
		width: 230px;
	}
	
	.main-navigation a.sns {
		display: none;
	}
	
	.menu-main-container {
		border-radius: 12px;
		width: 100%;
		padding: 6px 10px;
		background: #fff;
	}
	.menu-toggle, .main-navigation.toggled ul {
		display: block;
	}
	#site-navigation .menu-toggle {
		box-sizing: border-box;
		position: absolute;
		top: 7px;
		right: 32px;
		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;
    }
    #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-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;
	}
	#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 {
		transform: translate(-50%, -50%) rotate(45deg);
	}
	#site-navigation.toggled .menu-toggle > div:after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}
	
	.main-navigation {
		width: 100%;
		padding-top: 0;
	}
	.main-navigation .menuWrap {
		position: absolute;
		top: 100%;
		left: 20px;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		width: calc(100% - 40px);
		height: 0;
		overflow: hidden;
		transition: height 0.6s ease;
	}	
	.main-navigation.toggled .menuWrap {
		height: 291px;
	}
	.main-navigation ul {
		margin-bottom: 12px;
	}	
	.main-navigation li {
		display: block;
		float: left;
		width: 100%;
		text-align: left;
	}
	.main-navigation li:not(:last-child) {
		margin-right: 0;
	}
	.main-navigation ul > li > a {
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
		border-bottom: 1px solid #d0d0d0;
		height: 42px;
		background: none;
		padding: 0 20px;
	}
	.main-navigation ul > li.menu-item-has-children {
		border-bottom: 1px solid #d0d0d0;
	}
	.main-navigation ul > li.menu-item-has-children > a {
		border-bottom: none;
	}
	.main-navigation ul > li:last-child > a {
		border-bottom: none;
	}
	.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;
    }
	.main-navigation ul ul.sub-menu {
		box-sizing: border-box;
		position: static;
		margin: 0;
		width: 100%;
		padding: 0;
		padding-left: 26px;
		opacity: 1;
	}
	.main-navigation ul ul.sub-menu:before {
		content: none;
	}
	.main-navigation ul ul.sub-menu li {
		display: inline-block;
		width: auto;
		margin-right: 17px;
	}
	.main-navigation ul ul.sub-menu li:last-child {
		margin-right: 0;
	}
	.main-navigation ul ul.sub-menu a {
		border-bottom: none;
		height: auto;
		padding-bottom: 12px;
		font-size: 90%;
		line-height: 1;
	}
     footer .footer-info ul li{
        padding: 0 15px 0 0;
    }
	.main-navigation .sns {
		margin-left: 0;
	}
}
@media screen and (max-width: 640px) {
	.site-header {
		top: 12px;
	}
}
@media screen and (max-width: 480px) {
	.site-header {
		height: 44px;
	}
	.site-header .siteWidth {
		width: calc(100% - 20px);
	}
	.site-header .siteWidth h1.site-title {
		padding: 11px 0;
	}
	.main-navigation {
		padding-top: 10px;
	}
	#site-navigation .menu-toggle {
		top: 2px;
		right: 20px;
		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);
	}
	.main-navigation .menuWrap {
		left: 10px;
		width: calc(100% - 20px);
	}
	.main-navigation ul ul.sub-menu li {
		margin-right: 14px;
	}
}
@media screen and (max-width: 400px) {
	.main-navigation.toggled .menuWrap {
		height: 316px;
	}
	.main-navigation ul ul.sub-menu {
		max-width: 340px;
	}
}

/* トップページ：mainv */
.mainv {
	position: relative;
	padding-top: 66%;
	background-color: #e4f3ff;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	overflow: hidden;
	opacity: 1;
	transition: opacity 0.8s;
}
.mainv .whiter {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #ffffffb5;
	transition: opacity 1s;
}
.mainv:not(.active) {
	opacity: 0;
}
.mainv.active .whiter {
	opacity: 1;
	transition-delay: 1.2s;
}
.mainv:not(.active) .whiter {
	opacity: 0;
}

.mainv canvas#bgAnimation {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0.8;
	z-index: 0;
}
.mainv .leaf {
	position: absolute;
	top: 0;
	left: 0;
	max-width: none;
	height: auto;
	pointer-events: none;
	mix-blend-mode: multiply;
}
.mainv .lastLeafs {
	position: absolute;
	top: 50%;
	right: 0;
	margin: 0;
	height: 70%;
	transform: translate(22%, -50%);
	z-index: 1;
}
.mainv .lastLeafs .base {
	width: auto;
	max-width: none;
	height: 100%;
	opacity: 0;
}

.mainv .lastLeafs svg {
	position: absolute;
	width: 600px;
	height: 400px;
	overflow: visible;
}
.mainv .lastLeafs svg path {
	fill: none;
	stroke: transparent;
	stroke-width: 2;
}

.mainv .onimg {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	z-index: 1;
	overflow: hidden;
}
.mainv .onimg .hbg {
	position: absolute;
	right: 2%;
	bottom: 18%;
	margin: 0;
	width: 46%;
	opacity: 0.5;
}
.mainv .onimg .hbg.ver2 {
	bottom: 4%;
	width: 48%;
}
.mainv .onimg .hbg2 {
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0;
	width: 70%;
	transform: translate(10px, 10px);
}
.mainv .onimg .inner {
	width: calc(100% - 40px);
	max-width: 1080px;
	z-index: 1;
}
.mainv .onimg .inner h2 {
	margin: 0 0 0.7em;
	text-align: left;
	font-size: 5rem;
	font-weight: 900;
	line-height: 100%;
	opacity: 1;
	transition: opacity 0.8s;
}
.mainv .onimg .inner p {
	margin: 0;
	font-size: 1.8rem;
	line-height: 170%;
}
.mainv .onimg.active .inner h2 .inbl {
	opacity: 1;
	transition: opacity 0.8s;
	transition-delay: 1s;
}
.mainv .onimg.active .inner p {
	opacity: 1;
	transition: opacity 1.2s;
	transition-delay: 2.5s;
}
.mainv .onimg:not(.active) .inner h2,
.mainv .onimg:not(.active) .inner h2 .inbl,
.mainv .onimg:not(.active) .inner p {
	opacity: 0;
}
@media screen and (min-width: 1301px) {
	.mainv {
		padding-top: 840px;
	}
}
@media screen and (max-width: 980px) {
	.mainv .onimg .inner h2 {
		font-size: 4rem;
	}
}
@media screen and (max-width: 767px) {
	.mainv .onimg {
		padding-top: 8%;
	}
}
@media screen and (max-width: 680px) {
	.mainv .onimg .inner {
		padding-right: 8%;
	}
	.mainv .onimg .inner h2 {
		font-size: 3rem;
	}
	.mainv .onimg .inner p {
		font-size: 1.6rem;
	}
	.mainv .onimg .inner p .onpc {
		display: none;
	}
}
@media screen and (max-width: 580px) {
	.mainv .onimg {
		padding-top: 13%;
	}
	.mainv .onimg .inner h2 {
		font-size: 2.4rem;
	}
	.mainv .onimg .inner p {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 480px) {
	.mainv .onimg .inner h2 {
		margin-bottom: 0.5em;
		font-size: 2.2rem;
	}
	.mainv .onimg .inner p {
		letter-spacing: 0;
		line-height: 140%;
	}
}
@media screen and (max-width: 440px) {
	.mainv .onimg .inner {
		padding-right: 7%;
	}
	.mainv .onimg .inner p {
		font-size: 9.8pt;
		line-height: 160%;
	}
}

/* 汎用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;
}

.more a {
	display: inline-block;
	border-radius: 100px;
	background-color: #3b634d;
	padding: 10px 60px 11px;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 500;
	text-indent: 1px;
	text-decoration: none;
	line-height: 130%;
}

/* 戻るボタン */
#rwdwp {
	position: fixed;
	right: 32px;
	bottom: 65px;
	width: 48px;
	height: 48px;
	z-index: 120;
}
#rwd {
	box-sizing: border-box;
	border: 1px solid #334431;
	border-radius: 24px;
	background-color: #334431;
	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);
}
body.page-id-29 #rwdwp {
	bottom: 86px;
}
@media screen and (max-width: 420px) {
	#rwdwp {
		right: 12px;
		bottom: 26px;
	}
}

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

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

/* コンテンツブロック */
.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;
}
.wr.overbg {
	position: relative;
}
.wr.overbg:before {
	content: "";
	position: absolute;
	top: 0;
	display: block;
	width: 100%;
	max-width: calc(50vw + 700px);
	height: 100%;
	background-color: #80cec1;
}
.wr.overbg.colorB:before {
	background-color: #9ddcc9;
}
.wr.overbg.colorC:before {
	background-color: #baebd1;
}
.wr.overbg.toLeft:before {
	left: 0;
	border-radius: 0 100px 100px 0;
}
.wr.overbg.toRight:before {
	right: 0;
	border-radius: 100px 0 0 100px;
}
.wr.overbg .inr {
	position: relative;
	width: calc(100% - 140px);
}
@media screen and (max-width: 1490px) {
	.wr.overbg:before {
		max-width: calc(100% - 40px);
	}
}
@media screen and (max-width: 1140px) {
	.wr.overbg {
		padding: 90px 0 124px;
	}
	.wr.overbg:before {
		max-width: calc(100% - 24px);
	}
	.wr.overbg.toLeft:before {
		border-radius: 0 60px 60px 0;
	}
	.wr.overbg.toRight:before {
		border-radius: 60px 0 0 60px;
	}
}
@media screen and (max-width: 840px) {
	.wr.overbg {
		padding: 76px 0 98px;
	}
}
@media screen and (max-width: 740px) {
	.wr.overbg {
		padding: 70px 0 88px;
	}
	.wr.overbg.toLeft:before {
		border-radius: 0 40px 40px 0;
	}
	.wr.overbg.toRight:before {
		border-radius: 40px 0 0 40px;
	}
}
@media screen and (max-width: 680px) {
	.wr.overbg .inr {
		width: calc(100% - 120px);
	}
	.wr.overbg.toLeft .inr {
		margin-left: 48px;
	}
	.wr.overbg.toRight .inr {
		margin-right: 48px;
	}
}
@media screen and (max-width: 580px) {
	.wr.overbg {
		padding: 48px 0 64px;
	}
}
@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);
	}
	.wr.overbg:before {
		max-width: calc(100% - 12px);
	}
	.wr.overbg .inr {
		width: calc(100% - 46px);
	}
	.wr.overbg.toLeft .inr {
		margin-left: 15px;
	}
	.wr.overbg.toRight .inr {
		margin-right: 15px;
	}
}

/* ニュース一覧 */
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: 0 24px 24px 0;
	border: 1px solid #ddd;
	width: calc((100% - 48px) / 3 - 0.1px);
}
ul.newsList.separate4 > li {
	width: calc((100% - 72px) / 4 - 0.1px);
}
ul.newsList > li .thumb {
	position: relative;
	display: block;
	margin-bottom: 15px;
	padding-top: 56.25%;
}
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;
}
ul.newsList > li .thumb figure.nope {
	background-color: #333;
}
ul.newsList li > div {
	padding: 0 12px 28px;
}
ul.newsList li .date {
    color: #686868;
	font-size: 1.2rem;
}
ul.newsList li h4 {
	margin-bottom: 0.8em;
	max-height: 4.3em;
	font-size: 1.5rem;
	line-height: 140%;
    overflow: hidden;
}
ul.newsList li h4 a {
	color: #000;
}
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: #222;
    padding: 4px 6px;
    border-radius: 4px;
    color: #fff;
}
ul.newsList li .opt a:hover {
	text-decoration: none;
}
ul.newsList li p.exp {
	margin-bottom: 0;
	font-size: 1.3rem;
}
@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);
	}
}
@media screen and (max-width: 980px) and (min-width: 768px) {
	ul.newsList.separate4 > li:nth-child(3n) {
		margin-right: 0;
	}
}
@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 {
		width: calc((100% - 24px) / 2 - 0.1px);
	}
	ul.newsList > li h4 {
		font-size: 1.6rem;
	}
	ul.newsList > li h4 a {
		color: #000;
	}
	ul.newsList > li .opt {
		font-size: 1.2rem;
	}
	ul.newsList > li:nth-child(2n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 540px) {
	ul.newsList > li {
		margin-right: 20px;
		margin-bottom: 40px;
		width: calc((100% - 20px) / 2 - 0.1px);
	}
}
@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.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: 38px;
	border-bottom: 2px solid #b4b9bd;
	padding-bottom: 38px;
}
ul.newsList2 li .date {
    color: #000;
	font-size: 1.2rem;
}
ul.newsList2 li h4 {
	margin-bottom: 0;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 140%;
}
ul.newsList2 li .opt {
	flex-shrink: 0;
	margin-left: 20px;
	font-size: 1.1rem;
	letter-spacing: 0.5px;
	line-height: 180%;
	display: inline-block;
	transform: translateY(-3px);
}
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: #000;
	padding: 4px 6px;
	border-radius: 100px;
	color: #fff;
	letter-spacing: 0;
}
ul.newsList2 li a {
	color: #000;
	text-decoration: none;
}
ul.newsList2 li > div {
	width: calc(100% - 100px);
}
ul.newsList2 li > a {
	width: 88px;
}
ul.newsList2 li > a figure {
	margin: 0;
	padding-top: 100%;
	background-color: #fff;
	background-position: center;
	background-size: cover;
}
ul.newsList2 li > a figure.nope {
	background-color: #b1e3b4;
	background-image: url(/wp-content/uploads/2025/06/lg_trusta-head.svg);
	background-size: 80%;
	background-repeat: no-repeat;
}
ul.newsList2 li p.exp {
	margin-bottom: 0;
	font-size: 1.5rem;
	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% - 144px);
	}
	ul.newsList2 li > a {
		width: 124px;
	}
}
@media screen and (max-width: 480px) {
	ul.newsList2 li {
		flex-direction: column-reverse;
	}
	ul.newsList2 li > div, ul.newsList2 li > a {
		width: 100%;
	}
	ul.newsList2 li > a {
		margin-bottom: 16px;
	}
	ul.newsList2 li > a figure {
		padding-top: 56.65%;
	}
	ul.newsList2 li > a figure.nope {
		padding-top: 120px;
		background-size: auto 80%;
	}
	ul.newsList2 li .opt {
		margin-left: 10px;
	}
	ul.newsList2 li .date {
		font-size: 1.1rem;
	}
	ul.newsList2 li p.exp {
		font-size: 1.4rem;
	}
}
/* セパレートブロック */
#pagecol {
	padding: 140px 0 140px;
}
#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: 160%;
}
body.single #pagecol > div.pagemain .entry-content p:not(:last-child) {
	margin-bottom: 24px;
}
#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: 1.4em;
}
#pagecol h3:not(.enbg) {
	margin-bottom: 18px;
	border-bottom: 2px solid #343a40;
	padding-bottom: 8px;
	text-align: left;
	font-size: 2.4rem;
	font-weight: 800;
	line-height: 140%;
}
#pagecol > div.pagemain .blk:last-child {
	padding-bottom: 0;
}

#pagecol > div.pagesub {
	float: right;
	width: 260px;
	padding-top: 40px;
}
#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;
	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: 840px) {
	#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 120px;
	}
	#pagecol {
		padding-top: 114px;
	}
	#pagecol h3:not(.enbg) {
		font-size: 2rem;
	}
}
@media screen and (max-width: 640px) {
	#pagecol, .wr {
		padding-top: 76px;
		padding-bottom: 100px;
	}
	#pagecol {
		padding-top: 94px;
	}
	#pagecol h2 {
		font-size: 16pt;
	}
}
@media screen and (max-width: 580px) {
	#pagecol h3:not(.enbg) {
		font-size: 1.7rem;
	}
	#pagecol > div.pagesub {
		display: block;
	}
	#pagecol > div.pagesub section {
		width: 100%;
	}
}
@media screen and (max-width: 540px) {
	#pagecol, .wr {
		padding: 64px 0 90px;
	}
	#pagecol {
		padding-top: 88px;
	}
	#pagecol > div.pagemain {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 480px) {
	#pagecol h2 {
		font-size: 14pt;
	}
	body.single #pagecol > div.pagemain .entry-content p {
		font-size: 10pt;
	}
}

body.single div.entry-content.verArrivals .imgarea {
	margin-bottom: 30px;
}
body.single div.entry-content.verArrivals .imgarea .mainph {
	margin: 0;
	width: 100%;
}
body.single div.entry-content.verArrivals .imgarea .mainph img {
	display: block;
	width: 100%;
}
body.single div.entry-content.verArrivals .imgarea .subphs {
	margin: 12px 0 0;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: flex-start;
}
body.single div.entry-content.verArrivals .imgarea .subphs a {
	display: block;
	margin-right: 12px;
	width: calc((100% - 36px) / 4 - 0.1px);
}
body.single div.entry-content.verArrivals .imgarea .subphs a:last-child {
	margin-right: 0;
}
body.single div.entry-content.verArrivals .imgarea .subphs a span {
	display: block;
	padding-top: 100%;
	background-position: center;
	background-size: cover;
}
body.single div.entry-content.verArrivals .youtubewrap {
	position: relative;
	margin-bottom: 30px;
	padding-top: 56.25%;
}
body.single div.entry-content.verArrivals .youtubewrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
body.single div.entry-content.verArrivals dl.specs {
	font-size: 1.2rem;
	letter-spacing: 0;
	line-height: 160%;
}
body.single div.entry-content.verArrivals dl.specs dt {
	width: 6em;
	font-weight: bold;
}
body.single div.entry-content.verArrivals dl.specs dd {
	padding-left: 6em;
}
@media screen and (max-width: 480px) {
	body.single div.entry-content.verArrivals .imgarea .subphs {
		margin-top: 6px;
	}
	body.single div.entry-content.verArrivals .imgarea .subphs a {
		margin-right: 6px;
		width: calc((100% - 18px) / 4 - 0.1px);
	}
	body.single div.entry-content.verArrivals dl.specs dt {
		float: none;
		width: 100%;
	}
	body.single div.entry-content.verArrivals dl.specs dd {
		padding-left: 0;
	}
}

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: #000;
	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;
}

.wr.onWhite {
	padding-bottom: 60px;
}
@media screen and (max-width: 840px) {
	.wr.onOverbg {
		padding-bottom: 110px;
	}
}
@media screen and (max-width: 767px) {
	.wr.onOverbg {
		padding-bottom: 110px;
	}
}
@media screen and (max-width: 540px) {
	.wr.onOverbg {
		padding-bottom: 76px;
	}
}
@media screen and (max-width: 480px) {
	.wr.onWhite {
		padding-bottom: 60px;
	}
}

.topNews ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.topNews ul.slick-slider {
	margin-bottom: 0;
	padding: 0;
}
.topNews ul.slick-slider .slick-list {
	margin-left: -14px;
	width: calc(100% + 28px);
}
.topNews ul.slick-slider .slick-prev {
	left: -6px;
}
.topNews ul.slick-slider .slick-next {
	right: 0;
}
.topNews ul.slick-slider .slick-arrow {
	top: 38%;
	width: 50px;
	height: 50px;
}
.topNews ul.slick-slider .slick-arrow:before {
	content: "" !important;
	position: absolute;
	top: -1px;
	border-width: 2px;
	width: 50%;
	height: 50%;
	filter: none;
}
.topNews ul.slick-slider .slick-prev:before {
	right: -8px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	transform: translateX(-50%) translateY(40%) rotate(-45deg);
}
.topNews ul.slick-slider .slick-next:before {
	right: 0;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: translateX(-50%) translateY(40%) rotate(45deg);
}
.topNews ul.slick-initialized .slick-slide {
	padding: 0 14px;
}
.topNews ul.slick-initialized .slick-slide > div > div {
	display: block !important;
}
.topNews ul a {
	display: block;
	color: #000;
}
.topNews ul a:hover {
	opacity: 1;
}
.topNews ul figure {
	position: relative;
	margin: 0 0 15px;
	border-radius: 20px;
	overflow: hidden;
}
.topNews ul figure .inner {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 62%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	transform: scale(1);
	transition: transform 0.2s cubic-bezier(0, 0, 0.2, 1);
}
.topNews ul a:hover figure .inner {
	transform: scale(1.08);
}
.topNews ul figure.nope .inner {
	background-color: #b1e3b4;
	background-image: url(/wp-content/uploads/2025/06/lg_trusta-head.svg);
	background-size: 55%;
}
.topNews ul p {
	margin-bottom: 0;
	height: 4.3em;
	line-height: 150%;
	overflow: hidden;
}
.topNews ul p time {
	display: block;
	margin-bottom: 4px;
	font-size: 90%;
	line-height: 100%;
}
.topNews .toNews {
	margin-top: 18px;
	text-align: right;
}
.topNews .toNews a {
	color: #000;
	font-weight: 600;
}
.topNews .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.2s cubic-bezier(0, 0, 0.5, 1);
    backface-visibility: hidden;
}
@media screen and (max-width: 940px) {
	.topNews ul.slick-slider .slick-list {
		margin-left: -9px;
		width: calc(100% + 18px);
	}
	.topNews ul.slick-initialized .slick-slide {
		padding: 0 9px;
	}
}
@media screen and (max-width: 640px) {
	.topNews ul.slick-slider .slick-list {
		margin-left: -6px;
		width: calc(100% + 12px);
	}
	.topNews ul.slick-initialized .slick-slide {
		padding: 0 6px;
	}
	.topNews ul figure {
		border-radius: 10px;
	}
	.topNews .toNews {
		margin-top: 10px;
	}
}
@media screen and (max-width: 540px) {
	.topNews ul.slick-slider .slick-arrow {
		top: 33%;
		width: 40px;
		height: 40px;
	}
}

.ourJob p {
	margin-bottom: 0;
}

#topAccess.wr {
	padding-bottom: 0;
}
#topAccess p {
	margin-bottom: 0;
	text-align: center;
	font-size: 1.5rem;
}
#topAccess .mapwrap {
	margin-top: 40px;
}
@media screen and (max-width: 640px) {
	#topAccess .mapwrap {
		padding-top: 230px;
	}
}
@media screen and (max-width: 480px) {
	#topAccess .mapwrap {
		margin-top: 30px;
	}
}

.archiveList.wr {
	padding-bottom: 110px;
}
.archiveList dl dt {
	float: none;
	margin-bottom: 18px;
	font-size: 2.5rem;
	font-weight: 700;
}
.archiveList dl a {
	color: #80cec1;
}
.archiveList dl dd {
	margin-bottom: 28px;
}
.archiveList dl dd:last-child {
	margin-bottom: 0;
}
.archiveList dl dd:empty {
	height: 0.1px;
}
.archiveList dl dd ul {
	list-style: none;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.archiveList dl dd ul li {
	margin-right: 1em;
	margin-bottom: 14px;
	line-height: 100%;
}
.archiveList dl dd ul li:last-child {
	margin-right: 0;
}
.archiveList dl dd ul li a {
	font-weight: 600;
}
.archiveList dl dd ul li:before {
	content: "\30FB";
}
.archiveList ul.anchors {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	max-width: 914px;
}
.archiveList ul.anchors li {
	display: inline-block;
	margin-right: 1.6em;
	margin-bottom: 0;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 100%;
}
.archiveList ul.anchors li:nth-child(n + 4) {
	margin-top: 32px;
}
.archiveList ul.anchors li:last-child {
	margin-right: 0;
}
.archiveList ul.anchors li svg {
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	margin-right: 12px;
	fill: #93b89c;
	vertical-align: -0.4em;
}
.archiveList ul.anchors li:nth-child(2n) svg {
	fill: #5f996c;
}
.archiveList ul.anchors li:nth-child(3) svg {
	transform: scaley(-1);
	fill: #82965f;
}
.archiveList ul.anchors li:nth-child(4) svg {
	transform: rotate(35deg) scalex(-1);
	fill: #709487;
}
.archiveList ul.anchors li:nth-child(5) svg {
	transform: rotate(-15deg);
	fill: #b2c7b2;
}
.archiveList ul.anchors a {
	color: #55b5a5;
}
@media screen and (max-width: 900px) {
	.archiveList ul.anchors {
		max-width: 664px;
	}
}
@media screen and (max-width: 767px) {
	.archiveList dl dt {
		margin-bottom: 15px;
		font-size: 2.3rem;
	}
	.archiveList ul.anchors li {
		font-size: 2.3rem;
	}
	.archiveList ul.anchors li:nth-child(n + 3) {
		margin-top: 32px;
	}
}
@media screen and (max-width: 680px) {
	.archiveList ul.anchors li {
		font-size: 2.1rem;
	}
}
@media screen and (max-width: 540px) {
	.archiveList.wr {
		padding-bottom: 76px;
	}
	.archiveList ul.anchors li:nth-child(n + 2) {
		margin-top: 26px;
	}
}
@media screen and (max-width: 480px) {
	.archiveList ul.anchors {
		max-width: 390px;
	}
	.archiveList ul.anchors li {
		font-size: 1.9rem;
	}
	.archiveList ul.anchors li:nth-child(n + 2) {
		margin-top: 16px;
	}
}

.jobCategory .cols2.rev {
	flex-direction: row-reverse;
}
.jobCategory .cols2 figure {
    flex-shrink: 0;
    margin: 0;
    border-radius: 30px;
    width: 40%;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
    overflow: hidden;
}
.jobCategory .cols2:not(.rev) figure {
	margin-right: 40px;
}
.jobCategory .cols2.rev figure {
	margin-left: 40px;
}
.jobCategory .cols2 figure:before {
	content: "";
	display: block;
	padding-top: 74.3%;
}
.jobCategory .cols2 ul {
	list-style: none;
	margin: 0 0 40px;
	padding: 0;
}
.jobCategory .cols2 ul li {
	position: relative;
	padding-left: 1.2em;
}
.jobCategory .cols2 ul li:before {
	content: "\30FB";
	position: absolute;
	left: 0;
}
.jobCategory .cols2 ul li a {
	color: #55b5a5;
	font-weight: 600;
}
@media screen and (max-width: 840px) {
	.jobCategory .cols2,
	.jobCategory .cols2.rev {
		flex-direction: column;
	}
	.jobCategory .cols2 figure {
		margin: 0 0 30px !important;
		width: 100%;
	}
	.jobCategory .cols2 figure[style*="visit"] {
		background-position: center 26%;
	}
	.jobCategory .cols2 figure[style*="medical"] {
		background-position: center 26%;
	}
	.jobCategory .cols2 figure:before {
		padding-top: 44%;
	}
	.jobCategory .more {
		text-align: center;
	}
}
@media screen and (max-width: 640px) {
	.jobCategory .cols2 figure {
		margin-bottom: 24px !important;
	}
}
@media screen and (max-width: 540px) {
	.jobCategory .cols2 figure {
		margin-bottom: 16px !important;
		border-radius: 16px;
	}
}
@media screen and (max-width: 480px) {
	.jobCategory .cols2 figure {
		border-radius: 20px;
	}
	.jobCategory .cols2 ul {
		margin-bottom: 36px;
		font-size: 11pt;
	}
}

#topSlogan {
	background-position: left center;
	background-size: cover;
}
#topSlogan .cols2 figure {
	flex-shrink: 0;
	margin: 0;
	margin-right: 50px;
	border-radius: 30px;
	width: 33%;
	overflow: hidden;
}
#topSlogan h3 {
	margin-bottom: 17px;
	border-bottom: none;
	padding: 0;
	font-weight: 700;
}
#topSlogan h3 small {
	display: block;
	margin-bottom: 8px;
	font-weight: 700;
}
#topSlogan p {
	margin-bottom: 16px;
}
#topSlogan .more {
	margin-top: 30px;
}
@media screen and (min-width: 981px) {
	#topSlogan .cols2 figure.onsp {
		display: none;
	}
}
@media screen and (max-width: 980px) {
	#topSlogan h3 {
		margin-bottom: 30px;
	}
	#topSlogan .cols2 figure {
		margin-right: 0;
		margin-bottom: 30px;
		width: 100%;
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	#topSlogan .cols2 figure:before {
		content: "";
		display: block;
		padding-top: 64%;
	}
	#topSlogan .cols2 figure.onpc {
		display: none;
	}
	#topSlogan .more {
		text-align: center;
	}
}
@media screen and (max-width: 540px) {
	#topSlogan h3 {
		margin-bottom: 20px;
	}
	#topSlogan .cols2 figure {
		margin-bottom: 24px;
		border-radius: 16px;
	}
}

#topRecruit figure {
	margin: 0 0 20px;
	border-radius: 30px;
	width: 100%;
	overflow: hidden;
}
#topRecruit figure img {
	display: block;
	width: 100%;
}
#topRecruit p {
	margin-bottom: 40px;
}
#topRecruit .more {
	text-align: center;
}
@media screen and (max-width: 540px) {
	#topRecruit figure {
		border-radius: 16px;
	}
}

#philosophy .intro {
	text-align: center;
}
#philosophy .intro p {
	margin-bottom: 40px;
}
#philosophy .intro figure {
	margin: 0 auto;
	width: 100%;
	max-width: 780px;
}
@media screen and (max-width: 640px) {
	#philosophy .intro h3 {
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 540px) {
	#philosophy .intro h3 {
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 480px) {
	#philosophy .intro h3 {
		font-size: 2.0rem;
	}
}

#philosophy .value ul {
	list-style: none;
	margin: 0 auto;
	max-width: 640px;
	padding: 0;
	transform: translatex(-70px);
}
#philosophy .value ul li {
	box-sizing: border-box;
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: flex-start;
	padding: 0 10px 5px;
	padding-left: 22px;
	height: 48px;
	color: #1a92bb;
	border-radius: 100px;
	box-shadow: inset 4px -3px;
}
#philosophy .value ul li:not(:last-child) {
	margin-bottom: 36px;
}
#philosophy .value ul li:nth-child(2) {
	color: #2e9bbd;
	transform: translatex(60px);
}
#philosophy .value ul li:nth-child(3) {
	color: #42a4bf;
	transform: translatex(120px);
}
#philosophy .value ul li:nth-child(4) {
	color: #56acc2;
	transform: translatex(180px);
}
#philosophy .value ul li:nth-child(5) {
	color: #6ab5c4;
	transform: translatex(240px);
}
#philosophy .value ul li:nth-child(6) {
	color: #7ebec6;
	transform: translatex(300px);
}
#philosophy .value ul li h4 {
	margin-bottom: 0;
	min-width: 10em;
	font-size: 2.6rem;
	font-weight: 700;
}
#philosophy .value ul li h4 number {
	display: inline-block;
	margin-right: 1px;
	font-size: 1.7rem;
	font-weight: inherit;
	vertical-align: 2px;
}
#philosophy .value ul li h4 big {
	display: inline-block;
	width: 0.9em;
	text-align: center;
	color: #dbb753;
	font-size: 210%;
	font-weight: 900;
	vertical-align: -1px;
}
#philosophy .value ul li h4 .means {
	color: #000;
}
#philosophy .value ul li p {
	margin-bottom: 0;
	color: #000;
	font-size: 1.7rem;
	font-weight: 700;
	transform: translateY(-2px);
}
@media screen and (max-width: 1140px) {
	#philosophy .value ul {
		transform: translatex(-130px);
	}
}
@media screen and (max-width: 1000px) {
	#philosophy .value ul {
		transform: translatex(-90px);
	}
	#philosophy .value ul li:nth-child(2) {
		transform: translatex(40px);
	}
	#philosophy .value ul li:nth-child(3) {
		transform: translatex(80px);
	}
	#philosophy .value ul li:nth-child(4) {
		transform: translatex(120px);
	}
	#philosophy .value ul li:nth-child(5) {
		transform: translatex(160px);
	}
	#philosophy .value ul li:nth-child(6) {
		transform: translatex(200px);
	}
}
@media screen and (max-width: 900px) {
	#philosophy .value ul {
		max-width: 566px;
		transform: translatex(-70px);
	}
	#philosophy .value ul li:nth-child(2) {
		transform: translatex(30px);
	}
	#philosophy .value ul li:nth-child(3) {
		transform: translatex(60px);
	}
	#philosophy .value ul li:nth-child(4) {
		transform: translatex(90px);
	}
	#philosophy .value ul li:nth-child(5) {
		transform: translatex(120px);
	}
	#philosophy .value ul li:nth-child(6) {
		transform: translatex(150px);
	}
}
@media screen and (max-width: 840px) {
	#philosophy .value ul {
		max-width: 530px;
	}
	#philosophy .value ul li {
		height: 40px;
	}
	#philosophy .value ul li:not(:last-child) {
		margin-bottom: 30px;
	}
	#philosophy .value ul li h4 {
		font-size: 2.2rem;
	}
	#philosophy .value ul li h4 big {
		font-size: 180%;
	}
	#philosophy .value ul li p {
		font-size: 1.6rem;
		transform: translateY(0px);
	}
}
@media screen and (max-width: 740px) {
	#philosophy .value ul {
		transform: translatex(-30px);
	}
	#philosophy .value ul li:nth-child(2) {
		transform: translatex(15px);
	}
	#philosophy .value ul li:nth-child(3) {
		transform: translatex(30px);
	}
	#philosophy .value ul li:nth-child(4) {
		transform: translatex(45px);
	}
	#philosophy .value ul li:nth-child(5) {
		transform: translatex(60px);
	}
	#philosophy .value ul li:nth-child(6) {
		transform: translatex(75px);
	}
}
@media screen and (max-width: 660px) {
	#philosophy .value ul {
		max-width: 480px;
	}
	#philosophy .value ul li {
		box-shadow: inset 3px -3px;
	}
	#philosophy .value ul li h4 {
		font-size: 2rem;
	}
	#philosophy .value ul li h4 number {
		font-size: 1.5rem;
	}
	#philosophy .value ul li p {
		font-size: 1.5rem;
		transform: translateY(1px);
	}
}
@media screen and (max-width: 600px) {
	#philosophy .value ul {
		transform: translatex(0px);
	}
	#philosophy .value ul li {
		transform: translatex(0px) !important;
	}
	#philosophy .value ul li:not(:last-child) {
		margin-bottom: 24px;
	}
}
@media screen and (max-width: 520px) {
	#philosophy .value ul li {
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		border-bottom: 2px solid;
		border-radius: 0;
		height: auto;
		padding: 0 5px 17px;
		box-shadow: none;
	}
	#philosophy .value ul li:not(:last-child) {
		margin-bottom: 12px;
	}
	#philosophy .value ul li h4 {
		min-width: auto;
	}
	#philosophy .value ul li h4 number {
		width: 1em;
		display: inline-flex;
		flex-direction: row;
		align-items: flex-start;
		justify-content: flex-end;
	}
	#philosophy .value ul li p {
		font-size: 1.4rem;
		transform: none;
	}
}
@media screen and (max-width: 480px) {
	#philosophy .value ul li {
		padding-bottom: 18px;
	}
	#philosophy .value ul li h4 {
		margin-bottom: 5px;
	}
	#philosophy .value ul li h4 big {
		font-size: 160%;
	}
}

#philosophy .mission {
	margin-left: auto;
	margin-right: auto;
	max-width: 1040px;
}
#philosophy .mission h4 {
	margin-bottom: 30px;
	text-align: center;
}
#philosophy .mission h4 small {
	display: block;
	margin-bottom: 14px;
	font-size: 100%;
	font-weight: bold;
}
#philosophy .mission p.intro {
	margin-bottom: 0.5em;
	text-align: left;
}
#philosophy .mission .written {
	margin-top: 20px;
	margin-bottom: 0;
	text-align: right;
}
@media screen and (max-width: 480px) {
	#philosophy .mission h4 {
		margin-bottom: 24px;
	}
}

#philosophy .vision {
	margin-left: auto;
	margin-right: auto;
	max-width: 1034px;
}
#philosophy .vision h4 {
	margin-bottom: 24px;
	text-align: center;
	line-height: 160%;
}
@media screen and (max-width: 540px) {
	#philosophy .vision h4 .onpc {
		display: none;
	}
}

#philosophy .history dl {
	margin: 0 auto 30px;
	width: 100%;
	max-width: 640px;
}
#philosophy .history dl dt {
	width: 7em;
	padding-left: 0.7em;
	line-height: 200%;
}
#philosophy .history dl dd {
	margin-bottom: 24px;
	border-bottom: 1px solid #d4d4d4;
	padding-left: 9.8em;
	padding-bottom: 24px;
}
#philosophy .history dl dd:last-child {
	margin-bottom: 0;
}
#philosophy .history dl p {
	margin: 0;
}
#philosophy .history dl dd figure {
	margin: 14px 0 0;
}
#philosophy .history dl dd figure img {
	width: 160px;
}
#philosophy .history dl dd figure img + img {
	margin-left: 8px;
}
#philosophy .future {
	text-align: center;
}
#philosophy .future p {
	margin-bottom: 0;
}
#philosophy .company {
	position: relative;
}
#philosophy .company dl {
	margin: 0 auto;
	border-top: 1px solid #888;
	width: 100%;
	max-width: 640px;
	padding-top: 24px;
}
#philosophy .company dl dt {
	width: 8em;
	padding-left: 0.7em;
}
#philosophy .company dl dd {
	margin-bottom: 24px;
	border-bottom: 1px solid #888;
	padding-left: 9.8em;
	padding-bottom: 24px;
}
#philosophy .company dl dd a {
	color: inherit;
}
#philosophy .company dl dd:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 640px) {
	#philosophy .history dl,
	#philosophy .company dl {
		max-width: 460px;
	}
	#philosophy .history dl dt,
	#philosophy .company dl dt {
		float: none;
		margin-bottom: 4px;
		width: 100%;
		padding-left: 0;
		font-weight: bold;
	}
	#philosophy .history dl dd,
	#philosophy .company dl dd {
		padding-left: 0;
	}
}

#business .model figure {
	margin: 0 0 40px;
}
#business .model .cols2 > div {
	width: calc(50% - 20px);
}
#business .model .cols2 > div h4 {
	margin-bottom: 15px;
	text-align: center;
}
#business .model .cols2 > div p {
	margin-bottom: 0;
	line-height: 170%;
}
@media screen and (max-width: 900px) {
	#business .model .cols2 {
		display: block;
	}
	#business .model .cols2 > div {
		width: 100%;
	}
	#business .model .cols2 .lft {
		margin-bottom: 38px;
	}
}
@media screen and (max-width: 480px) {
	#business .model figure {
		margin-bottom: 28px;
	}
	#business .model .cols2 .lft {
		margin-bottom: 25px;
	}
}

#business .caresystem h3 {
	border-bottom: none;
	text-align: center;
	font-weight: 800;
}
#business .caresystem .cols2 {
	align-items: center;
	margin: 0 auto 30px;
	width: 100%;
	max-width: 820px;
}
#business .caresystem .cols2 .lft {
	padding-left: 44px;
}
#business .caresystem .cols2 .lft h4 {
	margin-bottom: 20px;
}
#business .caresystem .cols2 .lft h4 .ensize {
	display: inline-block;
	font-size: 112%;
	vertical-align: -1px;
}
#business .caresystem .cols2 .lft ul {
	list-style: none;
	margin: 0;
	padding-left: 8px;
}
#business .caresystem .cols2 .lft ul li {
	position: relative;
	margin-bottom: 8px;
	padding-left: 1.2em;
	font-size: 1.5rem;
}
#business .caresystem .cols2 .lft ul li:before {
	content: "\30FB";
	position: absolute;
	left: 0;
}
#business .caresystem .cols2 figure {
	flex-shrink: 0;
	margin: 0;
	width: 320px;
}
#business .caresystem .cols2 figure img {
	display: block;
	width: 100%;
}
#business .caresystem ol {
	list-style: none;
	margin: 0 auto 60px;
	width: 100%;
	max-width: 34.4em;
	padding-left: 0;
	font-size: 1.5rem;
}
#business .caresystem ol li {
	position: relative;
	margin-bottom: 6px;
	padding-left: 1.2em;
	line-height: 160%;
}
#business .caresystem ol li:before {
	position: absolute;
	left: 0;
}
#business .caresystem ol li:nth-child(1):before {
	content: "\2460";
}
#business .caresystem ol li:nth-child(2):before {
	content: "\2461";
}
#business .caresystem figure.renkei {
	margin: 0 auto;
	width: 100%;
	max-width: 870px;
}
#business .caresystem figure.renkei img {
	display: block;
	width: 100%;
}
@media screen and (max-width: 740px) {
	#business .caresystem .cols2 .lft {
		padding-left: 30px;
	}
	#business .caresystem .cols2 figure {
		width: 270px;
	}
}
@media screen and (max-width: 680px) {
	#business .caresystem {
		margin-bottom: 70px;
	}
	#business .caresystem .cols2 {
		flex-direction: column;
		align-items: center;
	}
	#business .caresystem .cols2 .lft {
		margin-bottom: 24px;
		padding-left: 0;
	}
	#business .caresystem .cols2 .lft ul {
		padding-left: 0;
	}
}
@media screen and (max-width: 480px) {
	#business .caresystem {
		margin-bottom: 60px;
	}
	#business .caresystem ol {
		margin-bottom: 40px;
	}
}

#business .pagering {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	max-width: 840px;
}
#business .pagering > div {
	margin-right: 20px;
	width: calc((100% - 60px) / 4);
}
#business .pagering > div:last-child {
	margin-right: 0;
}
#business .pagering a {
	display: block;
	text-align: center;
	color: #000;
	font-weight: 600;
}
#business .pagering a:hover {
	text-decoration: none;
}
#business .pagering a .ti {
	display: block;
}
@media screen and (max-width: 480px) {
	#business .pagering > div {
		margin-right: 14px;
		width: calc((100% - 42px) / 4);
	}
}

.businessArchive > div {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}
.businessArchive > div:not(:last-child) {
	margin-bottom: 70px;
}
.businessArchive figure {
	flex-shrink: 0;
	margin: 0;
	width: 40%;
}
.businessArchive figure img {
	display: block;
	width: 100%;
}
.businessArchive .txt {
	width: 46%;
} 
.businessArchive h4 {
	margin-bottom: 18px;
}
.businessArchive ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}
.businessArchive ul li:not(:last-child) {
	margin-bottom: 18px;
}
.businessArchive ul li h5 {
	margin-bottom: 7px;
	font-size: 1.6rem;
}
.businessArchive ul li h5:before {
	content: "\30FB";
}
.businessArchive ul li p {
	margin-bottom: 0;
	line-height: 160%;
}
.businessArchive ul li p a {
	color: #000;
}
@media screen and (max-width: 980px) {
	.businessArchive figure {
		width: 44%;
	}
}
@media screen and (max-width: 767px) {
	.businessArchive figure {
		width: 47%;
	}
}
@media screen and (max-width: 680px) {
	.businessArchive > div {
		flex-direction: column-reverse;
	}
	.businessArchive figure {
		width: 100%;
		max-width: 480px;
	}
	.businessArchive .txt {
		margin-bottom: 34px;
		width: 100%;
	}
	.businessArchive .txt .onpc {
		display: none;
	}
}

.businessSub .toContact {
	margin-top: 30px;
	margin-bottom: 90px;
	text-align: center;
}
.businessSub .toContact a {
    display: inline-block;
    border-radius: 100px;
    background-color: #3b634d;
    padding: 10px 60px 11px;
    color: #fff;
    font-size: 1.7rem;
    font-weight: 500;
    text-indent: 1px;
    text-decoration: none;
    line-height: 100%;
}

#sustainability .mainImg figure {
	margin: 0;
	width: 100%;
}
#sustainability .mainImg figure img {
	display: block;
	width: 100%;
}
#sustainability h3 {
	border-bottom: none;
	text-align: center;
	font-weight: 700;
}
#sustainability .initiative p:last-child {
	margin-bottom: 0;
}
#sustainability .selection ul {
	list-style: none;
	margin: 0 auto;
	padding-left: 0;
	max-width: 920px;
}
#sustainability .selection ul li {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
}
#sustainability .selection ul li figure {
	flex-shrink: 0;
	margin: 0;
	margin-right: 26px;
	width: 260px;
}
#sustainability .selection ul li figure img {
	display: block;
	width: 100%;
}
#sustainability .selection ul li .rgt h4 {
	line-height: 140%;
}
#sustainability .selection ul li .rgt h4 number {
	display: inline-block;
	margin-bottom: 0.7em;
	line-height: 100%;
}
#sustainability .selection ul li .rgt p {
	margin-bottom: 0;
	line-height: 170%;
}
@media screen and (max-width: 767px) {
	#sustainability .selection ul li figure {
		width: 210px;
	}
}
@media screen and (max-width: 640px) {
	#sustainability .selection ul li:not(:last-child) {
		margin-bottom: 12px;
	}
	#sustainability .selection ul li figure {
		margin-right: 20px;
		width: 160px;
	}
	#sustainability .selection ul li .rgt h4 {
		margin-bottom: 10px;
	}
	#sustainability .selection ul li .rgt h4 number {
		margin-bottom: 0.5em;
	}
}
@media screen and (max-width: 560px) {
	#sustainability .selection ul li figure {
		width: 130px;
	}
	#sustainability .selection ul li .rgt h4 number {
		margin-right: 8px;
		margin-bottom: 0;
	}
	#sustainability .selection ul li .rgt h4 .onpc {
		display: none;
	}
}
@media screen and (max-width: 480px) {
	#sustainability .selection ul li .rgt h4 {
		margin-bottom: 6px;
		font-size: 1.9rem;
	}
}

#contact .intro {
	text-align: center;
}
#contact .intro .toTel a {
    display: inline-block;
    border-radius: 100px;
    background-color: #3b634d;
    padding: 10px 60px 11px;
    color: #fff;
    font-size: 1.7rem;
    font-weight: 500;
    text-indent: 1px;
    text-decoration: none;
    line-height: 100%;
}
#contact .intro .toTel a img {
	display: inline-block;
	margin-right: 9px;
	width: 0.75em;
	vertical-align: 0px;
}
#contact .form {
	margin: 0 auto;
	max-width: 780px;
}
#contact .form > p {
	margin-bottom: 36px;
	text-align: center;
}
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;
}
#contact form section {
	border-top: none;
}
#contact form section > div {
	border-bottom-color: #d4d4d4;
}
#contact form section > div:first-child {
	padding-top: 0;
}
#contact form section div > h4 {
	width: 174px;
	padding-left: 0.7em;
}
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;
	border-radius: 100px;
	width: 100%;
	background-color: #3b634d;
	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;
}
@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;
	}
}
@media screen and (max-width: 434px) {
	form dl dt, form dl dd {
		padding-left: 0;
	}
}

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