@charset "UTF-8";
/*!
Theme Name: タマコツリクルート
Theme URI: 
Author: 
Author URI: 
Description: 
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: template
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/* template02 */
.form__wrap {
	width: 100%;
	max-width: 900px;
	/*フォームの最大幅*/
	margin-right: auto;
	margin-left: auto;
	margin: 0 auto;
}

.wpcf7 .template02 {
	color: var(--main-txtcolor);
	font-size: 16px;
}

.wpcf7 .template02 a {
	margin: 0;
	padding: 0;
	text-decoration: underline;
	color: inherit;
	transition: opacity .25s;
}

.wpcf7 .template02 a:hover {
	opacity: .5;
	transition: opacity .25s;
}

.wpcf7 .template02 div.form__row {
	display: flex;
	margin: 0;
	padding: 0;
	/*border-top: 1px solid #efe8e5;*/
}

.wpcf7 .template02 div.form__row.row-privacy,
.wpcf7 .template02 div.form__row.row-submit {
	display: block;
	border-top: 0;
	margin-top: 1em;
	text-align: center;
}

.wpcf7 .template02 p.form__label,
.wpcf7 .template02 p.form__body {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.wpcf7 .template02 p.form__label {
	width: 36%;
	padding: 1.5em 1em;
}

.wpcf7 .template02 p.form__body {
	width: 64%;
	padding: 1.5em 1em;
}

.wpcf7 .template02 div.form__row.row-privacy .form__body,
.wpcf7 .template02 div.form__row.row-submit .form__body {
	width: 100%;
}

.wpcf7 .template02 p.form__label label {
	position: relative;
	margin: 0;
	padding: 0;
	padding-left: 44px;
	box-sizing: border-box;
}

.wpcf7 .template02 p.form__label label::after {
	content: "任意";
	display: block;
	position: absolute;
	top: 5px;
	left: 0;
	width: 36px;
	margin: 0;
	padding: 0 5px;
	border-radius: 2px;
	background-color: #f1f1f1;
	color: #929292;
	font-size: 11px;
	text-align: center;
	box-sizing: border-box;
}

.wpcf7 .template02 p.form__label.is-required label {
	position: relative;
}

.wpcf7 .template02 p.form__label.is-required label::after {
	content: "必須";
	display: block;
	position: absolute;
	top: 5px;
	right: 0;
	width: 36px;
	padding: 0 5px;
	background-color: var(--green);
	color: #fff;
	font-size: 11px;
	text-align: center;
}

/* テキストフィールド */
.wpcf7 .template02 input[type=text],
.wpcf7 .template02 input[type=tel],
.wpcf7 .template02 input[type=email],
.wpcf7 .template02 textarea {
	width: 100%;
	margin: 0;
	padding: .5em 1em;
	border: 1px solid #c4bbb8;
	border-radius: 0;
	box-shadow: none;
	background-color: #fefefe;
	color: inherit;
	font-family: inherit;
	font-weight: inherit;
	font-size: 16px;
	box-sizing: border-box;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/* テキストフィールド placeholder */
.wpcf7 .template02 input[type=text]::placeholder,
.wpcf7 .template02 input[type=tel]::placeholder,
.wpcf7 .template02 input[type=email]::placeholder,
.wpcf7 .template02 input[type=url]::placeholder,
.wpcf7 .template02 input[type=date]::placeholder,
.wpcf7 .template02 input[type=number]::placeholder,
.wpcf7 .template02 textarea::placeholder {
	color: #ccc;
}

.wpcf7 .template02 input[type=text]:-ms-input-placeholder,
.wpcf7 .template02 input[type=tel]:-ms-input-placeholder,
.wpcf7 .template02 input[type=email]:-ms-input-placeholder,
.wpcf7 .template02 input[type=url]:-ms-input-placeholder,
.wpcf7 .template02 input[type=date]:-ms-input-placeholder,
.wpcf7 .template02 input[type=number]:-ms-input-placeholder,
.wpcf7 .template02 textarea:-ms-input-placeholder {
	color: #ccc;
}

.wpcf7 .template02 input[type=text]::-ms-input-placeholder,
.wpcf7 .template02 input[type=tel]::-ms-input-placeholder,
.wpcf7 .template02 input[type=email]::-ms-input-placeholder,
.wpcf7 .template02 input[type=url]::-ms-input-placeholder,
.wpcf7 .template02 input[type=date]::-ms-input-placeholder,
.wpcf7 .template02 input[type=number]::-ms-input-placeholder,
.wpcf7 .template02 textarea::-ms-input-placeholder {
	color: #ccc;
}

/* テキストフィールド フォーカス時 */
.wpcf7 .template02 input[type=text]:focus,
.wpcf7 .template02 input[type=tel]:focus,
.wpcf7 .template02 input[type=email]:focus,
.wpcf7 .template02 input[type=url]:focus,
.wpcf7 .template02 input[type=date]:focus,
.wpcf7 .template02 input[type=number]:focus,
.wpcf7 .template02 textarea:focus {
	outline: 0;
	border: 2px var(--green) solid;
}

/* チェックボックス */
.wpcf7 .template02 input[type=checkbox] {
	display: none;
}

.wpcf7 .template02 input[type=checkbox]+span {
	cursor: pointer;
	position: relative;
	margin: 0;
	padding: 0 1em 0 1.8em;
	font-size: inherit;
	box-sizing: border-box;
	transition: opacity .25s ease;
}

.wpcf7 .template02 input[type=checkbox]+span::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1.24em;
	height: 1.24em;
	border: 1px solid #c4bbb8;
	border-radius: 4px;
	background-color: #fefefe;
	box-sizing: border-box;
}

.wpcf7 .template02 input[type=checkbox]+span::after {
	content: "";
	opacity: 0;
	display: block;
	position: absolute;
	top: 0.15em;
	left: 0.44em;
	width: 0.4em;
	height: .8em;
	border-bottom: 3px solid #000;
	border-right: 3px solid #000;
	box-sizing: border-box;
	transform: rotate(40deg);
	transition: opacity .25s ease;
}

.wpcf7 .template02 input[type=checkbox]:checked+span {
	color: #6c5d2f;
	transition: all .25s ease;
}

.wpcf7 .template02 input[type=checkbox]:checked+span::before {
	opacity: 1;
	border: 1px solid var(--green);
	box-shadow: 0 0 2px 2px var(--rgba-color);
	background-color: var(--green);
	transition: opacity .25s ease;
}

.wpcf7 .template02 input[type=checkbox]:checked+span::after {
	opacity: 1;
	border-bottom: 3px solid #fff;
	border-right: 3px solid #fff;
	transition: opacity .25s ease;
}

/* ラジオボタン */
.wpcf7 .template02 input[type=radio] {
	display: none;
}

.wpcf7 .template02 input[type=radio]+span {
	cursor: pointer;
	position: relative;
	margin: 0;
	padding: 0 1em 0 1.8em;
	font-size: inherit;
	box-sizing: border-box;
	transition: opacity .25s ease;
}

.wpcf7 .template02 input[type=radio]+span::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	border: 1px solid #c4bbb8;
	border-radius: 50%;
	background-color: #fefefe;
	box-sizing: border-box;
	transition: opacity .25s ease;
}

