@charset "utf-8";

/* ------------------------------
▼ body
------------------------------ */

* {
box-sizing: border-box;
}
html {
font-size: 62.5%;
}

body {
background-color: #fff;
color: #333;
/* font-family: Cormorant Garamond, Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; */
font-size: 16px;
font-size: 1.6rem;
line-height: 1.8;
margin: 0;
overflow-x: hidden;
}


/* ------------------------------
▲ body
▼ a
------------------------------ */

a {
color: #666;
text-decoration: none;
-webkit-transition: opacity 0.3s ease-out;
-moz-transition: opacity 0.3s ease-out;
-ms-transition: opacity 0.3s ease-out;
transition: opacity 0.3s ease-out;
}
a:hover,
a:focus {
color: #666;
text-decoration: none;
opacity: .3;
-webkit-opacity: .3;
-moz-opacity: .3;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)"; /* IE 8 */
}
a:visited {
outline: none;
}
a:focus, *:focus { outline:none; }

a.arrow {
display: block;
position: relative;
padding-right: 12px;
}
a.arrow:after {
display: block;
content: "";
position: absolute;
top: 50%;
right: 0;
width: 6px;
height: 6px;
margin: -2px 0 0 0;
border-top: solid 1px #666;
border-right: solid 1px #666;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* ------------------------------
▲ a
▼ h1〜h6
------------------------------ */

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
/* font-family: Cormorant Garamond, Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; */
margin: 0;
padding: 0;
}

.h1_1 h1 {
font-family: "Noto Serif JP", Sans-serif !important;
font-size: 2.2rem !important;
font-weight: bold !important;
}
@media screen and (min-width:768px) {
	.h1_1 h1 {
	font-size: 2.8rem !important;
	}
}
@media screen and (min-width:1024px) {
	.h1_1 h1 {
	font-size: 3.6rem !important;
	}
}

.h2_1 h2 {
font-family: "Noto Serif JP", Sans-serif !important;
font-size: 2.2rem !important;
font-weight: bold !important;
color: #FFFFFF;
}
@media screen and (min-width:768px) {
	.h2_1 h2 {
	font-size: 2.8rem !important;
	}
}
@media screen and (min-width:1024px) {
	.h2_1 h2 {
	font-size: 3.6rem !important;
	}
}

/* ------------------------------
▲ h1〜h6
▼ p
------------------------------ */

p { margin-bottom: 1.6rem }

/* ------------------------------
▲ p
▼ br
------------------------------ */

.br_sp {
display: none;
}

@media only screen and (min-width: 640px) {
	.br_sp {
		display: block;
	}
}

/* ------------------------------
▲ br
▼ table
------------------------------ */

.tbl1 {
width: 100%;
}
.tbl1 td {
padding: 0.5rem 0.55556rem;
font-size: 0.77778rem;
text-align: left;
}

/* ------------------------------
▲ table
▼ header
------------------------------ */

.sitelogo-img {
-webkit-transition: opacity 0.3s ease-out !important;
-moz-transition: opacity 0.3s ease-out !important;
-ms-transition: opacity 0.3s ease-out !important;
transition: opacity 0.3s ease-out !important;
}
.sitelogo-img:hover {
opacity: .3 !important;
-webkit-opacity: .3 !important;
-moz-opacity: .3 !important;
filter: alpha(opacity=30);	/* IE lt 8 */
-ms-filter: "alpha(opacity=30)" !important;
}

.header-2 {
 transform: translatey(-100px);
 -moz-transition: all .3s ease!important;
 -webkit-transition: all .3s ease!important;
 transition: all .3s ease!important;
}

.elementor-sticky--effects.header-2  {
 height: auto!important;
 transform: translatey(0px);
}


/* ------------------------------
▲ header
▼ original
------------------------------ */

