@charset "UTF-8";
/*
Theme Name: 伊東市OWS2026
Theme URI: 
Author: qp3.jp
Author URI: http://qp3.jp/
Description: 専用テーマ
Version: 1.0
License: 
License URI: 
Text Domain:

Google Fonts
font-family: "Zalando Sans", "Noto Sans JP", "Zalando Sans", sans-serif;

*/

html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

html,
body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", sans-serif;
	font-style: normal;
	font-feature-settings: "palt" 1;
	line-break: strict;
	/* normalは句読点のみ*/
	word-break: break-all;
	background-color: #002844;
	font-weight: normal;
}

body {
	color: #000;
	font-size: 16px;
	margin: 0;
	padding: 0;
}

a {
	color: #000;
	text-decoration: none;
	transition: all 0.3s ease-out;
	cursor: pointer;
}
a:not([href]) {
	cursor:default;
}

a[href]:not(.btn):hover {
	text-decoration: underline;
}
a[href] img {
	transition: all 0.3s ease-out;
}
a[href]:hover img {
	filter: brightness(1.3);
}

img {
	border: none;
	max-width: 100%;
}

iframe {
	border: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
}

h2 {
	margin: 30px 0 0;
}

h3 {
	margin: 25px 0 0;
}

h4,
h5,
h6 {
	margin: 20px 0 0;
	color: #002844;
}

p {
	margin: 20px 0 0;
	line-height: 2.5;
}

ul {}

li {
	list-style: none;
}

/* テーブル */
table {
	border-collapse: collapse;
	width: 100%;
	margin-top: 20px;
	border-bottom: 1px solid #5686a9b8;
	box-sizing: border-box;
	border-top: 1px solid #5686a9b8;

}

table:not(.table-type2) tr:first-child th {
	background: #b0d0df;
	color: #022844;
}

tr {}

tr.strong,
.table-striped tr:nth-child(odd).strong {
	background: #31a29242;
}

th,
td {
	border-bottom: 1px solid #5686a9b8;
	border-left: 1px solid #78829f55;
	padding: 1em 0.6em;
	line-height: 1.2;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
}

table.table-nowrap th,
table.table-nowrap td {
	white-space: nowrap;
}

table.table-nowrap_td td {
	white-space: nowrap;
}

th:first-child,
td:first-child {
	border-left: none;
}

th {
	background: #a1d2e040;
	color: #425b76;
}

td {}

@media screen and (max-width:767px) {

	th,
	td {}
}


input[type="submit"],
input[type="button"],
button {
	-webkit-appearance: none;
	appearance: none;
	font-size: 16px;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration,
button::-webkit-search-decoration {
	display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus,
button::focus {
	outline-offset: -2px;
}

input[type="submit"]:hover,
input[type="button"]:hover,
button:hover {
	text-decoration: none;
}

textarea,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="url"],
input[type="number"],
input[type="address"] {
	border: none;
	border-radius: 0;
	outline: none;
	background: rgba(26, 26, 26, 0.1);
	line-height: 1.2;
	font-size: 16px;
	padding: 10px 10px;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
}

input:-internal-autofill-selected {
	background-color: rgb(33 88 132) !important;
}

input::placeholder {
	color: rgba(26, 26, 26, 0.3);
}

input[type="checkbox"] {
	margin: 0;
}

select {
	cursor: pointer;
	border: #534741 1px solid;
	padding: 0 34px 0 8px;
	border-radius: 4px;
	line-height: 30px;
	white-space: nowrap;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
	-ms-appearance: none;
	appearance: none;
	text-indent: .01px;
	text-overflow: "";
	height: 32px;
	font-size: 16px;
	position: relative;
	background-size: 31px auto;
	background: #f6f6f6;
}

.select_wrap {
	display: inline-block;
	position: relative;
}

.select_wrap:after {
	content: "";
	width: 5px;
	height: 5px;
	border: #262626 1px solid;
	border-width: 0 1px 1px 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	display: block;
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -4px;
	pointer-events: none;
}

select::-ms-expand {
	display: none;
}

option {
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
	-ms-appearance: none;
	appearance: none;
	color: #262626;
	padding: 5px 3px;
}

option[selected] {
	color: #fff;
	background: rgba(60, 88, 207, 0.3);
}

select:focus {
	border-color: #2196F3;
	outline: none;
}

select.off {
	background: #f1f1f1;
	border-color: #ddd;
}

input[type="checkbox"].inline_cb {
	margin-left: 0.5em;
}

.forPC {
	display: block;
}

.forSP {
	display: none;
}

.inner {}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

/* ボタン */
.btns {
	margin: 30px 0 20px;
}

.btn,
input[type="submit"],
input[type="button"],
button {
	display: block;
	width: 100%;
	max-width: 280px;
	border: 1px solid #022844;
	color: #fff;
	margin: 0 auto;
	line-height: 57px;
	text-align: center;
	background: none;
	cursor: pointer;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.btn:hover {
	text-decoration: none;
	opacity: 1;
	background: #262626;
	color: #fff;
}

.btn_min {
	font-size: 85%;
	line-height: 40px;
	margin-top: 10px;
}

.btns_more {
	margin-top: 25px;
}

.btn_more {
	height: 43px;
	line-height: 43px;
	color: #262626;
	text-align: right;
	/* font-family: 'Montserrat', sans-serif; */
	padding-right: 15px;
	box-sizing: border-box;
	/* max-width: 380px; */
	font-size: 14px;
}

.btn_more:after {
	content: "";
	display: inline-block;
	background: url(images/icon_arrow.png) center no-repeat;
	background-size: 100% auto;
	width: 22px;
	height: 7px;
	margin: 0 0 2px 10px;
}

.btn_more:hover:after {
	background: url(images/icon_arrow_w.png) center no-repeat;
	background-size: 100% auto;
	width: 22px;
	height: 7px;
}

.btns_top {
	margin: 0 0 70px;
}

.btn_top {}

/* バナー */

.bnrs {
	text-align: center;
}

.bnr {
	display: inline-block;
	max-width: 86%;
}

.bnr_img {
	display: block;
	max-width: 100%;
	height: auto;
	box-shadow: 0 8px 20px rgb(74 119 189 / 30%);
	transition: 0.3s ease-out;
}

.bnr_img:hover {
	transform: scale(1.03);
}


.bnrs_register {
	margin: 0 auto 70px;
	padding: 0 30px;
}

.bnr_register {
	display: block;
	margin: 45px auto 0;
}

.bnr_register img {
	width: 100%;
	height: auto;
	box-shadow: 0 15px 18px rgb(34 55 178 / 20%);
	display: block;
}

.bnr_register_2 {}

@media screen and (max-width: 1024px) {
	.sidebar .bnr_register_2 {
		display: none;
	}
}

body.top .bottm_bnr{
    padding: 1px;
    border-top: #00000022 1px solid;
}
@media screen and (min-width: 768px) {
    body.top .bottm_bnr{
        margin: 30px 0 0;
    }
}

.mainBnr{
	width: 88%;
	max-width: 1100px;
	margin: 80px auto;
	display: block;
}
.mainBnr img{
	display:block;
}
@media screen and (max-width: 767px) {
	.mainBnr{
		width: 100%;
	}
    .bottm_bnr .content-bnr{
        margin: 0;
        
    }
	.bottm_bnr .mainBnr{
		margin: 0;
	}
}

/* entry */
.content-entry,
body.page .content.content-entry{
    margin: 60px auto;
}
.entry_title{
    display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px
}
.entry_title_en{
	font-size: 18px;
    letter-spacing: 0;
	color: #002844;
	font-family: "Zalando Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: italic;
	font-variation-settings: "wdth" 125;
	display: inline-block;
	line-height: 1.15;
	padding-right: 0.12em;
}
.entry_title_kana{
    font-size: 32px;
	letter-spacing: 0;
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", sans-serif;
	font-style: italic;
	margin: 0;
	display: inline-block;
	line-height: 1.1;
	padding-right: 0.14em;
	background: linear-gradient(45deg, #439eb2 0%, #002844 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.entryBnrs{
    display: flex;
	flex-direction: row;
	justify-content: center;
	gap: 20px;
}
.entryBnr{
    
}
.entryBnr img{
	
}

@media screen and (max-width:767px) {
	.entryBnrs{
		flex-direction: column;
		gap: 12px;
		margin-top: 12px;
	}
}


/* 画像 */
.img_wrapper {
	position: relative;
	left: 0;
	top: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: auto;
	margin: auto 0;
	overflow: hidden;
}

.img_wrapper img {
	position: absolute;
	left: -500px;
	top: -500px;
	bottom: -500px;
	right: -500px;
	display: block;
	margin: auto;
	width: auto;
	height: 100%;
}

@media screen and (max-width:767px) {

	body {
	font-size: 14px;
}

	.forPC {
		display: none;
	}

	.forSP {
		display: block;
	}

	/* ボタン */
	.btns {}

	.btn {
		max-width: 380px;
	}

	.btn:hover {}

	.btns_more {}

	.btn_more {
		max-width: none;
	}

	.btn_more:after {}

	.btn_more:hover:after {}

	.btns_top {}

	.btn_top {}

	/* バナー */
	.bnr_register {}

	.bnr_register img {}

	.bnr_register_2 {}

	.bnr_register_2 img {}

}

/*-----------------------------------------------------------------------------* common */

#container {
	background-color: #f1f3f5;
	max-width: 1600px;
	margin: 0 auto;
}

.contents {
	position: relative;
	padding: 0;
	overflow: hidden;
}
body:not(.home) .contents {
	padding-top: 0;
}

.contents_inner {
	position: relative;
	z-index: 2;
}

.contents_bg {}

.contents_bg_1 {
	position: absolute;
	z-index: 1;
	left: -408px;
	width: 500px;
	height: 20000px;
	background: rgb(38 38 38 / 0.07);
	top: 0;
	transform-origin: 0 0;
	transform: skewX(35deg);
}

.contents_bg_2 {
	position: absolute;
	z-index: 1;
	left: 50%;
	width: 98px;
	height: 20000px;
	background: rgb(38 38 38 / 0.07);
	top: 0;
	margin: 0 0 0 80px;
	transform-origin: 0 0;
	transform: skewX(35deg);
}

.contents_bg_2:before {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	left: 165px;
	width: 12px;
	height: 20000px;
	background: rgb(38 38 38 / 0.07);
	top: 0;
}

.contents_bg_2:after {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	left: 215px;
	width: 2px;
	height: 20000px;
	background: rgb(38 38 38 / 0.07);
	top: 0;
}


/* contents_header */
.contents_header {
	background: #f1f1f1;
}

.contents_header_inner {
	/* background: url(images/contents_header.png) left no-repeat; */
	background-size: auto 100%;
	width: 100%;
	max-width: 1920px;
	height: 91px;
	margin: 0 auto;
}

.contents_header_ttl {
	color: #009be4;
	line-height: 1;
	height: 91px;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: normal;
	padding-left: 40px;
}

.contents_header_ttl_kana {
	color: #002844;
	display: block;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 4px;
}

.contents_header_ttl_en {
	font-family: 'Montserrat', sans-serif;
	/*font-style: italic;*/
	font-weight: bold;
	letter-spacing: 2px;
	font-size: 13px;
	margin-top: 5px;
}

/* パンくず */
#breadcrumb {
	max-width: 1920px;
	margin: 0 auto;
	padding: 8px 0 0 15px;
	box-sizing: border-box;
	font-size: 13px;
	line-height: 1.2;
	height: 0;
}

.breadcrumbItem {
	display: inline-block;
}

.breadcrumbItem:before {
	content: "/";
	padding: 0 5px 0 0;
}

.breadcrumbItem:first-child:before {
	display: none;
}

/* content */

.sampletest{
	max-width:1600px;
	width:100%;
	height:auto;
	position:absolute;
	left:0;
	right:0;
	top:0;
	z-index: 10000000000;
}
.sampletest.transparency{
	opacity:0.6;	
}
.sampletest.transparent{
	opacity:0;
}
.sampletest.disable{
	pointer-events:none;
}


.content {
	margin: 50px auto 0;
}

.content:after {
	/* content: ""; */
	display: block;
	clear: both;
}

body.page .content {
	margin: 0 auto;
}


.main {
	width: calc(100% - 450px);
	float: left;
	max-width: 800px;
	padding-left: 60px;
	margin: 0 auto;
	box-sizing: border-box;
}

body.page {
	padding-left: 0;
}

.main_list {}

.content-1c .main {
	max-width: 900px;
	margin-left: auto;
	background: rgba(255, 255, 255, 0.89);
	margin: 0 auto 70px;
	float: none;
	padding: 70px 50px;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.02);
}

