/*
Theme Name: 建築昌英 ver. 0.1
Version: 0.1
Author: COMLAB
*/

/*------------------------------------*\
    normalize
\*------------------------------------*/
/*! normalize.css v4.0.0 | MIT License | github.com/necolas/normalize.css */
progress, sub, sup {
	vertical-align: baseline
}

button, hr, input, select {
	overflow: visible
}

[type=checkbox], [type=radio], legend {
	box-sizing: border-box;
	padding: 0
}

html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}

body {
	margin: 0
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
	display: block
}

audio, canvas, progress, video {
	display: inline-block
}

audio:not([controls]) {
	display: none;
	height: 0
}

[hidden], template {
	display: none
}

a {
	background-color: transparent
}

a:active, a:hover {
	outline-width: 0
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted
}

b, strong {
	font-weight: bolder
}

dfn {
	font-style: italic
}

h1 {
	font-size: 2em;
	margin: .67em 0
}

mark {
	background-color: #ff0;
	color: #000
}

small {
	font-size: 80%
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative
}

sub {
	bottom: -.25em
}

sup {
	top: -.5em
}

img {
	border-style: none
}

svg:not(:root) {
	overflow: hidden
}

code, kbd, pre, samp {
	font-family: monospace, monospace;
	font-size: 1em
}

figure {
	margin: 1em 40px
}

hr {
	box-sizing: content-box;
	height: 0
}

button, input, select, textarea {
	font: inherit;
	margin: 0
}

optgroup {
	font-weight: 700
}

button, select {
	text-transform: none
}

[type=button], [type=reset], [type=submit], button {
	cursor: pointer
}

[disabled] {
	cursor: default
}

[type=reset], [type=submit], button, html [type=button] {
	-webkit-appearance: button
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0
}

button:-moz-focusring, input:-moz-focusring {
	outline: ButtonText dotted 1px
}

fieldset {
	border: 1px solid silver;
	margin: 0 2px;
	padding: .35em .625em .75em
}

legend {
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal
}

textarea {
	overflow: auto
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
	height: auto
}

[type=search] {
	-webkit-appearance: textfield
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}


/*------------------------------------*\
SLIDER PRO v1.3
\*------------------------------------*/
/* Core */
.slider-pro {
	position: relative;
	margin: 0 auto;
	box-sizing: content-box;
	overflow: hidden;
}

.sp-slides-container {
	position: relative
}

.sp-mask {
	position: relative;
	overflow: hidden
}

.sp-slides {
	position: relative;
	-webkit-backface-visibility: hidden;
	-webkit-perspective: 1000
}

.sp-slide {
	position: absolute
}

.sp-image-container {
	overflow: hidden
}

.sp-image {
	position: relative;
	display: block;
	border: none
}

.sp-no-js {
	overflow: hidden;
	max-width: 100%
}

/* Touch Swipe */
.sp-grab {
	cursor: url(img/slider/openhand.cur), move
}

.sp-grabbing {
	cursor: url(img/slider/closedhand.cur), move
}

.sp-selectable {
	cursor: default
}

/* CSS for preventing styling issues in WordPress */
.slider-pro img.sp-image, .slider-pro img.sp-thumbnail {
	max-width: none;
	max-height: none;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	-mox-box-shadow: none !important;
	box-shadow: none !important;
	transition: none;
	-moz-transition: none;
	-webkit-transition: none;
	-o-transition: none
}




/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* html element 62.5% font-size for REM use */
html {
	font-size: 62.5%;
	height: 100%;
}

body {
	height: 100%;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
	font-size: 1.4rem;
	color: #222;
	background: #fff;
	line-height: 1.9;
	letter-spacing: 1.4px;

	padding: 0;
	margin: 0;

	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}

@media only screen and (max-width:768px) {
	body.open {
		overflow: hidden;
	}
}


/* clear */
.clear:before,
.clear:after {
	content: ' ';
	display: table;
}

.clear:after {
	clear: both;
}

.clear {
	*zoom: 1;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

a {
	color: #242424;
	text-decoration: none;
}

a:hover {
	color: #444;
}

a:focus {
	outline: 0;
}

a:hover,
a:active {
	outline: 0;
}

input:focus {
	outline: 0;
	border: 1px solid #04A4CC;
}

/*------------------------------------*\
    FONT
\*------------------------------------*/
.Fjalla {
	font-family: 'Fjalla One', sans-serif;
}

.Roboto {
	font-family: 'Roboto Slab', serif;
}

/*------------------------------------*\
    COMMON
\*------------------------------------*/
.link-box.left {
	text-align: left;
}

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

.link-box.center {
	text-align: center;
}

.link-box .view-more {
	display: inline-block;
	position: relative;
	font-size: 1.3rem;
	padding: 0;
}

.link-box.white .view-more:after {
	content: '';
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTkgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzI0MjQyNDt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIxOC43LDUuOCAwLjMsNS44IDAuMywzLjggMTMuOSwzLjggMTEuNiwxLjUgMTMsMC4xICIvPg0KPC9zdmc+DQo=);
	width: 19px;
	height: 6px;
	display: inline-block;
	margin-left: 4px;
	-webkit-transition: all 300ms;
	transition: all 300ms;
}

.link-box.white .view-more:hover:after {
	transform: translateX(10px);
}

.link-box.black .view-more {
	background: #242424;
	font-size: 1.5rem;
	color: #fff;
	line-height: 1;
	padding: 10px 40px 9px;
	-webkit-transition: all 150ms;
	transition: all 150ms;
}

.link-box.black .view-more:hover {
	background: #fff;
	color: #242424;
}

.link-box.black .view-more:after {
	content: '';
	background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjIgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjIgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I0ZGRkZGRjt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMS42LDUuOSAwLjQsNS45IDAuNCw0LjkgMTkuMiw0LjkgMTUsMC44IDE1LjgsMC4xICIvPg0KPC9zdmc+DQo=');
	width: 26px;
	height: 7px;
	display: inline-block;
	position: absolute;
	margin-left: 4px;
	bottom: 11px;
}

.link-box.black .view-more:hover:after {
	background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjIgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjIgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzI0MjQyNDt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMS42LDUuOSAwLjQsNS45IDAuNCw0LjkgMTkuMiw0LjkgMTUsMC44IDE1LjgsMC4xICIvPg0KPC9zdmc+DQo=');

}


.overlay:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	width: 100%;
	height: 100%;
	opacity: 0;

	-webkit-transition: opacity 300ms;
	transition: opacity 300ms;
}


/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
#main {
	position: relative;
	padding-bottom: 160px;
}

.home #main {
	padding-bottom: 90px;
}

.single-works #main {
	padding-bottom: 0;
}

/* wrapper */
.wrapper {
	width: 100%;
	margin: 0 auto;
	padding: 80px 0 0;
	position: relative;
	overflow: hidden;

	-webkit-transition: padding 300ms;
	transition: padding 300ms;
}

.home .wrapper {
	padding: 0;
}

@media only screen and (max-width:768px) {
	#main {
		padding-bottom: 120px;
	}

	.wrapper {
		padding: 60px 0 0;
	}

	.home .wrapper {
		padding: 0;
	}
}

/*------------------------------------*\
    OPENING
\*------------------------------------*/
.home section {
	opacity: 0;
	-webkit-transition: opacity 300ms;
	transition: opacity 300ms;
}

.home.start section:not(#slider) {
	opacity: 1;
}

.home #main.start #slider {
	opacity: 1;
}

#opening {
	position: fixed;
	width: 100vw;
	height: 100vh;
	background: #fff;
	z-index: 99999;
	display: flex;
	justify-content: center;
	align-items: center;
}

#opening .logo {
	width: 20vw;
	height: auto;
	display: none;
}

#progress {
	width: 100vw;
	height: 10px;
	position: fixed;
	z-index: 999999;
	top: 50%;
	transform: translateY(-50%);
}

#progressBar {
	width: 0;
	height: 5px;
	background: #ebebeb;
}

/*------------------------------------*\
    HEADER
\*------------------------------------*/
#header {
	position: fixed;
	top: 0;

	height: 80px;
	width: 100vw;
	z-index: 99;

	background: rgba(255, 255, 255, 0.95);
}

.home #header {
	opacity: 0;

	-webkit-transition: height 300ms, opacity 600ms;
	transition: height 300ms, opacity 600ms;
}

.home #header.show {
	opacity: 1;
}

#header .logo {
	width: 128px;
	z-index: 1;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 50px;
}

#header .logo a {
	display: block;
}

#header #nav .hide-pc {
	display: none;
}

#header #nav.nav-box {
	font-size: 1.6rem;
	position: absolute;
	right: 60px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

#header #nav.nav-box ul {
	margin: 0;
	padding: 0;
}

#header #nav.nav-box ul li {
	float: left;
	list-style: none;
	padding-right: 38px;
	position: relative;
}

#header #nav.nav-box ul li .menu-item-jp {
	font-size: 1.6rem;
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 50%;
	width: 100%;
	transform: translateX(-50%);
	right: 0;
	top: 0;
	bottom: 0;
	letter-spacing: 0.025em;
	opacity: 0;
	white-space: nowrap;
	transition: all 200ms ease-out;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

@media screen and (min-width:769px) and (max-width:960px) {
	#header #nav.nav-box ul li {
		padding-right: 20px;
	}

	#header #nav.nav-box ul li .menu-item-jp {
		font-size: 1.4rem;
	}
}

#header #nav.nav-box ul li:last-child {
	padding-right: 0;
}

#header #nav.nav-box ul li a {
	display: inline-block;
	font-size: 1.7rem;
	position: relative;
}

#header #nav.nav-box a[target]:after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 100%;
	transform: translateX(80%);
	margin: auto;
	background: url(./img/common/icon-tab_gr.svg)no-repeat center / contain;
	transition: transform 0.25s;
}

#header #nav.nav-box a[target]:hover:after {
	width: 12px;
	transform: translateX(150%);
}

@media screen and (min-width:769px) and (max-width:960px) {
	#header #nav.nav-box ul li a {
		font-size: 1.5rem;
	}
}

#header #nav.nav-box ul li a:hover:after {
	width: 100%;
}

#header #nav.nav-box ul li a:hover .menu-item-en {
	opacity: 0;
	transition: opacity 200ms ease-out;
}

#header #nav.nav-box ul li a:hover .menu-item-jp {
	opacity: 1;
	transition: opacity 200ms ease-out;
}

@media only screen and (min-width:769px) {
	#header #nav.nav-box {
		display: block !important;
	}

	#hamburger {
		display: none;
	}
}

@media only screen and (max-width:768px) {
	#header {
		height: 60px;
		background: none;
	}

	#header .sp-inner {
		display: block;
		background: rgba(255, 255, 255, 0.95);
		width: 100vw;
		height: 100%;
		z-index: 1;
	}

	#header #nav .hide-pc {
		display: block;
	}

	#header .logo {
		width: 90px;
		left: 5vw;
	}

	#header #nav.nav-box ul li .menu-item-jp {
		position: static;
		opacity: 1;
		background-color: transparent;
		margin-left: 1em;
		transform: none;
		width: auto;
	}

	#header #nav.nav-box ul li a:hover .menu-item-en {
		opacity: 1;
		transition: opacity 200ms ease-out;
	}

	#header #nav.nav-box a {
		text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	}

	#header #nav.nav-box {
		display: none;
	}

	#header #nav.nav-box {
		position: fixed;
		right: 0;
		top: 0;
		-webkit-transform: translateY(0%);
		transform: translateY(0%);
		height: 100vh;
		width: 100vw;
		padding-top: calc(60px + 5vh);
		padding-bottom: 5vh;
		background: rgba(0, 0, 0, 0.7);
		z-index: -1;
		text-align: center;
		overflow-y: auto;
		display: none;
	}

	#header #nav.nav-box ul {
		padding: 2vh 5vw 5vh;
		margin-left: auto;
		margin-right: auto;
	}

	#header #nav.nav-box ul li {
		float: none;
		font-size: 1.7rem;
		padding-right: 0;
	}

	#header #nav.nav-box ul li a {
		color: #fff;
		margin: 2vh;
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}

	#header #nav.nav-box ul li a[target]:after {
		display: none;
	}

	#header #nav.nav-box ul li a[target] .menu-item-jp {
		position: relative;
		left: auto;
	}

	#header #nav.nav-box ul li a[target] .menu-item-jp:after {
		content: "";
		display: block;
		width: 12px;
		height: 12px;
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		transform: translateX(150%);
		background: url(./img/common/icon-tab_wt.svg)no-repeat center / contain;
	}

	#header .tel-box a {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		color: #fff;
		border: 1px solid #fff;
		border-radius: 3px;
		padding: 3px 20px;
		font-size: 2rem;
	}

	#header .tel-box .phone-svg {
		width: 19px;
		height: 19px;
		margin-right: 10px;
	}


	#header .sns-box {
		padding-top: 4vh;
		position: relative;
		display: flex;
		justify-content: center;
	}

	#header .sns-box a {
		width: 43px;
		height: 43px;
	}

	#header .sns-box a:not(:first-child) {
		margin-left: 15px;
	}
}


/*-- HAMBURGER --*/
body.start .home #hamburger {
	opacity: 1;
}

#hamburger .home {
	opacity: 0;

	-webkit-transition: opacity 600ms;
	transition: opacity 600ms;
}

#hamburger {
	position: fixed;
	right: 0;
	top: 0;

	width: 60px;
	height: 60px;

	z-index: 9999;
	cursor: pointer;
}

#hamburger span {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 32px;
	height: 2px;
	background: #242424;

	-webkit-transition: background 300ms;
	transition: background 300ms;
}

#hamburger span:before,
#hamburger span:after {
	content: '';
	width: 100%;
	height: 100%;
	background: #242424;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

#hamburger span:before {
	top: -10px;
	-webkit-transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

#hamburger span:after {
	top: 10px;
	-webkit-transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: background 300ms, top 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

#hamburger.open span {
	background: none;
}

#hamburger.open span:after {
	top: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
	-webkit-transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
}

#hamburger.open span:before {
	top: 50%;
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
	-webkit-transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 150ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 300ms 150ms cubic-bezier(0.23, 1, 0.32, 1);
}



/*------------------------------------*\
    TOP
\*------------------------------------*/
/*-- COMMON --*/
.home h2.title {
	font-size: 4.2rem;
	font-weight: normal;
	line-height: 1;
	margin: 0 0 43px;
	letter-spacing: 3px;
}

