@charset "utf-8";
/*
Theme Name: 【CREATE】ワードプレス ベーステーマ
Description: bootstrapレスポンシブ対応のシンプルなテーマ mf
Author: ISHIKAWA
*/

/*****************************************************************************************************
** basic
*****************************************************************************************************/
html{
	font-size: 62.5%;/* 1rem = 10pxと定義 */
	visibility: hidden;/*フォントちらつき防止*/
}
html.wf-active {
  visibility: visible;/*フォントちらつき防止*/
}
body {
	font-family: source-han-serif-jp-variable, sans-serif;
font-style: normal;
font-variation-settings: "wght" 250;
	font-size: 1.5rem;
	color: #000000;
	line-height: 1.75;
	letter-spacing: 0.03em;
	margin: 0;
	padding: 0;
	overflow-wrap: break-word;
	overflow:scroll;
	overflow-x: hidden;
	background-color:#fff;
}
/*reCAPTCHAのロゴを非表示*/
.grecaptcha-badge {
	visibility: hidden; 
}
@media screen and (min-width: 576px) {/*スマホ大*/
}
@media screen and (min-width: 768px) {/*タブレット*/
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
body { font-size: 1.6rem;}
}
@media screen and (min-width: 1200px) {/*PC大*/
}
/* ローディング画面 */
#loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
/* HTML: <div class="loader"></div> */
.loader {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 15px;
  aspect-ratio: 1;
  border-radius: 50%;
  animation: l5 1s infinite linear alternate;
}
@keyframes l5 {
    0%  {box-shadow: 20px 0 #000, -20px 0 #0002;background: #000 }
    33% {box-shadow: 20px 0 #000, -20px 0 #0002;background: #0002}
    66% {box-shadow: 20px 0 #0002,-20px 0 #000; background: #0002}
    100%{box-shadow: 20px 0 #0002,-20px 0 #000; background: #000 }
}
.loaded {
  opacity: 0;
  visibility: hidden;
}

/*****************************************************************************************************
** container
*****************************************************************************************************/
.container {
    padding-right: 15px;
    padding-left: 15px;
}
.container-wrap {
	padding-top: 50px;
	padding-bottom: 75px;
}
.container-wrap-t {
	padding-top: 50px;
}
.container-wrap-b {
	padding-bottom: 75px;
}
.pagesection {
	margin-bottom: 100px;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.container-wrap {
	padding-top: 100px;
	padding-bottom: 125px;
}
.container-wrap-t {
	padding-top: 100px;
}
.container-wrap-b {
	padding-bottom: 125px;
}
.pagesection {
	margin-bottom: 150px;
}
}
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
		max-width: 1140px;
}
}

/*****************************************************************************************************
** header
*****************************************************************************************************/
#header {
	top: 0;
    position: absolute;
    width: 100%;
    margin: 0px auto 0;
    z-index: 999;
	height: 60px;
    padding: 0;
}
#header .inner {
    position: relative;
    padding:0;
	height: 60px;
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 300;
}
.home #header .logo { display: none;}
#header .logo {
    width: 190px;
    padding: 22px 5px;
    z-index: 0 !important;
    text-align: left;
    margin: 0;
    font-size: initial;
    margin-left: 15px;
    position: relative;
}
#header.open .logo,#header.fixed.open .logo {z-index: -1 !important;}
#header .logo img,#header.fixed .logo img {width: 100%;}
#header .logo img {
  filter: invert(100%) sepia(0%) saturate(7497%) hue-rotate(76deg) brightness(109%) contrast(100%);
}
#header.fixed .logo img { filter: none}
/* Fixed */
#header.fixed {
    position: fixed;
    margin-top: 0px;
    top: 0px;
    animation-name: fade;
  animation-duration: 1s;
	opacity:0.97;
    padding: 0px;
	background: #fff;
}
@keyframes fade{
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}
.home #header.fixed .logo { display: inline-block}
/* menu(右) */
.menu-r {
	position:absolute;
	bottom: 0px;
	right: 0;
	background: #A78F45;
    height: 100%;
	overflow: hidden;
	width: 70px
}

/* menu（SP部分） */
#header nav#global-nav { display: none;}
#header nav#global-nav-sub {/*下層ページの場合*/
		display:none;
		position: absolute;
		top:0;
		width: 100%;
		height: 100vh;
	height: calc(var(--vh, 1vh) * 100)/*ツールバー対策（作業中）*/;
	background: #3B4043;
		opacity:1;
		left: 0;
		z-index: -1/*ロゴ背面は1にする*/;
}
#header.fixed nav#global-nav-sub {/*スクロールfixedの場合*/
		top:0;
}
#header nav#global-nav-sub ul.menu {
    display: block;
    width: 100%;
    position: absolute;
    top: 115px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    margin: 0;
    padding: 0 25px;
}
#header.fixed nav#global-nav-sub ul.menu {
    top: 90px;
}
#header nav#global-nav-sub ul.menu > li a {
		padding:5px 5px;
		display: block;
		color: #fff;
		border: none;
}
#header nav#global-nav-sub .spmenu ul.menu > li a span {
    display: inline ;
}
#header nav#global-nav-sub .spmenu ul.menu .menu-item a.menu-image-title-below {
	text-align: left;
}
/*#header nav#global-nav-sub ul.menu > li > ul.sub-menu {
	display: none
}*/
#header nav#global-nav-sub ul.menu > li > ul.sub-menu {
	font-size: 1.2rem;
    padding-left: 0;
	margin-bottom: 25px
}
#header nav#global-nav-sub ul.menu > li > ul.sub-menu li a {
    padding: 3px 10px;
}
#header nav#global-nav-sub ul.menu > li > ul.sub-menu li a::before {
	content: "-";
	margin-right: 7px
}
#header nav#global-nav-sub .spmenu .menu-menu_header-container > ul > li:nth-child(5),#header nav#global-nav-sub .spmenu .menu-menu_header-container > ul > li:nth-child(6),#header nav#global-nav-sub .spmenu .menu-menu_header-container > ul > li:nth-child(7),#header nav#global-nav-sub .spmenu .menu-menu_header-container > ul > li:nth-child(8) {
	width: 100%;
	font-weight: normal
}
.spmenu .hvr-underline-reveal:before { display: none}