@media screen and (max-width: 1024px) {

	.main {
		width: 88%;
		max-width: 100%;
		float: none;
		padding-left: 0;
		margin: 0 auto;
	}

}

@media screen and (max-width: 767px) {

	#container {}

	.contents {}

	.contents_bg_1 {
		width: 222px;
		left: -167px;
	}

	/* contents_header */
	.contents_header {}

	.contents_header_inner {
		/* background: url(images/contents_header.png) left -30px top 0 no-repeat; */
		background-size: auto 100%;
		height: 64px;
	}

	.contents_header_ttl {
		height: 64px;
		padding-left: 20px;
	}

	.contents_header_ttl_kana {
	font-size: 21px;
	}

	.contents_header_ttl_en {
		font-size: 10px;
		margin-top: 3px;
	}

	/* パンくず */
	#breadcrumb {
		white-space: nowrap;
		/* overflow-x: scroll; */
		padding: 5px 5px 5px 8px;
		font-size: 12px;
	}

	.breadcrumbItem {
		max-width: 200px;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.breadcrumbItem:before {}

	.breadcrumbItem:first-child:before {}

	/* content */
	.content {
		margin-top: 30px;
	}

	body .content-1c:first-child {
		margin-top: 20px;
	}

	.main {}

	.main_list {}

	.content-1c .main {
		padding: 7%;
		width: 95%;
		margin: 0 auto 20px;
	}
}

@media screen and (max-width:600px) and (max-height:850px) {
	html.info_open, html.info_open body{
		overflow:hidden;
	}
}
#container:has(.post_content.noSidebar){
	width: 100%;
}

#contents {
	overflow: hidden;
	padding: 0;
	min-height: calc(100vh - 30px);
	box-sizing: border-box;
}

#contents_inner {
	display: block;
}
body.single-post{
	display:flex;
	flex-direction:column;
	align-items:center;
}

@media screen and (min-width:768px) {
	body:not(.home):not(.page):not(.archive):not(.error404):not(.single-post) #contents_inner {
		max-width: 1260px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		padding: 0;
		flex-direction: row;
		align-items: flex-start;
	}
	body.single #contents {
		max-width:90%;
		margin:0 auto;
	}
	
}

@media screen and (max-width:767px) {
	#contents {
		background: #fff;
		min-height: calc(100vh - 36px);
		padding-bottom: 40px;
	}
}

.btns {
	margin: 20px auto 35px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;

}

.top_btns {
	margin-top: 80px;
}

.links_cat {
	background: #eee;
	font-size: 14px;
	margin: 0;
	padding: 18px 10px;
	position: relative;
}

.links_cat::after {
    transition: all 0.4s ease-out;
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border: #444 solid;
    border-width: 1px 1px 0 0;
    display: block;
    transform: rotate(135deg) translateY(2px);
    top: 50%;
    margin-top: -5px;
    right: 10px;
}

.links_cat.open::after {
    transform: rotate(-45deg) translateY(2px);
    margin-top: -4px;

}

.links_cat:not(.open) {
	border-bottom: 0.6px solid #38404866;
}

.link {
	display: flex;
	font-family: ten-mincho, serif;
	align-items: center;
	justify-content: flex-start;
	box-sizing: border-box;
	color: #384048;
	background: none;
	text-align: left;
	max-width: 100%;
	width: 100%;
	min-height: 60px;
	line-height: 1.2;
	font-weight: bold;
	border: #384048 1px solid;
	border-width: 1px 0;
	padding: 20px 15px 20px 10px;
	min-width: 300px;
	flex-direction: row;
	position: relative;
	gap: 10px;
	flex-wrap: wrap;
}

.link-bottom {
	min-width: 180px;
	min-height: 50px;
	padding-top: 14px;
	padding-bottom: 14px;
	margin: 20px auto 0;
	width: 240px;
}

.link:not(:first-child, .link-bottom) {
	border-top: 0;
}

.link .min {
	font-weight: normal;
	opacity: 0.75;
}

.link:before {
	content: "";
	width: 4px;
	height: 4px;
	border: #384048 solid;
	border-width: 0.6px 0.6px 0 0;
	position: absolute;
	right: 4px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	transform: rotate(45deg);
}

.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	color: #fff;
	background: #022844;
	text-align: center;
	/* max-width: 300px; */
	/* width: 100%; */
	min-height: 60px;
	line-height: 1.2;
	font-weight: bold;
	border-radius: 4px;
	border: none;
	padding: 20px 25px;
	min-width: 240px;
	flex-direction: column;
}