.wpcf7 .template02 input[type=radio]+span::after {
	content: "";
	display: block;
	opacity: 0;
	position: absolute;
	box-sizing: border-box;
	transition: opacity .25s ease;
}

.wpcf7 .template02 input[type=radio]:checked+span {
	color: #6c5d2f;
}

.wpcf7 .template02 input[type=radio]:checked+span::before {
	box-shadow: 0 0 2px 2px var(--rgba-color);
}

.wpcf7 .template02 input[type=radio]:checked+span::after {
	opacity: 1;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	background-color: #6c5d2f;
	border-radius: 50%;
	box-sizing: border-box;
	transition: opacity .25s ease;
}

/* セレクト */
.wpcf7 .template02 span.select-wrap {
	position: relative;
	width: 250px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.wpcf7 .template02 select {
	cursor: pointer;
	width: 250px;
	max-width: 100%;
	margin: 0;
	padding: .5em 3.5em .5em 1em;
	border: 1px solid #c4bbb8;
	border-radius: 4px;
	box-shadow: none;
	background-color: #fefefe;
	background-image: linear-gradient(90deg, #d4cbb2, #d4cbb2);
	background-position: 100% 0;
	background-size: 2em 3.5em;
	background-repeat: no-repeat;
	color: inherit;
	font-size: inherit;
	line-height: 1;
	box-sizing: border-box;
	transition: border-color 0.2s ease, outline 0.2s ease;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.wpcf7 .template02 select::-ms-expand {
	display: none;
}

.wpcf7 .template02 span.select-wrap::after {
	content: "";
	pointer-events: none;
	position: absolute;
	display: block;
	width: .6em;
	height: .6em;
	top: 50%;
	right: .8em;
	margin-top: -3px;
	border-bottom: 1px solid #6c5d2f;
	border-right: 1px solid #6c5d2f;
	transform: rotate(45deg) translateY(-50%);
	transform-origin: 50% 0;
	box-sizing: border-box;
}

.wpcf7 .template02 select:focus {
	outline: 0;
	border: 1px #6c5d2f solid;
	box-shadow: 0 0 2px 2px var(--rgba-color);
}

.wpcf7 .template02 span.select-wrap:focus-within::after {
	border-bottom: 1px solid #6c5d2f;
	border-right: 1px solid #6c5d2f;
}

/* 送信ボタン */
.wpcf7 .template02 .submit-btn {
	position: relative;
	width: 320px;
	height: 65px;
	max-width: 100%;
	margin: 0;
	padding: 0;
	margin-left: auto;
	margin-right: auto;
}

.wpcf7 .template02 input[type="submit"] {
	cursor: pointer;
	width: 320px;
	max-width: 100%;
	padding: 18px;
	box-shadow: none;
	border: 1px var(--green) solid;
	border-radius: 0;
	background-color: var(--green);
	color: #fff;
	font-size: 18px;
	text-align: center;
	box-sizing: border-box;
	transition: all .25s;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.wpcf7 .template02 input[type="submit"]:disabled {
	cursor: not-allowed;
	box-shadow: none !important;
	border: 1px solid #f8f8f8 !important;
	background-color: #f8f8f8 !important;
	color: #929292 !important;
}

.wpcf7 .template02 input[type="submit"]:hover {
	background-color: #fff;
	color: var(--green);
	transition: all .25s;
}

.wpcf7 .template02 input[type="submit"]:focus {
	outline: 0;
	border: 2px var(--green) solid;
}

@media only screen and (max-width: 768px) {
	.wpcf7 .template02 div.form__row {
		display: block;
	}

	.wpcf7 .template02 p.form__label {
		width: 100%;
		padding: 1.5em 1em 0;
	}

	.wpcf7 .template02 p.form__body {
		width: 100%;
		padding: 1em 1em 1.5em;
	}
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Custom Property 
--------------------------------------------- */
:root {
	--maintxt: #07120A;
	--green: #009b63;
	--brown:
		--main-color: #DFD8CE;
	--custom1: #DFD8CE;
	--linear: linear-gradient(90deg, #49A699 0%, #4A9FD9 100%);
	--gray: #F5F5F5;
}

/* Typography
--------------------------------------------- */
html {
	font-size: 62.5%;
}

body,
button,
input,
select,
optgroup,
textarea {
	color: var(--maintxt);
	font-family: 'Zen Old Mincho', serif;
	font-size: 1.6rem;
	line-height: 1.5;
	font-weight: 400;
	letter-spacing: 0.03em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	margin: 0;
	letter-spacing: 0.05em;
}

p {
	margin-bottom: 1.6em;
}

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

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

margin: 0;

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

body {
	background: #FFF;
	overflow-x: hidden;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

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

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

ul, ol {
	list-style: none;
}

ul.list_initial {
	list-style: initial;
	margin-left: 16px;
}



/* Links
--------------------------------------------- */
a {
	text-decoration: none;
}

a:hover {
	opacity: 0.7;
}

.btn_wrapper {
	text-align: center;
	padding-top: 60px;
}

.section_btn {
	display: inline-block;
	width: 280px;
	max-width: 100%;
	text-align: center;
	font-size: 1.6rem;
	line-height: 1.4;
	position: relative;
	padding: 14px;
	background: var(--green);
	border: 1px solid var(--green);
	color: #FFF;
}

.section_btn::after {
	position: absolute;
	content: url(image/btn_arrow_w.svg);
	top: 50%;
	right: 21px;
	transform: translateY(-41%);
}

.section_btn.is_related{
	font-size: 1.4rem;
	padding: 10px 36px 10px 15px;
	width: unset;
}

.section_btn.is_related::after {
	display: inline-block;
    content: "\f35d";
    margin-right: 3px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
	font-size: 1.4rem;
	top: 45%;
    right: 11px;
}

@media (min-width: 768px) and (max-width: 1269px) {
	.grad_btn {
		width: 180px;
		font-size: 1.4rem;
	}
}

@media (max-width: 767px) {
	.grad_btn {
		width: 100%;
		margin: 0 auto;
		font-size: 14px;
	}
}

/* Responsive
--------------------------------------------- */
@media (min-width: 1270px) {
	.hidden_pc {
		display: none !important;
	}

	.sp_only {
		display: none;
	}
}

@media (min-width: 768px) and (max-width: 1269px) {
	.hidden_pc {
		display: none !important;
	}

	.sp_only {
		display: none;
	}
}

@media (max-width: 767.98px) {
	.hidden_sp {
		display: none !important;
	}
}


/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/*  Common
-------------------------------------------------------*/
.site-main {
	margin-top: 72px;
	padding-bottom: 100px;
}

.home.site-main {
	padding-bottom: 0;
}

.inner {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

@media only screen and (min-width: 768px) {
	.inner {
		width: 80%;
		max-width: 1200px;
		margin: 0 auto;
	}
}


.alignfull {
	margin-left: calc(-50vw + 50%) !important;
	margin-right: calc(-50vw + 50%) !important;
	max-width: none !important;
}

.grad_title {
	font-size: 20px;
	letter-spacing: 0.05em;
	margin-bottom: 40px;
}

.grad_title span {
	font-family: "din-2014", sans-serif;
	background: var(--linear, linear-gradient(90deg, #49A699 0%, #4A9FD9 100%));
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 66.2px;
	font-style: normal;
	font-weight: 700;
	line-height: 84px;
	/* 181.269% */
	letter-spacing: 3.972px;
	display: inline-block;
}

@media (max-width: 767.98px) {
	.grad_title span {
		font-size: 48px;
		line-height: 54px;
	}

	.grad_title {
		font-size: 16px;
	}

}

/*  header
-------------------------------------------------------*/
header {
	position: fixed;
	top: 0;
	z-index: 100000;
	width: 100%;
}

#header.is-fixed {
	background: rgba(255, 255, 255, 0.60)
}

.header__inner {
	width: 100%;
	height: 72px;
	max-width: 1440px;
	padding: 0 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}


@media (min-width: 768px) and (max-width: 1269px) {
	.header__inner {
		padding: 0 16px;
	}
}

@media (max-width: 767px) {
	.header__inner {
		padding: 0 8px;
	}
}

.header__logo {
	width: 260px;
	padding-top: 16px;
}

@media (max-width: 767px) {
	.header__logo {
		width: 200px;
		padding-top: 0;
	}
}

.header-menu {
	display: flex;
	gap: 24px;
}

@media (max-width: 767px) {
	.header-menu {
		display: none;
	}
}

.header-menu li a {
	color: var(--maintxt);
	font-size: 14px;
}

.entry_btn {
	position: fixed;
	background: var(--linear);
	color: #FFF;
	font-size: 20px;
	font-family: "din-2014", sans-serif;
	right: 50px;
	top: 0;
	height: 50px;
	padding: 0 44px;
	line-height: 50px;
	letter-spacing: 2.45px;
}

/*  Menu Button
-------------------------------------------------------*/
.menu-btn {
	right: 0;
	display: block;
	position: fixed;
	top: 0px;
	width: 50px;
	height: 50px;
	cursor: pointer;
	z-index: 10000;
	background: rgba(255, 255, 255, .7);
}

.menu-btn span {
	position: absolute;
	width: 40%;
	/*線の長さ*/
	height: 2px;
	/*線の太さ*/
	left: calc(50% - 40% / 2);
	/*中央から長さの半分を引く*/
	background: var(--maintxt);
	/*線の色*/
	transition: .4s;
}

.top-bar {
	top: calc(35% - 2px / 2);
}

.center-bar {
	top: calc(50% - 2px / 2);
}

.under-bar {
	top: calc(65% - 2px / 2);
}

#open:checked~.menu-btn>.top-bar {
	top: calc(50% - 2px / 2);
	transform: rotate(45deg);
}

#open:checked~.menu-btn>.center-bar {
	opacity: 0;
}

#open:checked~.menu-btn>.under-bar {
	top: calc(50% - 2px / 2);
	transform: rotate(-45deg);
}

#open {
	display: none;
}

.drawer {
	width: 100vw;
	max-width: 400px;
	height: 100%;
	position: fixed;
	top: 0;
	right: -100%;
	-webkit-transition: .7s;
	transition: .5s;
	background: #666;
	padding: 26px;
	z-index: 1000;
}

.drawer.open {
	right: 0;
}

.drawer_logo {
	width: 110px;
}

.drawer-menu {
	padding: 40px 26px;
	margin: 0;
}

.drawer-menu ul {
	margin-left: 0;
}

.drawer-item {
	list-style: none;
	margin-bottom: 30px;
}

.drawer-item:last-child {
	margin-bottom: 0;
}

.drawer-item a {
	text-decoration: none;
	font-size: 18px;
	color: #fff;
}

.drawer_link_wrap {
	padding: 0 26px;
}

.drower_link {
	background: var(--linear);
	color: #FFF;
	padding: 16px;
	text-align: center;
	font-size: 18px;
	width: 100%;
	display: inline-block;
	font-weight: 700;
}

@media (max-width: 767px) {
	.drawer {
		width: 100vw;
		max-width: none;
	}

	.drawer-menu {
		padding: 60px 26px 44px;
		margin: 0;
	}
}

/*  Mobile Fix Navigation
-------------------------------------------------------*/
.mobile_fix_nav {
	position: fixed;
	bottom: 0;
	width: 100%;
	background: #FFF;
}

.mobile_fix_nav a {
	padding: 8px 0;
	text-align: center;
	background: var(--linear);
	color: #FFF;
	font-size: 24px;
	display: block;
	position: relative;
	z-index: 1000;
	font-family: "din-2014", sans-serif;
	letter-spacing: 2.45px;
}

/*  Footer
-------------------------------------------------------*/
footer {
	padding: 40px;
	background: #eee;
}

.footer_logo img {
	max-width: 200px;
}

.footer_btn_wrap {
	text-align: right;
	margin-bottom: 24px;
}

.ft_btn {
	border: 1px solid #FFF;
	padding: 12px 17px;
	color: #FFF;
	font-size: 14px;
	border-radius: 4px;
}

.ft_btn:hover {
	background: #FFF;
	color: #666;
}

.copyright {
	text-align: right;
	font-size: 12px;
	color: var(--maintxt);
}

@media (max-width: 767.98px) {
	footer {
		text-align: center;
		padding-bottom: 100px;
	}

	.footer_logo {
		text-align: center;
	}

	.footer_btn_wrap {
		text-align: center;
		padding: 32px 0;
	}

	.copyright {
		text-align: center;
		padding: 32px 0;
		
	}
}

.footer-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.footer-menu li {
	width: 100%;
	text-align: left;
}

.footer_sns {
	display: flex;
	gap: 8px;
}

.footer_columns{
	margin-bottom: 16px;
}
.footer-menu li a {
	width: 100%;
	font-size: 14px;
	color: var(--maintxt);
}

@media (min-width: 768px) {
	.footer_logo {
		width: 25%;
	}

	.footer_nav {
		width: 60%;
	}

	.footer_sns {
		width: 15%;
	}

	.footer-menu li {
		width: 175px;
	}
	.footer_sns{
		justify-content: flex-end;
	}
}


@media (max-width: 767.98px) {
	.footer_columns{
		gap: 24px;
		justify-content: center;
	}
	.footer-menu li {
		width: 48%;
		text-align: center;
	}
	.footer_logo{
		width: 100%;
		text-align: center;
	}
	.footer_sns {
		width: 100%;
		justify-content: center;
	}
}
/*  Breadcrumbs
-------------------------------------------------------*/
.breadcrumbs ul {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.breadcrumbs ul li {
	color: var(--maintxt);
	font-size: 1.2rem;
	padding: 0 1em;
	position: relative;
}

.breadcrumbs ul li a {
	color: var(--maintxt);
}

.breadcrumbs ul li:not(:last-child) ::after {
	content: "/";
	display: block;
	position: absolute;
	width: 10px;
	height: 15px;
	top: 0px;
	right: -7px;
}

/*  Front Page
-------------------------------------------------------*/
/* Video -- */
.video-container {
	position: relative;
	padding-bottom: 56.25%;
	/* 16:9のアスペクト比を保つためのトリック */
	height: 0;
	overflow: hidden;
}

.video-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* TOP Message -- */
.topmessage {
	padding: 30vh 0;
	text-align: center;
}

@media (max-width: 767px) {
	.topmessage {
		margin-bottom: 100px;
	}
}

.top_msg_wrap {
	position: relative;
	width: 50%;
	display: inline-block;
	position: relative;
}

.top_msg_main {
	font-size: 28px;
	letter-spacing: 0.04em;
}

@media (min-width: 768px) and (max-width: 1269px) {
	.top_msg_main {
		font-size: 1.94vw;
	}
}

@media (max-width: 767px) {
	.top_msg_main {
		font-size: 4.04vw;
		line-height: 1.6;
	}
}

.top_msg_sub {
	font-size: 18px;
}

@media (max-width: 767px) {
	.top_msg_sub {
		font-size: 14px;
		text-align: left;
	}
}

.takakura, .hino, .takahatafudo, .keiohachioji, .minamino, .jclinic {
	position: absolute;
	width: 13.5vw;
	border-radius: 4px;
	overflow: hidden;
}

img.takakura {
	top: -70px;
	left: -15vw;
}

img.hino {
	top: 50%;
	transform: translateY(-50%);
	left: -21vw;
}

img.takahatafudo {
	left: -15vw;
	bottom: -70px;
}

img.keiohachioji {
	top: -70px;
	right: -15vw;
}

img.minamino {
	top: 50%;
	transform: translateY(-50%);
	right: -21vw;
}

img.jclinic {
	right: -15vw;
	bottom: -70px;
}

@media (max-width: 991.98px) {
	.takakura, .hino, .takahatafudo, .keiohachioji, .minamino, .jclinic {
		display: none;
	}

	.top_msg_wrap {
		width: 100%;
		padding-right: 5%;
		padding-left: 5%;
		margin-bottom: 32px;
	}

	.topmessage {
		padding: 44px 0;
	}
}

/* Swiper -- */
.infinite-slider .swiper-wrapper {
	transition-timing-function: linear;
}

.infinite-slider .swiper-slide {
	height: 320px !important;
	width: auto !important;
}

@media (max-width: 991.98px) {
	.infinite-slider .swiper-slide {
		height: 160px !important;
		width: auto !important;
	}
}

@media (max-width: 767.98px) {

	.infinite-slider .swiper-slide {
		height: 120px !important;
	}
}

.infinite-slider .swiper-slide img {
	width: auto;
	height: 100%;
}

/* Feature x Roots --  */

section.feature {
	padding: 100px 0;
	background: linear-gradient(180deg, #F5F5F5 0%, rgba(247, 247, 247, 0.00) 92.71%);
}

@media (max-width: 767.98px) {
	section.feature {
		padding: 0 0 64px 0;
	}

}

@media (max-width: 767.98px) {

	.feature .flex_columns, .roots.flex_columns {
		flex-direction: column-reverse !important;
	}
}


.feature .flex_columns .flex_column:first-child {
	width: 56%;
}

@media (max-width: 767.98px) {

	.feature .flex_columns .flex_column:first-child {
		width: 100%;
	}
}

.feature .flex_columns .flex_column:last-child {
	width: 44%;
}

@media (max-width: 767.98px) {

	.feature .flex_columns .flex_column:last-child {
		width: 100%;
	}

}

.feature_txt_column {
	padding: 0 5%;
}

@media (max-width: 767.98px) {
	.feature_txt_column {
		margin-top: 40px;
	}
}

.feature_img_column {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-items: flex-end;
}

.feature_img_column img {
	width: 100%;
}

.feature_img:first-child {
	padding-right: 11%;
	margin-top: -5%;
}

.feature_img.is_bottom {
	width: 57%;
}

.feature_img img {
	border-radius: 6px;
	overflow: hidden;
}

.feature_img_sp {
	margin-top: -90px;
}

.roots_img {
	margin-bottom: 24px;
	border-radius: 0 6px 6px 0;
	overflow: hidden;
}

.titlewrap {
	margin-bottom: 56px;
	position: relative;
}

@media (max-width: 767.98px) {
	.titlewrap {
		margin-bottom: 32px;
	}
}

.titlewrap h2 {
	font-size: 18px;
	font-weight: 400;
	color: var(--green);
}

@media (max-width: 767.98px) {
	.titlewrap h2 {
		font-size: 16px;
	}
}

.title_en {
	font-family: 'EB Garamond', serif;
	font-size: 76px;
	color: #454545;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.05em;
}

@media (max-width: 767.98px) {
	.title_en {
		font-size: 48px;
	}
}

.feature_txt_column p {
	line-height: 1.9;
	letter-spacing: 0.32px;
	font-size: 1.6rem;
	margin: 3.2rem 0;
}

p.feature_main {
	font-size: 26px;
}

@media (max-width: 767.98px) {
	p.feature_main {
		font-size: 20px;
	}
}


.roots.flex_columns {
	flex-direction: row-reverse;
	margin-top: 100px;
}

@media (min-width: 768px) and (max-width: 1269px) {
	.roots.flex_columns {
		margin-top: 60px;
	}
}

@media (max-width: 767.98px) {
	.roots.flex_columns {
		margin-top: 60px;
	}
}

/* Phirosophy --  */
section.phirosophy {
	background: rgba(223, 216, 206, 0.27);
	padding: 98px 0;
}

@media (max-width: 767.98px) {
	section.phirosophy {
		padding: 98px 0;
	}
}

.phirosophy_head {
	font-size: 1.8rem;
}

.phirosophy_items {
	list-style: none;
	margin-left: 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 24px;
	padding-left: 0;
}

.phirosophy_item {
	display: flex;
	flex-direction: column;
	width: calc(50% - 12px);
	position: relative;
}

@media (min-width: 992px) {

	.phirosophy_items {
		gap: 40px;
	}

	.phirosophy_item {
		width: calc(50% - 20px);
	}
}

@media (max-width: 767.98px) {
	.phirosophy_item {
		width: 100%;
	}
}

img.phi_img {
	margin-bottom: 24px;
	border-radius: 6px;
	overflow: hidden;
}

.phirosophy_item h3 {
	font-size: 22px;
	font-weight: 400;
}

@media (max-width: 767.98px) {
	img.phi_img {
		margin-bottom: ;
	}

	.phirosophy_item h3 {
		font-size: 18px;
	}
}

.phi_num {
	position: absolute;
	font-family: 'EB Garamond', serif;
	font-size: 46px;
	top: -40px;
	right: 5px;
}

@media (max-width: 767.98px) {
	.phi_num {
		font-size: 36px;
		top: -29px;
		right: 8px;
	}
}

/* Topics --  */
section.topics {
	padding: 98px 0;
}

@media (max-width: 767.98px) {
	section.topics {
		padding: 98px 0;
	}
}

.topics_link {
	display: flex;
	flex-direction: column;
	color: initial;
}

.topics_img {
	margin-bottom: 8px;
}

.topics_title {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 8px;
}

.topics_desc {
	display: flex;
	align-items: center;
	gap: 8px;
}

.topics_date {
	font-size: 14px;
}

.topics_cat {
	font-size: 12px;
	color: #888;
	display: inline-block;
	padding: 2px 8px;
	border: 1px solid rgba(7, 18, 10, 0.40);
}

.topics_list {
	margin-bottom: 32px;
}

/* groups --  */
section.group {
	background: rgba(223, 216, 206, 0.27);
	padding: 98px 0;
	padding-bottom: 300px;
}

@media (max-width: 767.98px) {
	section.group {
		padding: 98px 0;
		padding-bottom: 150px;
	}
}

.group_mark {
	position: absolute;
	width: 18vw;
	top: -56%;
	right: 0;
}

.group_mark img {
	position: relative;
	z-index: 1;
}

.group_txt {
	position: relative;
	z-index: 2;

}

.group_h3 {
	font-weight: 400;
	font-size: 22px;
	line-height: 1.4;
	padding: 0 0 0 16px;
	margin: 0 0 0.8em;
	position: relative;
	border-left: 6px solid rgba(52, 172, 128, 0.86);
}

@media (max-width: 767.98px) {
	.group_h3 {
		font-size: 20px;
	}
}

.group_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin: 0 -16px;
	padding-left: 0;
}

.group_item {
	display: flex;
	flex-direction: column;
	width: 33.33%;
	padding: 16px;
}

@media (max-width: 991.98px) {

	.group_item {
		width: 50%;
		padding: 16px;
	}
}

@media (max-width: 767px) {

	.group_item {
		width: 100%;
		padding: 5%;
	}

	.group_mark {
		position: absolute;
		width: 37vw;
		top: -104%;
		right: 0;
	}

}

.group_imgwrap {
	position: relative;
}

.group_item h4 {
	font-weight: 400;
	font-size: 18px;
	position: absolute;
	left: 0;
	bottom: 5px;
	background: var(--green);
	color: #FFF;
	padding: 8px 24px;
	border-radius: 0 4px 0 4px;
}

.group_item p {
	margin-bottom: 0;
	font-size: 14px;
}

.groupclinics {
	margin-top: 44px;
}

.group_img {
	width: 100%;
	border-radius: 6px;
	overflow: hidden;
	aspect-ratio: 8/5;
	object-fit: cover;
}

/* Recruit --  */
section.recruit {
	background: linear-gradient(180deg, #009B63 0%, rgba(52, 172, 128, 0.86) 94.27%);
	padding: 98px 0;
	color: #FFF;
	position: relative;
}

@media (min-width: 992px) {
	section.recruit {
		padding-top: 250px;
	}
}

.recruit_slider {
	position: absolute;
	top: -150px;
}

@media (max-width: 767.98px) {
	.recruit_slider {
		top: -80px;
	}
}

.recruit .inner {
	width: 80%;
}

@media (max-width: 767.98px) {
	.recruit .inner {
		width: 90%;
	}
}

.recruit span, .recruit h2, .recruit p {
	color: #FFF;
}

.recruit .section_btn {
	border-color: #FFF;
	background: transparent;
}

.recruit .section_btn span {
	color: #FFF;
}

.recruit .section_btn::after {
	content: url(image/btn_arrow_w.svg);
}

p.recruit_head {
	font-size: 26px;
}

@media (max-width: 767.98px) {
	p.recruit_head {
		font-size: 20px;
	}
}

.recruit_desc {
	margin-bottom: 60px;
	font-size: 17px;
	line-height: 1.9;
}

@media (max-width: 767.98px) {
	.recruit_desc {
		font-size: 16px;
	}
}

.xs_only {
	display: none;
}

@media (max-width: 399.98px) {
	.xs_only {
		display: inherit;
	}
}

.recruit.btn_wrapper {
	text-align: left;
}

@media (max-width: 767.98px) {
	.recruit.btn_wrapper {
		text-align: center;
	}
}

/*  Page
-------------------------------------------------------*/
.entry-header {
	position: relative;
	/* background-color: var(--custom1); */
	/* margin-left: 20%; */
	height: 280px;
}

.entry-header-inner.inner {
	margin-left: 20%;
	width: 80%;
	/* margin: 0; */
	height: 100%;
	background: #F5F5F5;
}

.header_title_wrap {
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%)translateX(-50%);
	width: 90%;
	max-width: 1200px;
}

@media only screen and (min-width: 768px) {
	.header_title_wrap {
		width: 80%;
	}
}

.header_subtxt {
	font-family: 'EB Garamond', serif;
	font-size: 4.8rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.05em;
	margin-bottom: 8px;
	margin-top: 0;
	color: rgba(7, 18, 10, .7);
}

.entry-title {
	font-size: 2.4rem;
	font-weight: 400;
	color: var(--green);
}

@media (max-width: 767.98px) {
	.header_subtxt {
		font-size: 3.4rem;
	}

	.entry-title {
		font-size: 1.8rem;
	}
}

img.header_img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	overflow: hidden;
	opacity: 0.6;
}

.single .header_img {
	display: none;
}

.page_title {
	margin-bottom: 60px;
}

.page_title.center {
	text-align: center;
}

.page_title .en {
	font-family: 'EB Garamond', serif;
	font-size: 3.8rem;
	letter-spacing: 0.04em;
	display: inline-block;
	color: var(--green);
	line-height: 1.2;
	font-weight: 400;
}

@media (max-width: 767.98px) {
	.page_title .en {
		font-size: 3.2rem;
	}
}

.page_title .ja {
	font-size: 1.6rem;
	line-height: 1;
	font-weight: 400;
	letter-spacing: 0.1em;
	margin-top: 14px;
	display: block;
}

.page_section {
	padding-top: 40px;
}


/*  Company
-------------------------------------------------------*/
.overview_columns {
	gap: 5%;
}

.overview_columns .flex_column:first-child {
	width: 40%;
}

.overview_columns .flex_column:last-child {
	width: 100%;
}

dl.company_profile {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 8vw;
	border-top: 1px solid #dce5eb;
	margin-top: 0;
}

dl.company_profile dt {
	width: 34.375%;
	color: #ad9d8f;
	border-bottom: 1px solid #dce5eb;
	padding: 24px 0;
}

dl.company_profile dd {
	line-height: 2;
	width: 65.625%;
	border-bottom: 1px solid #dce5eb;
	margin: 0;
	padding: 24px 0;
}

@media (max-width: 767.98px) {
	dl.company_profile dt {
		font-size: 14px;
	}

	dl.company_profile dd {
		font-size: 14px;
	}
}

.history_columns .flex_column {
	width: 50%;
}

.history_imgwrap {
	text-align: center;
	margin-bottom: 40px;
}

.history_txt {
	line-height: 1.8;
	max-width: 800px;
	margin: 0 auto;
}

.enkaku {
	margin-bottom: 100px;
}

.enkaku dl.company_profile {
	max-width: 780px;
	margin: 40px auto;
}

.enkaku dl.company_profile dt {
	width: 15%;
	text-align: center;
	font-weight: 500;
	font-size: 14px;
}

.enkaku dl.company_profile dd {
	width: 85%;
	font-size: 14px;
}

.message {
	padding: 60px 0;
	background: rgba(223, 216, 206, 0.27);
}

.flex_columns.message_columns {
	gap: 5%;
	align-items: center;
}

.message_name {
	text-align: right;
}

.m_philosophy_txt {
	font-size: 18px;
	text-align: center;
	line-height: 1.7;
}

@media (max-width: 767.98px) {
	.m_philosophy_txt {
		font-size: 14px;
		text-align: left;
	}
}

.global_columns {
	gap: 5%;
	align-items: center;
	justify-content: center !important;
}

@media (max-width: 767.98px) {
	.global_img {
		width: 100%;

	}
}

.jclinic_logo_wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-top: 32px;
}

.jclinic_logo_wrap p {
	font-size: 1.2rem;
	color: #CCC;
}

.jseitai_columns {
	gap: 5%;
}

@media (max-width: 767.98px) {
	.jseitai_columns {
		justify-content: center !important;
	}
}

.jseitai_columns .flex_column:first-child {
	max-width: 350px;
}

.flex_columns.doctor_box {
	padding: 32px 24px;
	gap: 5%;
	justify-content: space-between;
	background: var(--gray);
}

.flex_columns.doctor_box .flex_column {
	width: 100%;
}

.doctor_columns {
	gap: 5%;
}

.doctor_name {
	border-bottom: 1px solid #CCC;
	;
	padding-bottom: 4px;
}

.doctor_name span {
	font-weight: normal;
	font-size: 14px;
	margin-left: 16px;
}

.doctor_head {
	font-weight: bold;
	margin-bottom: 6px;
	font-size: 18px;
}

.doctor_box p {
	margin-top: 0;
}

.doctor_box p:last-child {
	margin-bottom: 0;
}

.doctor_list {
	list-style: initial;
	list-style-type: decimal;
	padding-left: 24px;
}

.doc_title {
	color: var(--green);
	border-left: 3px solid var(--green);
	padding-left: 4px;
}

@media (max-width: 767.98px) {
	.doctor_columns .flex_column:first-child {
		margin-bottom: 24px;
	}
}


/*  Phirosophy
-------------------------------------------------------*/
.page_section {
	padding: 60px 0;
}

@media (max-width: 767.98px) {
	.page_section {
		padding: 40px 0;
	}
}

.page_section.is_gray {
	background: #F5F5F5;
}

.phirosophy_message {
	padding: 60px 0;
}

.p_jseitai_columns {
	gap: 5%;
	align-items: center;
	margin-bottom: 40px;
}

.p_jseitai_columns .flex_column:first-child {
	width: 40%;

}

.p_jseitai_columns .flex_column:first-child img {
	width: 100%;
}

.p_jseitai_columns .flex_column:last-child {
	width: 60%;
}

.p_jseitai_columns .message_txt {
	margin-bottom: 0;
}

/*  Clinic List
-------------------------------------------------------*/
.clinic_inner {
	padding: 60px 0;
}

.clinic_card {
	background: #F5F5F5;
	padding: 24px;
	display: flex;
	flex-wrap: wrap;
	width: calc(33.3% - 30px);
    margin-bottom: 30px;
    margin-left: 15px;
    margin-right: 15px;
}

@media (max-width: 992px) {
	.clinic_card {
		width: calc(50% - 30px);
	}
}

@media (max-width: 767px) {
	.clinic_list {
		justify-content: center;

	}

	.clinic_card {
		flex-wrap: wrap;
		width: 90%;
	}
}

.clinic_card .img_wrap {
	width: 100%;
}

.clinic_card .txt {
	width: 100%;
}

.clinic_card .txt h3 {
	color: var(--green);
	font-size: 20px;
	margin-bottom: 8px;
	text-align: center;
}

.karadacare article .txt h3 {
	color: rgba(208, 53, 6, .9);
}


@media (max-width: 767px) {
	.clinic_card .img_wrap {
		width: 100%;
		margin-bottom: 16px;
	}

	.clinic_card .txt h3 {
		font-size: 20px;
	}
}

.clinic_card .txt p {
	margin: 0;
	margin-bottom: 4px;
}

.clinic_site_btn {
	display: inline-block;
	min-width: 235px;
	background: var(--green);
	color: #FFF;
	padding: 11px 20px;
	text-align: center;
	margin-top: 16px;
}

.karadacare article .clinic_site_btn {
	background: rgba(208, 53, 6, .9);
}

.clinic_site_btn_wrap {
	text-align: center;
}

.clinic_head {
	margin-bottom: 40px;
	text-align: center;
	font-size: 28px;
}

.clinic_head img {
	max-width: 300px;
	margin: 0 auto;

}

.clinic_head::after {
	content: "";
	background: rgba(13, 149, 96, .6);
	display: block;
	height: 4px;
	width: 55px;
	margin: 18px auto 0;
}

.clinic_head.karadacare::after {
	background: rgba(208, 53, 6, .6);
}

.clinic_list_wrap.is_bg {
	background: rgba(223, 216, 206, 0.27);
}

.clinic_list_wrap.is_bg .clinic_card {
	background: #FFF;
}

.clinic_list_desc {
    line-height: 1.8;
    letter-spacing: 0.06em;
}

@media (min-width: 768px) {
	.clinic_list_desc {
		text-align: center;
	}
}

.clinic_tel {
	font-size: 18px;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;

}

.clinic_tel::before {
	display: inline-block;
    transform: rotate(15deg);
    position: relative;
    top: -2px;
    content: "\f879";
    margin-right: 3px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 1.4rem;
}
.clinic_inner .flex_columns{
	gap: 5%;
	align-items: center;
}
.clinic_inner .flex_columns .flex_column:first-child{
	width: 35%;
}
.clinic_inner .flex_columns .flex_column:last-child{
	width: 65%;
}
.kanren_main{
	font-size: 18px;
	color: var(--green);
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 0;
}
.kanren_main.big{
	font-size: 24px;
}
.img_bgshadow{
	box-shadow: 10px 10px 0 0 #DDD;
}
p.kanren_sub {
    margin-bottom: 0;
}
.kanren_columns{
	margin-bottom: 60px;
}
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Article
--------------------------------------------- */
.topics_inner {
	padding: 60px 0;
}

.article_list {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
	justify-content: center;
}

article.card {
	width: calc(33.3% - 30px);
	margin-bottom: 30px;
	margin-left: 15px;
	margin-right: 15px;
	line-height: 1.4;
}

@media (max-width: 992px) {
	article.card {
		width: calc(50% - 30px);
	}
}

@media (max-width: 576px) {
	article.card {
		width: 100%;
	}
}

article.card {
	display: flex;
	flex-direction: column;
}

article.card .img_wrap img {
	width: 100%;
}

article.card .txt time {
	font-size: 14px;
}

article.card .txt h4 {
	font-size: 16px;
}

/*--Pagenation*/

.nav-links {
	text-align: center;
}

.nav-links .page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
}

.page-numbers li {
	font-family: "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "HiraKakuPro-W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS Pgothic", "Osaka", sans-serif, Helvetica, Helvetica Neue, Arial, Verdana;
}

.page-numbers li a {
	display: inline-block !important;
	/* padding: 0.5rem 1.3rem; */
	width: 40px;
	line-height: 40px;
	height: 40px;
	background-color: #eee;
	text-decoration: none;
	color: var(--maintxt);
}

.page-numbers li .current {
	display: inline-block !important;
	/* padding: 0.5rem 1.3rem; */
	width: 40px;
	line-height: 40px;
	height: 40px;
	background-color: var(--maintxt);
	text-decoration: none;
	color: #FFF;
}

/* Single
--------------------------------------------- */
.single .entry-header {
	background: #F5F5F5;
	border-top: 1px solid #DDD;
}

.post_inner {
	margin: 40px auto;
}

#post_header h1 {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.7;
	font-family: "Helvetica Neue", Arial, "YuGothic", "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Droid Sans", sans-serif;
}

.post_meta {
	display: flex;
	font-family: "Helvetica Neue", Arial, "YuGothic", "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Droid Sans", sans-serif;
	display: flex;
	gap: 8px;
	align-items: center;
}

.post_meta .cat a {
	color: #FFF;
	background: #BBB;
	padding: 4px 8px;
	font-size: 12px;
	border-radius: 2px;
}

#post_body {
	font-family: "Helvetica Neue", Arial, "YuGothic", "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Droid Sans", sans-serif;
}

#post_body h2 {
	font-weight: 700;
	font-size: 22px;
	line-height: 1.4;
	padding: 0 0 0 16px;
	margin: 0 0 0.8em;
	position: relative;
	border-left: 6px solid var(--custom1);
}