/* toggle開閉ボタン */
#header #nav_toggle {
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		top: 22px;
		right:23px;
		z-index: 9999;
	cursor : pointer;
	}
	#nav_toggle div {
		position: relative;
	}
	#nav_toggle span{
		display: block;
		height: 2px;
		background: #fff;/*開ボタンカラー*/
		position:absolute;
		width: 100%;
		left: 0;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}
	#nav_toggle span:nth-child(1){
		top:0px;
	}
	#nav_toggle span:nth-child(2){
		top:6px;
	}
	#nav_toggle span:nth-child(3){
		top:12px;
	}

/* toggle開閉ボタンopen時 */
	.open #nav_toggle span,#header.fixed.open #nav_toggle span{
		background: #fff;
	}
	.open #nav_toggle span:nth-child(1) {
			top: 5px;
		   -webkit-transform: rotate(135deg);
			-moz-transform: rotate(135deg);
			transform: rotate(135deg);
		}
		.open #nav_toggle span:nth-child(2) {
			width: 0;
			left: 50%;
		}
		.open #nav_toggle span:nth-child(3) {
			top: 5px;
			-webkit-transform: rotate(-135deg);
			-moz-transform: rotate(-135deg);
			transform: rotate(-135deg);
		}

@media screen and (max-width: 896px) and (orientation: landscape) { /*スマホ横向き*/
#header nav#global-nav-sub ul.menu > li > ul.sub-menu { display: none}
#header nav#global-nav-sub ul.menu { top: 110px;}
}

@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#header {
	height: 90px;
	padding: 0;
}
#header .inner { height: 90px;}
#header.fixed {
	height: 80px;
    padding:0;
}
#header.fixed .inner { height: 80px;}
#header .logo {
	width: 250px;
	margin: 7px 0 0 10px;
	padding: 27px 15px;
	float: left;
	line-height: 0
}
#header.fixed .logo {
	width: 220px;
	margin: 0 0 0 10px;
}

/* メインメニュー */
#header nav#global-nav { 
	display:inline;
	float: right;
	position: static;
	width: auto;
	height: auto;
	background: none;
	opacity:1;
	z-index: 999;
	margin-right: 110px;
}
#header nav#global-nav ul.menu,#header.fixed nav#global-nav ul.menu {
	position: static;
	width: auto;
    list-style: none;
	display: flex;
	justify-content: flex-end;
	font-style: normal;
	font-weight: 500;
	padding: 10px 0 0 0;
	margin-bottom: 0;
}
#header nav#global-nav ul.menu > li {
    padding: 15px 17px 20px 17px;
	margin: 0;
	position: static;
	border-bottom: none;
	width: auto
}
#header nav#global-nav ul.menu > li a {
	color:#fff;
	font-size: 1.8rem;
	display:block;
	position: relative;
	padding: 0
}
.home #header nav#global-nav ul.menu > li a {
		color: #ffffff;
}
#header.fixed nav#global-nav ul.menu > li a {
	color:#000;
	font-size: 1.6rem;
}
#header nav#global-nav ul.menu > li a:hover,.home #header nav#global-nav ul.menu > li a:hover,#header.fixed nav#global-nav ul.menu > li a:hover {
	color:#A78F45;
}
.menu-r ul li:first-child a {width: 22px;}
#header.fixed .menu-r img,.home #header.fixed .menu-r img {
  filter: invert(99%) sepia(0%) saturate(2%) hue-rotate(179deg) brightness(111%) contrast(100%);
}
.home #header .menu-r img {
  filter: none
}

/* menu(右) */
.menu-r {
	background: none;
	width: 115px;
}
.menu-r ul {
	width: 115px;
	text-align: center;
	padding: 0;
	margin: 25px 0 0 0;
}
.menu-r ul {
	width: 115px;
}
.menu-r ul li:first-child a {
	width: 25px;
	padding: 0px 0px;
	display: inline-block;
}
#header #nav_toggle { display: none;}
}