.btn:hover {
	background: #439eb2;
	text-decoration:none;
}

.top_btn {}

.btn_shoulder {
	display: block;
	font-size: 13px;
	padding: 0 0 3px;
}

@media screen and (max-width:767px) {
	.btn {
		flex-direction: column;
	}
}


.btn2 {
	background: #384048;
	box-shadow: none;
}

.btn3 {
	background: #384048;
	box-shadow: none;
	padding: 0.1em 0.5em;
	font-size: 0.8em;
	line-height: 1;
}

.btn-conversion {
	background: #ff7164;
	background: linear-gradient(160deg, #ffa873 0%, #ff7164 80%);
	box-shadow: 0 10px 10px -4px #fd473659;
}

.btn-affiliate,
.btn-counseling {
	background: #0ab991;
	box-shadow: 0 10px 10px -4px #58dba059;
}

.post_entry .btn.btn-counseling {
	background: #0ab991;
	/* background: linear-gradient(160deg, #4edbb7 0%, #0ab991 80%); */
	box-shadow: 0 10px 10px -4px #58dba059;
	font-size: 130%;
	min-width: 80%;
	height: 80px;
}

.btn-submit {
	background: #ff7164;
	box-shadow: 0 14px 10px -4px #ff716466;
}

.btn-remove {
	background: #0000001a;
	width: 18px;
	height: 18px;
	border-radius: 16px;
	display: inline-block;
	position: relative;
	margin: -2px 0;
	transition: 0.3s ease-out;
	cursor: pointer;
}

.btn-remove:hover {
	filter: none;
	background-color: #00000033;
}

.btn-remove:before,
.btn-remove:after {
	content: "";
	width: 10px;
	height: 2px;
	border-radius: 1px;
	background: #44444488;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	transform: rotate(45deg);
}

.btn-remove:before {
	transform: rotate(-45deg);
}

@media screen and (max-width:767px) {
	.btns {
		margin-top: 50px;
	}

	.btn {
		height: 50px;
	}

	.top_btn {}
}

.bnr {
	display: flex;
	margin: 0 auto;
	border-radius: 10px;
	max-width: 100%;
	background: #fff;
	border-radius: 4px;
	width: 444px;
}

.bnr_img {
	max-width: 100%;
	border-radius: 4px;
	margin: 0 auto;
	border: none;
	display: block;
	height: auto;
}

.bnr_box {
	background: #f5f2ee;
	padding: 15px 0;
}

.icons {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 3px;
}

.icon {
	display: inline-block;
	background: #ff7164;
	color: #fff;
	padding: 2px 6px 3px;
	font-size: 14px;
	line-height: 1.2;
	border-radius: 4px;
}

.icon-hojyokin {
	background: linear-gradient(160deg, #e3c533 0%, #d2a10f 80%);
	color: #ffffff;
}

.icon-webtaiou {
	background: #ff7164;
	background: linear-gradient(160deg, #ffa873 0%, #ff7164 80%);
	color: #fff;
}



/*---nav---*/
.navLink_wrapper{
}
.nav_body{

}
.nav_contents{
	position: relative;
}
.nav_links{
    display: flex;
    flex-wrap: nowrap;
    padding: 40px;
}
.nav_link{
	background-color: #002844;
	color: #fff;
	padding: 6px 32px;
	text-decoration: none;
	clip-path: polygon(
  20px 0,
  100% 0,
  calc(100% - 20px) 100%,
  0 100%
 );
	text-align: center;
	font-family: "Zalando Sans", sans-serif;
	font-weight: 600;
	line-height: 1.5;
	margin: 0 -5px 0 0;
	text-wrap: nowrap;
}
.nav_wrapper:not(.footer_nav) .nav_link.current{
	background-color: #439eb2;
	position: relative;
}
.nav_wrapper:not(.footer_nav) .nav_link.current::after{
	content: "";
	height: 3px;
	width: 100%;
	background-color: #002844;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
.nav_wrapper .nav_link.comingSoon{
	filter: saturate(0%);
	opacity:0.3;
}
.nav_link:not(:first-child){
	margin-left: -8px;
}
.nav_wrapper:not(.footer_nav) .nav_link:hover:not([aria-disabled="true"]){
	background-color: #439eb2;
	text-decoration: none;
}
.nav_link[aria-disabled="true"],
.nav_link.disabled{
	pointer-events: none;
	cursor: default;
}

.nav_menu{
	position: fixed;
	top: 0;
	right: 0;
	margin: 18px 10px;
	cursor: pointer;
}
.nav_menu_button{
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 0;
	background-color: #002844;
	color: #fff;
	clip-path: polygon(
  12px 0,
  100% 0,
  calc(100% - 12px) 100%,
  0 100%
 );
	height: 24px;
	width: 90px;
	justify-content: center;
	box-shadow: inset 0 0 0 0 transparent;
}
.nav_menu_button p {
	margin: 0;
	letter-spacing: 0.5px;
	font-size: 12px;
	font-weight: normal;
}
.nav_menu_button_lines{
	display: flex;
	flex-direction: column;
	gap: 3px;
}
.nav_menu_button_lines span{
	width: 12px;
	height: 1px;
	background-color: currentColor;
}
.nav_menu_button:hover{
	text-decoration: none;
	box-shadow: inset 0 0 0 1px currentColor;
}
@media screen and (min-width: 768px) {
	#header .nav_link:first-child{
		display:none;
	}
}

@media screen and (max-width: 767px) {
	.nav_wrapper:not(.footer_nav) .nav_body{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #01121df1;
		backdrop-filter:blur(5px);
		z-index: 1000;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		opacity: 1;
		transform: translateY(0);
		transition: opacity 0.2s ease-out, transform 0.2s ease-out;
	}
	.nav_wrapper:not(.footer_nav) .nav_body:not(.open){
		pointer-events: none;
		user-select: none;
		opacity: 0;
	}
	.nav_wrapper:not(.footer_nav) .nav_body.open{
		pointer-events: all;
		user-select: auto;
		opacity: 1;
	}
	.nav_wrapper:not(.footer_nav) .nav_close {
		position: fixed;
		top: 10px;
		right: 12px;
		color: #fff;
		width: 42px;
		height: 42px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.nav_wrapper:not(.footer_nav) .nav_close_button{
        cursor: pointer;
        position: relative;
        width: 42px;
        height: 42px;
        display: flex;
        align-items: center;
        justify-content: center;
    
    }
	.nav_wrapper:not(.footer_nav) .nav_close_button:hover{
		text-decoration: none;
	}
	.nav_wrapper:not(.footer_nav) .nav_close_button span{
        position: absolute;
        display: block;
        width: 50px;
        height: 1px;
        background-color: #ffffff66;
        transform: translate(-50%, -50%);
    
    }
	.nav_wrapper:not(.footer_nav) .nav_close_button span:first-child{
        transform: rotate(45deg);
    
    }
	.nav_wrapper:not(.footer_nav) .nav_close_button span:last-child{
        transform: rotate(-45deg);
    
    }
	.nav_wrapper:not(.footer_nav) .nav_contents{
		width:100%;
	}
	.nav_wrapper:not(.footer_nav) .nav_links{
		display: flex;
		flex-direction: column;
		justify-content:center;
		align-items:center;
		gap: 0;
		width: 100%;
		padding: 80px 0 0;
	}
	.nav_wrapper:not(.footer_nav) .nav_link{
		background:none;
		border-top:#ffffff22 1px solid;
		clip-path:none;
		width:80%;
		padding: 15px 0;
		font-size: 20px;
		letter-spacing: 1px;
		color: #ffffff66;
	}
	.nav_wrapper:not(.footer_nav) .nav_link:last-child{
		border-bottom:#ffffff22 1px solid;
	}
	.header_nav .nav_wrapper:not(.footer_nav) .nav_link.current{
		background: none;
		position: relative;
		color: #ffffffaa;
	}
}
@media screen and (min-width: 768px) and (max-width: 1110px) {
	.nav_links {
		justify-content: center;
	}
}




.section, .content {
    width: 100%;
    margin-top: 0;
}

.section_inner, .content_inner {
    width: 88%;
    max-width: 1100px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 0 auto;
    padding: 0;
    gap: 40px;
}


.section_title, .content_title, .section_ttl {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    margin: 84px auto 0;
}

.box {
    width: 100%;
    height: auto;
    margin: 0 auto auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}


.boxs {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: stretch;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
}


.boxs-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.section_inner>* {
    width: 88%;
    margin: 0 auto;
}

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

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

.boxs>.box {
    --boxs-gap: 20px;
}

.boxs>.box {
    width: calc((100% - var(--boxs-gap))/2);
}

/* .boxs>.box:last-child:nth-child(odd) {
    width: 100%;
} */

.boxs>.box-small {
    width: calc((100% - (var(--boxs-gap) * 3)) / 4);
}

.boxs>.box-large {
    width: 100%;
}


.box-texts {
    justify-content: center;
    height: 100%;
    margin: 0;
}

.box-bnr {
    border-radius: 12px;
    width: 88%;
    margin: 0 auto;
    overflow: hidden;
}

.box-card {
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
}

.box-card_img {
    width: 100%;
}

.box-card_text {
    width: 100%;
    padding: 8px;
    text-align: center;
}

.box-card_name {
    font-weight: bold;
}

.box-card_txt {}


@media screen and (max-width:767px) {
    .boxs {
        flex-direction: column;
    }

    .boxs>.box {
        width: 100%;
        margin: 0 auto;
    }

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

    .boxs-grid_small {
        grid-template-columns: repeat(2, 1fr);
    }
	.section_inner, .content_inner{
		gap:10px;
	}
}




.wide {
    width: 100%;
}

/* 404 */
body.error404 .content .main {
}

body.error404 .content .main h1 {
}

body.error404 .content .main p {
}

body.error404 .content .main .notfound_actions{
	margin-top: 80px;
}

/*-----------------------------------------------------------------------------* 詳細ページ */


@media screen and (min-width:768px) {
	.content_main {
		width: 67.46%;
	}

	body.page .content_main,
	body.error404 .content_main {
		margin: 0 auto;
		width: 88%;
		max-width: 1024px;
	}

	body.concept .content_main {
		margin: 0 auto;
		width: 88%;
		max-width: 1200px;
	}

	body.archive .content_main {
		width: auto;
	}
}


/*-----------------------------------------------------------------------------* 一覧ページ */
.archive_content {}

.archive_content_header {
	margin: 60px auto 0;
	text-align: center;
	background-size: cover;
	height: 250px;
	border-radius: 70px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	padding: 0 0 3% 6%;
}

.archive_content_header_title {
	margin: 0 0 10px;
	font-size: 38px;
	text-align: left;
	line-height: 1.1;
}

.archive_content_header_title span {
	display: inline-block;
}

.archive_content_header_slug {
	font-size: 24px;
	margin: 0;
	line-height: 1;
	opacity: 0.6;
	letter-spacing: 2px;
}

.navLink_wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	gap: 0 10px;
	width: 86%;
	margin: 40px auto;
	border-top: 0.6px solid #444;
	position: relative;
	max-width: 900px;
	width: 86%;
	margin: 90px auto;
}
@media screen and (max-width:767px) {
	.navLink_wrapper {
		grid-template-columns: 1fr;
	}
}

.navLink {
	display: block;
	color: #826c59;
	text-decoration: none;
	font-size: 16px;
	padding: 13px 1%;
	border-bottom: 0.6px solid #444;
	transition: 0.3s ease-out;
	min-width: 200px;
	position: relative;
}
@media screen and (max-width:767px) {
	.navLink {
		min-width: 100%;
	}
}

.navLink::after {
	content: "";
	width: 6px;
	height: 6px;
	border: #384048 solid;
	border-width: 1px 1px 0 0;
	display: block;
	margin: auto 0;
	transform: translateY(-50%) rotate(45deg);
	position: absolute;
	right: 6px;
	top: 50%;
}

.postLists {
	margin: 40px auto;
}

.postLists_number {
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 1px;
	padding: 0 0 5px;
	text-align: right;
}

.postList {
	position: relative;
	max-width: 900px;
	width: 86%;
	margin: 90px auto;
}

.postList_title {
	width: auto;
	font-size: 26px;
	box-sizing: border-box;
	padding: 22px 1%;
	line-height: 1.3;
	margin: 0 auto;
	font-weight: bold;
	border: #444 solid;
	border-width: 3px 0 3px 0;
}

.postList_item {
	display: block;
	position: relative;
	padding: 30px 10px;
	box-sizing: border-box;
	margin: 0 auto;
	border-top: 0.6px solid #444;
	max-width: 900px;
}

.post_entry a.postList_item {
	text-decoration: none;
}

.postList_item_inner {
	position: relative;
	display: flex;
	align-items: center;
	gap: 25px;
}

.postList_item_inner_content {
	width: 100%;
}

.postList_item:last-child {
	border-bottom: 1px dashed #444;
}

.postList_item_img_wrap {
	width: 250px;
	height: 250px;
	border-radius: 3px;
	overflow: hidden;
	flex-shrink: 0;
	position: relative;
}

.postList_item_img {
	position: absolute;
	left: -500px;
	top: -500px;
	bottom: -500px;
	right: -500px;
	display: block;
	width: auto;
	margin: auto;
	border-radius: 3px;
	height: 100%;
}

.postList_item_content {
	position: relative;
	flex-grow: 1;
	margin: 0;
}

.postList_item_cats {}

.postList_item_cat {
	display: inline-block;
	background: #826c59;
	color: #fff;
	font-weight: normal;
	padding: 8px 10px;
	box-sizing: border-box;
	border-radius: 8px;
	margin: 0 0.4em 0.4em 0;
	line-height: 1;
}

.postList_item_title {
	font-size: 26px;
	color: #826c59;
	margin: 5px 0 0;
	line-height: 1.4;
}

.postList_item_date {
	font-size: 20px;
	color: #444;
	letter-spacing: 1px;
	margin: 11px 0 0;
	line-height: 1;
	opacity: 0.6;
	font-weight: bold;
	letter-spacing: 2px;
}

.postList_item_more {
	position: static;
	right: 0;
	bottom: 0;
	font-size: 13px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	color: #384048;
	padding: 6px 10px;
	line-height: 1.2;
	border: #384048 solid;
	border-width: 0.6px 0;
	margin: 10px 0 0;
	transition: 0.3s ease-out;
	opacity: 0.6;
	width: 100px;
	justify-content: center;
	margin: 10px 0 0 auto;
}

.postList_item_more:after {
	content: "";
	width: 4px;
	height: 4px;
	border: #384048 solid;
	border-width: 1px 1px 0 0;
	display: block;
	transform: rotate(45deg) translateY(2px);
	margin: 0 0 0 0.4em
}

.postList_item:hover .postList_item_more {
	background: #384048;
	color: #fff;
	opacity: 1;
}

.postList_item:hover .postList_item_more:after {
	border-color: #fff;
}

.postList_item_txt {
	margin: 12px 0 0;
	line-height: 1.4;
	color: #444;
	font-size: 19px;
}

.postList.postList-nopost+.btns {
	display: none;
}

.postList.postList-nopost .postList_item {
	background: #44444444;
	opacity: 0.7;
	border-radius: 10px;
	margin: 10px auto 0;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100px;
}

@media screen and (max-width:767px) {
	.archive_content_header {
		margin: 0;
		border-radius: 0 30px 0 0;
		height: 0;
		padding: 20% 6%;
	}

	.archive_content_header_title {
		margin-bottom: 3px;
		font-size: 30px;
	}

	.archive_content_header_slug {
		font-size: 18px;
	}

	.postLists {
		margin: 20px auto 0;
	}

	.postLists_number {
		width: 93%;
		margin: 0 auto;
	}

	.postList {}

	.postList_item {
		width: 93%;
		padding: 25px 1%;
	}

	.postList_item_inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.postList_item_img_wrap {
		position: absolute;
		width: 125px;
		height: 125px;
		left: 0;
		top: 0;
	}

	.postList_item_img {
		width: 100%;
		height: auto;
	}

	.postList_item_content {
		width: 100%;
		margin: 0;
	}

	.postList_item_content_header {
		min-height: 125px;
		margin: 0 0 0 138px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
	}

	.currentCategory_post_list_noimg .postList_item_content_header ,
	.postList_noimg .postList_item_content_header {
		margin-left: 0;
		min-height: 0;
	}

	.postList_item_cats {
		margin: 0;
	}

	.postList_item_cat {
		font-size: 13px;
		padding: 5px 7px;
		margin: 0 0.3em 0.3em 0;
	}

	.postList_item_title {
		font-size: 18px;
		line-height: 1.35;
		margin-top: 1px;
	}

	.postList_item_txt {
		font-size: 15px;
		margin-top: 8px;
	}

	.postList_item_date {
		font-size: 14px;
		margin-top: 8px;
	}

	.postList_item_more {
		font-size: 14px;
	}
}

@media screen and (max-width:374px) {
	.postList_item_img {
		width: auto;
		height: 100%;
	}
}

/*店舗ポストリスト*/
.postList_cat {
	background: #f7eed2;
	border-radius: 10px;
	padding: 10px;
	margin: 20px 0;
}

.postList_cat_title {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	text-align: left;
	overflow: hidden;
	position: relative;
	cursor: pointer;
	transition: 0.3s ease-out;
	margin: 0;
}

.postList_cat_title:hover {
	color: #af6e62;
}

.postList_cat_title:after {
	content: "";
	width: 15px;
	height: 15px;
	border: #444 solid;
	border-width: 0 4px 4px 0;
	position: absolute;
	right: 20px;
	transform: rotate(45deg);
}

.postList_cat_title:hover:after {
	border-color: #af6e62;
}

.postList_cat_title.open:after {
	transform: rotate(-135deg);
}

.postList_cat_title_img {
	margin: 0 20px 0 0;
	border-radius: 8px;
	width: 30%;
}

.postList_cat_title_text {
	font-size: 30px;
	position: relative;
	margin-right: 45px;
}

.brand_title_main {}

.postList_cat_title_text .brand_title_ruby {
	margin: 0;
	padding: 0;
	display: block;
	opacity: 0.6;
	font-size: 60%;
}

.brand_title_main .icons {
	margin: 0 0 6px;
}

.brand_title_main .icon {
	padding: 3px 10px 4px;
	font-size: 17px;
	line-height: 1.2;
	border-radius: 6px;
}

.postList_cat_body {
	display: none;
	background: #fff;
	border-radius: 8px;
	margin: 10px 0 0;
}

.postList_cat_body.open {
	display: block;
}

.postList_ac_body {
	display: none;
	background: #fff;
	border-radius: 8px;
	margin: 10px 0 0;
}

.postList_ac_body.open {
	display: block;
}

.postList_cat_body .postList_item:first-child {
	border: none;
}

.postList-brand .postList_item_content {
	padding-bottom: 2em;
	margin: 0 10px;
}

.postList-brand .postList_item_content_header {
	margin: 0;
	min-height: 0;
}

.postList_cat .postList_item {
	width: auto;

}

.postList .brand_title {
	color: #af6e62;
	font-size: 30px;
	line-height: 1.2;
	margin: 0;
	display: flex;
	align-items: center;
}

.postList .brand_title_texts {
	display: block;
	padding: 0;
	line-height: 1.2;
	padding: 0 0 4px;
}

.postList .brand_title_texts .brand_title_main {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	align-items: flex-end;
}

.postList .brand_title_texts .brand_title_ruby {
	display: block;
	font-size: 14px;
	margin: 0 0 -4px;
}

.postList .brand_title:before {
	content: "";
}

.postList .brand_title_tenpo {
	font-size: 30px;
	color: #444;
	display: block;
	position: relative;
	bottom: 2.5px;
	text-indent: -0.5em;
}

.postList .brand_title_tenpo:before {
	content: "［";
}

.postList .brand_title_tenpo:after {
	content: "］"
}

@media screen and (max-width:767px) {
	.postList-brand {}

	.postList_cat {
		width: 97%;
		margin: 15px auto;
		box-sizing: border-box;
	}

	.postList_cat_title:after {
		width: 10px;
		height: 10px;
		right: 10px;
	}

	.postList_cat_title_img {
		margin-right: 10px;
	}

	.postList_cat_title_text {
		font-size: 22px;
		margin-right: 27px;
	}

	.postList .brand_title {
		color: #af6e62;
		font-size: 24px;
	}

	.postList .brand_title:before {
		content: "";
	}

	.postList .brand_title_tenpo {
		font-size: 28px;
		display: block;
		text-align: left;
		margin: 0;
	}

	.post_brand_bottom {}

	.post_brand_bottom_check {}

	.post_brand_bottom_checked {}

	.post_brand_bottom_checked_body {
		padding: 8px;
	}

	.post_brand_bottom_checked_text {}

	.post_brand_bottom_checked_remove {}
}

/*ブロック型 ポスト_リスト*/

.postLists-block {}

.postLists-block .postList {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: center;
	gap: 30px;
	max-width: 1800px;
}

.postLists-block .postList_item {
	width: 320px;
	border: none;
	margin: 0;
	flex-shrink: 0;
	padding: 0;
}

.postLists-block .postList_item_inner {
	flex-direction: column;
	gap: 0;
}

.postLists-block .postList_item_img_wrap {
	position: relative;
	width: 100%;
	height: 0;
	left: 0;
	top: 0;
	padding: 100% 0 0;
}

.postLists-block .postList_item_img {}

.postLists-block .postList_item_content {
	width: auto;
	margin: 0;
}

.postLists-block .postList_item_content_header {
	min-height: 0;
	margin: -60px 0 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: #384048d9;
	height: 60px;
}

.postLists-block .postList_item_cats {
	margin: 0;
}

.postLists-block .postList_item_cat {
	font-size: 13px;
	padding: 5px 7px;
	margin: 0 0.3em 0.3em 0;
}

.postLists-block .postList_item_title {
	font-size: 20px;
	line-height: 1.35;
	margin-top: 1px;
	color: #fff;
}

.postLists-block .postList_item_txt {
	font-size: 15px;
	margin-top: 8px;
	line-height: 1.9;
}

.postLists-block .postList_item_date {
	font-size: 14px;
	margin-top: 8px;
}

.postLists-block .postList_item_more {
	font-size: 12px;
	margin-left: 0;
	width: 100%;
	box-sizing: border-box;
}

@media screen and (max-width:767px) {
	.postLists-block .postList_item {
		width: 88vw;
		border: none;
		margin: 0;
		flex-shrink: 0;
		padding: 0;
	}

	.postLists-block .postList_item_content_header {
		height: auto;
		margin: 0;
		width: auto;
		height: 24vw;
		align-items: flex-start;
		padding: 0 0 0 27vw;
	}

	.postLists-block .postList_item_inner {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.postLists-block .postList_item_img_wrap {
		width: 24vw;
		padding: 24vw 0 0;
		position: absolute;
		left: 0;
		top: 0;
		z-index: 1;
	}

}

/* ページング */
.paging {
	text-align: center;
	width: 86%;
	max-width: 800px;
	margin: 80px auto;
	position: relative;
	z-index: 1;
}

.searchResult_menu {}

.searchResult_menu_pager_item {
	display: inline-block;
	font-size: 18px;
	line-height: 1;
	color: #fff;
	margin: 3px;
	border-radius: 6px;
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: top;
	padding-top: 10px;
	font-weight: bold;
	background: #826c59;
	font-weight: bold;
}

span.searchResult_menu_pager_item,
.searchResult_menu_pager_item:hover {
	background: #ccc;
	color: #999;
}

.searchResult_menu_pager_item_prev,
.searchResult_menu_pager_item_next {
	position: relative;
}

.searchResult_menu_pager_item_prev:before,
.searchResult_menu_pager_item_next:before {
	content: "";
	position: absolute;
	top: 50%;
	margin-top: -5px;
	left: 50%;
	margin-left: -2px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #ffffff;
	border-right: 2px solid #ffffff;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

.searchResult_menu_pager_item_prev:hover:before,
.searchResult_menu_pager_item_next:hover:before {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.searchResult_menu_pager_item_next {}

.searchResult_menu_pager_item_next:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-left: -7px;
}

@media screen and (max-width:767px) {
	.paging {
		margin: 40px auto 80px;
	}
}


/*-----------------------------------------------------------------------------* sidebar */

.sidebar {
	width: 280px;
	float: left;
	margin: 0 60px 60px 50px;
}

.sidebar {
	width: 280px;
	float: left;
	margin: 0 60px 60px 50px;
}

.sidebar_ttl {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	/*font-style: italic;*/
	font-weight: bold;
	letter-spacing: 3px;
}

/* popular */
.popular {
	margin-top: 20px;
}

.popular_list.list {}

.popular .listItem {
	position: relative;
	display: block;
	margin: 10px 0;
}

.popular .listItem:first-child:before,
.popular .listItem:nth-child(2):before,
.popular .listItem:nth-child(3):before {
	content: "1";
	position: absolute;
	top: -5px;
	left: -10px;
	background: rgba(0, 0, 0, 0.8);
	width: 25px;
	height: 25px;
	border-radius: 100px;
	z-index: 2;
	text-align: center;
	color: #fff;
	font-family: 'Montserrat', sans-serif;
	/*font-style: italic;*/
	font-weight: bold;
	font-size: 14px;
	line-height: 26px;
	text-indent: -1.5px;
}

.popular .listItem:nth-child(2):before {
	content: "2";
}

.popular .listItem:nth-child(3):before {
	content: "3";
}

.popular .listItem_img {
	width: 100px;
	height: 100px;
	float: left;
	padding: 0;
}

.popular .listItem_img img {}

.popular .listItem_txts {
	position: relative;
	float: right;
	display: inline-flex;
	flex-direction: column;
	justify-content: center;
	align-items: normal;
	box-sizing: border-box;
	width: calc(100% - 110px);
	height: 100px;
	padding-left: 0;
	margin-bottom: 0;
}

.popular .listItem_ttl {
	font-size: 14px;
	font-weight: bold;
	max-height: 6.7em;
	overflow: hidden;
}

.popular .listItem_txt {
	display: none;
}

.popular .listItem_meta {
	display: none;
}

.popular .listItem_tagList {}

.popular .listItem_tagList span {}

.popular .listItem_date {}

/* keywords */
.keywords {
	margin-top: 80px;
}

.tagList {
	margin-top: 10px;
}

.tagList a {
	display: inline-block;
	line-height: 1;
	background: #262626;
	color: #fff;
	font-size: 16px;
	padding: 5px 10px;
	margin: 7px 10px 0 0;
}

.tagList a:hover {
	text-decoration: none;
}

@media screen and (max-width: 1024px) {
	.sidebar {
		width: auto;
		padding: 70px 11%;
		max-width: none;
		float: none;
		margin: 0 auto 0;
		background: rgba(236, 236, 236, 0.6);
	}

	.popular .listItem_ttl {
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {

	.sidebar {}

	.sidebar_ttl {}

	/* popular */
	.popular {}

	.popular_list {}

	.popular_listItem {}

	.popular_listItem_inner {}

	.popular_listItem_img {}

	.popular_listItem_img img {}

	.popular_listItem_txt {}

	.popular .listItem_ttl {
		font-size: 14px;
	}

	/* keywords */
	.keywords {
		margin-top: 50px;
	}

	.tagList {}

	.tagList a {}

	.tagList a:hover {}

}

/*-----------------------------------------------------------------------------* header */

#header {
	margin: 0 auto;
	position: relative;
}

#header.on {
	bottom: 0;
	height: auto;
	overflow-y: scroll;
}

#header:before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	opacity: 0;
	transition: all 0.6s ease-out;
	pointer-events: none;
}

#header_inner {
	position: relative;
	height: auto;
	min-height: 120px;
	max-width: 1680px;
	margin: 0 auto;
	transition: all 0.6s ease-out;
	overflow: hidden;
}

@media screen and (max-width: 767px) {
	#header {
	}
}

body.top .header_nav {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10000000;
}

@media screen and (min-width:768px) {
	body.top .header_nav {
		display: none;
	}
}

/* header mv */
#header .mv_wrap {
	width: 100%;
	max-width: 1600px;
	margin: 0;
	background-color: #f1f3f8;
	position: relative;
	overflow: hidden;
}

#header_mv {
	position: relative;
	padding: calc(450 / 1600 * 100%) 0 0;
	overflow: hidden;
}