@media only screen and (max-width:768px) {
	.home h2.title {
		margin: 0 0 60px;
	}
}

/*-- SLIDER --*/
.home #slider {
	width: 100vw;
	margin-bottom: 30px;

	background: #ededed;
	position: relative;
}

.home #slider .copy-box {
	position: absolute;
	width: 100vw;
	height: 100%;
	z-index: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
	-webkit-transition: opacity 600ms;
	transition: opacity 600ms;
}

.home #slider .copy-box.show {
	opacity: 1;
}

.home #slider .copy {
	position: relative;
	font-size: 2.4rem;
	margin: 0;
	color: #fff;
	font-weight: bold;
	line-height: 1.3;
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
}

.home #slider .copy span {
	display: inline-block;
	width: 130px;
	height: auto;
	position: absolute;
	bottom: -50px;
	right: -10px;
	z-index: -1;
}

@media only screen and (min-width:769px) {
	.home #slider.sliderPC {
		display: block;
		height: 695px;
	}

	.home #slider.sliderSP {
		display: none;
	}

	.home #slider .copy-box {
		padding-top: 80px;
	}
}

@media only screen and (max-width:768px) {
	.home #slider.sliderPC {
		display: none;
	}

	.home #slider.sliderSP {
		display: block;
		height: 560px;
	}

	.home #slider .copy-box {
		padding-top: 60px;
	}
}

/*-- ABOUT US --*/
.home #aboutus {
	width: 100vw;
	margin-bottom: 105px;
	display: flex;
	justify-content: space-between;
}

.home #aboutus .text-box {
	width: 50%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	background: #ebebeb;
}

.home #aboutus .text-box .inner {
	width: 395px;
	margin-right: 30px;
}

.home #aboutus .text-box .inner h2.after-line {
	font-size: 2rem;
	line-height: 1;
	position: relative;
	padding-bottom: 20px;
	margin: 0;
	margin-bottom: 20px;
}

.home #aboutus .text-box .inner h2.after-line:after {
	content: '';
	width: 20px;
	height: 2px;
	background: #242424;
	position: absolute;
	left: 0;
	bottom: 0;
}

.home #aboutus .text-box .inner .link-box {
	margin: 0;
	text-align: right;
	padding-right: 12px;
}

.home #aboutus .img-box {
	width: calc(50vw - 10px);
}

.home #aboutus .img-box .img-big,
.home #aboutus .img-box .img-col {
	background-position: 50% 50%;
	background-size: cover;
}

.home #aboutus .img-box .img-big {
	background-image: url(img/top/about-01.jpg);
	height: 300px;
	margin-bottom: 10px;
}

.home #aboutus .img-box .row {
	display: flex;
	justify-content: space-between;
}

.home #aboutus .img-box .row .img-col:nth-of-type(1) {
	background-image: url(img/top/about-02.jpg);
	width: 60%;
}

.home #aboutus .img-box .row .img-col:nth-of-type(2) {
	background-image: url(img/top/about-03.jpg);
	width: calc(40% - 10px);
}

.home #aboutus .img-box .row .img-col:nth-of-type(1),
.home #aboutus .img-box .row .img-col:nth-of-type(2) {
	height: 220px;
}

@media only screen and (max-width:768px) {
	.home #aboutus {
		flex-direction: column-reverse;
		margin-bottom: 75px;
	}

	.home #aboutus .text-box,
	.home #aboutus .img-box {
		width: 100vw;
	}

	.home #aboutus .text-box {
		display: block;
		justify-content: inherit;
		align-items: inherit;
		background: #ebebeb;
	}

	.home #aboutus .img-box {
		margin-bottom: 10px;
	}

	.home #aboutus .text-box .inner {
		width: 80%;
		padding: 72px 0;
		margin-right: auto;
		margin-left: auto;
	}

	.home #aboutus .text-box .inner .text {
		margin-bottom: 25px;
	}

	.home #aboutus .text-box .inner .link-box {
		padding-right: 5px;
	}

	.home #aboutus .text-box .inner h2.after-line {
		line-height: 1.4;
	}
}


/*-- NEWS --*/
.home #news {
	text-align: center;
	max-width: 935px;
	width: 90%;
	padding: 53px 0 10px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 105px;
	border-top: 1px solid #242424;
	border-bottom: 1px solid #242424;
}

.home #news .news-box {
	text-align: left;
	display: inline-block;
	margin-bottom: 15px;
}

.home #news .news-box a {
	display: block;
	position: relative;
	padding-left: 85px;
	margin-bottom: 10px;
}

.home #news .news-box a.new {
	padding-left: 0px;
}

.home #news .news-box a.new .top-date:before {
	content: 'NEW';
	padding: 0;
	margin-right: 10px;
	text-align: center;
	width: 75px;
	display: inline-block;
	color: #fff;
	background: #242424;
	font-family: 'Roboto Slab', serif;
	font-size: 1.1rem;
}

.home #news .news-box p,
.home #news .news-box h3 {
	display: inline-block;
	margin: 0;
	font-weight: normal;
	font-size: 1.4rem;
}

.home #news .news-box p {
	margin-right: 5px;
}

@media only screen and (min-width:769px) {
	.home #news .news-box a .arrow {
		display: none;
	}
}

@media only screen and (max-width:768px) {
	.home #news .news-box {
		border-top: 1px dashed #b3b3b3;
		margin-bottom: 10vw;
		display: block;
	}

	.home #news .news-box a {
		border-bottom: 1px dashed #b3b3b3;
		padding: 5vw;
		margin-bottom: 0;
	}

	.home #news .news-box a.new {
		padding-left: 5vw;
	}

	.home #news .news-box a .top-date,
	.home #news .news-box a.new .top-date {
		display: block;
	}

	.home #news .news-box a.new .top-date:before {
		content: none;
	}

	.home #news .news-box a.new .top-date:after {
		content: 'NEW';
		padding: 0;
		margin-left: 10px;
		text-align: center;
		width: 75px;
		display: inline-block;
		color: #fff;
		background: #242424;
		font-family: 'Roboto Slab', serif;
		font-size: 1.1rem;
	}

	.home #news .news-box a .arrow {
		display: block;
		width: 10px;
		height: auto;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}

}


/*-- WORKS --*/
.home #works {
	margin-bottom: 160px;
}

.home #works h2 {
	text-align: center;
}

.home #works .works-wrapper {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 935px;
	max-width: 90%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 54px;
}

.home #works .works-item {
	display: block;
	width: calc(100% / 3 - 60px / 3);
	margin-bottom: 62px;
}

.home #works .works-item:not(:nth-of-type(-n + 3)) {
	display: block;

}

.home #works .works-item:hover .overlay:after {
	opacity: 0.3;
}

.home #works .img-box {
	width: 100%;
	height: 0;
	padding-top: 67%;
	position: relative;
}

.home #works .works-item-store_thumbnail {
	position: relative;
	width: 100%;
	height: 18.5vw;
	max-height: 195.41px;
	padding-top: 21%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
}

.home #works .works-item-store_name {
	font-size: 18px;
	letter-spacing: 0.025em;
	line-height: 1.6666;
	font-weight: 700;
	width: 93%;
	padding-bottom: 11px;
	text-align: center;
	border-bottom: 1px solid #242424;
}

.home #works .works-item-store_branch {
	font-size: 16px;
	letter-spacing: 0.025em;
	line-height: 1.875;
	text-align: center;
	margin-top: 7px;
}

.home #works .img-box img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	vertical-align: top;
}

.home #works h3.title {
	color: #242424;
	margin: 0;
	margin-top: 10px;
	font-size: 1.8rem;
	font-weight: normal;
	z-index: 1;
	letter-spacing: 0.05em;
}

.home #works h3.title span:first-letter {
	color: #242424;
}

.home #works .link-box {
	max-width: 935px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

@media only screen and (max-width:768px) {
	.home #works {
		margin-bottom: 120px;
	}

	.home #works h3.title {
		left: -2.8rem;
		font-size: 1.7rem;
	}

	.home #works .img-box {
		height: 225px;
	}

	.home #works .works-wrapper {
		margin-bottom: 10vw;
	}

	.home #works .works-item {
		width: 100%;
		margin-bottom: 10vw;
	}

	.home #works .works-item-store_thumbnail {
		height: 60.3vw;
		max-height: 100%;
		padding-top: 0;
		align-items: center;
		justify-content: center;
	}

	.home #works .works-item-store_name {
		font-size: 16px;
	}

}


/*-- PROJECTS --*/
.home #projects {
	text-align: center;
	max-width: 830px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 160px;
}

.home #projects p.subtitle {
	margin: 0 0 30px;
}

.home #projects .projects-box {
	position: relative;
	background: #000;
}

.home #projects .projects-box a.overlay:hover:after {
	opacity: 0.3;
}

.home #projects .projects-box .link-box {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.home #projects .projects-box .link-box .view-more {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

@media only screen and (max-width:768px) {
	.home #projects {
		margin-bottom: 120px;
	}

	.home #projects p.subtitle {
		margin: 0 0 40px;
		line-height: 1.4;
	}
}

/*-- BLOG --*/
.home #blog {
	max-width: 935px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 160px;
}

.home #blog h2 {
	text-align: center;
}

.home #blog #post-box {
	max-width: 830px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	display: flex;
	justify-content: flex-start;
	line-height: 1.4;
}

.home #blog #post-box .post-item {
	width: calc(20% - 7px);
	margin-right: 7px;
}

.home #blog #post-box .post-item:last-of-type {
	margin-right: 0%;
}

.home #blog #post-box .post-item a {
	display: block;
}

.home #blog #post-box .post-item a:hover .overlay:after {
	opacity: 0.3;
}

.home #blog #post-box .post-item:last-child {
	display: none;
}

.home #blog #post-box .post-item img {
	width: 100%;
	height: auto;
	-webkit-transition: opacity 300ms;
	transition: opacity 300ms;
	aspect-ratio: 1/1;
	object-fit: cover;
}

.home #blog #post-box .post-item .img-box {
	position: relative;
}

.home #blog #post-box .post-item .meta-box {
	display: none;
}

.home #blog #post-box .post-item .date {
	color: #aeaeae;
	font-size: 1.2rem;
	margin: 10px 0;
	display: block;
	font-weight: bold;
}

.home #blog #post-box .post-item h3.title {
	font-size: 1.4rem;
	font-weight: normal;
	margin: 0;
}

@media only screen and (max-width:768px) {
	.home #blog {
		margin-bottom: 120px;
	}

	.home #blog #post-box {
		margin-left: 5vw;
		margin-right: 5vw;
		margin-bottom: 0;
		flex-wrap: wrap;
	}

	.home #blog #post-box .post-item {
		width: calc(50% - 5px);
		margin-right: 10px;
		padding-bottom: 10vw;
	}

	.home #blog #post-box .post-item:nth-of-type(even) {
		margin-right: 0px;
	}

	.home #blog #post-box .post-item:last-child {
		display: block;
		margin-right: none;
	}

	.home #blog #post-box .post-item .date {
		margin: 10px 0 5px;
	}
}


/*-- ACCESS --*/
.home #access {}

.home #access h2 {
	text-align: center;
}

.home #access .map-info {
	margin-top: 20px;
	text-align: center;
}

.home #access .map-info p {
	margin: 0;
}


/*------------------------------------*\
    PAGES::COMMON
\*------------------------------------*/
#hero {
	position: relative;
	text-align: center;
	height: 500px;
	margin-bottom: 60px;
	background-position: 50% 50%;
	background-size: cover;
}

#hero h1 {
	font-size: 7.4rem;
	font-weight: normal;
	margin: 0;
	line-height: 1;
	letter-spacing: 3px;
	margin-right: -3px;
}

#hero p {
	font-size: 1.6rem;
	margin: 10px 0 0;
	font-weight: bold;
	line-height: 1;
}

#hero .float-box {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	color: #fff;
	text-align: center;
	width: 100%;
	text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.2);
}

@media only screen and (max-width:768px) {
	#hero {
		height: 420px;
	}

	#hero h1 {
		font-size: 6.4rem;
	}

	#hero p {
		margin: 5px 0 0;
	}
}


#category-menu {}

.archive #archives #category-menu {
	padding: 0 0 30px;
}

.single #archives #category-menu {
	padding: 60px 0 30px;
	border-bottom: 1px solid #242424;
}

#blog #category-menu {
	padding: 0 0 30px;
	z-index: 1;
	position: relative;
}

#category-menu .inner {
	max-width: 830px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}

#category-menu p.cat-title {
	margin: 0;
	font-size: 2rem;
}

#category-menu p.cat-title.martop {
	margin: 20px 0 0;
}

#category-menu ul {
	margin: 0;
	padding: 0;
}

.mixitup #category-menu ul li {
	cursor: pointer;
}

.mixitup #category-menu ul li.current-cat {
	color: #242424;
}

#category-menu ul li {
	float: left;
	list-style: none;
	font-size: 1.6rem;
}

#category-menu ul li,
#category-menu ul li a {
	color: #aeaeae;
}

#category-menu ul li.current-cat a {
	color: #242424;
}

#category-menu ul.cat-nav li:last-child:after {
	content: none;
}

#category-menu ul.archive-list li {
	padding: 0 10px;
}

#category-menu ul.archive-list li.archive-item-all {
	padding: 0;
}

#category-menu ul.archive-list li.year-all {
	display: none;
}

#category-menu ul.archive-list li.year {
	padding: 0;
	padding-right: 40px;
	margin-right: 10px;
	position: relative;
}

#category-menu ul.archive-list li.year:after {
	content: '';
	width: 30px;
	;
	height: 1px;
	background: #aeaeae;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}



@media only screen and (min-width:769px) {

	#category-menu ul,
	#category-menu .list-box {
		display: block !important;
	}

	#category-menu ul.archive-list .child-box {
		display: inline !important;
	}

	#category-menu ul li a {
		position: relative;
	}

	#category-menu ul li a:after {
		content: '';
		height: 2px;
		width: 0%;
		background: #8e8e8e;
		position: absolute;
		right: 0;
		bottom: 0;
		-webkit-transition: width 200ms;
		transition: width 200ms;
	}

	#category-menu ul li a:hover:after {
		width: 100%;
	}

}