/*****************************************************************************************************
** footer
*****************************************************************************************************/
#footer {
	position: relative;
	background: #3F3E3A
}
/* フッターcontact */
#footer .f-contact {
	position: relative;
	background: url("img/f-contact.jpg") center;
	padding: 85px 0;
	color: #fff;
	text-align: center
}
#footer .f-contact::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .3);
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}
#footer .f-contact a {
	color: #ffffff
}
#footer .f-contact .container {
	position: relative;
	z-index: 1;
	color: #fff;
}
#footer .f-contact h2 {
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 300;
	font-size: 3.5rem;
	text-align: center;
    margin-bottom: 25px;
}
#footer .f-contact h2 span {
	font-size: 1.3rem;
	margin-left: 15px;
}
#footer .f-contact .txt1 {
	text-align: center;
    margin-bottom: 25px;
	line-height: 1.9;
}
#footer .f-contact dl {
	border: #A78F45 1px solid;
    padding: 35px 25px;
}
#footer .f-contact dl dt {
	font-size: 1.8rem;
	font-weight: 400
}
#footer .f-contact dl dd {
	margin-bottom: 0
}
#footer .f-contact dl dt:first-child img {
    width: 22px;
    margin-right: 7px;
}
#footer .f-contact dl dt:first-child + dd {
	font-size: 3.3rem;
    line-height: 0.7;
    margin: 15px 0 40px 0;
	letter-spacing: 0.2rem;
}
#footer .f-contact dl dt:first-child + dd span {
	font-size: 1.2rem
}
#footer .f-contact dl dt:nth-of-type(2) img {
    width: 22px;
    margin-right: 7px;
}
#footer .f-contact dl dt:nth-of-type(2) + dd img {
    width: 45px;
    margin-top: 15px;
}
/* 住所、メニュー */
#footer .add {
	position: relative;
	background: #3F3E3A;
    padding: 60px 25px;
    color: #fff;
}
#footer .add .add-lt {
	position: relative;
	font-size: 1.3rem
}
#footer .add .add-lt a,#footer .add .add-lt a:active,#footer .add .add-lt a:hover {
	color: #fff !important;
}
#footer h1.logo {
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 300;
    font-size: 2.0rem;
}
#footer .add .add-rt #menu-menu_footer {
    display: flex;
	justify-content:space-between;
	flex-wrap:wrap;
    margin-top: 20px;
    padding-left: 0;
}
#footer .add .add-rt #menu-menu_footer li {
	width: 50%
}
#footer .add .add-rt #menu-menu_footer li a {
	color: #fff;
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 300;
	background: url("img/arrow1.svg") no-repeat 0 1px;
    background-size: 15px;
	padding-left: 20px;
}
/* SNS */
#footer .f-sns ul {
	display: flex;
    justify-content: flex-end;
    margin-top: 5px;
}
#footer .f-sns ul li{
	margin-left: 10px
}
#footer .f-sns ul li img{
    width: 23px;
}
/* コピーライト */
#copyright {
	text-align: center;
	font-size: 1.3rem;
	margin-bottom: 0;
    padding-top: 25px;
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 300;
}
/* ページトップへボタン */
#page_top{
	display: none;
  width: 50px;
  height: 50px;
  position: fixed;
  right: 25px;
  bottom: -75px;
	border: 1px solid #A78F45;
	z-index: 9999;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
    content: "";
    display: inline-block;
	width: 20px;
	height: 20px;
	background-image: url("img/arrow-bar-to-up.svg");
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
    position: absolute;
top: 50%;
left: 57%;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
#page_top a:hover::before{
	filter: invert(1) brightness(0) invert(62%) sepia(50%) saturate(450%) hue-rotate(11deg) brightness(95%) contrast(90%);
	transition: all ease-in 0.2s;
}
@media screen and (min-width: 768px) {/*タブレット*/
#footer .f-contact dl {
	display: flex;
	justify-content:space-between;
	flex-wrap:wrap;
	text-align: left;
    padding: 45px 65px;
}
#footer .f-contact dl dt {
	width: 50%
}
#footer .f-contact dl dd {
	width: 50%;
	text-align: center
}
#footer .f-contact dl dt:first-child + dd {
    margin: 0 0 50px 0;
    line-height: 0.8;
}
#footer .f-contact dl dt:nth-of-type(2) + dd img {
    width: 45px;
    margin-top: 0px;
}
#footer .add .add-lt,#footer .add .add-rt  {
	padding-top:30px;
	padding-bottom: 30px;
}
#footer .add .add-rt #menu-menu_footer {
    margin-top: 0px;
}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#footer .f-contact {
    padding: 120px 0;
}
#footer .f-contact h2 {
    text-align: left;
    margin-top: 25px;
	margin-bottom: 45px;
}
#footer .f-contact .txt1 {
    text-align: left;
    margin: 0 15px;
}
#footer .f-contact .ct-lt {
    padding: 0;
    margin-left: 25px;
    width: calc(35% - 25px);
}
#footer .f-contact .ct-rt {
    padding: 0;
    margin-right: 25px;
    width: calc(65% - 25px);
}
#footer .f-contact dl {
	padding: 55px 40px;
	margin-bottom: 0;
}
#footer .f-contact dl dt {
	width: 55%;
}
#footer .f-contact dl dd {
	width: 45%;
}
#footer .f-contact dl dt:nth-of-type(2) + dd img {
        width: 55px;
        margin-top: -10px;
}
#footer .add {
    padding: 120px 25px 70px 25px;
}
#footer .add .add-lt, #footer .add .add-rt {
	padding-top: 0px;
	padding-bottom: 0px;
}
#footer .add .add-rt #menu-menu_footer {
        margin-left: 40%;
        justify-content: flex-end;
        width: 60%;
}
#footer .f-sns ul {
    margin-top: 25px;
}
#copyright {
    text-align: left;
}
#page_top{
	display: inline;
}
}
@media screen and (min-width: 1200px) {/*PC大*/
#footer .f-contact dl {
	margin-left: 30px;
}
#footer .f-contact dl dt {
	width: 50%;
}
#footer .f-contact dl dd {
	width: 50%;
}
}
	