#header_mv::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 5%;
	background: linear-gradient(to bottom, rgba(241, 243, 248, 0.0), rgba(241, 243, 248, 1.0));
	pointer-events: none;
}

#header_mv .mv_item {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
}
.header_mv_link{
	position:absolute;left:0;top:0;
	padding:9% 19.5% 0;
	margin:7% 0 0 15%;
}
@media screen and (max-width: 767px) {
	.header_mv_link{
		margin:13% 0 0 6%;
		padding:25% 88% 0 0;
	}
}
.header_page {
	position: absolute;
	right: 12%;
	bottom: 18%;
	z-index: 2;
}

.header_page_inner {
}

.header_page_ttl {
	display: flex;
	flex-direction: column;
	gap: 2px;
	align-items: flex-end;
}

.header_page_ttl_kana {
	font-size: 76px;
	letter-spacing: 2px;
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", sans-serif;
	font-style: italic;
	margin: 0;
	display: inline-block;
	line-height: 1.1;
	padding-right: 0.14em;
	background: linear-gradient(45deg, #439eb2 0%, #002844 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

.header_page_ttl_en {
	font-size: 20px;
	letter-spacing: 2px;
	color: #002844;
	font-family: "Zalando Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: italic;
	font-variation-settings: "wdth" 125;
	display: inline-block;
	line-height: 1.15;
	padding-right: 0.12em;
}

.header_nav {
	position: relative;
	z-index: 12;
	width: 88%;
	max-width: 1100px;
	margin: -50px auto 0;
}

.header_mokuji{
	position: relative;
	width: 88%;
	max-width: 1100px;
	margin: 18px auto 0;
	letter-spacing: 1px;
}
.header_mokuji .mokuji{
	display: flex;
	flex-direction: row;
	gap: 10px 20px;
	justify-content: center;
	flex-wrap: wrap;
}
.header_mokuji .mokuji a{
	color: #002844;
	font-size: 116%;
	font-weight: 600;
	text-wrap: nowrap;
}
.header_mokuji .mokuji a.current{
	color: #439eb2;

}
.header_mokuji .mokuji a:not(:first-child) {
	padding-left: 20px;
	border-left: 1px solid #9ea3a7;
}

@media screen and (min-width: 768px) {
	
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
	.header_page{
		right: 6%;
		bottom: -2%;
	}
	.header_page_ttl_kana{
		font-size: 64px;
	}
	.header_page_ttl_en{
		font-size: 16px;
	}
	.header_nav {
		margin: 0 auto 0;
	}
}
@media (min-width: 1100px) and (max-width: 1600px) {
   #header .mv_wrap {
    width: 1600px;
    margin: 0 calc((1600px - 100%) / -2);
  }
  .header_page{
	right: calc(50% - 550px);
	bottom: 11%;
}
}

@media screen and (max-width: 767px) {
	#header .mv_wrap {
		padding-bottom: 60px;
	}

	#header_mv {
		padding: calc(540 / 750 * 100%) 0 0;
	}

	#header_splash img {
		width: 100%;
		height: auto;
		bottom: -100px;
		margin: 0 auto;
	}

	.header_page{
		right: 3%;
		top: 0;
		margin-top: 68.5%;
	}

	.header_page_ttl_en{
		font-size: 12px;
	}
	.header_page_ttl_kana {
		font-size: 40px;
	}

	.header_mokuji{
		margin-top: 70px;
	}
}