#navigation {
	overflow: hidden;
	margin: 0 0 2em;
	padding-left: 0;
	list-style: none;
	background: #CCC;
}

#navigation li {
	display: block;
	width: 50%;
	line-height: 1.6em;
	font-size: 13px;
	float: left;
	background: #FFF;
}

#navigation:after {
	clear: both;
}

#navigation a {
	display: block;
	height: 60px;
	margin: 10px 5px;
}

#navigation li:first-child {
	margin: 2px 1px 2px -1px;
}

#navigation li:first-child img {
	margin-right: 1em;
	float: left;
	border: 1px solid #CCC;
}

#navigation li:last-child {
	margin: 2px -1px 2px 1px;
	text-align: right;
}

#navigation li:last-child img {
	margin-left: 1em;
	float: right;
	border: 1px solid #CCC;
}

/* NextPrev
--------------------------------------------- */
.prev-next-link {
	margin: 60px 0;
}

.prev-next-link a {
	border-bottom: 1px #ddd solid;
	display: block;
	text-decoration: none;
	padding: 14px 40px;
	color: var(--green);
}

.prev-next-link a:hover {
	background-color: #f6f6f6;
}

.prev-next-link a:first-child {
	border-top: 1px #ddd solid;
}

.prev-next-label {
	font-size: 14px;
	color: #000;
	margin: 0;
	margin-bottom: 8px;

}