/*****************************************************************************************************
動画＆各ページメインヴィジュアル
*****************************************************************************************************/
/***************************
パララックスアニメーション
****************************/
#parallaxcontainer {
  margin-top: 0px;
  position: relative;
  z-index: 1;
}
/* 各スライド共通 */
.parallax-slide {
  position: sticky;
  top: 0px;
  min-height: 100vh;
  background: #fff;
  padding: 0px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
/* 背景画像を持つセクション */
.bg-image-1 { background: url("img/topvisual1.jpg") no-repeat center;}
.bg-image-2 { background: url("img/topvisual2.jpg") no-repeat center;}
.bg-image-3 { background: url("img/topvisual3.jpg") no-repeat center;}
.bg-image-4 { background: url("img/topvisual4.jpg") no-repeat center;}
.bg-image-1,.bg-image-2,.bg-image-3,.bg-image-4 {
  background-size: cover;
  color: #fff;
}
.bg-image-1::after {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .3);
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}
/*.bg-image-1 {
	background-size: cover;
	color: #fff;
	background: #ff0000;
	width: 100%;
	height: 100vh
}*/
/* 文字部分 */
#parallaxcontainer h1 {
    width: 80%;
    margin: -35px auto 0 auto;
    z-index: 1;
    max-width: 470px;
}
#parallaxcontainer .mainvtxt {
	margin: 0;
    position: absolute;
    bottom: 100px;
    left: 15px;
    font-size: 2.4rem;
	font-weight: 600;
    line-height: 0.9;
    margin-right: 15px;
	max-width: 420px;
    /* width: 350px;*/
    /* width: calc(100% - 40px);*/
}
#parallaxcontainer .mainvtxt .pctc {
	line-height: 1.3
}
#parallaxcontainer .mainvtxt span {
    font-size: 1.5rem;
	font-weight: 500;
}
#parallaxcontainer .vmore {
    font-size: 1.4rem;
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 400;
    text-align: right;
    margin-top: 25px;
}
#parallaxcontainer .vmore a {
	color: #fff;
	background: url("img/arrow1.svg") no-repeat 0 3px;
    padding-left: 22px;
    background-size: 15px;
}
/*#parallaxcontainer .vmore a:hover {
    color: #A78F45;
    filter: invert(1) brightness(0) invert(62%) sepia(50%) saturate(450%) hue-rotate(11deg) brightness(95%) contrast(90%);
    transition: all ease-in 0.2s;
}*/
@media screen and (min-width: 576px) {/*スマホ大*/
#parallaxcontainer .mainvtxt { left: 35px;}
}
@media screen and (min-width: 768px) {/*タブレット*/
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#parallaxcontainer .mainvtxt { 
    left: 65px;
	font-size: 2.6rem;
	max-width: 480px;
	}
#parallaxcontainer h1 {
    margin: 0 auto;
}
}
@media screen and (min-width: 1200px) {/*PC大*/
}

/*下層ページ*/
#pagevisual {
	position: relative;
    height: 450px;
    margin-top: 0px;
    background: #000;
}
#pagevisual img {
    height: 450px;
    width: 100%;
    object-fit: cover;
    opacity: 0.7;
}
#pagevisual h1.content-title {
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 500;
    position: absolute;
    top: 200px;
    left: 25px;
    margin: auto;
    font-size: 4rem;
	color: #fff;
}
@media screen and (min-width: 768px) {/*タブレット*/
#pagevisual h1.content-title {
    left: 50px;
    font-size: 4.3rem;
}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#pagevisual,#pagevisual img { height: 500px;}
#pagevisual h1.content-title {
    left: 75px;
    font-size: 4.5rem;
	top: 230px;
}
}