/* search */
.overlay_search {}

.search_form {
	width: 88%;
	max-width: 440px;
	margin: 0 auto;
}

.search_form_contents {
	margin-top: 30px;
}

.search_form_ttl {
	margin-bottom: 7px;
}

.search_form_body {}

.search_checkbox_text {
	display: inline-block;
	background: rgba(26, 26, 26, 0.1);
	color: #262626;
	cursor: pointer;
}

label.on .search_checkbox_text {
	background: rgba(26, 26, 26, 1);
	color: #fff;
}

input[type="checkbox"].search_checkbox {
	display: none;
}

.search_form_body label.on input[type="checkbox"].search_checkbox {}

input[type="checkbox"].search_checkbox label {}

.search_form_text {}

.search_form_cat {}

.search_form_cat label {
	position: relative;
	overflow: hidden;
}

.search_form_cat .search_checkbox_text:after {
	content: "";
	position: absolute;
	top: -5px;
	bottom: 0;
	margin: auto 0;
	right: 13px;
	width: 18px;
	height: 10px;
	border-left: 5px solid rgba(0, 0, 0, 0.1);
	border-bottom: 5px solid rgba(0, 0, 0, 0.1);
	transform: rotate(-45deg);
}

.search_form_cat label.on {}

.search_form_cat label.on .search_checkbox_text:after {
	border-left: 5px solid #fff;
	border-bottom: 5px solid #fff;
}