.nav_prev .thumb-wrap {
	flex-direction: row-reverse;
}

.nav_prev .prev-next-label {
	text-align: right;
}

.nav_prev .prev-next-label::after {
	font-family: "Font Awesome 5 Free";
	content: "\f105";
	font-weight: 600;
	padding-left: 11px;
	font-size: 19px;
	color: #888;
}

.nav_next .prev-next-label::before {
	font-family: "Font Awesome 5 Free";
	content: "\f104";
	font-weight: 600;
	padding-right: 11px;
	font-size: 19px;
	color: #888;
}

/* Images */
.thumb-wrap {
	display: flex;
	gap: 16px;
}

.thumb-wrap img {
	width: 80px;
	height: 100%;
	aspect-ratio: 1/1;
	object-fit: cover;
}

@media (min-width: 768px) {
	.prev-next-link {
		display: flex;
		border-top: 1px solid #DDD;
	}

	.prev-next-link a {
		flex: 1;
	}

	.prev-next-link a,
	.prev-next-link a:first-child {
		border: none;
	}

	.next-link {
		text-align: right;
	}
}

/* Flexbox
--------------------------------------------- */
.flex_columns {
	display: flex;
	justify-content: space-between;
}

@media (max-width: 767.98px) {

	.flex_columns {
		flex-wrap: wrap;
	}

	.flex_column {
		width: 100% !important;
	}

}

.row_reverse {
	flex-direction: row-reverse;
}

.col_reverse {
	flex-direction: column-reverse;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 40px 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
	line-height: 1;
}

/* Captions
--------------------------------------------- */
.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;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.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;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}