/*****************************************************************************************************
** index
*****************************************************************************************************/
.index-block { 
	position: relative;
    color: #fff;
}
.index-block a { color: #fff}
.index-block a:hover,.index-block a:focus {  color: #A78F45;}
.index-block h2 {
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 500;
	font-size: 3.0rem;
    margin-bottom: 15px;
}
.index-block .button01 {
	width: 70%;
    margin: 25px auto 0 auto;
}
@media screen and (min-width: 576px) {/*スマホ大*/
.index-block .button01 { width: 255px;}
}
@media screen and (min-width: 768px) {/*タブレット*/
.index-block .button01 { width: 355px;}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block h2 {
	font-size: 3.5rem;
    margin-bottom: 25px;
}
.index-block .button01 { width: 325px;}
}

/***************************
WORKS
****************************/
.index-block .idx-works {
	position: relative;
	background: #686258;
	padding: 75px 0;
}
.index-block .idx-works .workstitle {
	font-size: 2.0rem;
    margin: 10px 10px 5px 10px;
}
.index-block .idx-works .workssub {
	font-size: 1.2rem;
    margin-bottom: 50px;
    margin-left: 10px;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-works {
	padding: 115px 0;
}
}

/***************************
BLOG
****************************/
.index-block .idx-blog { 
	position: relative;
	background: #3F3E3A;
	padding: 75px 0;
}
.index-block .idx-blog .container { 
	position: relative;
}
.index-block .idx-blog .blogmore {
    position: absolute;
    right: 25px;
    bottom: -50px;
}
.index-block .idx-blog .blogmore .button02 a { color: #A78F45 !important;}
.index-block .idx-blog .blogbox {
	position: relative;
	display: flex;
	margin-bottom: 25px
}
.index-block .idx-blog .blogbox .blogboximg {
    width: 47%;
    margin-right: 3%;
}
.index-block .idx-blog .blogbox .blogboxtxt {
	position: relative;
	width: 50%
}
.index-block .idx-blog .blogbox .date {
    font-size: 1.2rem;
}
.index-block .idx-blog .blogbox .blogtitle {
    font-size: 1.6rem;
}
.index-block .idx-blog .blogbox .blogboxtxt .catelabel {
    color: #A78F45;
	border: 1px solid #A78F45;
    font-size: 1.1rem;
    padding: 0px 7px;
    position: absolute;
    top: 4px;
    left: 85px;
}
.catelabel.blog { background: none}
@media screen and (min-width: 768px) {/*タブレット*/
.index-block .idx-blog .blogbox {
	display: inline;
	margin-bottom: 0px
}
.index-block .idx-blog .blogbox .blogboximg {
    width: 100%;
    margin-right: 0%;
	margin-bottom: 10px;
}
.index-block .idx-blog .blogbox .blogboxtxt {
	width: 100%
}
.index-block .idx-blog .blogbox .catelabel {
    top: 145px;
}
.index-block .idx-blog .blogmore {
    right: 0px;
    bottom: -75px;
}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-blog .blogbox {
	display: flex;
	margin-bottom: 15px
}
.index-block .idx-blog .blogbox .blogboximg {
    width: 47%;
    margin-right: 3%;
	margin-bottom: 0;
}
.index-block .idx-blog .blogbox .blogboxtxt {
	width: 50%
}
.index-block .idx-blog .blogbox .catelabel {
	top: 0;
}
}

/***************************
Instagram
****************************/
.index-block .idx-insta { 
	position: relative;
	background: #3F3E3A;
	padding: 75px 0;
}
.index-block .idx-insta .button02 a { 
	color: #A78F45 !important;
    text-align: right;
}
.index-block .idx-insta .button02 a img {
    width: 12px;
    height: 12px;
    margin-top: 0;
    margin-right: 0;
}

/***************************
ABOUT US
****************************/
.index-block .idx-about { 
	position: relative;
	background: #686258;
	padding: 75px 0;
}
.index-block .idx-about .aboutbox {
	margin: 0 auto;
}
.index-block .idx-about h2 { 
	font-size: 1.6rem;
	color: #A78F45;
}
.index-block .idx-about .abcatch { 
	font-size: 2.6rem;
    margin-bottom: 50px;
    line-height: 1.9;
}
.index-block .idx-about p {
	font-size: 1.4rem;
	line-height: 2;
    margin-bottom: 25px;
}
.index-block .idx-about .button01 {
    margin: 50px 0 0 auto;
}
@media screen and (min-width: 768px) {/*タブレット*/
.index-block .idx-about .aboutbox {
    max-width: 420px;
}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.index-block .idx-about {
	padding: 115px 0;
}
.index-block .idx-about .aboutbox {
    max-width: 530px;
}
.index-block .idx-about .abcatch {
    font-size: 3.0rem;
	margin-bottom: 70px;
}
.index-block .idx-about .button01 {
    margin: 75px 0 0 auto;
}
}

/*****************************************************************************************************
** page
*****************************************************************************************************/
#main-block {
	position: relative; 
	background: #686258;
	color: #FFFFFF
}
/*********************************************
ページ共通
**********************************************/
/*パンくず*/
#main-block .breadcrumbsbox {
    position: relative;
    overflow: hidden;
    font-size: 1.2rem;
	text-align: right;
    padding: 0px 15px 50px 15px;
    color: #A78F45;
}
#main-block .breadcrumbsbox a {
    color: #A78F45;
}
#main-block .breadcrumbsbox span { margin: 0 2px}

/*タイトル共通*/
#main-block h2 {
    position: relative;
	font-family: cormorant-garamond, serif;
	font-style: normal;
	font-weight: 500;
	font-size: 3.0rem;
    margin-bottom: 65px;
	text-align: center;
}
#main-block h2::before {
    content: "";
    display: inline-block;
    width: 50px;
    height: 1px;
    background-color: #A78F45;
    position: absolute;
    bottom: -25px;
    left: 0;
    right: 0;
    margin: auto;
}
#main-block h3 {font-size: 2.0rem; font-weight: 500; margin-bottom: 15px}
#main-block h4 {font-size: 1.6rem}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#main-block h2 { font-size: 3.4rem; margin-bottom: 85px;}
#main-block h3 {font-size: 2.2rem; margin-bottom: 25px;}
#main-block h4 {font-size: 1.8rem}
}

/*********************************************
ABOUT US
**********************************************/
.aboutus {}
.aboutus .concept {}
.aboutus .concept .conceptbox {
    margin: 0 auto;
    margin-bottom: 75px;
}
.aboutus .concept .cccatch {
    font-size: 2.6rem;
    margin-bottom: 50px;
    line-height: 1.9;
}
.aboutus .concept p {
    font-size: 1.4rem;
    line-height: 1.8;
    margin-bottom: 25px;
}
.aboutus .job .wp-block-columns {
    text-align: center !important
}
.aboutus .job .wp-block-image img {
	width: 100px !important
}
@media screen and (min-width: 768px) {
.aboutus .concept .conceptbox { max-width: 530px;}
.aboutus .concept .cccatch { font-size: 3.2rem;}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.aboutus .concept .conceptbox { max-width: 850px;}
.aboutus .concept .cccatch {
	font-size: 4.0rem;
	margin-bottom: 70px;
}
.aboutus .concept .metaslider { margin-top: 120px;}
.aboutus .job {
	width: 700px;
	margin: 0 auto
}
.aboutus .job .wp-block-image img { width: 130px !important}
}