@media only screen and (max-width:768px) {
	#category-menu .inner {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#category-menu .menu-box {
		width: calc(50% - 10px);
		display: inline-block;
		position: relative;
		z-index: 1;
	}

	#category-menu .menu-box span {
		display: block;
		width: 100%;
		height: 40px;
		position: absolute;
		top: 0;
		left: 0;
		cursor: pointer;
	}

	#category-menu p.cat-title {
		background: #242424;
		color: #fff;
		padding-left: 10px;
		position: relative;
		height: 40px;
		line-height: 40px;
		font-size: 1.5rem;
	}

	#category-menu p.cat-title:after {
		content: '';
		width: 12px;
		height: 12px;
		display: inline-block;
		border-left: 2px solid #b2b2b2;
		border-bottom: 2px solid #b2b2b2;
		position: absolute;
		top: 50%;
		right: 10px;
		transform: rotate(-45deg) scale(1, 1) translateY(-50%);
		transform-origin: left;
	}

	#category-menu p.cat-title.martop {
		margin: 0;
	}

	#category-menu p.cat-title.active:after {
		right: 35px;
		transform: rotate(-45deg) scale(-1, -1) translateY(-50%);
		transform-origin: right;
	}

	#category-menu .list-box {
		display: none;
		width: 100%;
		position: absolute;
		top: 40px;
		left: 0;
		background: #ebebeb;
	}

	#category-menu ul.archive-list {
		display: block;
		position: relative;
	}

	#category-menu ul.archive-list .child-box {
		display: none;
	}

	#category-menu ul.archive-list .child-box li {
		padding: 0;
	}

	#category-menu ul.archive-list .child-box li a {
		padding-left: 15px;
	}

	#category-menu ul.archive-list li.year-all {
		display: block;
	}

	#category-menu ul.archive-list li.year {
		padding: 0;
		padding-right: 0;
		margin-right: 0;
		position: relative;
	}

	#category-menu ul.archive-list li.year:after {
		content: none;
	}

	#category-menu ul.archive-list li.year a:before {
		content: '▼';
		padding-right: 0.5rem;
	}

	#category-menu ul.archive-list li.year.active a:before {
		content: '▲';
		padding-right: 0.5rem;
	}

	#category-menu ul.archive-list .child-box li a:after {
		content: '月';
	}

	#category-menu ul.archive-list .child-box li.year-all a:after {
		content: none;
	}

	#category-menu ul li {
		float: none;
		width: 100%;
		list-style: none;
		font-size: 1.6rem;
	}

	.mixitup #category-menu ul li {
		padding: 5px 0 5px 10px;
	}

	#category-menu ul.cat-nav li:after {
		content: none;
	}

	#category-menu ul li a {
		height: 40px;
		line-height: 40px;
		width: 100%;
		display: block;
		padding-left: 10px;
	}

}


/*------------------------------------*\
    PAGES::ABOUT US
\*------------------------------------*/
.page #about {}

.page #about h2.catch-copy {
	margin: 150px 0;
	text-align: center;
	font-size: 2.8rem;
}

.page #about #message {
	margin-bottom: 160px;
}

.page #about #message .text-box {
	position: relative;
	padding: 70px 0;
}

.page #about #message .text-box .image-box {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-position: 50% 50%;
	background-size: cover;

	-webkit-transition: height 150ms;
	transition: height 150ms;
}

.page #about #message .text-box .text {
	position: relative;
	z-index: 1;
	color: #fff;
	background: rgba(36, 36, 36, 0.85);
	width: 525px;
	margin-left: auto;
	margin-right: auto;
	padding: 45px;

	-webkit-transition: width 150ms;
	transition: width 150ms;
}

.page #about #message .text-box .text p {
	margin: 0 0 2rem;
	font-weight: bold;
}

.page #about #message .text-box .text p:last-child {
	margin: 0;
}

@media only screen and (max-width:768px) {
	.page #about h2.catch-copy {
		margin: 120px 0;
		font-size: 2.4rem;
		line-height: 1.6;
	}

	.page #about #message {
		margin-bottom: 120px;
	}

	.page #about #message .text-box {
		padding: 70px 0 0;
	}

	.page #about #message .text-box .text {
		width: 90%;
		padding: 45px 5vw;
	}

	.page #about #message .text-box .image-box {
		height: inherit;
		width: 100%;
		padding-top: 59.038462%;
	}
}

.page #about #cando {
	margin-bottom: 160px;
}

.page #about #cando h2.title {
	text-align: center;
	font-size: 2.8rem;
	line-height: 1;
	margin: 0 0 45px;
	letter-spacing: 3px;
}

.page #about #cando .item-box {
	max-width: 830px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page #about #cando .item {
	width: calc(33.33333% - 10px);

	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: stretch;
	height: 100%;

}

.page #about #cando .item .image {
	margin-bottom: 30px;
}

.page #about #cando .item .image img {
	width: 100%;
	height: auto;
}

.page #about #cando .item .text {
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.page #about #cando .item .text span {
	position: absolute;
	width: 27px;
	height: 27px;
}

.page #about #cando .item .text span.top {
	top: 0;
	left: 0;
}

.page #about #cando .item .text span.bottom {
	bottom: 0;
	right: 0;
}

.page #about #cando .item .text span.top:before,
.page #about #cando .item .text span.top:after,
.page #about #cando .item .text span.bottom:before,
.page #about #cando .item .text span.bottom:after {
	content: '';
	position: absolute;
	background: #242424;
}

.page #about #cando .item .text span.top:before,
.page #about #cando .item .text span.top:after {
	top: 0;
	left: 0;
}

.page #about #cando .item .text span.bottom:before,
.page #about #cando .item .text span.bottom:after {
	bottom: 0;
	right: 0;
}

.page #about #cando .item .text span.top:before,
.page #about #cando .item .text span.bottom:before {
	width: 3px;
	height: 27px;
}

.page #about #cando .item .text span.top:after,
.page #about #cando .item .text span.bottom:after {
	width: 27px;
	height: 3px;
}

.page #about #cando .text-box {
	max-width: 830px;
	width: 90%;
	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.page #about #cando .text-box p {
	margin: 0;
}


@media only screen and (min-width:769px) {
	.page #about #cando .item .text {
		height: 120px;
	}
}

@media only screen and (max-width:768px) {
	.page #about #cando h2.title {
		margin: 0 0 65px;
	}

	.page #about #cando .item {
		width: 100%;
		margin-bottom: 11px;
	}

	.page #about #cando .item:last-child {
		margin-bottom: 0;
	}

	.page #about #cando .item .image {
		margin-bottom: 0px;
		width: 40%;
	}

	.page #about #cando .item .text {
		width: 50%;
	}

	.page #about #cando .text-box {
		text-align: left;
		width: 80%;
	}

	.page #about #cando .item .text span.top:before,
	.page #about #cando .item .text span.bottom:before {
		width: 2px;
		height: 14px;
	}

	.page #about #cando .item .text span.top:after,
	.page #about #cando .item .text span.bottom:after {
		width: 14px;
		height: 2px;
	}
}


.page #about #kigumi {
	margin-bottom: 160px;
}

.page #about #kigumi h2.title {
	text-align: center;
	font-size: 4.2rem;
	font-weight: normal;
	line-height: 1;
	margin: 0 0 7px;
	letter-spacing: 3px;
}

.page #about #kigumi h3.subtitle {
	text-align: center;
	font-size: 1.6rem;
	line-height: 1;
	margin: 0 0 40px;
}

.page #about #kigumi .content-box {
	position: relative;
}

.page #about #kigumi .content-box .text-box {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 830px;
	width: 90%;
}

.page #about #kigumi .content-box .text {
	width: 50%;
	background: #fff;
	padding: 55px 25px;
	padding-left: 0;
}

.page #about #kigumi .content-box .text p {
	margin: 0 0 2rem;
}

.page #about #kigumi .content-box .text p:last-child {
	margin: 0;
}

.page #about #kigumi .content-box .image-box {
	float: right;
	width: 58%;
}

.page #about #kigumi .content-box .image-box img {
	width: 100%;
	height: auto;
}

@media only screen and (max-width:950px) {
	.page #about #kigumi .content-box .image-box {
		width: 68%;
	}
}

@media only screen and (max-width:768px) {
	.page #about #kigumi h2.title {
		font-size: 2.6rem;
		margin: 0 0 10px;
	}

	.page #about #kigumi .content-box .image-box {
		float: none;
		width: 100%;
	}

	.page #about #kigumi .content-box .text-box {
		position: relative;
		top: inherit;
		left: inherit;
		transform: translate(0, 0);
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}

	.page #about #kigumi .content-box .text {
		width: 100%;
		padding: 35px 0 0;
	}
}


.page #about #member {
	margin-bottom: 160px;
}

.page #about #member h2.title {
	text-align: center;
	font-size: 4.2rem;
	font-weight: normal;
	line-height: 1;
	margin: 0 0 5px;
	letter-spacing: 3px;
}

.page #about #member h3.subtitle {
	text-align: center;
	font-size: 1.6rem;
	line-height: 1;
	margin: 0 0 40px;
}

.page #about #member .member-box {
	background: #ebebeb;
	padding: 40px 0;
}

.page #about #member .member-box .inner {
	position: relative;
	max-width: 830px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.page #about #member .member-box .inner span {
	position: absolute;
	width: 27px;
	height: 27px;
}

.page #about #member .member-box .inner span.top {
	top: 0;
	left: 0;
}

.page #about #member .member-box .inner span.bottom {
	bottom: 0;
	right: 0;
}

.page #about #member .member-box .inner span.top:before,
.page #about #member .member-box .inner span.top:after,
.page #about #member .member-box .inner span.bottom:before,
.page #about #member .member-box .inner span.bottom:after {
	content: '';
	position: absolute;
	background: #242424;
}

.page #about #member .member-box .inner span.top:before,
.page #about #member .member-box .inner span.top:after {
	top: 0;
	left: 0;
}

.page #about #member .member-box .inner span.bottom:before,
.page #about #member .member-box .inner span.bottom:after {
	bottom: 0;
	right: 0;
}

.page #about #member .member-box .inner span.top:before,
.page #about #member .member-box .inner span.bottom:before {
	width: 3px;
	height: 27px;
}

.page #about #member .member-box .inner span.top:after,
.page #about #member .member-box .inner span.bottom:after {
	width: 27px;
	height: 3px;
}

.page #about #member .member-box .inner .image-box {
	width: 280px;
	text-align: right;
	padding: 15px 20px;
}

.page #about #member .member-box .inner .text-box {
	width: 280px;
	padding: 15px 20px;
}

.page #about #member .member-box .inner .text-box p.eng,
.page #about #member .member-box .inner .text-box p.name,
.page #about #member .member-box .inner .text-box p.title {
	line-height: 1;
	margin: 0;
}

.page #about #member .member-box .inner .text-box p.eng {
	font-size: 1.6rem;
	margin: 0 0 20px;
}

.page #about #member .member-box .inner .text-box p.name {
	font-size: 2.4rem;
	font-weight: bold;
}

.page #about #member .member-box .inner .text-box p.title {
	font-weight: bold;
	margin: 0 0 .5rem;
}

.page #about #member .member-box .inner .text-box p {
	margin: 0 0 2rem;
}

.page #about #member .member-box .inner .text-box p:last-child {
	margin: 0;
}

.page #about #member h4.title {
	text-align: center;
	margin: 45px 0;
}

.page #about #member h4.title span {
	display: inline-block;
	margin: 0 auto;
	line-height: 1;
	background: #242424;
	color: #fff;
	padding: 15px 55px;
	font-size: 1.6rem;
}

.page #about #member .partner-box {
	max-width: 830px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page #about #member .partner-box .item {
	width: 50%;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.page #about #member .partner-box .item:nth-child(odd) {
	padding-right: 20px;
	padding-bottom: 30px;
	padding-top: 30px;
	border-right: 1px solid #aeaeae;
	border-bottom: 1px solid #aeaeae;
}

.page #about #member .partner-box .item:nth-child(even) {
	padding-left: 20px;
	padding-bottom: 30px;
	padding-top: 30px;
	border-bottom: 1px solid #aeaeae;
}

.page #about #member .partner-box .item .image-box {
	width: 36%;
}

.page #about #member .partner-box .item .image-box img {
	border-radius: 50%;
	width: 100%;
	height: auto;
}

.page #about #member .partner-box .item .text-box {
	width: 64%;
	padding-top: 40px;
	padding-left: 15px;
}

.page #about #member .partner-box .item .text-box p.eng,
.page #about #member .partner-box .item .text-box p.name,
.page #about #member .partner-box .item .text-box p.title {
	line-height: 1;
	margin: 0;
}

.page #about #member .partner-box .item .text-box p.eng {
	font-size: 1.4rem;
	margin: 0 0 15px;
}

.page #about #member .partner-box .item .text-box p.name {
	font-size: 2rem;
	font-weight: bold;
}

.page #about #member .partner-box .item .text-box p.title {
	font-weight: bold;
	margin: 0 0 .5rem;
}

.page #about #member .partner-box .item .text-box p.partit {
	font-size: 1.2rem;
}

.page #about #member .partner-box .item .text-box p {
	margin: 0 0 1.2rem;
}

.page #about #member .partner-box .item .text-box p:last-child {
	margin: 0;
}

@media only screen and (max-width:768px) {
	.page #about #member .member-box .inner .image-box {
		width: 40%;
		padding: 25px 5vw;
		padding-right: 0;
	}

	.page #about #member .member-box .inner .text-box {
		width: 56%;
		padding: 25px 5vw;
	}

	.page #about #member .member-box .inner .text-box p.eng {
		font-size: 1rem;
		margin: 0 0 15px;
	}

	.page #about #member .member-box .inner .text-box p.name {
		font-size: 2rem;
	}

	.page #about #member .member-box .inner .text-box p.partit {
		font-size: 1.2rem;
	}

	.page #about #member h4.title span {
		padding: 15px 0;
		width: 80%;
	}

	.page #about #member .partner-box .item {
		width: 100%;
	}

	.page #about #member .partner-box .item .text-box {
		padding-top: 0;
	}

	.page #about #member .partner-box .item:nth-child(odd) {
		padding-right: 0;
		padding-bottom: 30px;
		border-right: none;
		border-bottom: 1px solid #aeaeae;
	}

	.page #about #member .partner-box .item:nth-child(even) {
		padding-left: 0;
		padding-top: 30px;
		padding-bottom: 30px;
		border-bottom: 1px solid #aeaeae;
	}

	.page #about #member .partner-box .item .text-box p.eng {
		font-size: 1rem;
		margin: 0 0 15px;
	}

	.page #about #member .partner-box .item .text-box p.name {
		font-size: 1.8rem;
		font-weight: bold;
	}

	.page #about #member .partner-box .item .text-box p.partit {
		font-size: 1.2rem;
	}

	.page #about #member .member-box .inner span.top:before,
	.page #about #member .member-box .inner span.bottom:before {
		width: 2px;
		height: 14px;
	}

	.page #about #member .member-box .inner span.top:after,
	.page #about #member .member-box .inner span.bottom:after {
		width: 14px;
		height: 2px;
	}
}


