/*
Theme Name: kuramae-atelier
Theme URL: https://kuramae-atelier.jp/
Description: 蔵前彫金工房 a.w.sショップサイト
Author: Yuya Shibata
Version: 1.0.0
*/
@charset 'UTF-8';

* {
margin: 0px;
padding: 0px;
word-break: normal !important;
word-wrap: break-word;
line-break:normal;
border: 0;
outline: 0;
box-sizing: border-box;
hanging-punctuation: force-end;
}

html {
scroll-padding-top: 0;
overflow: auto;
font-size: 62.5%;
}
body {
position: relative;
max-height: 100%;
margin: 0;
padding: 0;
font-style: normal;
font-family: "Noto Sans JP", sans-serif;
font-size: 1.6rem;
font-optical-sizing: auto;
font-weight: normal;
letter-spacing: 0.1em;
line-height: 1.6;
color: #515151;
background-color: #fff;
-webkit-text-size-adjust: 100%;
}
@media (max-width: 1023px) {
	html {
	font-size: 60%;
	}
	body {
	letter-spacing: 0;
	}
}
@media (max-width: 767px) {
	html {
	font-size: 55%;
	}
	body {
	width: 100%;
	font-size: 1.5rem;
	}
}
@media (max-width: 374px) {
	html {
	font-size: 50%;
	}
}

section {
position: relative;
}
section:after {
clear:both;
display:block;
content:"";
}
table {
border-collapse: collapse;
border-spacing: 0;
}
table th {
font-weight: normal;
text-align: inherit;
}
nav, ol, ul {
list-style: none;
}

h1, h2, h3, h4, h5, h6 {
font-size: inherit;
font-weight: 500;
}
h1, h2, h3 {
line-height: 1.4;
}
@media (min-width: 1024px) {
}
@media (max-width: 767px) {
	h1, h2, h3 {
	}
}
@media (max-width: 374px) {
	h1, h2, h3 {
	}
}

a {
text-decoration: none;
color: inherit;
}
a:hover {
text-decoration: none;
}
@media (min-width: 768px) {
	a[href^="tel:"] {
	pointer-events: none;
	}
}

/*-------------------------
 フォームパーツ
-----------------------*/
button {
cursor: pointer;
font-family: inherit;
font-size: inherit;
background-color: transparent;
border: 0;
}
input,
select,
textarea {
display: block;
font-family: inherit;
font-size: inherit;
color: #515151;
border: 1px solid #aaa;
}
input[type="button"],
input[type="text"],
input[type="tel"],
input[type="submit"],
input[type="image"],
textarea {
-webkit-appearance: none;
}
input[type="text"],
input[type="tel"],
input[type="password"],
input[type="date"],
input[type="email"],
textarea {
-webkit-appearance: none;
width: 100%;
padding: 10px;
background-color: #fff;
border-radius: 0;
}
select {
width: 100%;
padding: 10px;
background-color: #fff;
border-radius: 0;
}
input[type="file"] {
-webkit-appearance: none;
background-color: transparent;
border: 0;
}
input[type="checkbox"],
input[type="radio"] {
display: inline-block;
margin-left: 2px;
margin-right: 0.5em;
transform: scale(1.1, 1.1);
}
.select {
position: relative;
}
.select::after {
position: absolute;
content: "";
width: 12px;
height: 10px;
top: 50%;
transform: translateY(-50%);
right: 10px;
background-color: #888;
clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.select select {
-webkit-appearance: none;
}
textarea {
width: 100%;
height: 250px;
}
::placeholder {
}
.contact_submit_flex {
display: flex;
justify-content: center;
margin: 3em auto 0;
}
.contact_previous,
.contact_submit {
display:flex;
justify-content: center;
align-items: center;
width: fit-content;
width: 300px;
height: 60px;
margin: 0 10px;
color: #515151;
border: 2px solid #444;
border-radius: 0;
}
.contact_previous {
background-color: #aaa;
border-color: #aaa;
}
.contact_submit {
background-color: #444;
}
.contact_submit .wpcf7-spinner {
display: none;
}
.contact_previous input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: none;
cursor: pointer;
cursor: hand;
width: 100%;
height: 100%;
font-weight: bold;
letter-spacing: 1px;
color: #fff;
background-color: transparent;
border-color: transparent;
border-radius: 0;
}
.contact_previous input[type="button"],
.contact_previous input[type="reset"],
.contact_previous input[type="submit"] {
color: #fff;
}
input[readonly="readonly"] {
border-width: 0;
}
.privacy_check {
margin-top: 20px;
text-align: center;
}
.privacy_check_p {
margin-bottom: 20px;
}
.hissu {
display: inline-block;
margin-left: 1em;
padding: 5px;
font-size: 1.3rem;
font-weight: normal;
line-height: 1;
background-color: #fff;
border: 1px solid;
}
@media (max-width:1023px) {
	.select::after {
	width: 10px;
	height: 8px;
	right: 8px;
	}
}
@media (min-width:768px) {
	/* focus */
	input[type="text"]:focus,
	input[type="tel"]:focus,
	input[type="password"]:focus,
	input[type="date"]:focus,
	input[type="email"]:focus,
	select:focus,
	textarea:focus {
	background-color: #fbfcd6;
	transition: .3s;
	}
	input[readonly="readonly"]:focus {
	background-color: #fff;
	}
	/* hover */
	.privacy_check a:hover {
	opacity: .5;
	transition: .3s;
	}
	.contact_previous:hover {
	background-color: #fff;
	border-color: #444;
	transition: .3s;
	}
	.contact_submit:hover {
	background-color: #fff;
	transition: .3s;
	}
	.contact_previous:hover input,
	.contact_submit:hover input {
	color: #515151;
	transition: .3s;
	}
}
@media (max-width:767px) {
	input[type="text"],
	input[type="tel"],
	input[type="password"],
	input[type="date"],
	input[type="email"],
	select,
	textarea {
	padding: 10px;
	border-radius: 0;
	}
	.select::after {
	width: 10px;
	height: 6px;
	right: 7px;
	}
	textarea {
	height: 200px;
	}
	.contact_submit,
	.contact_previous {
	width: 200px;
	height: 42px;
	margin: 0 2px;
	font-size: inherit !important;
	}
}