/*********************************************
PROCESS
**********************************************/
.process {}
.process .flow dl.flowstep {
	width: 100%;
}
.process .flow dl.flowstep dt {
    position: relative;
    padding: 15px 15px 15px 70px;
    font-size: 1.8rem;
    background: #3f3e3a;
    margin-left: 50px;
    margin-top: 50px;
}
.process .flow dl.flowstep dt::before {
    content: '';
    display: inline-block;
    width: 100px;
    height: 100px;
    position: absolute;
    top: -20px;
    left: -50px;
    background-size: contain;
    vertical-align: middle;
}
.process .flow dl.flowstep dt:first-child::before { background-image: url(img/process-step1.png);}
.process .flow dl.flowstep dt:nth-of-type(2)::before { background-image: url(img/process-step2.png);}
.process .flow dl.flowstep dt:nth-of-type(3)::before { background-image: url(img/process-step3.png);}
.process .flow dl.flowstep dt:nth-of-type(4)::before { background-image: url(img/process-step4.png);}
.process .flow dl.flowstep dt:nth-of-type(5)::before { background-image: url(img/process-step5.png);}
.process .flow dl.flowstep dt:nth-of-type(6)::before { background-image: url(img/process-step6.png);}
.process .flow dl.flowstep dt:nth-of-type(7)::before { background-image: url(img/process-step7.png);}
.process .flow dl.flowstep dd {
    padding: 35px 15px 45px 25px;
	margin-bottom: 45px;
}
.process .faq dl.qalist {
	width: 100%;
    padding: 25px 15px 0 15px;
}
.process .faq dl.qalist dt {
    position: relative;
    font-size: 1.8rem;
    padding-left: 25px;
    margin-bottom: 15px;
}
.process .faq dl.qalist dt:first-child {
    border-top: 1px solid #81796b;
    padding-top: 25px;
}
.process .faq dl.qalist dt::before {
    content: 'Q.';
    position: absolute;
    top: 0;
    left: 0px;
}
.process .faq dl.qalist dt:first-child::before {
    top: 25px;
}
.process .faq dl.qalist dd {
    position: relative;
	border-bottom: 1px solid #81796b;
	margin-bottom: 45px;
    padding-left: 25px;
    padding-bottom: 45px;
}
.process .faq dl.qalist dd::before {
    content: 'A.';
    position: absolute;
    top: 0;
    left: 0px;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.process .flow dl.flowstep { margin-top: 100px;}
.process .faq dl.qalist { padding: 25px 25px 0 25px;}
}