.page #about #company {}

.page #about #company h2.title {
	text-align: center;
	font-size: 4.2rem;
	font-weight: normal;
	line-height: 1;
	margin: 0 0 5px;
	letter-spacing: 3px;
}

.page #about #company h3.subtitle {
	text-align: center;
	font-size: 1.6rem;
	line-height: 1;
	margin: 0 0 40px;
}

.page #about #company dl {
	max-width: 620px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page #about #company dt,
.page #about #company dd {
	padding-top: 15px;
	margin: 0;
}

.page #about #company dt {
	width: 120px;
	border-bottom: 1px solid #242424;
	font-weight: bold;
}

.page #about #company dd {
	width: calc(100% - 120px);
	border-bottom: 1px solid #aeaeae;
	padding-left: 10%;
}

@media only screen and (max-width:768px) {
	.page #about #company h2.title {
		font-size: 2.6rem;
		margin: 0 0 10px;
	}

	.page #about #company dt,
	.page #about #company dd {
		font-size: 1rem;
	}

	.page #about #company dt {
		width: 90px;
	}

	.page #about #company dd {
		width: calc(100% - 90px);
	}
}


/*------------------------------------*\
    PAGES::WORKS::
\*------------------------------------*/
.archive #archives .works-list {
	margin-top: 31px;
}

.archive #archives .works-list .item-wrap {
	border-top: 1px solid #242424;
}

.archive #archives .works-list .item-wrap .inner {
	max-width: 935px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.archive #archives .works-list .item-wrap .inner::after {
	content: "";
	display: block;
	width: calc(100% / 3 - 60px / 3);
}

.archive #archives.mixitup_col2 .works-list .item-wrap .inner {
	text-align: justify;
}

.archive #archives .works-list .item-wrap .inner .item {
	width: calc(100% / 3 - 60px / 3);
}

.archive #archives .works-list .item-wrap .inner .item-store {
	width: calc(100% / 3 - 60px / 3);
}

.archive #archives .works-list .item-wrap .inner .item:not(:nth-of-type(-n + 3)) {
	margin-top: 60px;
}

@media only screen and (min-width:768px) {
	.archive #archives.mixitup_col2 .works-list .item-wrap .inner .item {
		width: calc(50% - 20px);
		display: inline-block;
	}
}

.archive #archives .works-list .item-wrap .inner .item .overlay {
	position: relative;
	width: 100%;
	padding-top: 67%;
	height: 0;
}

.archive #archives .works-list .item-wrap .inner .item-store .item-store-thumbnail {
	position: relative;
	width: 100%;
	height: 18.5vw;
	max-height: 195.41px;
	padding-top: 21%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
}

.archive #archives .works-list .item-wrap .inner .item .overlay img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.archive #archives .works-list .item-wrap .inner .item a:hover .overlay:after {
	opacity: 0.3;
}

@media only screen and (min-width:768px) {
	.archive #archives.mixitup_col2 .works-list .item-wrap .inner .item:nth-child(odd) {
		padding-right: 0px;
	}

	.archive #archives.mixitup_col2 .works-list .item-wrap .inner .item:nth-child(even) {
		padding-left: 0px;
	}
}

.archive #archives .works-list .item-wrap .inner .item a {
	display: block;
}

.archive #archives .works-list .item-wrap .inner .item a h3.title {
	margin: 0;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	margin-top: 12px;
	font-weight: normal;
}

.archive #archives .works-list .item-wrap .inner .item a ul {
	font-size: 1.2rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.archive #archives .works-list .item-wrap .inner .item a ul li {
	display: inline-block;
}

.archive #archives .works-list .item-wrap .inner .item a ul li:before {
	content: ' , ';
}

.archive #archives .works-list .item-wrap .inner .item a ul li:first-child:before {
	content: none;
}

.archive #archives .works-list .item-wrap .inner .item-store .item-store-name {
	font-size: 18px;
	letter-spacing: 0.025em;
	line-height: 1.6666;
	font-weight: 700;
	width: 93%;
	padding-bottom: 11px;
	text-align: center;
	border-bottom: 1px solid #242424;
}

.archive #archives .works-list .item-wrap .inner .item-store .item-store-branch {
	font-size: 16px;
	letter-spacing: 0.025em;
	line-height: 1.875;
	text-align: center;
	margin-top: 7px;
}

.archive #archives .works-list .item-wrap .inner .item-store .item-store-title h3 {
	font-weight: 400;
}

.archive #archives .works-list .item-taxonomy-store {
	width: 835px;
	max-width: 90%;
	margin-right: auto;
	margin-left: auto;
	margin-top: 50px;
}

.archive #archives .works-list .item-taxonomy-store+.item-taxonomy-store {
	margin-top: 50px;
}

.archive #archives .works-list .item-taxonomy-store:first-of-type {
	margin-top: 78px;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_year {
	font-family: 'Fjalla One', sans-serif;
	font-size: 24px;
	letter-spacing: 0.1em;
	line-height: 1.1;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_wrapper {
	margin-top: 30px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_wrapper+.item-taxonomy-store_wrapper {
	margin-top: 21px;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_name {
	font-size: 18px;
	letter-spacing: 0.025em;
	line-height: 1.666;
	font-weight: 700;
}

.item-taxonomy-store_branch {
	font-size: 18px;
	letter-spacing: 0.025em;
	line-height: 1.666;
	font-weight: 700;
	margin-left: 8px;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_url {
	font-size: 14px;
	letter-spacing: 0.025em;
	line-height: 1.666;
	padding-left: 22px;
	margin-left: 41px;
	position: relative;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_url a {
	text-decoration: underline;
}

.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_url::after {
	display: block;
	content: "";
	width: 1px;
	height: 18px;
	background-color: #242424;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}


@media only screen and (max-width:768px) {
	.archive #archives .works-list .item-wrap .inner {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}

	.archive #archives .works-list .item-wrap .inner .item {
		width: 100%;
		margin-top: none;
		margin-bottom: 10vw;
	}

	.archive #archives .works-list .item-wrap .inner .item-store {
		width: 100%;
		margin-top: none;
		margin-bottom: 10vw;
	}

	.archive #archives .works-list .item-wrap .inner .item-store .item-store-thumbnail {
		height: 60.3vw;
		max-height: 100%;
		padding-top: 0;
		align-items: center;
		justify-content: center;
	}

	.archive #archives .works-list .item-wrap .inner .item-store .item-store-name {
		font-size: 16px;
	}

	.archive #archives .works-list .item-wrap .inner .item:not(:nth-of-type(-n + 3)) {
		margin-top: 0;
	}

	.archive #archives .works-list .item-wrap .inner::after {
		display: none;
	}

	.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_wrapper {
		margin-top: 15px;
	}

	.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_url {
		font-size: 12px;
		letter-spacing: 0.025em;
		line-height: 1.666;
		padding-left: 0px;
		margin-left: 0px;
		position: relative;
		width: 100%;
	}

	.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_year {
		font-size: 18px;
	}

	.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_url::after {
		display: none;
	}


	.archive #archives .works-list .item-taxonomy-store .item-taxonomy-store_wrapper+.item-taxonomy-store_wrapper {
		margin-top: 15px;
	}

	.archive #archives .works-list .item-taxonomy-store+.item-taxonomy-store {
		margin-top: 60px;
	}

}

/*------------------------------------*\
    PAGES::WORKS::Category
\*------------------------------------*/

#works-category-menu {
	width: 936px;
	max-width: 90%;
	margin-left: auto;
	margin-top: 80px;
	margin-right: auto;
}

.works-cat-item-all {
	list-style-type: none;
}

.works-cat-nav {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	margin: 0;
	padding-left: 0;
}

.works-cat-item {
	text-align: center;
	height: 70px;
	list-style: none;
	width: calc(100% / 6 - 35px / 6);
	margin-right: 7px;
}

.works-cat-item:last-of-type {
	margin-right: 0;
}

.works-cat-item a {
	display: flex;
	width: 100%;
	height: 100%;
	background-color: #ededed;
	flex-direction: column;
	justify-content: center;
	flex-direction: column;
	transition: opacity 0.3s;
}

.works-cat-item a:hover {
	opacity: 0.5;
	transition: opacity 0.3s;
}

.works-cat-item.current-cat a {
	background-color: #000;
	color: #fff;
}

.works-cat-item-jp {
	font-size: 16px;
	letter-spacing: 0.025em;
	font-weight: bold;
	line-height: 1.5;
}

.works-cat-item-en {
	font-size: 13px;
	letter-spacing: 0.140em;
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase
}

.works-no-title {
	font-size: 2.4rem;
	letter-spacing: 0.025em;
	font-weight: 500;
	text-align: center;
	margin-top: 185px;
	margin-bottom: 35px;
}

@media only screen and (max-width:1000px) {
	.works-cat-item a span {
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.4rem;
	}
}

@media only screen and (max-width:768px) {
	.works-cat-nav {
		display: flex;
		flex-wrap: wrap;
	}

	.works-cat-item {
		text-align: center;
		height: 70px;
		list-style: none;
		width: calc(100% / 3 - 21px /3);
		margin-right: 0.7rem;
		margin-bottom: 0.7rem;
	}

	.works-cat-item:nth-last-of-type(3n) {
		margin-right: none;
	}

	.works-cat-item a {
		display: flex;
		width: 100%;
		height: 100%;
		background-color: #ededed;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		padding-left: 1em;
		padding-right: 1em;
	}

	.works-cat-item a span {
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.2rem;
	}

	.works-cat-item-jp {
		white-space: nowrap;
		letter-spacing: 0.025em;
		font-weight: bold;
		line-height: 1.5;
	}

	.works-cat-item-en {
		font-size: 13px;
		letter-spacing: 0.07em;
		font-weight: 400;
		line-height: 1.2;
		text-transform: uppercase
	}

	.works-no-title {
		font-size: 1.8rem;
	}
}

/*------------------------------------*\
    PAGES::WORKS::SINGLE
\*------------------------------------*/
.single #works {
	margin-bottom: 160px;
}

.single #works h2.title {
	text-align: center;
	font-size: 3rem;
	font-weight: normal;
	margin-top: 0;
	margin-bottom: 45px;
	line-height: 1;
	letter-spacing: 4px;
}

.single #works .content span.image-item {
	max-width: 100%;
	margin-bottom: 5px;
	display: inline-block;
	text-align: center;
}

.single #works .content span.image-item img {
	max-width: 100%;
}

.single #works .content .info-box {
	max-width: 830px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 120px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.single #works .content .info-box .info {
	width: 40%;
}

.single #works .content .info-box .info h2.title {
	text-align: left;
	margin-bottom: 60px;
}

.single #works .content .info-box .info h3.subtitle {
	text-align: left;
	font-size: 2rem;
	font-weight: normal;
	color: #aeaeae;
	margin-top: 0;
	margin-bottom: 10px;
	line-height: 1;
}

.single #works .content .info-box .info ul.cat-list {
	margin: 0 0 25px;
	padding: 0;
	list-style: none;
	font-size: 1.5rem;
}

.single #works .content .info-box .info ul.cat-list li {
	line-height: 1.6;
}

.single #works .content .info-box .info ul.cat2-list {
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
	font-size: 1.2rem;
}

.single #works .content .info-box .info ul.cat-list li {
	line-height: 1.6;
}

.single #works .content .info-box .info ul.more-info {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1.2rem;
}

.single #works .content .info-box .info ul.cat-list li {
	line-height: 1.6;
}

.single #works .content .info-box .comment {
	width: 60%;
}

.single #works .content .info-box .comment p {
	margin: 0 0 2rem;
}

.single #works .content .info-box .comment p:last-child {
	margin: 0;
}

@media only screen and (max-width:768px) {
	.single #works {
		margin-bottom: 70px;
	}

	.single #works h2.title {
		font-size: 2rem;
		margin-bottom: 60px;
	}

	.single #works .content span.image-item {
		margin-bottom: 2px;
	}

	.single #works .content .info-box .info,
	.single #works .content .info-box .comment {
		width: 100%;
	}

	.single #works .content .info-box .info h2.title {
		font-size: 2.7rem;
		margin-bottom: 25px;
	}

	.single #works .content .info-box .info ul.cat-list,
	.single #works .content .info-box .info ul.cat2-list {
		margin: 0 0 25px;
	}

	.single #works .content .info-box .info ul.cat2-list li {
		line-height: 1;
		margin: 0 0 1rem;
	}

	.single #works .content .info-box .info .sp-box {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.single #works .content .info-box .info .sp-box .item {
		width: 50%;
	}

	.single #works .content .info-box .info ul.more-info {
		margin: 0 0 25px;
	}
}

.single #archives {
	background: #ebebeb;
	padding-bottom: 55px;
}


.single #archives .works-list {
	max-width: 100%;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.single #archives .works-list .item-wrap {
	margin-top: 70px;
	width: 100%;
}

.single #archives .works-list .item-wrap .inner {
	width: 90%;
	max-width: 935px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.single #archives .works-list .item {
	width: calc(100% / 3 - 60px / 3);
	padding-bottom: 70px;
}

.single #archives .works-list .item a {
	display: block;
}

.single #archives .works-list .item a img {
	width: 100%;
	height: auto;
}

.single #archives .works-list .item a .overlay {
	position: relative;
	width: 100%;
	padding-top: 67%;
	height: 0;
}

.single #archives .works-list .item a .overlay img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single #archives .works-list .item a:hover .overlay:after {
	opacity: 0.3;
}

.single #archives .works-list .item a h3.title {
	font-size: 1.6rem;
	font-weight: normal;
	margin: 0;
	margin-top: 10px;
}

.single #archives .works-list .item a ul {
	font-size: 1.2rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.single #archives .works-list .item a ul li {
	display: inline-block;
}