.search_form_cat label:nth-child(even) {
	margin-left: 3%;
}

.search_form_cat .search_checkbox_text {
	font-size: 16px;
	font-weight: bold;
	width: 48.5%;
	height: 55px;
	line-height: 55px;
	text-align: left;
	padding-left: 12px;
	box-sizing: border-box;
	letter-spacing: 2px;
	margin-top: 3%;
	white-space: nowrap;
	overflow: hidden;
	position: relative;
}

.search_form_cat label:nth-child(1) .search_checkbox_text,
.search_form_cat label:nth-child(2) .search_checkbox_text {
	margin-top: 0;
}

.search_form_cat label input[type="checkbox"].search_checkbox {}

.search_form_cat label.on input[type="checkbox"].search_checkbox {}

.search_form_key {}

.search_form_key label {}

.search_form_key label input[type="text"].search_form_text {
	background: rgba(26, 26, 26, 0.1);
	height: 55px;
	line-height: 55px;
	font-size: 16px;
	padding: 10px 15px;
	box-sizing: border-box;
	width: 100%;
}

.search_form_key label input[type="text"].search_form_text::placeholder {
	color: rgba(26, 26, 26, 0.3);
}

.search_form_tag {
	margin-top: 30px;
}

.search_form_tag label {}

.search_form_tag label.on {}