/*********************************************
COMPANY
**********************************************/
.company {}
.company .message {
    max-width: 900px;
    margin-right: auto;
    margin-left: auto;
}
.company .message .name-s {
	font-size: 1.2rem;
    margin-bottom: 0;
}
.company .message .txt1 {
    max-width: 380px;
    margin-left: auto;
}
.company .message .txt1 p {
    margin-bottom: 25px;
}
.company .companyprf .prfclm {
    border-bottom: 1px solid #7d7567;
    margin-bottom: 0;
}
.company .companyprf .wp-block-columns {
    gap: 0;
}
.company .companyprf figure {
    margin: 0;
}
.company .companyprf table {
    margin-bottom: 0px;
    border-bottom: none;
}
.company .companyprf .wp-block-table tr {
    border-top: 1px solid #7d7567;
    padding: 15px 0;
    display: block;
}
.company .companyprf .wp-block-table td,.company .companyprf .wp-block-table th {
    border: none;
}
.company .companyprf .wp-block-table td:first-child {
	width: 95px
}
.company .companyprf ul.bar-list {
  list-style: none !important; /* 標準のマークを消す */
  padding-left: 0px; /* 左側の余白調整 */
}
.company .companyprf ul.bar-list li {
    padding-left: 15px !important;
    text-indent: 0 !important;
    position: relative;
}
.company .companyprf ul.bar-list li::before {
	content: "";
    display: inline-block;
    width: 5px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    top: 15px;
    left: 0;
}
.company .companyprf a {
    color:#fff;
    text-decoration:none;
}
.company .companyprf .access {}
/* グーグルマップ */
.ggmap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 100%; /* 比率 */
}
.ggmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {/*タブレット*/
.ggmap { padding-top: 55%; /* 比率 */ }
}
@media screen and (min-width: 782px) {/*カラム切り替え*/
.company .companyprf figure { margin: 0 15px; border-bottom: 1px solid #7d7567;}
.company .companyprf .prfclm { border-bottom: none;}
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.company .message .txt1 { max-width: 100%; padding-top: 50px}
.company .companyprf .wp-block-table td:first-child { width: 130px}
}

/*********************************************
CONTACT
**********************************************/
.contact {}
/*　お問い合わせフォーム　*/
.ef-cts {
    margin-top: 50px;
}
.ef-cts dt {
	width: 100%;
    padding: 15px 10px;
	font-weight: 500
}
.ef-cts dt p,.ef-cts dd p {
	margin-bottom: 0
}
.ef-cts dd {
	width: calc(100% - 20px);
	padding:10px 10px;
}
.ef-cts .must,.ef-cts .any {/* 必須・任意マーク */
	color: #fff;
	font-size: 10px;
	margin-left: 7px;
    border-radius: 5px;
    padding: 1px 5px;
}
.ef-cts .must { background: #FF1A00;}
.ef-cts .any { background: #969696;}
.ef-cts dd input,.ef-cts dd textarea {
    max-width: 100%;
    background: #81796b;
    padding: 10px;
}
.ef-cts dd span { display: inline}
.ef-cts dd.ctcpost input { width: 150px; margin-left: 5px;}
.ef-cts dd label { width: 100%;}
.contact form .pp a { 
	color: #A78F45;
	text-decoration: underline
}
.btn_contact7 {
	text-align: center;
	margin-top: 75px
}
.btn_contact7 input {
	width: 100%;
    border: 1px solid #A78F45;
	padding: 15px;
	color: #FFF;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}
.btn_contact7 input:hover {
	color: #A78F45;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.contact .cttxt { text-align: center}
.ef-cts {
    width: 830px;
	margin: 50px auto 0 auto;
}
.ef-cts dt {
	float: left;
	clear: left;
	width: 230px;
	padding: 45px 10px;
    border-bottom: none;
    border-top: 1px solid #81796b;
}
.ef-cts dd {
	padding: 45px 10px;
    margin-left: 230px;
	width: auto;
	margin-bottom: 0;
    border-top: 1px solid #81796b;
}
.btn_contact7 { margin: 75px 25% 0 25%;}
}

/*****************************************************************************************************
** category・archive
*****************************************************************************************************/

/*********************************************
共通
**********************************************/
/*ページ送り（single共通）*/
.postlink {}
.postlink ul {
	display: flex;
	justify-content:center;
    padding-left: 0;
}
.postlink ul li {
	list-style: none;
	margin: 0 10px;
	width: 100%;
    padding-left: 0 !important;
    text-indent: 0 !important;
}
.postlink ul li a {
	border: 1px solid #A78F45;
  margin-bottom: 0;
  font-size: 1.2rem;
  font-weight: normal;
  text-align: center;
	color: #fff;
	position: relative;
	margin-top: 50px;
    display: block;
	padding: 15px;
}
.postlink ul li a:hover,.postlink ul li a:active {
  color: #A78F45;
}
.postlink ul li a::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 6px;
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
	position: absolute;
	top: 25px;
}
.postlink ul li:first-child a::after {
    background-image: url("img/arrow1.svg");
	left: 10px;
    transform: scale(-1, 1);
}
.postlink ul li:last-child a::after {
    background-image: url("img/arrow1.svg");
	right: 10px
}
.postlink ul li:last-child a:hover::after,.postlink ul li:first-child a:hover::after {
    filter: invert(1) brightness(0) invert(62%) sepia(50%) saturate(450%) hue-rotate(11deg) brightness(95%) contrast(90%);
	transition: all ease-in 0.2s;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.postlink ul li { width: auto; }
.postlink ul li a { font-size: 1.4rem; margin-top: 100px;}
.postlink ul li:first-child a { padding: 15px 70px;}
.postlink ul li:last-child a { padding: 15px 70px;}
}

/*サイドバー（single共通）*/
.sidebarbox {
    margin-top: 100px;
    font-size: 1.4rem;
    padding: 0 25px;
}
.sidebarbox h2 {
    margin-bottom: 25px !important;
}
.sidebarbox ul {
    padding-left: 5px;
}
.sidebarbox ul li {
	position: relative;
	list-style: none;
    padding: 0 10px 10px 10px !important;
    margin-bottom: 5px;
    text-indent: -1.5em !important;
}
.sidebarbox ul li::before {
	content: "-";
	margin-right: 15px
}
.sidebarbox ul li a {
	color: #fff
}
.sidebarbox ul li a:hover {
	color: #a78f45
}
.sidebarbox ul.side-new li time {
	text-align: left;
    margin-left: 23px;
}
.sidebarbox .sidebar1 {
    margin-bottom: 50px;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.sidebarbox { margin-top: 25px;}
.sidebarbox .sidebar1 { margin-bottom: 75px;}
}

/*********************************************
NEWS
**********************************************/
#main-block.categorycts { 
	position: relative;
}
#main-block.categorycts .newsbox {
	border-bottom: 1px solid #81796b;
	padding-bottom: 45px;
	margin-bottom: 45px
}
#main-block.categorycts h2 {
    font-size: 2.0rem;
	text-align: left;
    margin: 0;
    font-weight: normal;
}
#main-block.categorycts h2 a {
    color: #fff;
}
#main-block.categorycts h2 a:hover {
    color: #A78F45;
}
#main-block.categorycts h2::before { content:none;}
#main-block.categorycts .post-time {
    margin-bottom: 15px;
}
#main-block.categorycts .date { 
	font-size: 1.3rem;
    font-weight: 400;
    font-style: normal;
}
#main-block.categorycts .catelabel {
    color: #A78F45;
    font-size: 1.1rem;
    padding: 0px 7px;
	margin-left: 10px;
	border: 1px solid #A78F45;
    font-weight: 500;
}
#main-block.categorycts .newlabel {
    color: #A78F45;
    font-size: 1.2rem;
	margin-left: 10px;
    font-weight: 500;
}
#main-block.categorycts .thumbbox {
	margin-top: 10px
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
}

/*********************************************
主な実績
**********************************************/
.ac-works {}
.ac-works #main-block .ppbox {
	position: relative;
    padding: 0 0px;
    margin-bottom: 50px;
	color: #9d9486;
	font-size: 1.2rem;
}
.ac-works #main-block h2 {
    font-size: 1.8rem;
	text-align: left;
	margin-bottom: 0;
    padding: 20px 10px 5px 10px;
}
.ac-works #main-block h2 a {
	color: #fff
}
.ac-works #main-block h2 a:hover {
	color: #A78F45
}
.ac-works #main-block h2::before {
    content:none;
}
.ac-works #main-block .workssub {
}
.ac-works #main-block .term { 
    margin-left: 10px;
}
@media screen and (min-width: 576px) {/*スマホ大*/
.ac-works #main-block .ppbox {padding: 0 10px;}
}
@media screen and (min-width: 768px) {/*タブレット*/
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
.ac-works #main-block .ppbox { margin-bottom: 50px;}
}

/*****************************************************************************************************
** single
*****************************************************************************************************/

/*********************************************
共通
**********************************************/

/*********************************************
お知らせ
**********************************************/
#main-block.singlepage { position: relative}
#main-block.singlepage h2 {
    font-size: 2.6rem;
	text-align: left;
    margin: 25px 0 50px 0;
    font-weight: normal;
}
#main-block.singlepage h2::before { content:none;}
#main-block.singlepage .date { 
	font-size: 1.3rem;
    font-weight: 400;
    font-style: normal;
}
#main-block.singlepage .catelabel {
    color: #A78F45;
    font-size: 1.1rem;
    padding: 0px 7px;
	margin-left: 10px;
	border: 1px solid #A78F45;
    font-weight: 500;
}