.single #archives .works-list .item a ul li:before {
	content: ' , ';
}

.single #archives .works-list .item a ul li:first-child:before {
	content: none;
}

@media only screen and (max-width:768px) {
	.single #archives .works-list {
		width: 100%;
	}

	.single #archives .works-list .item {
		width: 100%;
		padding-bottom: 10vw;
	}

	.single #archives .works-list .item:first-child {
		border-top: none;
	}

	.single #archives .works-list .item a h3.title {
		font-size: 1.8rem;
		margin-top: 20px;
	}
}

/*------------------------------------*\
    PAGES::BLOG
\*------------------------------------*/
.page #blog,
.archive #blog {}

.page #blog h2,
.archive #blog h2 {
	text-align: center;
}

.page #blog #post-box,
.archive #blog #post-box {
	max-width: 830px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	line-height: 1.4;
}

.page #blog #post-box .post-item,
.archive #blog #post-box .post-item {
	width: calc(25% - 15px);
	margin-bottom: 55px;
	margin-right: 20px;
}

.page #blog #post-box .post-item:nth-child(4n),
.archive #blog #post-box .post-item:nth-child(4n) {
	margin-right: 0;
}

.page #blog #post-box .post-item a,
.archive #blog #post-box .post-item a {
	display: block;
}

.page #blog #post-box .post-item img,
.archive #blog #post-box .post-item img {
	width: 100%;
	height: auto;
	vertical-align: middle;
	aspect-ratio: 1 / 1;
	object-fit: contain;
}

.page #blog #post-box .post-item .img-box,
.archive #blog #post-box .post-item .img-box {
	position: relative;
}

.page #blog #post-box .post-item a:hover .overlay:after,
.archive #blog #post-box .post-item a:hover .overlay:after {
	opacity: 0.3;
}

.page #blog #post-box .post-item .img-box .meta-box,
.archive #blog #post-box .post-item .img-box .meta-box {
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	background: #242424;
	color: #fff;
	padding: 2px 15px;
	font-size: 1.3rem;
}

.page #blog #post-box .post-item .date,
.archive #blog #post-box .post-item .date {
	color: #aeaeae;
	font-size: 1.2rem;
	margin: 10px 0;
	display: block;
	font-weight: bold;
}

.page #blog #post-box .post-item h3.title,
.archive #blog #post-box .post-item h3.title {
	font-size: 1.4rem;
	font-weight: normal;
	margin: 0;
}

@media only screen and (max-width:768px) {
	.page #blog #post-box, .archive #blog #post-box {
		width: 100%;
	}

	.page #blog #post-box .post-item,
	.archive #blog #post-box .post-item {
		width: 100%;
		padding: 0 10%;
		margin-right: 0;
	}

	.page #blog #post-box .post-item .date,
	.archive #blog #post-box .post-item .date {
		margin: 10px 0 5px;
	}
}

.single #blog {
	margin-left: auto;
	margin-right: auto;
}

.single #blog #post {
	max-width: 830px;
	width: 80vw;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
}

.single #blog #post .meta-box {
	text-align: center;
	margin-bottom: 25px;
}

.single #blog #post .meta-box div {
	display: inline-block;
}

.single #blog #post .meta-box ul.post-categories {
	margin: 0;
	padding: 0;
	display: inline-block;
}

.single #blog #post .meta-box ul.post-categories li {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-block;
	margin-left: 5px;
}

.single #blog #post .meta-box ul.post-categories li:first-child {
	margin-left: 0;
}

.single #blog #post .meta-box ul.post-categories li a {
	padding: 3px 20px;
	background: #242424;
	color: #fff;
	font-family: 'Fjalla One', sans-serif;
}

.single #blog #post .meta-box span.date {
	font-size: 1.6rem;
	color: #aeaeae;
	margin-left: 20px;
}

.single #blog #post h2.title {
	font-size: 2.6rem;
	text-align: center;
	margin: 0 0 20px;
}

.single #blog #post p {
	margin: 0 0 2rem;
}

.single #blog #post p img:first-child {
	margin: 0;
}

@media only screen and (max-width:768px) {
	.single #blog #post h2.title {
		text-align: left;
		line-height: 1.4;
	}

	.single #blog #post {
		margin-bottom: 60px;
	}

	.single #blog #post .meta-box {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}

	.single #blog #post .meta-box div {
		width: 50%;
	}

	.single #blog #post .meta-box div.left {
		text-align: right;
		padding-right: 10px;
	}

	.single #blog #post .meta-box div.right {
		text-align: left;
		padding-left: 10px;
	}

	.single #blog #post .meta-box span.date {
		margin-left: 0;
	}
}





/*------------------------------------*\
    PAGES::PROJECT
\*------------------------------------*/
.page #aozora .content {
	margin-bottom: 160px;
	position: relative;
	padding: 100px 0 235px;
}

.page #aozora .content .info-img {
	position: absolute;
	height: auto;
}

.page #aozora .content .info-img.img-01 {
	left: 0;
	top: -30px;
	max-width: 600px;
	width: 57.5%;
}

.page #aozora .content .info-img.img-01 span {
	width: 125px;
	height: auto;
	position: absolute;
	bottom: 10px;
	left: 20%;
}

.page #aozora .content .info-img.img-02 {
	right: 5vw;
	top: 45px;
	max-width: 260px;
	width: 25%;
}

.page #aozora .content .info-img.img-03 {
	left: 0;
	bottom: 60px;
	max-width: 390px;
	width: 37.5%;
}

.page #aozora .content .info-img.img-04 {
	right: 0;
	bottom: 0;
	max-width: 500px;
	width: 48%;
}

.page #aozora .content .info-img.img-04 span {
	width: 108px;
	height: auto;
	position: absolute;
	top: 10px;
	right: 10%;
}

.page #aozora .content .text-box {
	margin: auto;
	padding: 50px 70px;
	background: rgba(255, 255, 255, 0.85);
	width: 520px;
	position: relative;
	z-index: 1;
}

.page #aozora .content .text-box h2 {
	font-size: 2rem;
	margin: 0;
	text-align: center;
	position: relative;
	line-height: 1;
	padding-bottom: 20px;
}

.page #aozora .content .text-box h2:after {
	content: '';
	height: 2px;
	width: 20px;
	background: #242424;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
}

@media only screen and (max-width:768px) {
	.page #aozora .content {
		margin-bottom: 120px;
	}

	.page #aozora .content {
		padding: 48vw 0 33vw;
	}

	.page #project .content h3.title {
		padding-left: 5vw;
		padding-right: 5vw;
		line-height: 1.4;
	}

	.page #aozora .content .info-img.img-01 {
		width: 56%;
	}

	.page #aozora .content .info-img.img-01 span {
		width: 63px;
	}

	.page #aozora .content .info-img.img-02 {
		width: 30%;
	}

	.page #aozora .content .info-img.img-03 {
		width: 38.7%;
	}

	.page #aozora .content .info-img.img-04 {
		width: 52%;
	}

	.page #aozora .content .info-img.img-04 span {
		width: 63px;
		top: 20px;
	}

	.page #aozora .content .text-box {
		width: 90%;
		padding: 50px 5vw;
	}

	.page #project .content .link-box.center {
		margin-bottom: 0;
	}
}

.page #project {
	text-align: center;
	max-width: 935px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.page #project .content {
	padding: 150px 0 115px;
	border-bottom: 1px solid #242424;
}

.page #project .content:first-child {
	border-top: 1px solid #242424;
}

.page #project .content h3.title {
	text-align: center;
	font-size: 2.6rem;
	margin: 0 0 30px;
}

.page #project .content .image-item {
	width: 100%;
	margin: auto;
	display: inline-block;
	text-align: center;
}

.page #project .content .text-box {
	margin: 45px 0 45px;
	padding: 0 5vw;
}

.page #project .content .text-box p {
	margin: 0 0 2rem;
}

.page #project .content .gallery-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -4px 45px;
}

.page #project .content .gallery-box .item {
	width: calc(12.5% - 8px);
	margin: 0 4px;
}

.page #project .content .gallery-box .item img {
	width: 100%;
	height: auto;
}

.page #project .content .link-box.center {
	margin-bottom: 45px;
}

@media only screen and (max-width:768px) {
	.page #project {
		text-align: left;
	}

	.page #project .content {
		padding: 120px 0;
	}

	.page #project .content .image-item img {
		width: 100% !important;
	}

	.page #project .content .gallery-box {
		justify-content: flex-start;
		margin-left: 0;
		margin-right: -8px;
		margin-bottom: 40px;
	}

	.page #project .content .gallery-box .item {
		width: calc(25% - 8px);
		margin: 0;
		margin-right: 8px;
		margin-bottom: 8px;
	}
}


/*------------------------------------*\
    PAGES::CONTACT
\*------------------------------------*/
.page #contact {}

.page #contact .form-box {
	max-width: 830px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 60px;
	border-top: 1px solid #242424;
	font-size: 1.6rem;
}

.page #contact .form-box .contact-row {
	border-bottom: 1px solid #aeaeae;
	display: flex;
}

.page #contact .form-box .contact-row .left {
	width: 250px;
	padding: 25px 20px;
}

.page #contact .form-box .contact-row .left.flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.page #contact .form-box .contact-row .left p {
	width: 100%;
	margin: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-weight: bold;
	height: 50px;
}

.page #contact .form-box .contact-row .right {
	width: calc(100% - 250px);
	padding: 25px 20px;
}

.page #contact .form-box .mw_wp_form_preview .inner.zip:before {
	content: '〒';
}

.page #contact .form-box .contact-row .right .inner input,
.page #contact .form-box .contact-row .right .inner textarea {
	background: #ebebeb;
	color: #242424;
	font-size: 1.6rem;
	border: none;
	padding: 10px 20px;
	width: 100%;
	border-radius: 0;
}

.page #contact .form-box .contact-row .right .inner span.mwform-tel-field,
.page #contact .form-box .contact-row .right .inner span.mwform-zip-field {
	display: inline-block;
}

.page #contact .form-box .contact-row .right .inner span.mwform-tel-field input,
.page #contact .form-box .contact-row .right .inner span.mwform-zip-field input {
	width: inherit;
	text-align: center;
}

.page #contact .form-box .contact-row .right .inner input[name=mail-confirm] {
	margin: 20px 0 0;
}

.page #contact .form-box .contact-row .right .inner input[name=address-1] {
	margin: 20px 0;
}

.page #contact .form-box .contact-row .required {
	display: inline-block;
	color: #fff;
	background: #a63939;
	font-size: 1.2rem;
	line-height: 1;
	padding: 5px 5px;
	font-weight: bold;
}

.page #contact .confirm,
.page #contact .result {
	margin-bottom: 160px;
}

.page #contact .result {
	font-weight: bold;
}

.page #contact .text-box {
	max-width: 830px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.page #contact .text-box.top {
	padding-bottom: 40px;
}

.page #contact .text-box p {
	margin: 0;
	margin-bottom: 2rem;
}

.page #contact .text-box p.title {
	font-weight: bold;
	margin-bottom: 1rem;
}

.page #contact .tel-box {
	width: 100%;
	background: #ebebeb;
	text-align: center;
	margin-bottom: 100px;
}

.page #contact .tel-box .inner {
	display: inline-block;
	padding: 30px 0 25px;
	position: relative;
}

.page #contact .tel-box .inner:before {
	content: url(./img/contact/tel.png);
	display: inline-block;
	width: 153px;
	height: 92px;
	position: absolute;
	left: -173px;
	bottom: -2px;

	-webkit-transition: left 200ms;
	transition: left 200ms;
}

.page #contact .tel-box .inner p {
	margin: 0;
	z-index: 1;
	position: relative;
}

.page #contact .tel-box .inner p.title {
	font-size: 1.6rem;
	font-weight: bold;
}

.page #contact .tel-box .inner p.number {
	font-size: 4.8rem;
}

.page #contact .confirm h2.caution {
	font-size: 1.6rem;
	line-height: 1;
	font-weight: normal;
	color: #a63939;
	margin: 0 0 10px;
	text-align: center;
}

.page #contact .result h2.title {
	font-size: 4.2rem;
	line-height: 1;
	font-weight: normal;
	margin: 0 0 20px;
	text-align: center;
}

.page #contact .result .link-box.black {
	padding: 20px 0 0;
}

.page #contact .result .link-box.black .view-more {
	font-size: 1.6rem;
	padding: 15px 50px;
	border: 1px solid #242424;
}

.page #contact .result .link-box.black .view-more:after {
	bottom: 19px;
}

.page #contact .form-box .submit-row {
	position: relative;
	display: flex;
	justify-content: center;
	padding-top: 65px;
}

.page #contact .form-box .submit-row button[name=submitConfirm],
.page #contact .form-box .submit-row button[name=send] {
	background: #242424;
	font-size: 1.6rem;
	font-weight: bold;
	color: #fff;
	border: none;
	line-height: 1;
	padding: 15px 70px;
	-webkit-transition: all 300ms;
	transition: all 300ms;
	border: 1px solid #242424;
}

.page #contact .form-box .submit-row button[name=submitConfirm]:hover,
.page #contact .form-box .submit-row button[name=send]:hover {
	background: #fff;
	color: #242424;
}

.page #contact .form-box .submit-row button span {
	position: relative;
}

.page #contact .form-box .submit-row button[name=submitConfirm] span:after,
.page #contact .form-box .submit-row button[name=send] span:after {
	content: '';
	background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjIgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjIgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I0ZGRkZGRjt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMS42LDUuOSAwLjQsNS45IDAuNCw0LjkgMTkuMiw0LjkgMTUsMC44IDE1LjgsMC4xICIvPg0KPC9zdmc+DQo=');
	width: 21px;
	height: 6px;
	position: absolute;
	bottom: 1px;
	display: inline-block;
	margin-left: 10px;
	-webkit-transition: all 300ms;
	transition: all 300ms;
}

.page #contact .form-box .submit-row button[name=submitConfirm]:hover span:after,
.page #contact .form-box .submit-row button[name=send]:hover span:after {
	background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjIgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjIgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzI0MjQyNDt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIyMS42LDUuOSAwLjQsNS45IDAuNCw0LjkgMTkuMiw0LjkgMTUsMC44IDE1LjgsMC4xICIvPg0KPC9zdmc+DQo=');
}