.search_form_tag .search_checkbox_text {
	height: 27px;
	line-height: 27px;
	padding: 0 18px;
	font-size: 16px;
	margin: 5px 10px 5px 0;
}

.search_form_tag label input[type="checkbox"].search_checkbox {}

.search_form_tag label.on input[type="checkbox"].search_checkbox {}

.search_tag_more {
	display: none;
}

.search_form_btn {
	text-align: center;
	margin-top: 45px;
}

.search_form_btn label {}

.search_form_btn label input[type="submit"].search_form_submit {
	background: #262626;
	color: #fff;
	width: 100%;
	max-width: 280px;
	height: 57px;
	line-height: 57px;
	font-size: 19px;
	letter-spacing: 3px;
}

@media screen and (max-width:767px) {

	#header {
	background: #fff;
}

	#header.on {}

	#header_inner {
	}


	/* overlay */
	.overlay {}

	.on.overlay {
		padding-top: 68px;
	}

	/* closeボタン */
	.btn_close {
		height: 68px;
		width: 68px;
		padding: 0;
	}

	.on .btn_close {}

	.btn_close:before,
	.btn_close:after {
		left: 15px;
		right: 15px;
	}

	.btn_close:after {}

	.overlay_search .btn_close {}

	/* search */
	.overlay_search {}

	.search_form {}

	.search_form_contents {}

	.search_form_ttl {}

	.search_form_body {}

	input[type="checkbox"].search_checkbox {}

	.search_form_body label.on input[type="checkbox"].search_checkbox {}

	input[type="checkbox"].search_checkbox label {}

	.search_form_text {}

	.search_form_cat {}

	.search_form_cat label {}

	.search_form_cat label:after {
		margin-top: -7px;
		width: 13px;
		height: 7px;
		border-left: 4px solid rgba(0, 0, 0, 0.1);
		border-bottom: 4px solid rgba(0, 0, 0, 0.1);
	}

	.search_form_cat label.on {}

	.search_form_cat label.on:after {
		margin-top: -7px;
		width: 13px;
		height: 7px;
		border-left: 4px solid #fff;
		border-bottom: 4px solid #fff;
	}

	.search_form_cat label:nth-child(even) input[type="checkbox"].search_checkbox {}

	.search_form_cat label input[type="checkbox"].search_checkbox {
		font-size: 14px;
		height: 42px;
		line-height: 42px;
	}

	.search_form_cat label.on input[type="checkbox"].search_checkbox {}

	.search_form_key {}

	.search_form_key label {}

	.search_form_key label input[type="text"].search_form_text {
		height: 42px;
		line-height: 42px;
	}

	.search_form_key label input[type="text"].search_form_text::placeholder {}

	.search_form_tag {
		margin-top: 12px;
	}

	.search_form_tag.on {}

	.search_form_tag label {}

	.search_form_tag label.on {}

	.search_form_tag label input[type="checkbox"].search_checkbox {
		font-size: 14px;
		height: 24px;
		line-height: 24px;
		padding: 0 14px;
	}

	.search_form_tag label.on input[type="checkbox"].search_checkbox {}

	.search_tag_more {}

	.search_tag_more.more {
		display: block;
		position: relative;
		text-align: right;
		padding-right: 15px;
	}

	.search_tag_more:hover {
		text-decoration: none;
	}

	.search_tag_more.more:before {
		content: "もっと見る";
		display: block;
	}

	.search_tag_more.more:after {
		content: "";
		position: absolute;
		top: 50%;
		margin-top: -6px;
		right: 0;
		width: 6px;
		height: 6px;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}

	.search_tag_more.more.on {}

	.search_tag_more.more.on:before {
		content: "閉じる";
	}

	.search_tag_more.more.on:after {
		margin-top: -3px;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		-webkit-transform: rotate(−45deg);
		transform: rotate(-45deg);
	}

	.search_form_btn {}

	.search_form_btn label {}

	.search_form_btn label input[type="submit"].search_form_submit {}

}


/*-----------------------------------------------------------------------------* footer */

#footer {
	margin: 0;
	background-color: #141c21;
	color: #565d62;
}

.footer_inner {
	position: relative;
	max-width: 1600px;
	margin: 0 auto;
	padding: 80px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.footer_top{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}


.footer_logo {
	color: #fff;
	width: 700px;
}

.footer_logo:hover {
	text-decoration: none;
}

.footer_logo p {
	font-size: 12px;
	letter-spacing: 1.5px;
	margin: 0 0 5px;
}

.footer_logo img {
	width: 100%;
	margin: 0 auto;
}

.footer_nav {
	width: 100%;
	border: 1px solid #565d62;
	border-width: 1px 0;
	margin-top: 80px;
}

.footer_nav .nav_links{
	justify-content: center;
}


.footer_nav .nav_link {
	background-color: transparent;
	position: relative;
	clip-path: none;
	color: #565d62;
}
.footer_nav .nav_link:not(:first-child){
	margin-left: 20px;
}
.footer_nav .nav_link:not(:first-child):before{
	width: 1px;
	height: 30px;
	background-color: #565d62;
	content: "";
	position: absolute;
	top: 50%;
	left: -18px;
	transform: rotate(45deg) translateY(calc(-50% - 4px));
}
.footer_nav .nav_link.current{
}
.footer_nav .nav_link.current{
}
.footer_nav .nav_link:not(.current):hover{
	color: #fff;
	text-decoration: none;
}

.cr {
	height: 111px;
	line-height: 111px;
	text-align: center;
	letter-spacing: 1px;
	font-size: 11px;
}

@media screen and (max-width:767px) {

	#footer {
		margin-top: 0;
	}

	.footer_inner{
		padding: 50px 0 0;
		width: 88%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: center;
		gap: 20px;
	}

	.footer_top{
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: space-between;
		gap: 20px;
		width: 100%;
		max-width: 318px;
		margin: 0 auto;
	}

	.footer_body {}

	.footer_img {
		display: none;
	}

	.footer_info {
		width: 100%;
		text-align: center;
		padding: 120px 0;
	}

	.footer_logo {
		flex: 1 1 auto;
		min-width: 0;
		text-align: left;
	}

	.footer_logo a {
		width: 100%;
	}

	.footer_logo img {
		margin: 0 auto;
		width: 100%;
	}

	.footer_nav{
		flex: 0 0 auto;
		width: fit-content;
		max-width: 100%;
		white-space: nowrap;
		margin-top: 0;
		border-width: 0 0 0 1px;
		padding: 0 0 0 20px;
	}

	.footer_nav .nav_links {
		display: flex;
		flex-wrap: nowrap;
		width: fit-content;
		flex-direction: column;
		align-items: flex-start;
		border-width: 0 0 0 1px;
		padding: 0;
		gap: 3px;
	}
	.footer_nav .nav_link {
	padding: 0;
	font-size: 24px;
	line-height: 1.2;
	}
	.footer_nav .nav_link:first-child {
		display:none;
	}

	.footer_nav .nav_link:not(:first-child)::before {
		content: none;
	}
	.footer_nav .nav_link:not(:first-child){
		margin-left: 0;
	}

	.cr {
		flex: 1 0 100%;
	}

}

/*-----------------------------------------------------------------------------* フォーム */
.form1 {
	padding: 0;
	box-sizing: border-box;
	margin: 15px auto;
	width: 95%;
	max-width: 400px;
}

.form1_body {
	display: none;
}

.on.form1_body {
	display: block;
}

.form1_list {}

.form1_list_item {
	overflow: hidden;
	padding: 0;
	margin: 15px auto;
}

.form1_list_item_ttl {
	display: block;
	width: auto;
	font-size: 13px;
	margin: 0 0 3px;
	font-weight: bold;
	line-height: 1.4;
}

.form1_list_item.required .form1_list_item_ttl:after {
	content: "＊";
	color: #e00;
	padding: 0 0 0 0.2em;
}

.form1_list_item_input {
	width: 100%;
	border-radius: 10px;
	border: 1px solid rgba(0, 0, 0, 0.4);
	box-sizing: border-box;
	padding: 5px 10px;
}

.form1_list_item_input.error {
	border-color: #f00;
}

.form1_list_item_input.p-postal-code {
	width: 8em;
}

.form1_list_item_input-2 {
	width: 48%;
	margin-right: 2%;
}

.form1_list_item_input-2:last-child {
	margin-right: 0;
}

.form1_list_item_input-y {
	width: 75px;
}