/*********************************************
実績詳細
**********************************************/
#main-block.singlepage-works { position: relative}
#main-block.singlepage-works .postbox { 
	position: relative;
    margin-top: 50px;
}
#main-block.singlepage-works .postbox h2 {
    margin-bottom: 50px;
    text-align: left;
    margin-left: 3.5%;
    margin-right: 3.5%;
}
#main-block.singlepage-works .postbox h2::before {
    content: none
}
#main-block.singlepage-works .postbox .classification {
    margin-left: 2.5%;
    position: relative;
    padding: 0 0px;
    margin-bottom: 50px;
    color: #9d9486;
    font-size: 1.2rem;
}
#main-block.singlepage-works .postbox h1.content-title {
    font-family: cormorant-garamond, serif;
    font-style: normal;
    font-weight: 300;
    font-size: 1.6rem;
	display: inline;
}
#main-block.singlepage-works .postbox .txtbox {
	padding: 0 25px
}
#main-block.singlepage-works .postbox .txtbox .txtlt {}
#main-block.singlepage-works .postbox .txtbox .tablert {
	margin-top: 75px;
    margin-bottom: 45px;
}
#main-block.singlepage-works .postbox .txtbox p {
    margin-bottom: 2rem;
}
#main-block.singlepage-works .postbox .txtbox table {
    border-bottom: 1px solid #9d9486;
}
#main-block.singlepage-works .postbox .txtbox table td {
    vertical-align: top;
    border-bottom: none;
    border: none;
    border-top: 1px solid #9d9486;
    padding: 15px 5px;
}
#main-block.singlepage-works .postbox .txtbox table td:first-child {
	width: 100px
}
/*スライダー*/
#main-block.singlepage-works .postbox .metaslider {
    margin-bottom: 45px;
}
#main-block.singlepage-works .postbox .metaslider .slides li {
    padding-left: 0;
}
#main-block.singlepage-works .postbox .flexslider .flex-direction-nav li a:after {
    background-color: #A78F45;
}
#main-block.singlepage-works .postbox .metaslider.ms-theme-architekt .flexslider ul.flex-direction-nav li a.flex-prev:after {
    mask-image: url("img/arrow1.svg");
    mask-size: 35%;
	transform: scaleX(-1);
}
#main-block.singlepage-works .postbox .metaslider.ms-theme-architekt .flexslider ul.flex-direction-nav li a.flex-next:after {
    mask-image: url("img/arrow1.svg");
    mask-size: 35%;
}
#main-block.singlepage-works .postbox .metaslider.ms-theme-architekt .flexslider ul.flex-direction-nav li a.flex-next {
    right: 0;
}
#main-block.singlepage-works .postbox ol.flex-control-nav {
    padding: 10px 5px 10px 5px !important;
}
#main-block.singlepage-works .postbox ol.flex-control-nav:not(.flex-control-thumbs) li a:not(.flex-active) {
    color: #9d9486;
    font-size: 1.3rem;
}
#main-block.singlepage-works .postbox .flex-control-nav li a.flex-active {
    color: #fff;
    font-size: 1.3rem;
}
#main-block.singlepage-works .postbox .flex-control-nav:not(.flex-control-thumbs) li a.flex-active:after {
    color: #A78F45;
}
/*ページ送り（singleworks用）*/
#main-block.singlepage-works .postlink {
	/*border-bottom: 1px solid #A78F45;*/
    margin-top: 50px;
}
#main-block.singlepage-works .postlink ul {
	margin-bottom: 0px;
}
#main-block.singlepage-works .postlink ul li a {
	margin-top: 0px;
	border: none
}
#main-block.singlepage-works .postlink ul li a:hover,#main-block.singlepage-works .postlink ul li a:active {  
	background: none;
}
#main-block.singlepage-works .postlink ul li a::after {
	position: relative;
    top: auto;
    width: 30px;
    height: 9px;
}
#main-block.singlepage-works .postlink ul li img {
    width: 30px;
	filter: invert(100%) sepia(88%) saturate(6%) hue-rotate(212deg) brightness(104%) contrast(100%);
}
#main-block.singlepage-works .postlink ul li:first-child a::after {
    left: 0px;
}
#main-block.singlepage-works .postlink ul li:last-child a::after {
    right: 0px;
}
#main-block.singlepage-works .postlink ul li.backwork a::after {
    content: none;
}
#main-block.singlepage-works .postlink ul li.backwork a:hover img {
    filter: invert(1) brightness(0) invert(62%) sepia(50%) saturate(450%) hue-rotate(11deg) brightness(95%) contrast(90%);
}
#main-block.singlepage-works .flexslider .flex-next:focus,#main-block.singlepage-works .flexslider .flex-prev:focus,#main-block.singlepage-works .flexslider .flex-control-nav a:focus {
    outline: none;
}
#main-block.singlepage-works .flexslider ol.flex-control-nav:not(.flex-control-thumbs) li a:hover:after {
    color: #fff;
}
@media screen and (min-width: 992px) {/*PC （メニュー切り替え）*/
#main-block.singlepage-works .postbox h2 { margin-left: 6.5%;}
#main-block.singlepage-works .postbox .classification { margin-left: 5.5%;}
#main-block.singlepage-works .postbox .txtbox {
    max-width: 800px;
    margin: 0 auto;
}
#main-block.singlepage-works .postbox .txtbox .tablert {
    margin-top: 100px;
    margin-bottom: 75px;
}
}