.page #contact .form-box .submit-row button[name=submitBack] {
	background: #aeaeae;
	font-size: 1.6rem;
	font-weight: bold;
	color: #242424;
	border: none;
	line-height: 1;
	padding: 15px 70px;
	-webkit-transition: all 300ms;
	transition: all 300ms;

	position: absolute;
	left: 0;
}

.page #contact .form-box .submit-row button[name=submitBack] span:before {
	content: '';
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjIgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjIgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzI0MjQyNDt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI2LjIsMC4xIDcsMC44IDIuOCw0LjkgMjEuNiw0LjkgMjEuNiw1LjkgMC40LDUuOSAiLz4NCjwvc3ZnPg0K);
	width: 21px;
	height: 6px;
	position: absolute;
	bottom: 1px;
	left: -31px;
	display: inline-block;
	-webkit-transition: all 300ms;
	transition: all 300ms;
}


@media only screen and (max-width:768px) {
	.page #contact .text-box:not(.center) {
		text-align: left;
	}

	.page #contact .form-box .contact-row {
		flex-flow: column wrap;
	}

	.page #contact .form-box .contact-row .left,
	.page #contact .form-box .contact-row .right {
		width: 100%;
	}

	.page #contact .form-box .contact-row .left p {
		justify-content: flex-start;
		height: auto;
	}

	.page #contact .form-box .contact-row .required {
		margin-left: 15px;
	}

	.page #contact .form-box .contact-row .right {
		padding-top: 0;
	}

	.page #contact .form-box .contact-row .right .inner input,
	.page #contact .form-box .contact-row .right .inner textarea {
		font-size: 1.4rem;
	}

	.page #contact .form-box .contact-row .right .inner span.mwform-tel-field input {
		max-width: 27%;
	}

	.page #contact .tel-box .inner:before {
		left: -10vw;
	}


	.page #contact .form-box .submit-row {
		flex-flow: column-reverse;
		padding-left: 20px;
		padding-right: 20px;
	}

	.page #contact .form-box .submit-row button {
		width: 100%;
	}

	.page #contact .form-box .submit-row button[name=submitBack] {
		position: relative;
		left: inherit;
		margin-top: 40px;
	}

	.page #contact .result .link-box.black {
		width: 90%;
		padding: 20px 20px 0;
		margin: auto;
	}

	.page #contact .result .link-box.black .view-more {
		width: 100%;
	}
}

/*2022年1月20日LINEのセクションを追加*/

.page #contact .line_link {
	position: relative;
}

.page #contact .line_link::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: opacity 300ms;
	transition: opacity 300ms;
}



.page #contact .line_link:hover::after {
	opacity: 0.3;
}

.page #contact .line-box {
	width: 100%;
	max-width: 935px;
	margin-right: auto;
	margin-left: auto;
	border: 1px solid #1f1f1f;
	display: flex;
	padding: 16px 35px;
	margin-bottom: 100px;
}

.page #contact .line-box.on-pc {
	display: flex;
	justify-content: space-between;
}

.page #contact .line-box.on-sp {
	display: none;
}

@media (max-width:1050px) {
	.page #contact .line-box {
		width: 90%;
		max-width: 935px;
		margin-right: auto;
		margin-left: auto;
	}
}

@media (max-width: 768px) {
	.page #contact .line-box {
		display: block;
	}

	.page #contact .line-box.on-pc {
		display: none;
	}

	.page #contact .line-box.on-sp {
		display: block;
	}
}

.page #contact .line-box .line_text {
	width: 65%;
	margin-right: 5%;
}

@media (max-width:1050px) {
	.page #contact .line-box .line_text {
		width: 54%;
	}
}


@media (max-width: 768px) {
	.page #contact .line-box .line_text {
		width: 100%;
		margin-right: auto;
	}
}

.page #contact .line-box .line_text .line_title {
	font-weight: bold;
	position: relative;
	line-height: 1.3;

}

.page #contact .line-box .line_text .line_title br.on-sp {
	display: none;

}

@media (max-width:465px) {
	.page #contact .line-box .line_text .line_title br.on-sp {
		display: inline;

	}
}

@media (max-width:375px) {
	.page #contact .line-box .line_text .line_title br.on-sp {
		display: none;

	}
}

.page #contact .line-box .line_text .line_title::after {
	width: 100%;
	display: block;
	max-width: 447px;
	content: "";
	height: 1px;
	background-color: #1f1f1f;
	position: absolute;
	left: -2px;
	bottom: -11px;
}

@media (max-width: 768px) {
	.page #contact .line-box .line_text .line_title::after {

		max-width: 100%;

	}
}

.page #contact .line-box .line_text .line_texts {
	letter-spacing: 0.025em;
	line-height: 1.7;
	margin-top: 24px;
}

.page #contact .line-box .line_text .line_texts br {
	display: inline;
}

@media (max-width: 768px) {
	.page #contact .line-box .line_text .line_texts {
		margin-top: 32px;
		line-height: 1.9;
	}

	.page #contact .line-box .line_text .line_texts br {
		display: none;
	}
}

.page #contact .line-box .line_text .line_title .green {
	font-size: 22px;
	letter-spacing: 0.025em;
	color: #00b900;
}

.page #contact .line-box .line_text .line_title .small {
	font-size: 18px;
	letter-spacing: 0.025em;
}

.page #contact .line-box .line_img {
	width: 30%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

@media (max-width:1050px) and (min-width:769px) {
	.page #contact .line-box .line_img {
		width: 46%;
	}
}

.page #contact .line-box .line_img a:hover {
	opacity: 0.75;
	transition: opacity 0.35s ease-out;
}

@media (max-width:1050px) {
	.page #contact .line-box .line_img {
		justify-content: flex-end;
	}
}


@media (max-width: 768px) {
	.page #contact .line-box .line_img {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
		margin-right: auto;
		margin-left: auto;
	}
}

.page #contact .line-box .line_img .friend {
	width: 100%;
	max-width: 126px;
	margin-top: 56px;
	margin-left: 11px;
}



@media (max-width: 768px) {
	.page #contact .line-box .line_img .friend {
		width: 100%;
		max-width: 205px;
		margin-top: 15px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 17px;
	}
}

.page #contact .line-box .line_img .qr {
	width: 50%;
	max-width: 116px;
	margin-top: 48px;
	margin-left: 18px;
}

@media (max-width:1050px) {
	.page #contact .line-box .line_img .qr {
		margin-left: 7px;
	}
}

@media (max-width: 768px) {
	.page #contact .line-box .line_img .qr {
		display: none;
	}

}



/*------------------------------------*\
    PAGES::PAGINATION
\*------------------------------------*/
#pagenav {
	max-width: 935px;
	width: 90%;
	padding-top: 65px;
	margin-left: auto;
	margin-right: auto;
}

#pagination {
	line-height: 1;
	width: 100%;
}

#pagination.archives ul {
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#pagination.archives ul li {
	list-style: none;
}

#pagination.archives ul li a,
#pagination.archives ul li span {
	padding: 5px;
}

#pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#pagination span {
	color: #aeaeae;
}

#pagination a {
	padding: 5px 0;
}

#pagination a[rel="prev"]:before,
#pagination a[rel="next"]:after,
#pagination span.prev:before,
#pagination span.next:after {
	width: 19px;
	height: 1rem;
	display: inline-block;
	transform: rotateX(0px);

	-webkit-transition: all 300ms;
	transition: all 300ms;
}

#pagination a[rel="prev"]:before {
	margin-right: 3px;
	content: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTkgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzI0MjQyNDt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI2LDAuMSA3LjQsMS41IDUuMSwzLjggMTguNywzLjggMTguNyw1LjggMC4zLDUuOCAiLz4NCjwvc3ZnPg0K);
}

#pagination a[rel="prev"]:hover:before {
	transform: translateX(-10px);
}

#pagination a[rel="next"]:after {
	margin-left: 3px;
	content: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTkgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzI0MjQyNDt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIxOC43LDUuOCAwLjMsNS44IDAuMywzLjggMTMuOSwzLjggMTEuNiwxLjUgMTMsMC4xICIvPg0KPC9zdmc+DQo=);
}

#pagination a[rel="next"]:hover:after {
	transform: translateX(10px);
}

#pagination span.prev:before {
	margin-right: 3px;
	content: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTkgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I0FFQUVBRTt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSI2LDAuMSA3LjQsMS41IDUuMSwzLjggMTguNywzLjggMTguNyw1LjggMC4zLDUuOCAiLz4NCjwvc3ZnPg0K);
}

#pagination span.next:after {
	margin-left: 3px;
	content: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyMS4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCINCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTkgNiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTkgNjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6I0FFQUVBRTt9DQo8L3N0eWxlPg0KPHBvbHlnb24gY2xhc3M9InN0MCIgcG9pbnRzPSIxOC43LDUuOCAwLjMsNS44IDAuMywzLjggMTMuOSwzLjggMTEuNiwxLjUgMTMsMC4xICIvPg0KPC9zdmc+DQo=);
}

#pagination .go-archives {
	width: 36px;
	height: 36px;
	padding: 0;
}

@media only screen and (max-width:768px) {
	#pagenav {
		padding-top: 5px;
	}
}


/*------------------------------------*\
  GO TO TOP ARROW
\*------------------------------------*/
/* GO TO TOP LINK */
#page-top {
	position: fixed;
	bottom: -500px;
	right: 25px;
	margin: 0;
	display: none;
	z-index: 9999;

	-webkit-transition: bottom 300ms ease;
	transition: bottom 300ms ease;
}

.tax-bridalfair_cat.active #page-top,
.post-type-archive-bridalfair.active #page-top {
	bottom: 40px;
	z-index: 998;
}

#page-top.pin {
	position: absolute;
	bottom: 0;
	display: block !important;
}

#page-top a {
	text-decoration: none;
	width: 30px;
	height: 30px;
	padding: 0px;
	display: block;
	-webkit-transition: background 300ms ease;
	transition: background 300ms ease;
}

@media only screen and (max-width:768px) {
	#page-top {
		bottom: 25px;
	}

	#page-top a {
		width: 30px;
		height: 30px;
	}
}

/*------------------------------------*\
  FOOTER
\*------------------------------------*/
#footer {
	background-color: #242424;
	text-align: center;
	position: relative;
}

#footer,
#footer a {
	color: #fff;
}

#footer .inner {
	max-width: 935px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

#footer ul {
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid #606060;
}

#footer ul li {
	display: inline-block;
	list-style: none;
}

#footer ul li a {
	padding: 5px;
	position: relative;
	letter-spacing: 0.025em;
}

#footer ul li a[target]:before {
	content: "";
	display: block;
	width: 11px;
	height: 11px;
	position: absolute;
	top: -1px;
	bottom: 0;
	right: 0;
	margin: auto 0;
	transform: translateX(150%);
	background: url(./img/common/icon-tab_wt.svg)no-repeat center / contain;
}

#footer ul li:after {
	content: '/';
	padding: 5px 6px;
}

#footer ul li:last-child:after {
	content: none;
}

#footer .info-box {
	text-align: left;
	padding: 15px 0;
	display: flex;
	justify-content: center;
}

#footer .info-box .logo {}

#footer .info-box .logo img[src$=".svg"] {
	width: 88px;
	fill: #fff;
}

#footer .info-box .info {
	font-size: 1.2rem;
	padding-left: 30px;
	position: relative;
}

#footer .info-box .info p {
	line-height: 1;
	margin: 0 0 1rem;
}

#footer .info-box .info p span.b-hours {
	margin-left: 2rem;
}

#footer .info-box .sns-box {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	justify-content: center;
}

#footer .info-box .sns-box a {
	width: 23px;
	height: 23px;
}

#footer .info-box .sns-box a:not(:first-child) {
	margin-left: 9px;
}



#footer p.copyright {
	margin: 0;
	font-size: 1rem;
	padding: 0 0 20px;
}

@media only screen and (max-width:768px) {
	#footer ul {
		display: none;
	}

	#footer .info-box {
		text-align: center;
		flex-direction: column;
	}

	#footer .info-box .logo {
		margin: 10px 0 20px;
	}

	#footer .info-box .info {
		padding-left: 0;
	}

	#footer .info-box .info p {
		margin: 0 0 .7rem;
	}

	#footer .info-box .info p span {
		display: block;
		margin-top: 0.7rem;
		margin-left: 0rem;
		font-size: 1rem;
	}

	#footer .info-box .sns-box {
		padding-top: 10px;
		position: relative;
		top: inherit;
		right: inherit;
	}

	#footer .info-box .sns-box a {
		width: 42px;
		height: 42px;
	}

	#footer .info-box .sns-box a:not(:first-child) {
		margin-left: 15px;
	}
}

@media screen and (min-width:769px) and (max-width:950px) {
	#footer ul li a {
		font-size: 1.2rem;
		padding: 1px;
	}
}


/*------------------------------------*\
    MAP
\*------------------------------------*/
#map {
	width: 100%;
	height: 400px;
	background-color: grey;
}

@media only screen and (max-width:768px) {
	#map {
		height: 200px;
	}
}

/*------------------------------------*\
    MISC
\*------------------------------------*/
br.br-pc {
	display: inline;
}

br.br-sp {
	display: none;
}

@media only screen and (max-width:768px) {
	#wedding #seven-beauty .seven-elements .inner {
		width: 33%;
	}

	br.br-pc {
		display: none;
	}

	br.br-sp {
		display: inline;
	}
}

img[src$=".svg"] {
	width: 100%;
}


::selection {
	background: #ebebeb;
	color: #242424;
	text-shadow: none;
}

::-webkit-selection {
	background: #ebebeb;
	color: #242424;
	text-shadow: none;
}

::-moz-selection {
	background: #ebebeb;
	color: #242424;
	text-shadow: none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin: 2rem 0 0 0;
}

.aligncenter,
div.aligncenter {
	display: block;
	margin: 5px auto 5px auto;
}

.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.alignright {
	float: right;
	margin: 5px 0 20px 20px;
}

a img.alignnone {
	margin: 5px 20px 20px 0;
}

a img.alignleft {
	float: left;
	margin: 5px 20px 20px 0;
}

a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption {
	background: #FFF;
	border: 1px solid #F0F0F0;
	max-width: 96%;
	padding: 5px 3px 10px;
	text-align: center;
}

.wp-caption.alignnone {
	margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
	margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
	margin: 5px 0 20px 20px;
}