.form1_list_item_input-m {
	width: 55px;
}

.form1_list_item_input-d {
	width: 55px;
}

.form1_list_item_ex {
	padding: 0 0.5em 0 0.2em;
}

.form1_list_items-child {
	border-left: 1px solid rgba(0, 0, 0, 0.4);
	padding-left: 10px;
	margin-top: 4px;
	position: relative;
}

.form1_list_item .add_child {
	display: inline-block;
	padding: 5px 15px;
	background: #000;
	color: #fff;
	border-radius: 10px;
	font-size: 14px;
}

.form1_list_items-child .remove_child {
	position: absolute;
	right: -10px;
	top: 0px;
	background: #aaa;
	width: 30px;
	height: 30px;
	border-radius: 15px;
	cursor: pointer;
}

.form1_list_items-child:nth-child(2):last-child .remove_child {
	display: none;
}

.form1_list_items-child .remove_child:hover {
	opacity: 0.6;
}

.form1_list_items-child .remove_child:before,
.form1_list_items-child .remove_child:after {
	content: "";
	display: block;
	width: 10px;
	height: 0;
	border-top: #fff 2px solid;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	transform: rotate(45deg);
}

.form1_list_items-child .remove_child:after {
	transform: rotate(-45deg);
}

.form1_pp {
	position: relative;
	overflow: hidden;
	cursor: pointer;
	padding: 15px 0;
	border-top: 1px solid #000;
	margin-top: 20px;
}

/*
.form1_pp_check{
	position: static;
	display: block;
	margin-top: 2px;
	float: left;
}
*/
.form1_pp_txt {
	float: left;
	margin-left: 8px;
}

.form1_pp_txt a {
	text-decoration: underline;
}

.form1_register {
	position: relative;
	display: block;
	padding: 15px 0;
	border-top: 1px solid #000;
}

.form1_register:last-of-type {
	border-bottom: 1px solid #000;
}

.form1_register_txt {
	line-height: 1.5;
	width: 80%;
	padding-left: 5px;
	box-sizing: border-box;
}

.form1_register_check {}

.login_btns {}

#login_btn {
	/* background: #000; */
	/* max-width: 160px; */
	/* line-height: 40px; */
	/* height: 40px; */
}

.nb_btns {
	margin: 30px 0 0;
}

.note {
	display: block;
	font-size: 90%;
	line-height: 1.4;
	margin-top: 3px;
	font-weight: normal;
}

.page_note {
	background: rgba(90, 90, 90, 0.9);
	color: #fff;
	padding: 15px;
	text-align: left;
	border-radius: 6px;
	position: fixed;
	bottom: 10px;
	left: 10px;
	right: 10px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
	-webkit-animation: bottom_note 4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	animation: bottom_note 4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	z-index: 1000000;
}

.page_note strong {
	color: #FFEB3B;
}

.page_note b {
	color: #85d9ff;
}

@-webkit-keyframes bottom_note {
	0% {
		opacity: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
	}

	10% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	90% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	99% {
		opacity: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
		display: none;
	}
}

@keyframes bottom_note {
	0% {
		opacity: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
	}

	10% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	90% {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	99% {
		opacity: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
	}

	100% {
		opacity: 0;
		-webkit-transform: translateY(50%);
		transform: translateY(50%);
		display: none;
	}
}

.txtlist .txtlist_item {
	position: relative;
	display: flex;
	align-items: center;
	padding: 24px 0 24px 8px;
	line-height: 1.5;
}
.txtlist_item:hover{
	text-decoration: none;
}

.txtlist_item_date {
	color: #002844;
	font-family:"Zalando Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-variation-settings: "wdth" 125;
	font-size: 14px;
	white-space: nowrap;
}

.txtlist_item_txt {
	color: #3d6477;
	margin-left: 32px;
	display: block;
}



/*-----------------------------------------------------------------------------* WORD PRESS */

@media screen and (max-width: 600px) {
	#wpadminbar {
		position: fixed;
	}
}

.post_entry .himage img {
	height: 30%;
	width: 30%;
}

@media screen and (max-width:767px) {
	.post_entry .himage img {
		height: 60%;
		width: 60%;
	}
}

/*-----------------------------------------------------------------------------* diar関数用*/
.incolinks {
	position: relative;
	background: #413856;
	color: #fff;
	width: 18%;
	text-align: center;
	border-radius: 10px;
	font-size: 10px;
	margin-top: 10px;
	margin-left: 5px;
	z-index: 20;
}

.inlinks {
	width: 100%;
	position: relative;
	margin: -5px 0 30px;
	background: #f0efeb;
	height: 150px;
	z-index: 10;
}

.inlinks a {
	position: relative;
	width: 100%;
	height: 210px;
	box-sizing: border-box;
	overflow: hidden;
}

.inlinks a:hover {
	text-decoration: none;
}

.inlinksthumb {
	float: left;
	width: 35.087%;
	overflow: hidden;
	position: relative;
	height: 150px;
}

.inlinksthumb img {
	margin-bottom: 0 !important;
}

.inlinkstitle {
	color: #1B0816;
	line-height: 1.5;
	margin: 0;
	padding: 12px 20px 5px 20px;
	font-weight: 700;
	font-size: 18px;
	display: -webkit-box;
}

.contentdiar {
	padding: 5px 18px 5px 18px;
	line-height: 1.65;
	display: -webkit-box;
	color: #1b0815;
}

@media screen and (max-width: 767px) {
	.incolinks {
		border-radius: 10px 10px 0 0;
		position: relative;
		background: #553C9C;
		color: #fff;
		width: 40%;
		text-align: center;
		display: block;
		margin-left: 0 !important;
		z-index: 20;
		opacity: .8;
	}

	.inlinks {
		width: 100%;
		position: relative;
		margin: 0 0 15px;
		background: rgb(238, 238, 238);
		max-height: 70px;
		z-index: 10;
	}

	.inlinksthumb {
		width: 40%;
		max-height: 70px;
	}

	.inlinkstitle {
		font-weight: 700;
		font-size: 12px !important;
		text-align: left;
		display: -webkit-box;
		padding: 10px 10px 5px 12px;
		line-height: 1.5;
	}

	.contentdiar {
		display: none;
	}
}

.cv-button_pink {
	margin: 40px auto 80px;
	width: 75%;
}

@media screen and (max-width: 767px) {
	.cv-button_pink {
		width: 100%;
	}
}

.cv-button_pink a {
	display: block;
	text-align: center;
	background: #ff5475;
	color: #fff;
	border-radius: 10px;
	font-size: 17px;
	font-weight: bold;
	padding: 16px 30px;
	box-shadow: 0 8px 16px rgb(255 91 123 / 39%);
	line-height: 1.5;
	text-decoration: none;
}

@media screen and (max-width: 767px) {
	.cv-button_pink a {}
}














.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #00a0d2;
	/* Blue */
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
	display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
	border-color: #46b450;
	/* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232;
	/* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
	border-color: #f56e28;
	/* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900;
	/* Yellow */
}

.wpcf7-form-control-wrap {
	position: relative;
}

.wpcf7-not-valid-tip {
	color: #dc3232;
	/* Red */
	font-size: 1em;
	font-weight: normal;
	display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
	position: relative;
	top: -2ex;
	left: 1em;
	z-index: 100;
	border: 1px solid #dc3232;
	background: #fff;
	padding: .2em .8em;
	width: 24em;
}

.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7 .ajax-loader {
	/* visibility: hidden; */
	/* display: block; */
	/* background-color: #23282d; */
	/* Dark Gray 800 */
	/* opacity: 0.75; */
	/* width: 24px; */
	/* height: 24px; */
	/* border: none; */
	/* border-radius: 100%; */
	/* padding: 0; */
	/* margin: 0 24px; */
	/* position: relative; */
}

.wpcf7 form.submitting .ajax-loader {
	visibility: visible;
}

.wpcf7 .ajax-loader::before {
	content: '';
	position: absolute;
	background-color: #fbfbfc;
	/* Light Gray 100 */
	top: 4px;
	left: 4px;
	width: 6px;
	height: 6px;
	border: none;
	border-radius: 100%;
	transform-origin: 8px 8px;
	animation-name: spin;
	animation-duration: 1000ms;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
	.wpcf7 .ajax-loader::before {
		animation-name: blink;
		animation-duration: 2000ms;
	}
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes blink {
	from {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	to {
		opacity: 0;
	}
}

.wpcf7 input[type="file"] {
	cursor: pointer;
}

.wpcf7 input[type="file"]:disabled {
	cursor: default;
}

.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
	direction: ltr;
}

/* ito-ows.jp style.css */