@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
/*==========================================
	00_common
===========================================*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&display=swap');

.c--tel {
	font-family: 'Noto Serif JP';
}
.c--tel a {
	color: #40714f;
	font-size: 120%;
}
@media screen and (max-width: 782px) {
	.layout-reverse {
		flex-wrap: wrap-reverse !important;
	}
}

/*==========================================
	01_HOME
===========================================*/
.c--ttl-home-sec,
.c--ttl-sec {
	background: none !important;
	font-family: 'Noto Serif JP' !important;
	font-weight: 400 !important;
	color: #7d6000 !important;
	font-size: 2em !important;
	margin: 0 auto !important;
	padding: 0 0 1em 0 !important;
}
.c--ttl-home-sec > span,
.c--ttl-sec > span {
	display: block;
	font-family: sans-serif !important;
	font-size: 1rem !important;
	color: #4fa545 !important;
	margin-top: 0.8em;
}
.post_content h2.c--ttl-home-sec::before {
	content: none;
}
.p-mainVisual__textLayer {
	justify-content: flex-start !important;
	top: 65% !important;
}
.l-header .l-header__inner {
	padding-top: 10px;
	max-width: 100%;
}
.c-gnav > .menu-item > a {
	padding: 0 24px;
}
/* home-service
-----------------------*/
.figure-icon {
	margin-top: -4em;
}
/*==========================================
	02_Service
===========================================*/
.page-id-12 #content {
	padding-top: 0;
}
/*==========================================
	03_About
===========================================*/
.page-id-14 .l-content {
	margin-bottom: 0;
}
.page-id-14 #sec01 .c--ttl-sec,
.page-id-14 #sec01 .c--ttl-sec > span {
	color: #fff !important;
}
/*==========================================
	04_Blog
===========================================*/
/* side-widget
-----------------------*/
.ttl-sidebar {
	font-family: 'Noto Serif JP';
	font-size: 1.5em;
	font-weight: 400;
	color: #40714f;
	padding-bottom: 0.25em;
	border-bottom: 1px solid;
}

/*==========================================
	05_Contact
===========================================*/
/*======================
	form reset
======================*/
input[type='checkbox'] {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after,
.wpcf7-spinner {
	display: none !important;
}

/*======================
	Contact Form7
======================*/
.wpcf7 {
	border-radius: 20px;
}

form.wpcf7-form {
	max-width: 800px;
	margin: 0 auto;
}

form.wpcf7-form > div {
	margin-bottom: 2em;
}

form.wpcf7-form > div.label__area {
	display: flex;
	justify-content: space-between;
}

form.wpcf7-form > div.label__area .form__label {
	flex-basis: 70%;
}

.wpcf7-form p > label {
	display: flex;
	align-items: center;
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: 0.5em;
}

#contact-confirm .form__label,
.form__label input,
.form__label textarea,
.form__label select {
	background: #fff;
	/* border: 1px solid #ccc; */
	width: 100%;
	padding: 1em;
}

.form__label textarea {
	border: 1px solid #e3e5e7;
}

.wpcf7-form span.required,
.wpcf7-form span.optional {
	display: inline-block;
	/* border: 1px solid #D07800; */
	color: #753f00;
	background: #feec8a;
	font-size: 0.875rem;
	line-height: 1;
	border-radius: 5px;
	padding: 0.3em 0.5em;
	margin-right: 0.5em;
}

.wpcf7-form span.optional {
	color: #222;
	background: none;
	border: 1px solid #222;
}

::placeholder {
	color: #ccc;
}

.wpcf7-form p.caption {
	font-size: 12px;
	margin-top: 0.5em;
}

.wpcf7-form .acceptance {
	justify-content: center;
}

/* 送信・戻るボタン
-----------------------------*/
.submit > p,
.previous > p {
	text-align: center;
}

.wpcf7-submit,
.wpcf7-previous {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 320px;
	outline: none;
	background: #e5b700;
	border: 1px solid #e5b700;
	color: #fff;
	padding: 16px;
	text-align: center;
	border-radius: 50vh;
	transition: 0.6s ease-in-out;
}

.wpcf7-submit:hover {
	background: #e5769c;
	border: 1px solid #e5769c;
}

.wpcf7-previous {
	background: none;
	border: 1px solid #f18200;
	color: #f18200;
}

.wpcf7-previous:hover {
	background: #e5b700;
	border: 1px solid #e5b700;
	color: #fff;
}

form.wpcf7-form > div.previous {
	margin-bottom: 1em;
}

/* checkbox
-----------------------------*/
.wpcf7-checkbox {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}

.wpcf7-checkbox input,
.wpcf7-acceptance input {
	border: none;
	background: none;
}

.wpcf7-list-item {
	margin: 0 !important;
}

.wpcf7-list-item > label input {
	width: auto;
}

.wpcf7-checkbox .wpcf7-list-item:not(:last-child),
.wpcf7-radio .wpcf7-list-item:not(:last-child) {
	display: inline-block;
	margin: 0 2em 0 0 !important;
}

input[type='checkbox'] {
	cursor: pointer;
	vertical-align: middle;
	position: relative;
	margin-right: 0.5em;
}

input[type='checkbox']::before,
input[type='checkbox']::after {
	content: '';
	display: block;
	position: absolute;
}

input[type='checkbox']::before {
	background-color: #fff;
	border-radius: 0%;
	border: 2px solid #e4e6ef;
	width: 20px;
	height: 20px;
	transform: translateY(-50%);
	top: 50%;
	left: 5px;
}

input[type='checkbox']::after {
	border-bottom: 3px solid #e5b700;
	border-left: 3px solid #e5b700;
	opacity: 0;
	height: 6px;
	width: 11px;
	transform: rotate(-45deg);
	top: 25%;
	left: 10px;
}

input[type='checkbox']:checked::after {
	opacity: 1;
}

/* radio
-----------------------------*/
input[type='radio'] {
	cursor: pointer;
	vertical-align: middle;
	position: relative;
	margin-right: 0.5em;
}

input[type='radio']::before,
input[type='radio']::after {
	content: '';
	display: block;
	position: absolute;
}

/* reCAPTCHA
-----------------------------*/
form.wpcf7-form > div.form__recaptcha {
	margin-bottom: 0;
}

.form__recaptcha a {
	color: #d07800;
	border-bottom: 1px solid #d07800;
	padding: 0.2em;
}

.form__recaptcha a:first-child {
	margin-right: 1em;
}

.form__recaptcha p {
	text-align: center;
}

/* select
-----------------------------*/
.form__label select {
	border: none;
}

.form__label.appt input,
.form__label.appt select {
	padding: 0.5em 1em;
}

.form__label.appt > p {
	display: flex;
	align-items: baseline;
	gap: 0.5em;
}

/* 確認画面
-----------------------------*/
/* #contact-form > div .inner {
	padding: 100px;
}

#contact-confirm .form__label.check {
	background: none;
}

#contact-confirm form.wpcf7-form .submit {
	margin-bottom: 0;
} */