.wp-caption img {
	border: 0 none;
	height: auto;
	margin: 0;
	max-width: 98.5%;
	padding: 0;
	width: auto;
}

.wp-caption .wp-caption-text,
.gallery-caption {
	font-size: 11px;
	line-height: 17px;
	margin: 0;
	padding: 0 4px 5px;
}

.sticky {}

.bypostauthor {}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background: transparent !important;
		color: #000 !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]:after {
		content: " ("attr(href) ")";
	}

	abbr[title]:after {
		content: " ("attr(title) ")";
	}

	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}

	pre, blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	thead {
		display: table-header-group;
	}

	tr, img {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	@page {
		margin: 0.5cm;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		page-break-after: avoid;
	}
}

/* 2017 08 07 Imanishi P.S*/

/* Controls
---------------------------------------------------------------------- */

#works_ajax .controls {
	padding: 1rem;
	background: #333;
	font-size: 0.1px;
}

#works_ajax .control {
	position: relative;
	display: inline-block;
	width: 2.7rem;
	height: 2.7rem;
	background: #444;
	cursor: pointer;
	font-size: 0.1px;
	color: white;
	transition: background 150ms;
}

#works_ajax .control:hover {
	background: #3f3f3f;
}

#works_ajax .control[data-filter]:after {
	content: '';
	position: absolute;
	width: 10px;
	height: 10px;
	top: calc(50% - 6px);
	left: calc(50% - 6px);
	border: 2px solid currentColor;
	border-radius: 2px;
	background: currentColor;
	transition: background-color 150ms, border-color 150ms;
}

#works_ajax .control[data-sort]:after {
	content: '';
	position: absolute;
	width: 10px;
	height: 10px;
	border-top: 2px solid;
	border-left: 2px solid;
	top: calc(50% - 6px);
	left: calc(50% - 6px);
	transform: translateY(1px) rotate(45deg);
}

#works_ajax .control[data-sort*=":desc"]:after {
	transform: translateY(-4px) rotate(-135deg);
}

#works_ajax .mixitup-control-active {
	background: #393939;
}

#works_ajax .mixitup-control-active[data-filter]:after {
	background: transparent;
}

#works_ajax .control:first-of-type {
	border-radius: 3px 0 0 3px;
}

#works_ajax .control:last-of-type {
	border-radius: 0 3px 3px 0;
}

#works_ajax .control[data-filter]+.control[data-sort] {
	margin-left: .75rem;
}

#works_ajax .control[data-filter=".green"] {
	color: #91e6c7;
}

#works_ajax .control[data-filter=".blue"] {
	color: #5ecdde;
}

#works_ajax .control[data-filter=".pink"] {
	color: #d595aa;
}

#works_ajax .control[data-filter="none"] {
	color: #2f2f2f;
}

/* Container
---------------------------------------------------------------------- */

#works_ajax .container {
	padding: 1rem;
	text-align: justify;
	font-size: 0.1px;
}

#works_ajax .container:after {
	content: '';
	display: inline-block;
	width: 100%;
}

/* Target Elements
---------------------------------------------------------------------- */

#works_ajax .mix,
#works_ajax .gap {
	display: inline-block;
	vertical-align: top;
}

#works_ajax .mix {
	background: #fff;
	border-top: .5rem solid currentColor;
	border-radius: 2px;
	margin-bottom: 1rem;
	position: relative;
}

#works_ajax .mix:before {
	content: '';
	display: inline-block;
	padding-top: 56.25%;
}

#works_ajax .mix.green {
	color: #91e6c7;
}

#works_ajax .mix.pink {
	color: #d595aa;
}

#works_ajax .mix.blue {
	color: #5ecdde;
}

/* Grid Breakpoints
---------------------------------------------------------------------- */

/* 2 Columns */

#works_ajax .mix,
#works_ajax .gap {
	width: calc(100%/2 - (((2 - 1) * 1rem) / 2));
}

/* 3 Columns */

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

	#works_ajax .mix,
	#works_ajax .gap {
		width: calc(100%/3 - (((3 - 1) * 1rem) / 3));
	}
}

/* 4 Columns */

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

	#works_ajax .mix,
	#works_ajax .gap {
		width: calc(100%/4 - (((4 - 1) * 1rem) / 4));
	}
}

/* 5 Columns */

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

	#works_ajax .mix,
	#works_ajax .gap {
		width: calc(100%/5 - (((5 - 1) * 1rem) / 5));
	}
}


/*FLOW
========================================*/


/* p-flow_message */
#p-flow_message {
	margin-top: 111px;
}

.p-flow_message__catch {
	text-align: center;
	font-size: 28px;
	letter-spacing: 0.1em;
	color: #242424;
	line-height: 1.66;
	margin: 0;
	font-feature-settings: "palt";
	font-weight: bold;
}

.p-flow_message__text {
	text-align: center;
	font-size: 14px;
	letter-spacing: 0.025em;
	line-height: 1.85;
}

/* p-flow_tab */
.p-flow_tab {
	margin-top: 83px;
	border-bottom: 2px solid #242424;
}

.p-flow_tab__list {
	width: 830px;
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: center;
	padding-left: 0;
	justify-content: center;
	margin-bottom: 0;
}

.p-flow_tab__list li {
	width: 50%;
	height: 48px;
	line-height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.p-flow_tab__button {
	width: 100%;
	height: 100%;
	background-color: #cccccc;
	border: none;
	font-size: 20px;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-feature-settings: "palt";
	color: #fff;
	border-radius: 10px 10px 0 0;
	transition: background-color 0.3s ease-in-out;
}

.p-flow_tab__button.is-active {
	background-color: #242424;
	transition: background-color 0.3s ease-in-out;
}


.p-flow_content {
	width: 830px;
	margin-right: auto;
	margin-left: auto;
	max-width: 90%;
	display: flex;
	align-items: stretch;
	margin-top: 71px;
	justify-content: space-between;
	padding-bottom: 41px;
	border-bottom: 1px solid #666666;
	position: relative;
}

.p-flow_content::before {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 14px 0 15px;
	border-color: #666666 transparent transparent transparent;
	display: block;
	content: "";
	position: absolute;
	bottom: -17px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}

.p-flow_content.__last::after,
.p-flow_content.__last::before {
	display: none
}

.p-flow_content::after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 14px 0 15px;
	border-color: #fff transparent transparent transparent;
	display: block;
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}

.p-flow_content+.p-flow_content {
	margin-top: 56px;
}

.p-flow_period {
	width: 830px;
	margin-right: auto;
	margin-left: auto;
	max-width: 90%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	position: relative;
	border-bottom: 1px solid #666666;
}

.p-flow_period::before {
	width: 36px;
	height: calc(100% - 121px);
	background-color: #666;
	position: absolute;
	content: "";
	background-image: url(img/flow/dec-peripd.png);
	background-size: 16px 88px;
	background-repeat: no-repeat;
	background-position: center;
	top: 56px;
	left: 0;
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.66;
	font-weight: 700;
	color: #fff;
	font-feature-settings: "palt";
	text-orientation: upright;
	writing-mode: vertical-rl;
	display: flex;
	align-items: center;
	justify-content: center;
}

.p-flow_period.__harf::before {
	background-image: url(img/flow/dec-peripd-harf.png);
	background-size: 16px 50px;
}

.p-flow_period .p-flow_content {
	width: 100%;
	max-width: 773px;
	margin-left: 2.85%;
	margin-top: 56px;
}

.p-flow_period .p-flow_content::before {
	left: 46%;
}

.p-flow_period .p-flow_content::after {
	left: 46%;
}

.p-flow_period .p-flow_content:last-of-type {
	border-bottom: none;
}


.p-flow_period+.p-flow_content {
	margin-top: 54px;
}

.p-flow_period__wrapper {
	width: calc(100% - 37px);
	margin-right: 0;
	margin-left: auto;
	position: relative;
}

.p-flow_period__wrapper::after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 22px 18px 0 18px;
	border-color: #666666 transparent transparent transparent;
	display: block;
	content: "";
	position: absolute;
	bottom: 43px;
	left: -37px;
}



.p-flow_content__texts {
	width: calc(100% - 36.144%);
	padding-top: 13px;
	padding-left: 7%;
	padding-right: 8.5%;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}

.p-flow_content__list {
	padding-left: 0;
	margin-top: 5px;
	list-style: none;
}

.p-flow_content__list li {
	text-indent: -1em;
	padding-left: 1em;
}

.p-flow_content__list li:before {
	content: "・";
}

.p-flow_period .p-flow_content__texts, .p-flow_period .p-flow_content__list {
	width: calc(100% - 47%);
	padding-top: 12px;
	padding-left: 0;
	padding-right: 0;
}

.p-flow_content__title {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	color: #242424;
}

.p-flow_content__title__en {
	font-size: 24px;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
	line-height: 1.66;
}

.p-flow_content__title__jp {
	font-size: 24px;
	letter-spacing: 0.05em;
	font-feature-settings: "palt";
	font-weight: 700;
	line-height: 1.66;
	margin-left: 25px;

}



.p-flow_content__title__jp.__upper {
	margin-left: 11px;
}

.p-flow_content__text, .p-flow_content__list li {
	font-size: 13px;
	letter-spacing: 0.025em;
	line-height: 1.69;
	margin-top: 5px;
	color: #242424;
}

.p-flow_content__list li {
	margin: 0;
}

.p-flow_content__point {
	width: 100%;
	background-color: #ebebeb;
	display: flex;
	align-items: center;
	padding-left: 30px;
	justify-content: flex-start;
	margin-top: auto;
	padding-top: 8px;
	padding-bottom: 8px;
}

.p-flow_content__point__en {
	font-size: 16px;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
	line-height: 1.25;
}

.p-flow_content__point__list {
	margin: 0;
	padding-left: 0;
	position: relative;
	margin-left: 19px;
	padding-left: 11px;
}

.p-flow_content__point__list::before {
	display: inline-block;
	content: "";
	height: 89%;
	background-color: #aeaeae;
	width: 1px;
	position: absolute;
	top: 2px;
	left: 0;
}

.p-flow_content__point__item {
	font-size: 14px;
	letter-spacing: 0.025em;
	list-style-type: none;
	line-height: 1.57;
	padding-left: 1em;
}

.p-flow_content__point__item::before {
	content: "・";
}

.p-flow_content__visual {
	width: 36.144%;
}

.p-flow_period .p-flow_content__visual {
	width: 39%;
}


.p-flow_contact {
	width: 234px;
	height: 50px;
	background-color: #000;
	margin-left: auto;
	margin-right: auto;
	margin-top: 70px;
}

.p-flow_contact a {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 16px;
	letter-spacing: 0.025em;
	line-height: 1.625;
	width: 100%;
	font-weight: 700;
	height: 100%;
}

.p-flow_tab__panel {
	display: none;
}

.p-flow_tab__panel.is-active {
	display: block;
}