.txt1 div {
font-family: "Noto Serif JP", Sans-serif !important;
font-size: 2.2rem !important;
font-weight: bold !important;
padding: 0 0 6px 0;
}
@media screen and (min-width:768px) {
	.txt1 div {
	font-size: 2.8rem !important;
	}
}
@media screen and (min-width:1024px) {
	.txt1 div {
	font-size: 3.6rem !important;
	}
}

/* ------------------------------
▲ original
▼ plugin
------------------------------ */

/* ▼ Contact Form 7 */
.cont1 table {
width: 100%;
border-collapse: collapse;
border: solid #222;
border-width: 1px;
color: #000;
}
.cont1 table tr th,
.cont1 table tr td {
padding: 0.5em;
text-align: left;
vertical-align: top;
border: solid #CCC;
border-width: 1px;
vertical-align: middle;
}
.cont1 table tr th {
width: 40%;
}
.cont1 table p,
.cont1 table tr p,
.cont1 table tr th p,
.cont1 table tr td p {
margin-bottom: 0;
}
.cont1 table .submit {
margin-bottom: 16px;
}
@media screen and (max-width:768px) {
	.cont1 {
	width: 100%;
	}
	.cont1 table,
	.cont1 table tbody,
	.cont1 table tr,
	.cont1 table tr th,
	.cont1 table tr td {
	display: block;
	}
	.cont1 table tbody {
	width: 100%;
	border: solid #CCC;
	border-width: 0 0 1px 0;
	}
	.cont1 table tr th,
	.cont1 table tr td {
	width: 100%;
	padding: 3% 5%;
	}
	.cont1 table tr td {
	border-width: 0px 1px 0px 1px;
	}
}
/* 必須 */
.cont1 .required{
font-size:1.2rem;
padding: 0 5px 0 5px !important;
background: #F57500;
color: #fff;
border-radius: 3px;
margin-left: 8px;
display:inline-block;
}
/* 任意 */
.cont1 .optional{
font-size:1.2rem;
padding: 5px;
background: #000080;
color: #fff;
margin-left: 5px;
}
/* 入力項目を見やすく */
.cont1 input.wpcf7-form-control.wpcf7-text,
.cont1 textarea.wpcf7-form-control.wpcf7-textarea {
width: 100%;
padding: 8px 15px;
margin-right: 10px;
margin-top: 10px;
border: 1px solid #d0d5d8;
border-radius: 3px;
background-color: #eff1f5;
}
.cont1 textarea.wpcf7-form-control.wpcf7-textarea {
height: 200px;
}
	
/* セレクトボックスの矢印デザイン変更 */
.cont1 select {
width: 100%;
padding: 8px 15px;
margin-right: 10px;
margin-top: 10px;
border: 1px solid #d0d5d8;
border-radius: 3px;
background-color: #eff1f5;
}
.cont1 select {
-webkit-appearance: none;
appearance: none;
padding-right: 40px;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
background-repeat: no-repeat;
/* ←ここで位置調整 */
background-position: right 8px center;
background-size: 12px 8px;
}

/* wpcf7-spinner */
div.wpcf7 .wpcf7-spinner {
display: none !important;
}
/* recaptcha */
.cont1 .recaptcha {
display: block;
text-align: center;
}
.cont1 .recaptcha div {
margin: 0 auto;
}
/* エラーメッセージ */
.cont1 .response {
text-align: center;
margin-bottom: 8px;
}
@media screen and (max-width:768px) {
	.cont1 .response {
	text-align: left;
	}
}
.cont1 .recaptcha .wpcf7-not-valid-tip {
margin: 0 auto;
text-align: center;
}
/* .grecaptcha-badge { visibility: hidden; }*/
/* ▲ Contact Form 7 */

/* ▼ Full Screen Menu for Elementor */
.fsmfe-wrapper .menu-toggle:checked+.icon-bars .bar-top,
.fsmfe-wrapper .menu-toggle:checked+.icon-bars .bar-bottom {
background-color: #fff !important;
}
/* ▲ Full Screen Menu for Elementor */

/* ------------------------------
▲ plugin
------------------------------ */