/*-----------------------
 slick
-----------------------*/
.slick-slider {
overflow: hidden;
position: relative;
display: block;
margin: 0;
padding: 0;
line-height: 0;
box-sizing: border-box;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}
.slick-list {
position: relative;
display: block;
overflow: hidden;
margin: 0;
padding: 0;
}
.slick-list:focus {
outline: none;
}
.slick-list.dragging {
cursor: pointer;
cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
.slick-track {
position: relative;
top: 0;
left: 0;
display: block;
margin-left: auto;
margin-right: auto;
}
.slick-track:before,
.slick-track:after {
display: table;
content: '';
}
.slick-track:after {
clear: both;
}
.slick-loading .slick-track {
visibility: hidden;
}
.slick-slide {
overflow: hidden;
display: none;
float: left;
height: 100%;
min-height: 1px;
}
[dir='rtl'] .slick-slide {
float: right;
}
.slick-slide img,
.slick-slide video {
display: block;
object-fit: cover;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
}
.slick-slide.slick-loading img {
display: none;
}
.slick-slide.dragging img {
pointer-events: none;
}
.slick-initialized .slick-slide {
display: block;
}
.slick-loading .slick-slide {
visibility: hidden;
}
.slick-vertical .slick-slide {
display: block;
height: auto;
border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
display: none;
}
.slick-prev,
.slick-next {
z-index: 1;
position: absolute;
width: calc(12px);
height: calc(22px);
top: 0;
font-size: 0;
background-repeat: no-repeat;
background-size: contain;
}
.slick-prev {
left: -40px;
}
.slick-next {
right: -40px;
}
.slick-prev::before,
.slick-next::before {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
background-repeat: no-repeat;
background-size: contain;
}
.slick-prev::before {
background-image: url(./common/img/arrow_prev.png);
}
.slick-next::before {
background-image: url(./common/img/arrow_next.png);
}
.slick-prev button,
.slick-next button {
}
.slick-prev button {
}
.slick-next button {
}
@media (max-width:1023px) {
	.slick-prev,
	.slick-next {
	width: calc(12px * .9);
	height: calc(22px * .9);
	}
	.slick-prev {
	left: -10px;
	}
	.slick-next {
	right: -10px;
	}
}
@media (min-width:768px) {
	/* hover */
	.slick-slide a:hover img {
	opacity: .5;
	transition: .3s;
	}
	.slick-prev:hover,
	.slick-next:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.slick-prev,
	.slick-next {
	width: calc(12px * .8);
	height: calc(22px * .8);
	}
	.slick-prev {
	left: -5px;
	}
	.slick-next {
	right: -5px;
	}
}

/*-----------------------
 共通設定
-----------------------*/
.body_wrap {
overflow: hidden;
}

.right { text-align: right !important; }
.left { text-align: left !important; }
.center { text-align: center !important; }
.fit { width: fit-content;margin-right: auto;margin-left: auto; }
@media (max-width: 767px) {
	.fit_sp {
	width: fit-content;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	}
}
.normal { font-weight: normal;}
.font_small { font-size: 1.4rem; }
.font_large { font-size: 1.8rem; }
.red { color: #e10915; }
.underline { text-decoration: underline; }
.bold { font-weight: bold; }

.cat01 { background-color: #7fb3a3; }
.cat02 { background-color: #e4a9a9; }
.cat03 { background-color: #d4dc25; }
.cat04 { background-color: #6bd0f1; }

.txtlink a {
text-decoration: underline;
}
@media (min-width:768px) {
	.txtlink a:hover {
	opacity: .5;
	transition: .5s;
	}
}

.bg {
position: relative;
}
.bg::after {
z-index: -99;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
}

img {
display: block;
width: 100%;
max-width: 100%;
width: auto;
height: auto;
margin-right: auto;
margin-left: auto;
vertical-align:top;
}

.mb1 {
margin-bottom: 1em;
}
.mt1 {
margin-top: 1em;
}

.sp {
display: none;
}
@media (max-width: 767px) {
	.pc {
	display: none;
	}
	.sp {
	display: block;
	}
}

/*-----------------------
 ヘッダー
-----------------------*/
html.active {
overflow: hidden;
}
header {
}
.header_box {
z-index: 9;
position: fixed;
width: 240px;
top: 10px;
left: 10px;
padding: 34px 34px 55px 34px;
line-height: 1;
background-color: #fff;
border-radius: 2px;
}
html:not(.active).is-fixed .header_box {
width: 200px;
padding: 30px 20px;
}
html.is-fixed .header_box {
box-shadow: 0 0 15px rgba(0,0,0,.2);
}
.head_logo {
}
.head_logo a {
display: block;
width: 100%;
height: 100%;
}
.menu {
margin: 70px auto;
font-family: "Bellefair","Noto Serif JP",serif;
font-size: 1.8rem;
}
html:not(.active).is-fixed .menu {
margin: 30px auto;
}
.menu_ul {
width: fit-content;
margin: auto;
}
.menu_ul_li {
}
.menu_ul_li + .menu_ul_li {
margin-top: 26px;
}
html:not(.active).is-fixed .menu_ul_li + .menu_ul_li {
margin-top: 16px;
}
.menu_ul_li a {
}
.head_insta {
position: relative;
width: fit-content;
display: flex;
align-items: center;
justify-content: center;
margin: auto;
font-size: 1.3rem;
}
.head_insta a {
z-index: 1;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.head_insta_ico {
width: 25px;
margin-right: 20px;
}
.head_insta_txt {
position: relative;
display: block;
padding: 8px 12px;
border: 1px solid;
border-radius: 2px;
}
.head_insta_txt::before {
position: absolute;
content: "";
width: calc(16px * .5);
height: calc(13px * .5);
left: -7px;
top: 50%;
transform: translateY(-50%);
background-image: url(./common/img/head_insta_bg.png);
background-repeat: no-repeat;
background-size: contain;
}
.sp_logo {
display: none;
}
@media (max-width:1199px) {
	html:not(.active) .header_box {
	display: none;
	}
	.toggle {
	z-index: 99999;
	cursor: pointer;
	position: fixed;
	display: block;
	width: 80px;
	height: 80px;
	top: 10px;
	right: 10px;
	background-color: #fff;
	border-radius: 2px;
	}
	html.active .toggle {
	}
	.toggle::before {
	position: absolute;
	content: "Menu";
	width: 100%;
	bottom: 5px;
	left: 0;
	right: 0;
	margin: auto;
	font-family: "Bellefair", serif;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	letter-spacing: 1px;
	}
	.toggle div {
	position: absolute;
	width: 36px;
	height: 22px;
	top: 18px;
	left: 50%;
	transform: translateX(-50%);
	}
	.toggle span {
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	left: 0;
	background-color: #aaa;
	border-radius: 100px;
	transition: .35s ease-in-out;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	}
	.toggle span:nth-child(1) {
	top: 0;
	}
	.toggle span:nth-child(2) {
	top: 10px;
	}
	.toggle span:nth-child(3) {
	top: 20px;
	}
	html.active .toggle {
	z-index: 99999;
	}
	html.active .toggle::before {
	content: "Close";
	}
	html.active .toggle span {
	top: 7px;
	}
	html.active .toggle span:nth-child(1) {
	transform: translateY(0) rotate(-45deg);
	}
	html.active .toggle span:nth-child(2) {
	transform: translateY(0) rotate(45deg);
	}
	html.active .toggle span:nth-child(3) {
	opacity: 0;
	}
	/* is-fixed */
	html.is-fixed .toggle {
	top: 0;
	right: 0;
	border-radius: 0 0 0 10px;
	box-shadow: 0 0 10px rgba(0,0,0,.2);
	transition: all 0.1s ease-in-out;
	}
	/* spmenu */
	html.active .header_box {
	left: inherit;
	right: 100px;
	animation: spmenu-open .3s ease-out forwards;
	}
	html.closing .header_box {
	animation: spmenu-close .3s ease-out forwards;
	}
	@keyframes spmenu-open {
		from {
			transform: translateX(100%);
		}
		to {
			transform: translateX(0);
		}
	}
	@keyframes spmenu-close {
		from {
			transform: translateX(0);
		}
		to {
			transform: translateX(100%);
		}
	}
	html.active .head_logo {
	display: none;
	}
	html.active .menu {
	margin-top: 0;
	margin-bottom: 50px;
	}
	.sp_logo {
	z-index: 1;
	position: absolute;
	display: block;
	width: calc(343px * .6);
	height: calc(113px * .6);
	top: 20px;
	left: 20px;
	filter: brightness(0) invert(1);
	}
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
	/* hover */
	.head_logo:hover,
	.menu_ul_li a:hover,
	.head_insta:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.sp_logo {
	width: calc(343px * .45);
	height: calc(113px * .45);
	top: 12px;
	left: 12px;
	}
	.toggle {
	width: 50px;
	height: 50px;
	}
	.toggle div {
	width: 25px;
	height: 20px;
	top: 10px;
	}
	.toggle::before {
	bottom: 2px;
	font-size: 1.2rem;
	}
	.toggle span:nth-child(2) {
	top: 7px;
	}
	.toggle span:nth-child(3) {
	top: 14px;
	}
	html.active .header_box {
	width: 200px;
	right: 65px;
	padding: 20px;
	}
	html.active .menu {
	margin-bottom: 40px;
	}
	.menu_ul_li {
	font-size: 2.4rem;
	}
}

/*-----------------------
 TOP
-----------------------*/
/*--メインビジュアル--*/
.mv {
position: relative;
height: 100vh;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
}
.mv_wrap {
position: relative;
margin: auto;
height: 100%;
}
.mv_txt {
z-index: 1;
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 127px;
}
.mv_txt_1 {
margin-bottom: 30px;
padding-right: 217px;
padding-left: 2em;
text-indent: -2em;
font-family: "Noto Serif JP", serif;
font-size: 2.9rem;
font-weight: 300;
letter-spacing: .4em;
line-height: 2;
color: #fff;
}
.mv_txt_2,
.mv_txt_3 {
opacity: .5;
}
.mv_txt_2 img,
.mv_txt_3 img {
margin-right: 0;
}
.mv_txt_2 {
padding-right: 35px;
}
.mv_txt_2 img {
width: calc(638px);
}
.mv_txt_3 {
}
.mv_txt_3 img {
width: calc(372px);
}
.scroll {
position: absolute;
font-family: "Bellefair", serif;
height: 85px;
right: 55px;
bottom: 55px;
padding-right: 24px;
padding-top: 67px;
font-size: 2.0rem;
color: #fff;
}
.scroll::before,
.scroll::after {
z-index: 2;
position: absolute;
display: block;
content: "";
width: 1px;
top: 0;
right: 0;
}
.scroll::before {
height: 85px;
background-color: #9b9b9b;
}
.scroll::after {
height: 30px;
top: 0;
background-color: #fff;
animation: mainmove 1s linear infinite;
}
@keyframes mainmove {
	0% {
	top: 0;
	}
	100% {
	top: 55px;
	}
}
@media (max-width:1760px) {
	.mv_txt {
	right: 4vw;
	}
	.mv_txt_1 {
	padding-right: 100px;
	}
	.mv_txt_2 img {
	width: calc(638px * .9);
	}
	.mv_txt_3 img {
	width: calc(372px * .9);
	}
}
@media (max-width:1439px) {
	.mv_txt {
	right: 30px;
	}
	.mv_txt_1 {
	padding-left: 1em;
	text-indent: -1em;
	padding-right: 80px;
	letter-spacing: .3em;
	}
	.mv_txt_2 {
	padding-right: 20px;
	}
	.mv_txt_2 img {
	width: calc(638px * .8);
	}
	.mv_txt_3 img {
	width: calc(372px * .8);
	}
}
@media (max-width:1259px) {
	.mv_txt {
	right: 20px;
	}
	.mv_txt_1 {
	margin-bottom: 20px;
	padding-right: 30px;
	letter-spacing: .2em;
	line-height: inherit;
	}
	.mv_txt_2 {
	}
	.mv_txt_2 img {
	width: calc(638px * .65);
	}
	.mv_txt_3 img {
	width: calc(372px * .65);
	}
}
@media (max-width:1023px) {
	.mv_txt {
	right: 20px;
	}
	.mv_txt_1 {
	margin-bottom: 30px;
	padding-right: 20px;
	font-size: 2.5rem;
	letter-spacing: .1em;
	}
	.mv_txt_2 {
	}
	.mv_txt_2 img {
	width: calc(638px * .5);
	}
	.mv_txt_3 img {
	width: calc(372px * .5);
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.mv {
	background-position: bottom center;
	}
	.mv_txt {
	width: calc(100% - 30px);
	top: 100px;
	transform: inherit;
	right: 0;
	left: 0;
	margin: auto;
	}
	.mv_txt_1 {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
	padding-right: 0;
	font-size: 2.3rem;
	}
	.mv_txt_2,
	.mv_txt_3 {
	width: 300px;
	margin-left: auto;
	margin-right: auto;
	}
	.mv_txt_2 {
	padding-right: 10px;
	}
	.mv_txt_2 img {
	width: calc(638px * .4);
	margin-right: 0;
	}
	.mv_txt_3 img {
	width: calc(372px * .4);
	}
	.scroll {
	display: none;
	}
}

/*--top共通--*/
.top_main {
position: relative;
}
.top_sec {
padding: 160px 30px;
}
.top_wrap {
max-width: 1120px;
margin: auto;
}
.top_ttl {
font-family: "Bellefair","Noto Serif JP",serif;
font-size: 3.2rem;
}
.top_more {
width: fit-content;
margin-left: auto;
font-family: "Bellefair","Noto Serif JP",serif;
font-size: 2.0rem;
line-height: 1;
border-bottom: 1px solid #515151;
}
.top_more a {
position: relative;
display: block;
padding: 4px;
}
@media (max-width:1180px) {
	.top_wrap {
	max-width: 964px;
	}
}
@media (max-width:1023px) {
	.top_sec {
	padding: 100px 30px;
	}
	.top_wrap {
	max-width: 708px !important;
	}
	.top_ttl {
	font-size: 3.0rem;
	}
	.top_more {
	}
	.top_more a {
	}
}
@media (min-width:768px) {
	/* hover */
	.top_more a:hover {
	opacity: .5;
	transition: .3s;
	}
	.top_more a:hover::before {
	right: 0;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.top_sec {
	padding: 80px 15px !important;
	}
	.top_wrap {
	max-width: 330px !important;
	}
	.top_ttl {
	}
	.top_more {
	}
	.top_more a {
	}
}

/*-- top_about --*/
.top_about {
margin-top: 105px;
padding-top: 150px;
padding-bottom: 290px;
color: #fff;
}
.top_about::before {
z-index: -1;
position: absolute;
content: "";
width: 1702px;
height: 100%;
top: 0;
left: 50%;
transform: translateX(-50%);
background-repeat: no-repeat;
background-position: top center;
background-size: cover;
}
.top_about_ttl {
width: fit-content;
margin-left: auto;
padding-right: 260px;
}
.top_about_ttl img {
width: calc(363px);
}
.top_about_lead {
margin-bottom: 30px;
font-family: "Noto Serif JP", serif;
font-size: 2.6rem;
letter-spacing: .4em;
line-height: 1.8;
}
.top_about_txt {
max-width: 684px;
font-size: 1.8rem;
line-height: 2;
letter-spacing: .2em;
}
@media screen and (max-width: 1410px) {
	.top_about {
	padding-bottom: 105px;
	}
}
@media screen and (max-width: 1180px) {
	.top_about::before {
	width: 100%;
	}
	.top_about_ttl {
	margin-left: 0;
	margin-bottom: 20px;
	padding-right: 0;
	}
	.top_about_ttl img {
	width: calc(363px * .9);
	}
	.top_about_lead {
	letter-spacing: inherit;
	}
	.top_about_txt {
	max-width: 600px;
	letter-spacing: inherit;
	}
}
@media screen and (max-width: 1023px) {
	.top_about {
	padding-top: 100px;
	padding-bottom: 100px;
	}
	.top_about_ttl img {
	width: calc(363px * .8);
	}
	.top_about_lead {
	font-size: 2.2rem;
	line-height: inherit;
	}
	.top_about_txt {
	max-width: 460px;
	font-size: inherit;
	line-height: inherit;
	}
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
	.top_about {
	margin-top: 50px;
	}
	.top_about::before {
	background-position: top right -200px;
	}
	.top_about_ttl img {
	width: calc(363px * .6);
	}
	.top_about_lead {
	margin-bottom: 20px;
	font-size: 2.0rem;
	text-shadow: 0 0 10px #000,0 0 10px #000,0 0 10px #000;
	}
	.top_about_txt {
	max-width: 460px;
	text-shadow: 0 0 10px #000,0 0 10px #000,0 0 10px #000;
	}
}

/*-- top_news --*/
.top_news {
z-index: 1;
margin-top: -145px;
padding-top: 97px;
padding-bottom: 75px;
}
.top_news::before {
z-index: -1;
position: absolute;
content: "";
width: calc(1350px);
height: 100%;
top: 0;
left: 50%;
transform: translateX(-50%);
background-color: #fff;
}
.top_news_flex {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 40px;
}
.top_news_list {
overflow: visible;
}
.top_news_li {
position: relative;
padding: 0 15px;
}
.top_news_li a {
z-index: 1;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.top_news_ttl {
margin-bottom: 18px;
font-family: "Noto Serif JP", serif;
font-size: 1.8rem;
letter-spacing: .05em;
}
.top_news_img {
margin-bottom: 15px;
}
.top_news_img img {
object-fit: cover;
aspect-ratio: 353 / 206;
border-radius: 2px;
}
.top_news_box {
display: flex;
align-items: center;
justify-content: space-between;
}
.date {
font-family: "Bellefair", serif;
font-size: 1.4rem;
line-height: 1;
}
.cat {
}
.cat_li {
padding: 9px 15px;
font-size: 1.3rem;
font-weight: 500;
line-height: 1;
color: #fff;
background-color: #9b9b9b;
border-radius: 2px;
}
.top_news .slick-prev,
.top_news .slick-next {
top: 50% !important;
transform: translateY(-50%) !important;
}
.top_news .slick-dots {
position: absolute;
display: flex;
top: -65px;
left: 100px;
}
.top_news .slick-dots li {
margin-right: 7px;
}
.top_news .slick-dots button {
display: block;
width: 6px;
height: 6px;
font-size: 0;
background-color: #e0e0e0;
border-radius: 100%;
}
.top_news .slick-dots li.slick-active button {
background-color: #797979;
}
@media screen and (max-width: 1410px) {
	.top_news {
	margin-top: 0;
	}
	.top_news::before {
	display: none;
	}
}
@media screen and (max-width: 1180px) {
}
@media screen and (max-width: 1023px) {
	.top_news {
	padding-top: 100px;
	padding-bottom: 50px;
	}
	.top_news_flex {
	margin-bottom: 30px;
	}
	.top_news_ttl {
	margin-bottom: 15px;
	font-size: 1.6rem;
	}
	.cat_li {
	padding: 6px 10px;
	font-size: 1.2rem;
	}
	.top_news .slick-dots {
	top: -50px;
	left: 80px;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.top_news_li:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media screen and (max-width: 767px) {
	.top_news {
	padding-bottom: 40px !important;
	}
	.top_news_ttl {
	margin-bottom: 10px;
	}
	.top_news .slick-dots {
	top: -45px;
	left: 70px;
	}
}

/*-- top_insta --*/
.top_insta {
padding-top: 75px;
padding-bottom: 110px;
}
.top_insta_flex {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 40px;
}
.top_insta_frame {
height: 500px;
background-color: transparent;
}
@media screen and (max-width: 1180px) {
}
@media screen and (max-width: 1023px) {
	.top_insta {
	padding-top: 50px;
	padding-bottom: 100px;
	}
	.top_insta_flex {
	margin-bottom: 30px;
	}
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
	.top_insta {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
	}
}

/*-- top_info --*/
.top_info {
}
.top_info .top_wrap {
position: relative;
padding-top: 85px;
}
.top_info_ttl {
position: relative;
width: calc(468px);
margin-bottom: 60px;
left: -99px;
}
.top_info_list {
margin-bottom: 95px;
}
.top_info_li {
}
.top_info_li img {
object-fit: cover;
width: 100%;
height: 100%;
}
.top_info_li1,
.top_info_li2 {
width: calc(752px);
height: calc(573px);
}
.top_info_li1 {
position: absolute;
top: 0;
right: -120px;
}
.top_info_li2 {
position: relative;
left: -121px;
}
.top_info_li3 {
position: relative;
width: calc(385px);
height: calc(293px);
margin-top: -163px;
margin-left: auto;
right: -22px;
}
.top_info_box {
margin-bottom: 90px;
}
.top_info_box_ttl {
margin-bottom: 35px;
font-family: "Noto Serif JP", serif;
font-size: 2.6rem;
letter-spacing: .4em;
}
.top_info_box_txt {
font-size: 1.8rem;
line-height: 2;
}
.top_info_box_txt p + p {
margin-top: 1em;
}
.top_info_data {
display: flex;
margin-bottom: 100px;
}
.top_info_data_img {
width: 326px;
}
.top_info_data_img img {
object-fit: cover;
aspect-ratio: 1 / 1;
border-radius: 2px;
}
.top_info_data_box {
width: calc(100% - 326px);
padding-top: 26px;
padding-left: 70px;
}
.top_info_data_name {
margin-bottom: 40px;
font-size: 2.0rem;
font-weight: bold;
letter-spacing: .2em;
}
.top_info_data_dl {
}
.top_info_data_dl dl {
display: flex;
}
.top_info_data_dl dl + dl {
margin-top: 35px;
}
.top_info_data_dl dt {
width: 100px;
font-weight: bold;
}
.top_info_data_dl dd {
width: calc(100% - 100px);
}
.top_info_data_dl .txt_p + .txt_p {
margin-top: 1em;
}
.instalink {
position: relative;
margin: 0 10px;
padding-left: 30px;
font-weight: 800;
letter-spacing: 0;
}
.instalink::before {
position: absolute;
content: "";
width: 20px;
height: 20px;
top: 50%;
transform: translateY(-50%);
left: 0;
background-image: url(./common/img/ico_insta.png);
background-repeat: no-repeat;
background-size: contain;
}
.top_map_box {
height: 600px;
margin: 0 -114px;
}
.top_map_box iframe {
width: 100%;
height: 100%;
filter: grayscale(100%);
-webkit-filter: grayscale(100%);
}
@media screen and (max-width: 1400px) {
	.top_info .top_wrap {
	padding-top: 60px;
	}
	.top_info_ttl {
	width: calc(468px * .8);
	left: 0;
	}
	.top_info_list {
	margin-bottom: 80px;
	}
	.top_info_li1,
	.top_info_li2 {
	width: calc(752px * .9);
	height: calc(573px * .9);
	}
	.top_info_li1 {
	right: -30px;
	}
	.top_info_li2 {
	left: -30px;
	}
	.top_info_li3 {
	right: 0;
	}
	.top_map_box {
	margin: 0;
	}
}
@media screen and (max-width: 1180px) {
	.top_info .top_wrap {
	padding-top: 50px;
	}
	.top_info_ttl {
	width: calc(468px * .7);
	}
	.top_info_list {
	margin-bottom: 20px;
	}
	.top_info_li1,
	.top_info_li2 {
	width: calc(752px * .75);
	height: calc(573px * .75);
	}
	.top_info_li1 {
	right: -30px;
	}
	.top_info_li2 {
	left: -30px;
	}
	.top_info_li3 {
	width: calc(385px * .8);
	height: calc(293px * .8);
	margin-top: -150px;
	}
}
@media screen and (max-width: 1023px) {
	.top_info_ttl {
	width: calc(468px * .60);
	left: -10px;
	}
	.top_info_list {
	}
	.top_info_li1,
	.top_info_li2 {
	width: calc(752px * .55);
	height: calc(573px * .55);
	}
	.top_info_li1 {
	}
	.top_info_li2 {
	}
	.top_info_li3 {
	width: calc(385px * .6);
	height: calc(293px * .6);
	margin-top: -160px;
	}
	.top_info_box {
	margin-bottom: 50px;
	}
	.top_info_box_ttl {
	margin-bottom: 20px;
	font-size: 2.2rem;
	letter-spacing: inherit;
	}
	.top_info_box_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.top_info_box_txt p + p {
	margin-top: .5em;
	}
	.top_info_data {
	margin-bottom: 50px;
	}
	.top_info_data_img {
	width: 280px;
	}
	.top_info_data_box {
	width: calc(100% - 280px);
	padding-top: 0;
	padding-left: 50px;
	}
	.top_info_data_name {
	margin-bottom: 30px;
	font-size: 1.8rem;
	letter-spacing: inherit;
	}
	.top_info_data_dl dl + dl {
	margin-top: 10px;
	}
	.top_info_data_dl dt {
	width: 90px;
	}
	.top_info_data_dl dd {
	width: calc(100% - 90px);
	}
	.top_info_data_dl .txt_p + .txt_p {
	margin-top: 5px;
	}
	.instalink {
	margin: 0 9px;
	padding-left: 27px;
	}
	.instalink::before {
	width: 18px;
	height: 18px;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.instalink:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media screen and (max-width: 767px) {
	.top_info .top_wrap {
	padding-top: 0;
	}
	.top_info_ttl {
	width: calc(468px * .5);
	margin-bottom: 10px;
	}
	.top_info_list {
	margin: 0 -15px 10px -15px;
	}
	.top_info_li1 {
	width: calc(752px * .25);
	height: calc(573px * .25);
	position: relative;
	right: 0;
	margin-left: auto;
	}
	.top_info_li2 {
	width: calc(752px * .28);
	height: calc(573px * .28);
	left: 0;
	margin-top: -80px;
	}
	.top_info_li2 {
	}
	.top_info_li3 {
	width: calc(385px * .3);
	height: calc(293px * .3);
	margin-top: -50px;
	margin-left: auto;
	right: 20px;
	}
	.top_info_box {
	margin-bottom: 40px;
	}
	.top_info_data {
	position: relative;
	margin-bottom: 40px;
	}
	.top_info_data_img {
	width: 130px;
	height: 230px;
	}
	.top_info_data_img img {
	aspect-ratio: inherit;
	height: 100%;
	}
	.top_info_data_box {
	width: calc(100% - 130px);
	padding-left: 20px;
	}
	.top_info_data_name {
	display: none;
	}
	.top_info_data_dl dl {
	display: block;
	line-height: 1.4;
	}
	.top_info_data_dl dl.eigyo {
	padding-left: 0;
	}
	.top_info_data_dl dt {
	width: 100%;
	margin-bottom: 4px;
	}
	.top_info_data_dl dd {
	width: 100%;
	}
	.top_info_data_dl .txt_p + .txt_p {
	margin-top: 0;
	}
	.instalink {
	margin: 0;
	padding: 0;
	}
	.instalink::before {
	display: none;
	}
	.top_map_box {
	height: 400px;
	}
}

/*-- top_brand --*/
.top_brand {
background-color: #f1f1f1;
}
.top_brand .top_wrap {
}
.top_brand_ttl {
display: flex;
align-items: center;
margin-bottom: 40px;
font-family: "Bellefair","Noto Serif JP",serif;
}
.top_brand_ttl_1 {
margin-right: 30px;
font-size: 3.2rem;
letter-spacing: .05em;
}
.top_brand_ttl_2 {
letter-spacing: .2em;
}
.top_brand_ttl_2 .en {
font-size: 2.8rem;
letter-spacing: 0;
line-height: 1;
}
.top_brand_list {
}
.top_brand_li {
display: flex;
}
.top_brand_li + .top_brand_li {
margin-top: 52px;
}
.top_brand_img {
width: 187px;
}
.top_brand_img img {
object-fit: cover;
aspect-ratio: 1 / 1;
}
.top_brand_box {
position: relative;
width: calc(100% - 187px);
padding-left: 42px;
}
.top_brand_link {
position: absolute;
top: 0;
right: 0;
display: flex;
align-items: center;
justify-content: flex-end;
}
.top_brand_link_li {
margin-left: 12px;
font-family: "Bellefair","Noto Serif JP",serif;
line-height: 1;
letter-spacing: .05em;
background-color: #fff;
border-radius: 2px;
}
.top_brand_link_li a {
position: relative;
display: block;
padding: 12px 19px;
}
.top_brand_link_li a::before {
display: inline-block;
vertical-align: middle;
content: "";
margin-top: -4px;
margin-right: 8px;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
.top_brand_link_li.web a::before {
width: calc(13px);
height: calc(13px);
background-image: url(./common/img/top/ico_web.png);
}
.top_brand_link_li.map a::before {
width: calc(13px);
height: calc(17px);
background-image: url(./common/img/top/ico_map.png);
}
.top_brand_name {
margin-bottom: 22px;
font-family: "Bellefair","Noto Serif JP",serif;
font-size: 2.0rem;
letter-spacing: .05em;
line-height: 1.4;
}
.top_brand_name .en {
font-size: 3.6rem;
line-height: 1;
}
.top_brand_addr {
margin-bottom: 20px;
}
.top_brand_access {
position: relative;
padding-left: 30px;
}
.top_brand_access::before {
position: absolute;
content: "";
width: calc(20px);
height: calc(20px);
top: 2px;
left: 0;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
.top_brand_access_li {
font-size: 1.4rem;
font-weight: bold;
}
.top_brand_access.car::before {
background-image: url(./common/img/top/ico_car.png);
}
.top_brand_access.train::before {
background-image: url(./common/img/top/ico_train.png);
}
@media screen and (max-width: 1180px) {
}
@media screen and (max-width: 1023px) {
	.top_brand_img {
	width: 150px;
	}
	.top_brand_ttl_2 {
	letter-spacing: inherit;
	}
	.top_brand_box {
	width: calc(100% - 150px);
	padding-left: 40px;
	}
	.top_brand_link_li {
	margin-left: 10px;
	}
	.top_brand_li + .top_brand_li {
	margin-top: 40px;
	}
	.top_brand_link_li a {
	padding: 10px 15px;
	}
	.top_brand_name {
	margin-bottom: 15px;
	padding-right: 250px;
	font-size: 1.8rem;
	}
	.top_brand_addr {
	margin-bottom: 10px;
	}
	.top_brand_access {
	padding-left: 25px;
	}
	.top_brand_access::before {
	width: calc(20px * .9);
	height: calc(20px * .9);
	top: 0;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.top_brand_link_li:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media screen and (max-width: 767px) {
	.top_brand_ttl {
	display: block;
	margin-bottom: 30px;
	}
	.top_brand_ttl_1 {
	display: block;
	margin-right: 0;
	font-size: 3.0rem;
	}
	.top_brand_li {
	position: relative;
	}
	.top_brand_img {
	width: 80px;
	height: 93px;
	}
	.top_brand_img img {
	aspect-ratio: inherit;
	height: 100%;
	}
	.top_brand_box {
	width: calc(100% - 80px);
	padding-left: 15px;
	}
	.top_brand_link {
	display: none;
	}
	.top_brand_link_li {
	margin-left: 0;
	margin-bottom: 10px;
	}
	.top_brand_li + .top_brand_li {
	margin-top: 20px;
	}
	.top_brand_link_li + .top_brand_link_li {
	margin-left: 10px;
	}
	.top_brand_link_li a {
	padding: 6px 13px;
	}
	.top_brand_link_li a::before {
	margin-top: -2px;
	margin-right: 4px;
	}
	.top_brand_link_li.web a::before {
	width: calc(13px * .8);
	height: calc(13px * .8);
	}
	.top_brand_link_li.map a::before {
	width: calc(13px * .8);
	height: calc(17px * .8);
	}
	.top_brand_name {
	margin-bottom: 4px;
	padding-right: 0;
	font-size: 1.6rem;
	}
	.top_brand_name .en {
	font-size: 2.6rem;
	}
	.top_brand_addr {
	margin-bottom: 4px;
	font-size: 1.2rem;
	line-height: 1.4;
	}
	.top_brand_access {
	margin-right: -15px;
	padding-left: 16px;
	}
	.top_brand_access::before {
	width: calc(20px * .6);
	height: calc(20px * .6);
	top: 4px;
	}
	.top_brand_access_li {
	font-size: 1.2rem;
	font-weight: normal;
	}
}

/*-----------------------
 フッター
-----------------------*/
footer {
padding-top: 50px;
padding-bottom: 50px;
}
footer .top_wrap {
position: relative;
display: flex;
align-items: center;
}
.footer_logo {
width: 122px;
margin-right: 20px;
}
.footer_logo img {
}
.copyright {
font-family: "Bellefair", serif;
font-size: 1.4rem;
letter-spacing: .05em;
line-height: 1.4;
}
.foot_insta {
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 0;
width: 26px;
height: 26px;
}
.foot_insta a {
}
.foot_insta img {
}
@media screen and (max-width: 1180px) {
	.footer_logo {
	width: 100px;
	}
}
@media screen and (max-width: 1023px) {
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
	footer {
	padding-top: 40px;
	padding-bottom: 40px;
	}
	footer .top_wrap {
	display: block;
	}
	.footer_logo {
	width: 110px;
	margin-right: 0;
	margin-bottom: 20px;
	}
	.copyright {
	font-size: 1.3rem;
	}
	.foot_insta {
	position: absolute;
	top: 6px;
	transform: inherit;
	right: 0;
	}
}

/*-----------------------
 下層共通
-----------------------*/
/* パンくず */
.breadcrumb {
display: flex;
flex-wrap: wrap;
margin-bottom: 30px;
font-family: "Bellefair","Noto Serif JP",serif;
line-height: 1.4;
}
.breadcrumb span {
display: block;
}
.breadcrumb span > a,
.breadcrumb span > span {
display: block;
margin: 2px 10px;
}
.breadcrumb span > a {
}
.breadcrumb span > span {
}
.breadcrumb .current-item {
}
@media (max-width: 1199px) {
}
@media (max-width: 1023px) {
}
@media (min-width: 768px) {
	/* hover */
	.breadcrumb a:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width: 767px) {
	.breadcrumb {
	letter-spacing: 0;
	}
}

/*-- 大枠div --*/
.low {
position: relative;
letter-spacing: 1px;
}
.low_section {
padding: 100px 30px;
}
.low_wrap {
max-width: 1260px;
margin: auto;
}
.low_wrap2 {
max-width: 1440px;
}
.low_wrap>h1,
.low_wrap>h2,
.low_wrap>h3,
.low_wrap>h4,
.low_wrap>h5,
.low_wrap>h6,
.low_wrap>section,
.low_wrap>div,
.low_wrap>p,
.low_wrap>ul,
.low_wrap>ol,
.low_wrap>dl,
.low_wrap>table,
.low_wrap>a,
.low_wrap>img {
position: relative;
}
.low_parts + .low_parts {
margin-top: 40px;
}
@media (max-width:1320px) {
	.low_wrap {
	max-width: 964px;
	}
}
@media (max-width:1023px) {
	.low_wrap {
	max-width: 708px;
	}
	.low_section {
	padding: 60px 30px;
	}
}
@media (max-width:767px) {
	.low_wrap {
	max-width: 330px;
	}
	.low_section {
	padding: 50px 15px;
	}
	.low_parts + .low_parts {
	margin-top: 30px;
	}
}

/* 背景色 */
.bg01 {
position: relative;
}
.bg01::after {
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #fff;
}
.bg02 {
position: relative;
}
.bg02::after {
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #f9f9f3;
}
@media (max-width:767px) {
}

/*-------------------------
 汎用レイアウト
-------------------------*/
/*-- h3～h6タイトル --*/
.low_h3 {
z-index: 1;
position: relative;
margin-top: 3em;
margin-bottom: 1.5em;
padding-top: 55px;
font-family: "Noto Serif JP", serif;
font-size: 3.2rem;
text-align: center;
}
.low_h3::before {
position: absolute;
content: "";
width: 30px;
height: 30px;
top: 0;
left: 50%;
transform: translateX(-50%);
background-image: url(./common/img/low_h3_ico.png);
background-repeat: no-repeat;
background-size: contain;
}
.low_h3:first-of-type {
margin-top: 0;
}
.low_h3_1 {
display: block;
font-size: 2.2rem;
}
.low_h3_2 {
display: block;
}
.low_h3_3 {
display: block;
font-size: 1.8rem;
}
.low_h3_1 + .low_h3_2 {
margin-top: 3px;
}
.low_h3_2 + .low_h3_3 {
margin-top: 10px;
}
h3[class*="low_h2"] + h4[class*="low_h3"] {
margin-top: 0;
}
.low_h4 {
z-index: 1;
position: relative;
display: flex;
flex-wrap: wrap;
align-items: center;
margin-top: 3em;
margin-bottom: 1em;
padding: 10px 25px;
font-family: "Noto Serif JP", serif;
font-size: 2.2rem;
}
.low_h4::before,
.low_h4::after {
z-index: -1;
position: absolute;
content: "";
width: calc(100% + 10px);
height: 100%;
}
.low_h4::before {
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
background-color: #ddd;
}
.low_h4::after {
bottom: 0;
left: 50%;
transform: translateX(-50%);
background-color: #f1f1f1;
clip-path: polygon(20px 0%, 100% 0, 100% 50%, calc(100% - 20px) 100%, 0 100%, 0% 50%);
}
.bg01 .low_h4 {
}
.low_h4.point {
display: flex;
align-items: center;
padding: 0;
border-left-width: 0;
background-color: transparent;
border-width: 0;
}
.low_h4.point::before {
display: none;
}
.point_s1 {
display: flex;
align-items: center;
justify-content: center;
width: 150px;
padding: 15px 10px;
text-align: center;
letter-spacing: 1px;
line-height: 1.2;
color: #fff;
background-color: #222;
border: 3px solid;
border-radius: 100px;
}
.point_s2 {
display: block;
width: calc(100% - 150px);
padding-left: 20px;
line-height: 1.2;
border-radius: 100px 6px 6px 100px;
}
.bg01 .point_s2 {
color: #0b2251;
background-color: #d1c4ac;
}
h3[class*="low_h2"] + h5[class*="low_h4"],
h4[class*="low_h3"] + h5[class*="low_h4"] {
margin-top: 0;
}
.low_h5 {
width: fit-content;
margin-top: 2em;
margin-bottom: 1em;
padding-bottom: 5px;
font-family: "Noto Serif JP", serif;
font-size: 2.0rem;
border-bottom: 4px double #aaa;
}
.low_wrap > h4[class*="low_h3"]:first-child,
.low_wrap > h5[class*="low_h4"]:first-child,
.low_wrap > h6[class*="low_h5"]:first-child,
h3[class*="low_h2"] + h6[class*="low_h5"],
h4[class*="low_h3"] + h6[class*="low_h5"],
h5[class*="low_h4"] + h6[class*="low_h5"] {
margin-top: 0;
}
@media (max-width:1023px) {
	.low_h3 {
	padding-top: 45px;
	font-size: 2.6rem;
	}
	.low_h3::before {
	width: 25px;
	height: 25px;
	}
	.low_h4 {
	padding: 10px 20px;
	font-size: 2.2rem;
	}
	.low_h5 {
	font-size: 1.8rem;
	border-bottom-width: 4px;
	}
}
@media (max-width:767px) {
	.low_h3 {
	padding-top: 35px;
	font-size: 2.4rem;
	}
	.low_h3::before {
	width: 20px;
	height: 20px;
	}
	.low_h4 {
	padding: 8px 15px;
	font-size: 2.0rem;
	}
	.point_s1 {
	width: 80px;
	font-size: 1.6rem;
	padding: 10px;
	border-radius: 6px;
	}
	.point_s2 {
	width: calc(100% - 80px);
	padding-left: 10px;
	}
	.low_h5 {
	margin-top: 2em;
	margin-bottom: 10px;
	font-size: 1.7rem;
	}
}

/*-- 画像 --*/
.low_img {
}
.low_img_m {
max-width: 900px;
margin-left: auto !important;
margin-right: auto !important;
}
.low_img img {
}
.low_logo {
}
.low_logo img {
max-width: 500px;
}
@media (min-width:768px) {
	.low_img {
	margin-right: 10px;
	margin-left: 10px;
	}
}
@media (max-width:767px) {
	.low_img  {
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
	}
	.low_img_m {
	max-width: 400px;
	}
	.low_logo img {
	max-width: 200px;
	}
}

/*-- テキスト --*/
.low_catch {
position: relative;
width: fit-content;
margin-left: auto;
margin-right: auto;
font-size: 2.2rem;
font-weight: bold;
}
.low_read {
}
.low_read_1 {
font-size: 2.4rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
}
.low_read_2 {
width: fit-content;
margin: auto;
font-size: 1.8rem;
line-height: 2;
}
.low_txt_l,
.low_txt_m,
.low_txt_s {
}
.low_txt_l {
font-size: 1.8rem;
}
.low_txt_m {
}
.low_txt_s {
font-size: 1.4rem;
}
.low_read p + p,
div[class*="low_txt_"] p + p {
margin-top: 1em;
}
@media (min-width:768px) {
	.low_txt_l01 {
	letter-spacing: 1px;
	}
	/*--div[class*="low_txt_"],
	.low_read {
	margin-right: 10px;
	margin-left: 10px;
	}--*/
	.low_txt_l {
	font-size: 1.8rem;
	}
}
@media (max-width:1023px) {
	.low_catch {
	font-size: 1.8rem;
	}
	.low_read_2 {
	line-height: inherit;
	}
}
@media (max-width:767px) {
	.low_catch {
	/*--width: fit-content;
	margin-left: auto;
	margin-right: auto;
	text-align: left;--*/
	font-size: 1.9rem;
	}
	.low_read_1 {
	font-size: 1.7rem;
	}
	.low_read_2 {
	font-size: inherit;
	}
	.low_txt_l {
	font-size: 1.6rem;
	}
	.low_txt_s {
	font-size: 1.3rem;
	}
	.low_read p + p,
	div[class*="low_txt_"] p + p {
	margin-top: 0.5em;
	}
}

/*-- テキストリンク --*/
.txt_link {
text-decoration: underline;
}
@media (min-width:768px) {
	/* hover */
	.txt_link:hover {
	opacity: .5;
	transition: .3s;
	}
}

/*-- レイアウト01（色背景） --*/
.lay01 {
padding: 30px;
background-color: #f1f1f1;
border-radius: 0;
}
.bg01 .lay01 {
background-color: #d1c4ac;
}
.lay01.bd {
background-color: transparent;
border: 1px solid #aaa;
}
.lay01_ttl {
margin-bottom: 30px;
font-size: 2.2rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
}
.lay01_txt {
}
.lay01 p + p {
margin-top: 1em;
}
@media (max-width:767px) {
	.lay01 {
	padding: 20px;
	}
	.lay01_ttl {
	margin-bottom: 10px;
	font-size: 1.7rem;
	}
	.lay01 p + p {
	margin-top: 0.5em;
	}
}

/*-- レイアウト02（画像＋説明文1） --*/
.lay02 {
overflow: hidden;
display: flex;
align-items: center;
height: 100%;
background-color: #fff;
border: 2px solid #222;
border-radius: 10px;
}
.bg01 .lay02 {
background-color: #fff;
}
.lay02:nth-of-type(even) {
}
.lay02:nth-of-type(odd) {
flex-direction: row-reverse;
}
.lay02_box_ttl {
margin-bottom: 1em;
font-size: 2.0rem;
font-weight: bold;
}
.lay02_img {
width: 400px;
height: 100%;
}
.lay02_img img {
object-fit: cover;
width: 100%;
min-height: 350px;
height: 100%;
}
.lay02_box {
position: relative;
width: calc(100% - 400px);
height: 100%;
padding: 30px;
}
.lay02_box .low_h4 {
margin-top: 0 !important;
padding: 10px 20px;
font-size: 2.0rem;
}
.lay02_txt {
}
.lay02_txt p + p {
margin-top: 1em;
}
.lay02 .linkbtn {
min-width: 250px;
margin-top: 1em;
text-align: right;
}
.lay02 .linkbtn a {
min-width: inherit;
text-align: center;
text-decoration: none !important;
}
@media (max-width:1320px) {
}
@media (min-width:1024px) {
	.lay02_txt {
	line-height: 1.8;
	}
}
@media (max-width:1023px) {
	.lay02 {
	background-color: transparent;
	}
	.lay02_img {
	width: 350px;
	margin: auto;
	}
	.lay02_box {
	width: calc(100% - 350px);
	}
	.lay02_box_ttl {
	font-size: 1.8rem;
	}
}
@media (max-width:767px) {
	.lay02 {
	display: block;
	max-width: 400px;
	margin: auto;
	background-color: transparent;
	border-width: 1px;
	}
	.lay02_img {
	width: 100%;
	}
	.lay02_img img {
	aspect-ratio: 3 / 2;
	min-height: 100%;
	}
	.lay02_box {
	width: 100%;
	padding: 20px;
	}
	.lay02_box::before {
	width: calc(100% - 14px);
	height: calc(100% - 14px);
	}
	.lay02_box_ttl {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	font-size: 1.6rem;
	}
	.lay02 .linkbtn {
	min-width: 200px;
	text-align: center;
	}
}

/*-- レイアウト02（画像＋説明文1） --*/
.lay03 {
overflow: hidden;
padding: 30px;
background-color: #fff;
border: 2px solid #222;
border-radius: 10px;
}
.lay03 .low_h4 {
border-bottom-width: 0;
}
.lay03 .low_h4:first-of-type {
margin-top: 0 !important;
}
div[class*="lay03_box"] + div[class*="lay03_box"] {
margin-top: 40px;
}
.lay03_box1,
.lay03_box2 {
display: flex;
align-items: flex-start;
}
.lay03_box2 {
flex-direction: row-reverse;
}
.lay03_box1 .lay03_txt,
.lay03_box2 .lay03_txt {
width: calc(100% - 400px);
}
.lay03_box1 .lay03_txt {
padding-right: 30px;
}
.lay03_box2 .lay03_txt {
padding-left: 30px;
}
.lay03_txt p + p {
margin-top: 1em;
}
.lay03_box1 .lay03_img,
.lay03_box2 .lay03_img {
width: 400px;
}
.lay03_box3 {
}
.lay03_box3 .lay03_txt {
margin-bottom: 20px;
}
.lay03_img img {
}
@media (max-width:1023px) {
	.lay03_box1,
	.lay03_box2 {
	display: block;
	}
	.lay03_box1 .lay03_txt,
	.lay03_box2 .lay03_txt {
	width: 100%;
	margin-bottom: 20px;
	}
	.lay03_box1 .lay03_txt {
	padding-right: 0;
	}
	.lay03_box2 .lay03_txt {
	padding-left: 0;
	}
	.lay03_box1 .lay03_img,
	.lay03_box2 .lay03_img {
	width: 100%;
	}
}
@media (max-width:767px) {
	.lay03 {
	padding: 20px;
	border-width: 1px;
	}
}

/*-- faq --*/
.faq {
}
.faq_list {
}
.faq_list_li {
overflow: hidden;
margin-bottom: 15px;
border: 1px solid #aaa;
border-radius: 0;
}
.faq_q {
cursor: pointer;
position: relative;
padding: 30px 50px 30px 75px;
font-weight: 500;
background-color: #fff;
}
.faq_a {
position: relative;
padding: 30px 20px 30px 75px;
border-top: 1px solid #ddd;
}
.faq_q::before,
.faq_a::before {
position: absolute;
content: "";
top: 50%;
transform: translateY(-50%);
left: 30px;
font-family: "arial",sans-serif;
font-size: 2.2rem;
line-height: 1;
}
.faq_q::before {
content: "Q.";
}
.faq_a::before {
content: "A.";
}
.faq_q::after {
z-index: 1;
position: absolute;
content: "";
width: calc(15px);
height: calc(15px);
top: 50%;
transform: translateY(-50%);
right: 20px;
background-image: url(./common/img/faq_toggle_open.png);
background-repeat: no-repeat;
background-size: contain;
filter: brightness(0) invert(.5);
}
.faq_q.open::after {
background-image: url(./common/img/faq_toggle_close.png);
background-repeat: no-repeat;
background-size: contain;
}
@media (max-width:1320px) {
}
@media (max-width:1023px) {
	.faq_list {
	}
	.faq_q {
	padding: 20px 55px 20px 65px;
	}
	.faq_a {
	padding: 20px 20px 20px 65px;
	}
	.faq_q::before,
	.faq_a::before {
	left: 20px;
	}
}
@media (min-width:768px) {
	/* hover */
	.faq_q:hover {
	background-color: #f1f1f1;
	transition: .5s;
	}
	.faq_q:hover::after {
	}
}
@media (max-width:767px) {
	.faq_list_li {
	margin-bottom: 6px;
	}
	.faq_q {
	padding: 15px 35px 15px 50px;
	}
	.faq_a {
	padding: 15px 15px 15px 50px;
	}
	.faq_q::before,
	.faq_a::before {
	left: 15px;
	font-size: 2.0rem;
	}
	.faq_q::after {
	width: calc(20px * .6);
	height: calc(20px * .6);
	right: 10px;
	}
	.faq_q.open::after {
	width: calc(20px * .6);
	height: calc(20px * .6);
	right: 10px;
	}
}

/*-- テーブル --*/
.tbl1 {
}
.tbl1 table {
table-layout: auto;
}
.fixed {
table-layout: fixed;
}
.tbl100 {
width: 100%;
}
.tbl_scr {
overflow-y: hidden !important;
overflow-x: hidden !important;
}
.tbl1 th,
.tbl1 td {
padding: 15px 20px;
line-height: 1.4;
background-color: #fff;
border: 1px solid #aaa;
}
.tbl1 th {
width: 250px;
font-weight: bold;
background-color: #f3f3f3;
}
.tbl1 td {
width: calc(100% - 250px);
}
.tbl1 p + p,
.tbl1 p + ul,
.tbl1 ul + p,
.tbl1 ul + ul {
margin-top: 1em;
}
.tbl1 .list01 {
margin-left: 0;
margin-right: 0;
}
.tbl1 a.link {
display: block;
width: fit-content;
margin-top: 5px;
padding: 6px 12px;
font-size: 1.3rem;
font-weight: bold;
text-decoration: none !important;
line-height: 1;
border: 2px solid #515151;
border-radius: 4px;
}
.tbl1 a.link::after {
position: relative;
display: inline-block;
vertical-align: middle;
content: "";
width: 4px;
height: 4px;
top: -2px;
margin-left: 3px;
border-style: solid;
border-color: #515151;
border-width: 2px 2px 0 0;
transform: rotate(45deg);
}
@media (max-width:1023px) {
	.tbl1 {
	table-layout: fixed;
	}
	.tbl_scr {
	overflow-x: auto !important;
	}
	.tbl_scr::-webkit-scrollbar {
	width: 10px;
	height: 8px;
	background: #eee;
	}
	.tbl_scr::-webkit-scrollbar-thumb {
	background: #ccc;
	border-radius: 10px;
	}
	.tbl_scr .tbl1 {
	width: 1024px;
	}
}
@media (min-width:768px) {
	/* hover */
	.tbl1 a:hover {
	background-color: #f1f1f1;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.tbl1 th,
	.tbl1 td {
	padding: 10px;
	}
	.tbl1 th {
	width: 100px;
	}
	.tbl1 td {
	width: calc(100% - 100px);
	}
	.tbl_scr .tbl1 {
	width: 767px;
	}
	.tbl1.sp_tbl {
	}
	.tbl1.sp_tbl tr,
	.tbl1.sp_tbl th,
	.tbl1.sp_tbl td {
	display: block;
	width: 100% !important;
	}
	.tbl1.sp_tbl tr {
	margin-bottom: 10px;
	}
	.tbl1.sp_tbl th + td,
	.tbl1.sp_tbl td + td {
	border-top: 0;
	}
	.tbl1 a {
	font-size: 1.4rem;
	}
}

/*-- 2カラムtable --*/
.tbl_col2 {
}
@media (max-width:1023px) {
	.tbl_col2 .col2_in {
	width: 100%;
	margin-bottom: 10px;
	}
}

/*-- 定義リスト --*/
.dl1 {
}
.dl1 dl {
border-bottom: 1px solid;
}
.dl1 dt {
position: relative;
padding: 20px;
font-weight: bold;
}
.dl1 dd {
padding: 20px;
}
@media (min-width:768px) {
	.dl1 dl {
	display: flex;
	}
	.dl1 dt {
	width: 250px;
	}
	.dl1 dd {
	width: calc(100% - 250px);
	}
}
@media (max-width:767px) {
	.dl1 dl {
	position: relative;
	border-bottom: 1px solid #aaa;
	}
	.dl1 dt {
	border-bottom-width: 0;
	padding: 15px 10px 0 10px;
	}
	.dl1 dd {
	border-bottom-width: 0;
	padding: 5px 10px 15px 10px;
	}
}

/*-- フロー --*/
.flow {
}
.flow_list {
}
.flow_list_li {
position: relative;
margin-bottom: 40px;
padding: 30px;
background-color: #f5f5f5;
border: 2px solid #515151;
border-radius: 0;
}
.bg01 .flow_list_li {
background-color: #fff;
}
.flow_list_li:not(:last-of-type)::after {
position: absolute;
content: "";
width: 30px;
height: 20px;
bottom: -30px;
right: 0;
left: 0;
margin: auto;
background-color: #222;
clip-path: polygon(100% 0, 0 0, 50% 100%);
-webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.flow_txt1 {
margin-bottom: .5em;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.flow_txt2 {
width: fit-content;
margin-left: auto;
margin-right: auto;
}
@media (max-width:1023px) {
	.flow_list_li {
	border-width: 1px;
	}
	.flow_txt1 {
	font-size: 1.8rem;
	}
}
@media (max-width:767px) {
	.flow_list_li {
	margin-bottom: 35px;
	padding: 15px;
	}
	.flow_list_li:not(:last-of-type)::after {
	width: 30px;
	height: 20px;
	bottom: -28px;
	}
	.flow_txt1 {
	font-size: 1.8rem;
	}
}

/*-- ダウンロード --*/
.download {
}
.download li {
font-weight: bold;
}
.download li + li {
margin-top: 10px;
}
.download a {
position: relative;
display: block;
padding: 15px 80px 15px 15px;
text-decoration: none !important;
background-color: #f1f1f1;
border-left: 15px solid #ccc;
border-radius: 4px;
}
.bg01 .download a {
background-color: #d1c4ac;
border-color: #888;
}
.download a::before {
position: absolute;
content: "";
width: 28px;
height: 28px;
top: 50%;
transform: translateY(-50%);
right: 30px;
background-image: url(./common/img/ico_download.png);
background-repeat: no-repeat;
background-size: contain;
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
	/* hover */
	.download a:hover {
	color: #fff;
	background-color: #02a14d;
	border-color: #02a14d;
	transition: .5s;
	}
	.download a:hover::before {
	filter: brightness(0) invert(1);
	transition: .5s;
	}
}
@media (max-width:767px) {
	.download li + li {
	margin-top: 8px;
	}
	.download a {
	padding: 10px 50px 10px 10px;
	border-left-width: 10px;
	border-radius: 4px;
	}
	.download a::before {
	width: 20px;
	height: 20px;
	right: 20px;
	}
}

/*-- 多列カラム --*/
.col2,
.col3,
.col4,
.col5,
.col6 {
display: flex;
flex-wrap: wrap;
margin-right: -12px;
margin-left: -12px;
}
.col2_in,
.col3_in,
.col4_in,
.col5_in,
.col6_in {
width: calc(50% - 24px);
margin-right: 12px;
margin-left: 12px;
margin-bottom: 40px;
}
.col_ttl {
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.col_txt {
}
.col_img img {
object-fit: cover;
aspect-ratio: 4 / 3;
width: 100%;
height: 100%;
}
.col_ttl + .col_txt,
.col_img + .col_txt,
.col_txt + .col_ttl,
.col_img + .col_ttl,
.col_ttl + .col_img,
.col_txt + .col_img {
margin-top: 10px;
}
@media (min-width:1024px) {
	.col3_in {
	width: calc(33.3333% - 24px);
	}
	.col4_in {
	width: calc(25% - 24px);
	}
	.col5_in {
	width: calc(20% - 24px);
	}
	.col6_in {
	width: calc(16.6666666667% - 24px);
	}
}
@media (max-width:1023px) {
}
@media (max-width:767px) {
	.col2,
	.col3,
	.col4,
	.col5,
	.col6 {
	margin-right: -5px;
	margin-left: -5px;
	}
	.col2_in,
	.col3_in,
	.col4_in,
	.col5_in,
	.col6_in {
	width: calc(50% - 10px);
	margin-right: 5px;
	margin-left: 5px;
	margin-bottom: 30px;
	}
	.col2.sp_col1,
	.col3.sp_col1,
	.col4.sp_col1,
	.col5.sp_col1,
	.col6.sp_col1 {
	display: block;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0;
	}
	.sp_col1 .col2_in,
	.sp_col1 .col3_in,
	.sp_col1 .col4_in,
	.sp_col1 .col5_in,
	.sp_col1 .col6_in {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 30px;
	}
	.col_ttl {
	font-size: 1.6rem;
	}
	.col_ttl + .col_txt,
	.col_img + .col_txt,
	.col_txt + .col_ttl,
	.col_img + .col_ttl,
	.col_ttl + .col_img,
	.col_txt + .col_img {
	margin-top: 5px;
	}
}

/*-- 3カラムリンクバナー --*/
.linkbnr {
}
.linkbnr .col3_in {
overflow: hidden;
position: relative;
background-color: #f1f1f1;
border-radius: 8px;
}
.bg01 .linkbnr .col3_in {
background-color: #d1c4ac;
}
.linkbnr .col3_in a {
z-index: 1;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.linkbnr_box {
padding: 20px;
}
.linkbnr .col_ttl {
text-align: left;
}
.linkbnr .col_txt {
}
.linkbnr {
}
.linkbnr {
}
@media (min-width:768px) {
	/* hover */
	.linkbnr .col3_in:hover {
	opacity: .5;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.linkbnr_box {
	padding: 15px;
	}
}

/*-- リスト --*/
.list01_li {
margin: 4px 0;
padding-left: 1em;
text-indent: -1em;
}
.list01_li + .list01_li {
}
.list02_li + .list01_li {
margin-top: 1em;
}
.list02 {
}
.list02_li {
position: relative;
padding-left: 28px;
}
.list02_li::before {
position: absolute;
content: "";
width: 7px;
height: 2px;
top: 12px;
left: 10px;
background-color: #222;
}
.list03 {
}
.list03_li {
position: relative;
padding: 12px 10px 12px 35px;
border-bottom: 1px dashed #aaa;
}
.list03_li::before {
position: absolute;
content: "";
width: 6px;
height: 6px;
top: 50%;
transform: translateY(-50%);
left: 12px;
background-color: #f5f5f5;
border: 2px solid #222;
border-radius: 50%;
}
.list04 {
}
.list04_ul {
counter-reset: listnum;
}
.list04_li::before {
counter-increment: listnum;
content: counter(listnum)".";
width: inherit !important;
height: inherit !important;
top: inherit;
transform: inherit;
font-weight: 500;
color: #222;
background-color: inherit;
border-width: 0;
}
.list04_li::marker {
}
@media (min-width:768px) {
	.list01,
	.list02,
	.list03,
	.list04 {
	margin-left: 10px;
	margin-right: 10px;
	}
	.list04_li {
	font-size: 1.8rem;
	}
}
@media (max-width:767px) {
	.list02_li {
	padding-left: 22px;
	}
	.list02_li + li {
	margin-top: 0.7em;
	}
	.list02_li::before {
	width: 5px;
	height: 2px;
	top: 10px;
	}
	.list03_li {
	padding: 10px 5px 10px 28px;
	}
	.list03_li::before {
	width: 6px;
	height: 6px;
	left: 10px;
	}
}

/*-- GoogleMap埋め込み --*/
.gmap {
}
.gmap iframe {
display: block;
width: 100%;
height: 600px;
border-width: 0 !important;
}
@media (max-width:767px) {
	.gmap iframe {
	height: 400px;
	}
}

/*-- リンクボタン --*/
.linkbtn {
font-weight: bold;
text-align: center;
}
.linkbtn a {
position: relative;
display: inline-block;
min-width: 250px;
margin-left: auto;
margin-right: auto;
padding: 15px 50px 15px 30px;
text-decoration: none !important;
letter-spacing: 1px;
color: #fff;
background-color: #444;
border: 2px solid #444;
/*box-shadow: 0 0 10px rgba(0,0,0,.2);*/
}
.linkbtn a::after {
position: absolute;
content: "";
width: 6px;
height: 6px;
top: 50%;
transform: translateY(-50%);
right: 25px;
margin-top: -4px;
border-style: solid;
border-color: #fff;
border-width: 2px 2px 0 0;
transform: rotate(45deg);
}
.linkbtn_list {
display: flex;
flex-wrap: wrap;
margin: 0 -10px -20px -10px;
}
.linkbtn_list li {
margin: 0 10px 20px 10px;
width: calc(50% - 20px);
}
.linkbtn_list_3col li {
width: calc(33.3333% - 20px);
}
.linkbtn_list_4col li {
width: calc(25% - 20px);
}
.linkbtn_list a {
display: flex;
align-items: center;
justify-content: center;
min-width: 100%;
text-align: left;
}
.linkbtn .linkbtn_list a {
min-width: 100%;
}
@media (max-width:1023px) {
	.linkbtn_list {
	margin: 0 -5px -10px -5px;
	}
	.linkbtn_list li {
	width: calc(50% - 10px) !important;
	margin: 0 5px 10px 5px;
	}
}
@media (min-width:768px) {
	/* hover */
	.linkbtn a:hover {
	color: #515151;
	background-color: #fff;
	transition: background-color .3s;
	}
	.linkbtn a:hover {
	/*color: #fff;*/
	}
	.linkbtn a:hover::after {
	right: 10px;
	border-color: #444;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.linkbtn a {
	min-width: 200px;
	padding: 10px 30px 10px 20px;
	}
	.linkbtn a::after {
	width: 4px;
	height: 4px;
	right: 15px;
	}
	.linkbtn_list {
	margin: 0 -3px -6px -3px;
	}
	.linkbtn_list li {
	width: calc(50% - 6px) !important;
	margin: 0 3px 6px 3px;
	}
	.linkbtn_list a {
	min-width: auto;
	}
}

/*-----------------------
 ブログ
-----------------------*/
.blog {
padding: 40px 30px 100px 30px;
background-color: #f1f1f1;
}
.blog_wrap {
display: flex;
align-items: flex-start;
max-width: 1120px;
margin: auto;
}
.blog_main_col {
width: calc(100% - 300px);
padding-right: 80px;
}
/*-- サイドメニュー --*/
.blog_side_col {
width: 300px;
padding-top: 60px;
}
.blog_side_col_in {
margin-bottom: 50px;
}
.blog_side_col_in:last-child {
margin-bottom: 0;
}
.blog_side_col_ttl {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
padding: 12px;
line-height: 1;
border: 1px solid #aaa;
}
.blog_side_col_ttl span:nth-of-type(1) {
}
.blog_side_col_ttl span:nth-of-type(2) {
font-family: "Bellefair", serif;
font-size: 1.4rem;
font-weight: normal;
}
.blog_side_col_list {
}
.blog_side_col_list li {
position: relative;
padding: 5px 8px;
font-size: 1.4rem;
letter-spacing: 0;
}
.blog_side_col_list li:last-of-type {
margin-bottom: 0;
}
.blog_side_col ul li dl {
}
.blog_side_col ul li dt {
}
.blog_side_col ul li dd {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
}
/*-- 共通 --*/
.blog_category {
display: flex;
flex-wrap: wrap;
flex-wrap: wrap;
justify-content: flex-end;
margin-right: -2px;
margin-bottom: 5px;
}
.blog_category li {
margin: 2px;
padding: 7px 8px;
font-size: 1.3rem;
text-align: center;
line-height: 1;
background-color: #fff;
border-radius: 2px;
}
.blog_date {
font-size: 1.5rem;
text-align: right;
line-height: 1;
letter-spacing: 1px;
}
/*-- アーカイブ --*/
.blog_archives {
}
.blog_list {
}
.blog_list_li {
position: relative;
height: 220px;
margin-bottom: 20px;
padding: 10px;
background-color: #fff;
}
.blog_list_li>a {
z-index: 1;
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.blog_list_box {
display: flex;
flex-direction: row-reverse;
}
.blog_list_box_in1 {
width: calc(100% - 220px);
padding: 20px;
}
.blog_list_ttl {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
margin-bottom: 10px;
font-family: "Noto Serif JP", serif;
font-size: 1.8rem;
letter-spacing: 1px;
line-height: 1.4;
}
.blog_date {
margin-bottom: 10px;
font-family: "Bellefair", serif;
font-size: 1.5rem;
letter-spacing: .5px;
line-height: 1;
}
.blog_list_txt {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 5;
text-overflow: ellipsis;
letter-spacing: 0;
font-size: 1.4rem;
line-height: 1.4;
}
.blog_list_li .blog_category {
position: absolute;
bottom: 3px;
left: 3px;
}
.blog_list_li .blog_category li {
font-size: 1.2rem;
letter-spacing: 0;
background-color: rgba(255,255,255,.9);
}
.blog_list_box_in2 {
width: 220px;
height: 200px;
}
.blog_list_box_in2 img {
object-fit: cover;
width: 100%;
height: 100%;
}
/*-- ページャー --*/
.wp-pagenavi {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin-top: 50px;
font-family: "Bellefair", serif;
line-height: 1;
}
.wp-pagenavi .pages {
margin-right: 10px;
}
.wp-pagenavi .page,
.wp-pagenavi .current {
width: 30px;
height: 30px;
margin: 2px;
display: flex;
align-items: center;
justify-content: center;
background-color: #fff;
border-radius: 100%;
}
.wp-pagenavi .current {
font-weight: bold;
color: #fff;
background-color: #515151;
border: 1px solid #515151;
}
.wp-pagenavi .nextpostslink {
margin-left: 10px;
font-size: 2.0rem;
}
/*-- シングルページ --*/
.blog_single_box {
margin-bottom: 3em;
}
.blog_single .blog_date {
margin-bottom: 10px;
font-size: 1.7rem;
}
.blog_single_title {
margin: 0 auto 30px;
font-family: "Noto Serif JP", serif;
font-size: 2.5rem;
}
.post_in {
margin-top: 30px;
line-height: 2;
}
.post_in h1 {
margin-top: 0;
margin-bottom: 1em;
padding: 10px 15px;
font-size: 120%;
border: 1px solid #aaa;
}
.post_in h2 {
margin-top: 0;
margin-bottom: 1em;
padding-bottom: 10px;
font-size: 115%;
border-bottom: 1px solid #aaa;
}
.post_in h3 {
width: fit-content;
margin-top: 0;
margin-bottom: 1em;
padding-bottom: 8px;
font-size: 110%;
border-bottom: 1px solid #aaa;
}
.post_in h4 {
margin-bottom: .5em;
}
.post_in h5 {
margin-bottom: .5em;
}
.post_in h6 {
margin-bottom: .5em;
}
.post_in img {
width: 100%;
max-width: 800px;
margin: 2em auto 2em;
}
.post_in p a {
text-decoration: underline;
}
.post_in ul,
.post_in ol {
margin-top: 1em;
margin-bottom: 1em;
margin-left: 1.5em;
}
.post_in ul {
list-style: disc;
}
.post_in ol {
list-style: decimal;
}
.post_dl_btn {
}
.post_dl_btn a {
}
/*-- singleページャー --*/
.single_pager {
z-index: 1;
display: flex;
display: box;
align-items: center;
position: relative;
letter-spacing: 0;
}
.single_pager li {
position: relative;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
width: 33.3333%;
}
.single_pager_prev,
.single_pager_next {
width: calc((100% - 150px)/2);
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
}
.single_pager li a {
padding: 0 15px;
}
.single_pager_prev a,
.single_pager_next a {
display: block;
width: fit-content;
}
.single_pager_next a {
margin-left: auto;
}
.single_pager_prev::before,
.single_pager_next::before {
position: absolute;
content: "";
width: 5px;
height: 5px;
top: 9px;
transform: rotate(45deg);
}
.single_pager_prev::before {
left: 1px;
border-bottom: 2px solid #515151;
border-left: 2px solid #515151;
}
.single_pager_next::before {
right: 1px;
border-top: 2px solid #515151;
border-right: 2px solid #515151;
}
.single_pager_return {
width: 150px;
text-align: center;
}
@media (max-width:1680px) {
	.blog_wrap {
	max-width: calc(100% - 270px);
	margin-left: 270px;
	}
	.blog_main_col {
	width: calc(100% - 250px);
	padding-right: 40px;
	}
	.blog_side_col {
	width: 250px;
	}
}
@media (max-width:1199px) {
	.blog {
	position: relative;
	padding-top: 120px;
	}
	.blog::before {
	position: absolute;
	content: "";
	width: 100vw;
	height: 105px;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-color: #9b9b9b;
	}
	.blog_wrap {
	max-width: 964px;
	margin-left: auto;
	}
	.blog_main_col {
	padding-right: 60px;
	}
	.blog_list_li {
	}
	.blog_side_col {
	}
}
@media (max-width:1023px) {
	.blog {
	}
	.blog_wrap {
	display: block;
	max-width: 660px;
	}
	.blog_side_col {
	width: 100%;
	padding-top: 0;
	}
	.blog_side_col_in {
	margin-bottom: 40px;
	}
	.blog_side_col_ttl {
	margin-bottom: 10px;
	}
	.blog_main_col {
	width: 100%;
	margin: 0 auto 60px;
	padding-right: 0;
	}
	.blog_single_title {
	font-size: 2.2rem;
	}
	.blog_list {
	}
	.blog_list_li {
	margin-bottom: 10px;
	}
	.wp-pagenavi {
	margin-top: 30px;
	}
	.blog_category li {
	padding: 4px 5px;
	}
	.post_in {
	line-height: inherit;
	}
}
@media (min-width:768px) {
	/*-- hover */
	.blog_side_col_list li a:hover {
	opacity: .5;
	transition: .5s;
	}
	.blog_list_li:hover {
	opacity: .6;
	transition: .5s;
	}
	.wp-pagenavi .page:hover {
	font-weight: bold;
	color: #fff;
	background-color: #515151;
	transition: .5s;
	}
	.single_pager li:hover {
	opacity: .5;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.blog {
	padding: 90px 15px 50px 15px;
	}
	.blog::before {
	height: 75px;
	}
	.blog_wrap {
	max-width: 330px;
	}
	.blog_main_col {
	margin-bottom: 50px;
	}
	.blog_side_col_in {
	margin-bottom: 30px;
	}
	.blog_side_col_ttl {
	padding: 10px 15px;
	}
	.blog_side_col_list li {
	padding: 5px;
	}
	.blog_date {
	margin-bottom: 10px;
	}
	.blog_list {
	}
	.blog_list_li {
	height: 120px;
	padding: 8px;
	border-width: 1px;
	}
	.blog_list_box {
	}
	.blog_list_box_in1 {
	width: calc(100% - 100px);
	padding: 0 0 0 10px;
	}
	.blog_list_box_in2 {
	width: 100px;
	height: 100px;
	}
	.blog_list_ttl {
	margin-bottom: 5px;
	font-size: 1.4rem;
	}
	.blog_date {
	margin-bottom: 5px;
	font-size: 1.2rem;
	}
	.blog_list_txt {
	-webkit-line-clamp: 4;
	font-size: 1.2rem;
	line-height: 1.3;
	}
	.blog_list_li .blog_category {
	display: block;
	bottom: 10px;
	left: 10px;
	}
	.blog_list_li .blog_category li {
	}
	.blog_single_box {
	padding: 0 5px;
	}
	.blog_single_title {
	font-size: 2.0rem;
	}
	.post_in {
	}
	.single_pager {
	display: block;
	}
	.blog_single_title {
	margin-bottom: 1em;
	}
	.single_pager {
	display: block;
	}
	.single_pager li {
	width: 100%;
	}
	.single_pager_prev,
	.single_pager_return {
	margin-bottom: 8px;
	}
	.single_pager li a {
	padding: 0 10px;
	font-size: 1.5rem;
	}
	.single_pager_prev::before,
	.single_pager_next::before {
	width: 4px;
	height: 4px;
	top: 8px;
	border-width: 1px !important;
	}
}