@media screen and (max-width:768px) {
	.p-flow_message__catch {
		font-size: 27px;
		line-height: 1.5;
	}

	.p-flow_message__text {
		width: 80%;
		margin-right: auto;
		margin-left: auto;
		text-align: left;
		margin-top: 23px;
		font-size: 13.5px;
		line-height: 2.2;
	}

	.p-flow_tab {
		margin-top: 91px;
	}

	.p-flow_tab__list li {
		height: 48px;
	}

	.p-flow_tab__button {
		font-size: calc(37.5px/2);
	}

	.p-flow_content {
		max-width: 80%;
		flex-direction: column;
		margin-top: 68px;
	}

	.p-flow_content::before {
		border-width: 19px 17px 0 17px;
		bottom: -20px;
	}

	.p-flow_content::after {
		border-width: 18px 16px 0 16px;
		bottom: -18px;
	}

	.p-flow_period .p-flow_content::after {
		left: 49%;
	}

	.p-flow_period .p-flow_content::before {
		left: 49%;
	}

	.p-flow_content__texts, .p-flow_content__list {
		width: 100%;
		padding-top: 0;
		padding-left: 0;
		padding-right: 0;
	}

	.p-flow_content__title__en {
		font-size: 21px;
		line-height: 1.55;
	}

	.p-flow_content__title__jp {
		font-size: 21px;
		line-height: 1.55;
		margin-left: 15px;
	}

	.p-flow_content__text, .p-flow_content__list li {
		font-size: 13.5px;
		line-height: 2.2;
		margin-top: 5px;
		margin-bottom: 0;
	}

	.p-flow_content__point {
		margin-top: 17px;
		padding-left: 26px;
	}

	.p-flow_content__point__en {
		font-size: 18px;
	}

	.p-flow_content__point__list {
		margin-left: 21px;
		padding-left: 0px;
	}

	.p-flow_content__point__item {
		line-height: 1.6;

	}

	.p-flow_content__title {
		align-items: baseline;
	}

	.p-flow_content__visual {
		width: 100%;
		height: 0;
		padding-top: 66.5%;
		position: relative;
		margin-top: 25px;
	}

	.p-flow_content__visual img {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.p-flow_period {
		max-width: 80%;
	}

	.p-flow_period::before {
		height: calc(100% - 109px);
	}

	.p-flow_period::before {
		width: 29px;
		top: 58px;
		left: 0px;
	}

	.p-flow_content+.p-flow_content {
		margin-top: 51px;
	}

	.p-flow_period .p-flow_content {
		margin-top: 40px;
		width: 99%;
	}

	.p-flow_period .p-flow_content:last-of-type::after,
	.p-flow_period .p-flow_content:last-of-type::before {
		left: 41%;
	}

	.p-flow_period .p-flow_content__texts, .p-flow_period .p-flow_content__list {
		width: 100%;
	}

	.p-flow_period .p-flow_content__visual {
		width: 98%;
		margin-top: 14px;
		padding-top: 63%;
	}

	.p-flow_period .p-flow_content+.p-flow_content {
		margin-top: 39px;
	}

	.p-flow_period__wrapper::after {
		border-width: 19px 15px 0 14px;
		bottom: 32px;
		left: -37px;
	}
}

/*SPEC
=================================================*/

.p-spec_message__catch {
	text-align: center;
	font-size: 28px;
	letter-spacing: 0.1em;
	font-weight: 700;
	line-height: 1.66;
	font-feature-settings: "palt";
	color: #242424;
	margin-top: 110px;
	margin-bottom: 12px;
}

.p-spec_message__text {
	margin-bottom: 84px;
}

.p-spec_message__text p {
	font-size: 14px;
	letter-spacing: 0.025em;
	line-height: 1.85;
	color: #242424;
	text-align: center;
}


.p-spec_title {
	text-align: center;
	font-size: 24px;
	letter-spacing: 0.1em;
	font-weight: 700;
	line-height: 1.66;
	font-feature-settings: "palt";
	color: #242424;
}

.p-spec_intro+.p-spec_title {
	margin-top: 63px;
}

.p-spec_title__border {
	display: inline-flex;
	align-items: center;
	padding-right: 48px;
	padding-left: 48px;
	background-color: #fff;
	justify-content: center;
	height: 61px;
	border: 1px solid #242424;
}

.p-spec_intro {
	background-color: #ebebeb;
	margin-top: -50px;
	padding-top: 53px;
	padding-bottom: 39px;
}

.p-spec_intro .__caution {
	list-style: none;
	padding: 0;
	padding: 0;
	width: fit-content;
	max-width: 80%;
	margin-left: auto;
	margin-right: auto;
}

.p-spec_intro .__caution>li {
	text-indent: -1em;
	font-size: 14px;
	line-height: 1.75;
}

.p-spec_intro .__caution>li:before {
	content: "※";

}

.p-spec_intro p {
	text-align: center;
	font-size: 14px;
	line-height: 1.75;
	letter-spacing: 0.025em;
	color: #242424;
}

.p-spec_caution {
	list-style: none;
	padding: 0;
	width: fit-content;
	max-width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 63px;
}

.p-spec_caution li {
	text-indent: -1em;
	font-size: 14px;
	line-height: 1.75;
}

.p-spec_caution li:before {
	content: "※";
}

.p-spec_title__line {
	position: relative;
	display: inline-block;

}

.p-spec_title__line::after {
	display: block;
	content: "";
	width: 40px;
	height: 2px;
	background-color: #242424;
	position: absolute;
	bottom: -21px;
	left: 50%;
	transform: translateX(-50%);
}

.p-spec_insulation__about {
	width: 1040px;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	position: relative;
	margin-top: 70px;
}

.p-spec_insulation__about__visual {
	width: 100%;
	max-width: 600px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.p-spec_insulation__about__visual__wrapper {
	width: 100%;
	height: 0;
	padding-top: 66.666%;
	position: relative;
}

.p-spec_insulation__about__visual__wrapper img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

.p-spec_insulation__about__texts {
	width: 100%;
	max-width: 550px;
	text-align: center;
	margin-right: 0;
	margin-top: 109px;
	margin-left: auto;
	background-color: #fff;
	padding-top: 60px;
	padding-bottom: 52px;
	padding-left: 4.7%;
	padding-right: 4.7%;
}

.p-spec_insulation__about__title {
	margin: 0;
	font-size: 19px;
	letter-spacing: 0.05em;
	line-height: 1.85;
	font-feature-settings: "palt";
	color: #242424;
}

.p-spec_insulation__about__text {
	font-size: 13px;
	letter-spacing: 0.025em;
	line-height: 1.7;
	color: #242424;
	margin: 0;
	margin-top: 19px;
	padding-left: 0.3em;
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}

.p-spec_insulation__about__text::before {
	display: inline;
	content: "*";
	font-size: 17px;
	margin-right: 2px;
}

.p-spec_insulation__about__text+.p-spec_insulation__about__text {
	margin-top: 11px;
}

.p-spec_insulation__list {
	margin-top: 178px;
	padding-left: 0;
	width: 832px;
	max-width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.p-spec_insulation__item {
	list-style-type: none;
	display: grid;
	grid-template-columns: 29px 96px 19px auto 31px auto;
	grid-template-rows: 29px 40px repeat(2, auto);
	grid-column-gap: 0px;
	grid-row-gap: 0px;
	border: 1px solid #aeaeae;
}

.p-spec_insulation__item+.p-spec_insulation__item {
	margin-top: 19px;
}

.p-spec_insulation__item__number {
	grid-area: 2 / 2 / 3 / 3;
	background-color: #242424;
	color: #fff;
	font-size: 16px;
	letter-spacing: 0.1em;
	line-height: 1;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-feature-settings: "palt";
	height: 30px;
	width: 80px;
	position: relative;
}

.p-spec_insulation__item__number::after {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 0 15px 15px;
	border-color: transparent transparent transparent #242424;
	position: absolute;
	top: 0;
	right: -15px;
}

.p-spec_insulation__item__texts {
	grid-area: 2 / 4 / 5 / 5;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
}

.p-spec_insulation__item__size {
	font-size: 18px;
	letter-spacing: 0.1em;
	line-height: 1.4;
	padding-top: 3px;
	font-feature-settings: "palt";
	font-weight: 700;
	color: #242424;
}

.p-spec_insulation__item__how {
	font-size: 14px;
	margin-top: 5px;
	letter-spacing: 0.025em;
	font-feature-settings: "palt";
	color: #242424;
}

.p-spec_insulation__item__results {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-top: auto;
	color: #242424;
	margin-bottom: 8px;
}

.p-spec_insulation__item__results__sub {
	font-size: 14px;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-feature-settings: "palt";
	white-space: nowrap;
}

.p-spec_insulation__item__results__main {
	font-size: 40px;
	letter-spacing: 0.075em;
	font-feature-settings: "palt";
	font-weight: 700;
	margin-left: 18px;
}

.p-spec_insulation__item__results__value {
	font-size: 14px;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-feature-settings: "palt";
	margin-left: 4px;
	margin-top: 14px;
}

.p-spec_insulation__item__thumbnail {
	grid-area: 1 / 6 / 5 / 7;
}

.p-spec_insulation__item__thumbnail img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}

.p-spec_airtight {
	margin-top: 120px;
}

.p-spec_airtight__about {
	width: 655px;
	max-width: 80%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	/*align-items: flex-start;*/
	align-items: center;
	justify-content: flex-start;
	margin-top: 64px;
}

.p-spec_airtight__about__visual {
	width: 260px;
	/*margin-top: 8px;*/
}

.p-spec_airtight__about__texts {
	width: calc(100% - 260px);
	padding-left: 8.5%;
}

.p-spec_airtight__about__text {
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 1.75;
	margin: 0;
	color: #242424;
	text-align: center;
}

.p-spec_airtight__about__text+.p-spec_airtight__about__text {
	margin-top: 9px;
}

.p-spec_airtight__about__attention {
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 1.75;
	display: flex;
	align-items: flex-start;
	margin: 0;
	color: #242424;
	margin-top: 9px;
}

.p-spec_airtight__about__attention::before {
	content: "※";
}

.p-spec_airtight__case {
	width: 835px;
	max-width: 80%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	align-items: stretch;
	margin-top: 50px;
	justify-content: flex-start;
}

.p-spec_airtight__case__texts {
	width: calc(100% - 36%);
	margin-top: 115px;
	padding-right: 10%;
}

.p-spec_airtight__case__results {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.p-spec_airtight__case__number {
	background-color: #242424;
	color: #fff;
	font-size: 16px;
	letter-spacing: 0.1em;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-feature-settings: "palt";
	height: 30px;
	width: 80px;
	font-weight: 700;
	position: relative;
}

.p-spec_airtight__case__number::before {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 0 15px 15px;
	border-color: transparent transparent transparent #242424;
	position: absolute;
	top: 0;
	right: -15px;
}

.p-spec_airtight__item__results {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-left: 36px;
}

.p-spec_airtight__item__results__sub {
	font-size: 16px;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-feature-settings: "palt";
	white-space: nowrap;
	color: #242424;
}

.p-spec_airtight__item__results__main {
	font-size: 40px;
	letter-spacing: 0.075em;
	font-feature-settings: "palt";
	font-weight: 700;
	margin-left: 16px;
	color: #242424;
}

.p-spec_airtight__item__results__value {
	font-size: 14px;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-feature-settings: "palt";
	margin-left: 4px;
	margin-top: 14px;
	color: #242424;
}

.p-spec_airtight__case__text {
	margin: 0;
	font-size: 14px;
	letter-spacing: 0.01em;
	line-height: 1.75;
	color: #242424;
}

.p-spec_airtight__case__visual {
	width: 300px;
	margin: 0;
}

.p-spec_airtight__case__visual img {
	width: 100%;
	object-fit: cover;
}

.p-spec_airtight__case__visual__text {
	text-align: center;
	font-size: 14px;
	letter-spacing: 0.1em;
	margin-top: 4px;
	color: #242424;
}

@media screen and (max-width:900px) {
	.p-spec_insulation__item {
		grid-template-columns: 29px 68px 19px auto 31px auto;
	}

	.p-spec_insulation__item__number {
		height: 25px;
		width: 66px;
		line-height: 1;
		font-size: 14px;
	}

	.p-spec_insulation__item__number::after {
		right: -13px;
		font-size: 14px;
		border-width: 12px 0 13px 13px;
	}

	.p-spec_airtight__case__visual__text {
		font-size: 13px;
		letter-spacing: 0;
	}
}

@media screen and (max-width:768px) {
	.p-spec_message__catch {
		font-size: 27px;
		line-height: 1.45;
		margin-top: 111px;
	}

	.p-spec_message__text p {
		max-width: 80%;
		margin-right: auto;
		margin-left: auto;
		font-size: 13px;
		line-height: 2.25;
		letter-spacing: 0.07em;
		text-align: left;
		margin-top: 26px;
	}

	.p-spec_message__text {
		margin-bottom: 90px;
	}

	.p-spec_title {
		font-size: 21px;
	}

	.p-spec_intro+.p-spec_title {
		margin-top: 95px;
	}


	.p-spec_title__border {
		height: 51px;
		padding-right: 32px;
		padding-left: 32px;
		line-height: 1;
	}

	.p-spec_intro {
		margin-top: -43px;
		padding-top: 46px;
		padding-bottom: 41px;
	}

	.p-spec_intro .__caution {}

	.p-spec_intro .__caution>li {
		font-size: 12px;
		letter-spacing: 0.05em;
	}


	.p-spec_intro p {
		width: 340px;
		max-width: 80%;
		margin-right: auto;
		margin-left: auto;
		font-size: 13px;
		line-height: 2.25;
		letter-spacing: 0.07em;
		text-align: left;
	}

	.p-spec_caution {
		margin-bottom: 95px;
	}

	.p-spec_caution li {
		font-size: 12px;
		letter-spacing: 0.05em;
	}

	.p-spec_title__line {
		font-size: 24px;
		line-height: 1.45;
	}

	.p-spec_insulation__about {
		margin-top: 60px;
	}

	.p-spec_insulation__about__texts {
		width: 90%;
		margin-right: auto;
		margin-left: auto;
		margin-top: clamp(210px, 50svw, 330px);
		padding-top: 42px;
		padding-bottom: 30px;
		padding-left: 4.7%;
		padding-right: 4.7%;
	}

	.p-spec_insulation__about__visual {
		left: 50%;
		transform: translateX(-50%);
	}

	.p-spec_insulation__about__title {
		font-size: 17px;
		line-height: 1.73;
		letter-spacing: 0.03em;
	}

	.p-spec_insulation__about__text {
		padding-left: 2px;
		letter-spacing: 0.0em;
		margin-top: 29px;
		line-height: 1.5;
	}

	.p-spec_insulation__about__text+.p-spec_insulation__about__text {
		margin-top: 25px;
	}

	.p-spec_insulation__list {
		margin-top: 12px;
		max-width: 90%;

	}

	.p-spec_insulation__item {
		display: block;
	}

	.p-spec_insulation__item__number {
		margin-top: 39px;
		margin-left: 17px;
	}

	.p-spec_insulation__item__texts {
		width: 90%;
		margin-right: auto;
		margin-left: auto;
		margin-top: 14px;
	}

	.p-spec_insulation__item__size {
		font-size: 18px;
		letter-spacing: 0.134em;
		padding-left: 5px;
	}

	.p-spec_insulation__item__how {
		font-size: 13px;
		margin-top: 5px;
		letter-spacing: 0.07em;
		padding-left: 8px;
	}

	.p-spec_insulation__item__results {
		margin-top: 25px;
		margin-bottom: 21px;
	}

	.p-spec_insulation__item__results__sub {
		font-size: 13px;
		letter-spacing: 0.15em;
		white-space: nowrap;
	}

	.p-spec_insulation__item__results__main {
		font-size: 32px;
		letter-spacing: 0.075em;
		font-feature-settings: "palt";
		font-weight: 700;
		margin-left: 8px;
	}

	.p-spec_insulation__item__results__value {
		font-size: 10px;
		white-space: nowrap;
		margin-left: 0px;
	}

	.p-spec_airtight__about {
		max-width: 90%;
		display: block;
	}

	.p-spec_airtight__about__visual {
		width: 100%;
		max-width: 400px;
		margin-top: 0;
		margin-left: auto;
		margin-right: auto;
	}

	.p-spec_airtight__about__visual img {
		width: 100%;
		object-fit: cover;
	}

	.p-spec_airtight__about__texts {
		width: 100%;
		padding-left: 0;
		margin-top: 25px;
	}

	.p-spec_airtight__about__attention {
		font-size: 13px;
		letter-spacing: 0;
	}

	.p-spec_airtight__case {
		display: block;
		max-width: 90%;
	}

	.p-spec_airtight__case__texts {
		width: 100%;
		margin-top: 50px;
		padding-right: 0;
	}

	.p-spec_airtight__case__number {
		height: 25px;
		width: 66px;
		line-height: 1;
		font-size: 14px;
	}

	.p-spec_airtight__case__number::before {
		right: -13px;
		font-size: 14px;
		border-width: 12px 0 13px 13px;
	}

	.p-spec_airtight__item__results__sub {
		font-size: 13px;
		letter-spacing: 0.15em;
	}

	.p-spec_airtight__item__results__main {
		font-size: 32px;
		letter-spacing: 0.075em;
		font-feature-settings: "palt";
		font-weight: 700;
		margin-left: 16px;
	}

	.p-spec_airtight__item__results__value {
		font-size: 14px;
		white-space: nowrap;
		margin-left: 0px;
		margin-top: 7px;
	}

	.p-spec_airtight__case__text {
		font-size: 14px;
		letter-spacing: 0.025em;
		line-height: 1.75;
		font-feature-settings: "palt";
	}

	.p-spec_airtight__case__visual {
		width: 100%;
		margin-top: 21px;
	}


}