@charset "UTF-8";
/*
Theme Name: Custom Theme
Template: basic
Author: Trendmake
Copyright: (c) 2023 Trendmake
Version: 20231228
*/

/* custom icon */
@font-face {
	font-family: 'icomoon';
	src:  url('fonts/icomoon.eot?klagb8');
	src:  url('fonts/icomoon.eot?klagb8#iefix') format('embedded-opentype'),
	  url('fonts/icomoon.ttf?klagb8') format('truetype'),
	  url('fonts/icomoon.woff?klagb8') format('woff'),
	  url('fonts/icomoon.svg?klagb8#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
  }
  
  [class^="icon-"], [class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'icomoon' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
  
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  }
  
  .icon-chevron-up:before {
	content: "\e900";
  }
  .icon-phone:before {
	content: "\e901";
  }
  .icon-mail:before {
	content: "\e902";
  }
  .icon-paperplane:before {
	content: "\e903";
  }
  .icon-mail-envelope-closed:before {
	content: "\e904";
	font-size: 25px;
    margin-bottom: 3px;
    display: block;
  }
  .icon-envelope:before {
	content: "\e905";
  }
  .icon-location:before {
	content: "\e906";
  }
  .icon-phone1:before {
	content: "\e907";
  }
  .icon-home:before {
	content: "\e908";
  }
  .icon-phone2:before {
	content: "\e942";
  }
  .icon-envelop:before {
	content: "\e945";
  }
  .icon-location1:before {
	content: "\e947";
  }
  .icon-amazon:before {
	content: "\ea87";
  }
  .icon-facebook2:before {
	content: "\ea91";
  }
  .icon-instagram:before {
	content: "\ea92";
  }
  

/*******************************
Common Setting
*******************************/
body {
	font-family: 'YuGothic', 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', sans-serif;
	font-size: 16px;
	line-height: 2;
}
body #content {
	padding: 0;
}
/* Those Classes change row_inner width,
   when you set the Themify Builder > Row Options > Row Width to Default and Boxed. */
/*.module_row > .row_inner,
.module-layout-part .module_row.fullwidth_row_container > .row_inner {
	width: 100%;
}*/

/* table setting */
body table{
	width: 100%;
    border-collapse: collapse;
    box-sizing: border-box;
}

/*******************************
Header Fix
*******************************/
body #header.header {
	height: auto;
	border-bottom: none;
}

/* Header Site Branding */
body #site-logo,
body #site-description {
	position: static;
}
body #site-logo {
	line-height: 1;
}
body #site-logo a,
body #site-logo a img {
	display: block;
}
/* Search Form in Header */
body #headerwrap #header #searchform {
	position: static;
}
body #headerwrap #header #searchform #s {
	float: none;
}

/*******************************
Footer Fix
*******************************/
body #footer {
	border-top: none;
	clear: none;
	padding: 0;
}
body #pc-backtop {
	display: block;
	position: fixed;
	z-index: 500;
	bottom: 50px;
	right: 50px;
	opacity: 0;
	transition: opacity .3s;
	width: 32px;
	height: 32px;
	font-size: 30px;
}
body #pc-backtop.is-visible {
	opacity: 1;
}
body #pc-backtop.is-visible:hover {
	opacity: .7;
}
body #pc-backtop a,
body #pc-backtop a img {
	display: block;
}
body .sp-footer-icons-container {
	display: none;
	justify-content: space-around;
	align-items: center;
	position: fixed;
	z-index: 600;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	padding-bottom: calc( env(safe-area-inset-bottom) / 2 );
	background: #4f4f4f;
}

body #footer .sp-footer-icons-container a span{
	display: block;
	font-size: 20px;
	margin-bottom: 8px;
}
body #footer .sp-footer-icons-container a {
	display: block;
	width: 100%;
	line-height: 1;
	text-align: center;
	background-color: #fafafa;
	text-decoration: none;
	font-size:10px;
	padding: 10px 0 6px;
	border-left:1px solid #1f7bb6;
}
body #footer .sp-footer-icons-container a:first-child{
	border-left:0;
}


/*******************************
Contact form
*******************************/
.wpcf7 table tr th{
	width:30%;
	text-align: left;
}
.wpcf7 table tr th,
.wpcf7 table tr td{
	padding:10px 15px
}
.wpcf7 table tr td input,
.wpcf7 table tr td select,
.wpcf7 table tr td textarea{
	background-color: #fff;
    border: solid 1px #ddd;
    padding: 6px 10px;
    border-radius: 0px;
	width:100%;
	max-width:100%;
	box-sizing:border-box;
}
.wpcf7 table tr td span input{
	margin-top:10px;
}
.wpcf7 table tr td span:first-child input{
	margin-top:0px;
}
.wpcf7 table tr td input[type="radio"],
.wpcf7 table tr td input[type="checkbox"]{
	width:auto;
}
.wpcf7 .submit_btn{
	display:block;
}
.wpcf7 .submit_btn input[type="submit"]{
	display:block;
	width:250px;
	margin:0 auto;
}

/* =============================================
	menu settings
=============================================　*/
#main-nav{

}

#main-nav .current_page_item a,
#main-nav .current-menu-item a{
	
}

#main-nav li{

}

/* =============================================
	mobile menu settings
=============================================　*/
/* Mobile Menu Button */
#menu-button{
	visibility:hidden;
	opacity:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 900;
	top: 0;
	right: 0;
	width: 48px;
	height: 48px;
	background-color: #fafafa;
}
#menu-button.nav-on {
	visibility:visible;
	opacity:1;
}
#menu-button .ham-lines {
	position: relative;
	margin: 0 auto;
	width: 32px;
	height: 32px;
}
#menu-button .ham-lines span,
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	position: absolute;
	display: block;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 28px;
	height: 2px;
	background-color: #111;
	border-radius: 1px;
}
#menu-button .ham-lines span {
	bottom: 15px;
	transition: all .25s .25s;
	opacity: 1;
}
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	content: "";
}
#menu-button .ham-lines::before{
	bottom: 24px;
	animation: menu-bar01 .75s forwards;
}
#menu-button .ham-lines::after {
	bottom: 6px;
	animation: menu-bar03 .75s forwards;
}
#menu-button .ham-text {
	font-size: 12px;
	line-height: 1;
}
#menu-button.is-active .ham-lines span {
	opacity: 0;
}
#menu-button.is-active .ham-lines::before {
	animation: active-menu-bar01 .5s forwards;
}
#menu-button.is-active .ham-lines::after {
	animation: active-menu-bar03 .5s forwards;
}
@keyframes menu-bar01 {
	0% {
		transform: translateY(9px) rotate(45deg);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar03 {
	0% {
		transform: translateY(-9px) rotate(-45deg);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(9px) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(-9px) rotate(-45deg);
	}
}
/* Mobile Menu Button end */

/* =============================================

	Common settings

============================================= */
/* table border and paddings */
table th,
table td{
	border: 1px solid #424242;
	padding: 10px;
}

/* =============================================

	Media Query

============================================= */
@media screen and (max-width: 1400px) { /* for iPad pro landscapes */

}

@media screen and (max-width: 1200px) { /* for tablet landscapes */

	#pagewrap {
		position: relative;
		padding-bottom: 51px;
	}

	#header.header {
		padding-top: 0;
	}

	/* mobile menu visibility */
	body #header #main-nav{
		display: block;
	}

	/* module menu button visible */
	#menu-button{
		visibility:visible;
		opacity:1;
	}
	
	@media screen and (max-width: 1200px) { /* for tablet landscapes big */

		#pagewrap {
			position: relative;
			padding-bottom: 0;
		}
	
		#header.header {
			padding-top: 0;
		}
	
		/* module menu button visible */
		#menu-button{
			visibility:visible;
			opacity:1;
		}
		
		/* Mobile Menu Container ここを調整すると、メニューボタンクリック後の動作を調整できる */
		/*#main-menu-container {
	position: fixed;
		z-index: 700;
		top: 0;
		left: -100vw;
		right: auto;
		bottom: auto;
		overflow-y: auto;
		background-color: #f1f1f1;
		display: block;
		width: 100vw;
		height: 100vh;
		transition: .3s linear;
		max-width: 42vw;
		padding: 2%;
		height: 100vh;
		box-sizing: border-box;
		}
		#main-menu-container.is-active{
			left: 0;	
		}*/
		/* Mobile Menu Container ここを調整すると、メニューボタンクリック後の動作を調整できる */
	
	}

}

@media screen and (max-width: 1024px) { /* for tablet landscape */

	/* style for contact forms, if do not use to delete please
	コンタクフォームのテーブル調整　不要なら消す*/
	.wpcf7 table tr th,
	.wpcf7 table tr td{
		width:100%;
		display:block;
		padding: 10px 0px;
	}
	.wpcf7 table tr th{
		padding-bottom:0;
	}
	/* style for contact forms, if do not use to delete please
	コンタクフォームのテーブル調整　不要なら消す*/
	body .sp-footer-icons-container{
		display: flex;
	}
	#pc-backtop{
		display: none;
	}
}

@media screen and (max-width: 768px) { /* for tablet portrate */
	
}

@media screen and (max-width: 460px) { /* for mobile */
	
}

@media screen and (max-width: 390px) { /* for mobile small */
	
}




/********************************************************VT-CUSTOM**********************************************************************************************************************/
/******************************************************************************************************************************************************************************/




/**header--------------------------------------------------------------*/
#headerwrap #header {
	padding:50px 0 60px;
}
#searchform {
	display:none;
}
#site-logo img {
	max-width:80%;
	margin:0 auto 70px;
}

/**menu--------------------------------------------------------------*/
#headerwrap #main-menu-container ul {
    list-style: none;
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
#headerwrap #main-menu-container li {
	float:left;
	margin:0;
	position: relative;
	width:auto;
}
#headerwrap #main-menu-container li a {
    font-size: 24px;
    color: #313131;
    text-decoration: none;
    display: block;
    font-family: "trajan-pro-3", serif;
    padding: 0 12px;
}


#headerwrap #main-menu-container li a:hover {
	opacity:0.7;
	text-decoration:none;
}
#main-menu-container {
	
}
#headerwrap #main-menu-container li.nav00 {
	display:none;
}
#headerwrap #main-menu-container li ul {
	display:none;
}
#headerwrap #main-menu-container li:hover ul {
	display:block;
}
#headerwrap #main-menu-container li ul {
    position: absolute;
    float: none;
    top: 50px;
    left: 0;
    z-index: 99;
}

/*sub-menu*/
#headerwrap #main-menu-container li .sub-menu {
  width:100%;
  padding:0;
  border:none;
	
}
#headerwrap #main-menu-container li .sub-menu li {
  	clear:both;
	float:none;
	display:block;
	width:100%;
}
#headerwrap #main-menu-container li .sub-menu li a {
  display:block;
  text-indent:0;
  white-space: unset;
  background: none;
  text-align: center;
	font-size:13px;
    border-bottom: dotted 1px #a8a8a8;
    color: #542d0a;
	padding: 9px 5px 8px;
  text-decoration: none;
  height:auto;
	background-color: rgba(255, 255, 255, 0.9);	
}
#headerwrap #main-menu-container li .sub-menu li a:hover {
	opacity:0.7;
	font-weight:700;
}


/**footer--------------------------------------------------------------*/
.link-ft li {
	display:inline-block;
	vertical-align:middle;
	margin-left:20px;
	margin-bottom:0;
}
.link-ft li:first-child {
	margin-left:0;
}
#pagewrap .menu-ft ul,#pagewrap .menu-ft li {
	margin:0;
	padding:0;
	background:none;
	box-shadow:none;
	border:none;
}
#pagewrap .menu-ft li {
	display:inline-block;
	line-height:1.2;
	padding:0 12px;
	margin-bottom: 10px;
}
#pagewrap .menu-ft li a {
	text-decoration:none;
	background:none;
	color:#313131;
	font-size:24px;
	font-family: "trajan-pro-3", serif;
	padding:0;
}
.menu-ft.module {
	text-align:center;
}
.copyright-container {
    text-align: center;
    padding: 35px 0 95px;
}
#footerwrap .row_inner {
	max-width:94%;
	margin:0 auto;
}
#pagewrap #pc-backtop {
    width: auto;
    height: auto;
    bottom: 80px;
    right: 20px;
}
#footerwrap {
	background:#f8f8f8;
}



/**top--------------------------------------------------------------*/
body .site {
	font-size: 16px;
    color: #313131;
	line-height:2;
	letter-spacing: 0.05em;
	font-family: "Noto Serif JP", serif;
}
.site a:visited,.site a:link {
	color:inherit;
	text-decoration:underline;
	outline:none;
}
.site a:hover {
	color:inherit;
	text-decoration:none;
	opacity:0.7;
}
body .pagewidth {
  max-width: 94%;
}
body .module-fancy-heading .main-head + .sub-head:before {
  border:none;
}
.module-fancy-heading .fancy-heading {
  	margin:0;
	line-height: 1.4;
	font-size: inherit;
}
.module-fancy-heading.module .sub-head {
  padding:0;
}
.module .gallery-icon {
  cursor:default;
}
.module .module-title,.sub-head,.image-title {
	line-height:1.4;
	font-weight:400;
}
.main-head {
	font-family: "trajan-pro-3", serif;
	font-weight:400;
	line-height:1.4;
	letter-spacing: 0.05em;
}
.module {
	margin-bottom:30px;
}
.module .module-title {
	margin-bottom:15px;
}
.module p:last-child {
	margin-bottom:0;
}
.module ul {
	margin:0;
	list-style:none;
}
.module li {
	line-height:2;
}
.module table {
	width:100%;
	border-collapse: collapse;
}
.module,ul,li,a,div,span,.image-title,tr,td,th,input {
	 box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
}
.module_row {
	overflow: hidden;
}


/***/
#body .btn-scroll a {
	font-size:16px;
	color:#fff;
	text-decoration:none;
}
#body .btn-scroll {
    text-align: center;
    margin: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.btn-scroll:after {
    content: "";
    background: #fff;
    height: 50px;
    width: 1px;
    display: block;
    margin: 10px auto 0;
}
/***/
.te-top.module {
	font-weight:700;
	text-align:center;
	max-width:330px;
	margin:0 auto 45px;
	padding-bottom:45px;
	border-bottom:1px solid #aaaaaa;
}
.te-top.module:after {
    content: "";
	width:16px;
	height:16px;
	background: url(../../uploads/i1.png)no-repeat,#fff;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -8px;
    line-height: 1;
	margin:0 auto;
}
#body .btn-top a {
    padding: 15px 0;
    border: none;
    padding-right: 65px;
	background:url(../../uploads/ar.png)no-repeat right center;
	font-family: "trajan-pro-3", serif;
}
#body .btn-s1-top a {
	color:#fff;
	background:url(../../uploads/ar1.png)no-repeat right center;
}
.btn-top.module {
	text-align:center;
}
.btn-right.module {
	text-align:right;
}
.t-top .main-head,.t-p2 .main-head {
	font-size:32px;
}
.t-top.module {
	text-align:center;
	margin-bottom:90px;
}
.t1-top .main-head {
	font-size:18px;
	color:#fff;
	margin-bottom:20px;
}
.t1-top.module .sub-head {
	font-size:16px;
	color:#fff;
}
.t1-top.module {
	text-align:center;
}
.t1-top.module:after {
	content:"";
	width:60px;
	height:1px;
	background:rgb(225 227 229 / 30%);
	margin:30px auto 0;
	display:block;
}
.ro-top .module_column {
	min-height:482px;
	padding:60px 3% 30px;
	margin-bottom:30px;
}
#pagewrap .post-title a {
	text-decoration:none;
	font-size:16px;
	line-height:2;
	color:#313131;
	font-family: "Noto Serif JP", serif;
}
#pagewrap .post-top .post-title {
	font-size:16px;
	line-height:2;
	font-weight:400;
	margin:0;
}
body .post-image {
	margin-bottom:20px;
	line-height:1;
	text-align:center;
}
.post-top .entry-content {
	display:none;
}
.post-top .post-content {
    display: flex;
    justify-content: space-between;
}
#pagewrap .post-top .post {
	margin-bottom:30px;
}
body .post-meta .post-category {
    padding: 0;
	margin:0;
}
body .post-meta .post-author:after, body .post-meta .post-category:after,body .post-meta .post-tag:after {
	display:none;
}
body .module-post p.post-meta {
    margin: 0;
}
#pagewrap .post-category a {
	text-decoration:none;
	border-bottom:1px solid #313131;
	padding-bottom:0;
}
#pagewrap .post-category a:hover {
	border-bottom:none;
}
#pagewrap .post-category .post {
	margin-bottom:30px;
}
#body .btn1-top a {
    background: none;
    border: none;
    min-height: 326px;
    font-size: 48px;
    color: #fff;
    padding: 20px 35px;
    text-align: right;
    display: flex;
    align-items: end;
    justify-content: end;
	font-family: "trajan-pro-3", serif;
}
#body .btn1-top a:hover {
    background: rgb(0 0 0 / 50%);
    opacity: 1;
}
.post1-top time {
	font-weight:700;
	line-height:2;
	margin:0;
	margin-right:35px;
}
#body .post1-top .post-title {
    font-weight: 400;
    margin: 0;
}
.post1-top .post-content {
    display: flex;
    align-items: center;
}
#body .post1-top .post {
	margin: 0;
    padding: 25px 0;
    border-bottom: 2px solid #d7d7d7;
}
#body .post1-top .post:first-child {
	padding-top:0;
}
#body .btn2-top a {
    font-size: 24px;
    color: #313131;
    background: #fff;
    border: none;
    padding: 32px 10px;
	min-height:100px;
	font-family: "trajan-pro-3", serif;
}
.btn2-top a:before {
	content:url(../../uploads/ins.png);
	display:inline-block;
	vertical-align:middle;
	margin-right:20px;
	line-height:1;
}
.btn2-s1-top a:before {
	content:url(../../uploads/mail.png);
}
#pagewrap .btn2-s1-top  a {
	font-family: "Noto Serif JP", serif;
}
body .module-buttons span {
	margin:0;
}
.ro1-top {
	max-width:1000px;
	margin:0 auto;
}



/**access------------------------p7-----------------------------*/
.t-sub .main-head {
	font-size:32px;
	color:#fff;
	text-align:center;
}
.t-sub.module {
	margin: 0;
    min-height: 300px;
    padding: 70px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tab-p7 tr td {
    border: none;
    border-bottom: 1px solid #c5c5c5;
    color: #333;
    vertical-align: top;
    padding: 21px 0;
}
.tab-p7 tr td:first-child {
	width:120px;
	font-weight:700;
}
.tab-p7 tr:first-child td {
	padding-top:0;
}


/**contact-----------------------p8--------------------*/
.wpcf7 input,.wpcf7 textarea {
	width:100%;
	display:block;
	background:#fdfbfb;
	border-radius:0;
	border:1px solid #e1e1e1;
}
.wpcf7-form-control-wrap {
	margin-top:10px;
	display:block;
}
body .wpcf7 input[type=submit] {
    max-width: 210px;
    font-size: 16px;
    color: #fff;
    background: #353535;
    border-radius: 0;
    margin: 40px auto 0;
    padding: 4px 10px;
	border:1px solid #787878;
}
body .wpcf7 input[type=submit]:hover {
    opacity:0.7;
}
.ed-form.module {
	padding:75px 3% 35px;
}
.ed-form .tb_text_wrap {
	max-width:1000px;
	margin:0 auto;
}
.t-p8.module .sub-head {
	color:#353535;
	font-size:16px;
	background:#c9c9c9;
	padding:19px 10px;
	padding-left:40px;
	font-weight:400;
	margin:0;
	position:relative;
}
.t-p8.module .sub-head:before {
    content: "";
    width: 25px;
    height: 5px;
    background: #e4e3de;
    display: block;
    position: absolute;
    top: 45%;
    left: 0;
}
.te-policy.module {
	padding:40px 35px;
}
.te-policy.module .tb_text_wrap {
	height:400px;
	overflow:auto;
	padding-right:50px;
}


/**works-----------------------p4------------------------------*/
.main-single,.page-title {
	display:none;
}
.single .main-single,.archive .main-single,.blog .main-single {
	display:block;
}
.archive #layout {
	padding-top:150px;
}
.archive #content {
    width: 66%;
	max-width:786px;
    padding: 0 0 90px;
}
#sidebar {
    width: 28%;
	max-width:330px;
    padding: 0 0 120px;
}
#sidebar .widgettitle {
    font-size: 16px;
    color: #fff;
    font-weight: 700;
    background: #706d6a;
    text-align: center;
    padding: 14px 10px;
    margin: 0;
}
#sidebar .categories-list {
	padding:25px 50px;
	border:1px solid #706d6a;
}
#sidebar .categories-list li {
	margin:0 0 25px;
	padding:0;
}
#sidebar .categories-list li a {
	text-decoration:none;
}
#sidebar .categories-list li a {
	border-bottom:1px solid;
}
#sidebar .categories-list li a:hover {
	border-bottom:none;
}
.archive .post-author,.archive .entry-content {
	display:none;
}
.archive .post-image {
	margin-bottom:20px;
	line-height:1;
}
.archive #body .post-title {
    font-size: 16px;
    color: #313131;
    font-weight: 400;
    margin: 0;
    line-height: 2;
}
body .post-meta {
    margin: 0;
}
.archive .post-content {
    display: flex;
    justify-content: space-between;
	flex-wrap:wrap;
}
.archive #body .post {
	margin-bottom:55px;
}
#pagewrap .pagenav a, #pagewrap .pagenav .current {
    border: 1px solid #706d6a;
    background: #706d6a;
    font-size: 24px;
    color: #fff;
    border-radius: 0;
    width: 50px;
    padding: 12px 5px;
    text-decoration: none;
}
#pagewrap .pagenav a {
	color:#706d6a;
    background:#fff;
}
.archive #pagewrap .pagenav {
	padding:0 0 60px;
	padding-right:100px;
}


/**single------------------------------------------------*/
.single .cat-3 .post-image,.single .cat-3 .post-title,
.single .cat-6 .post-image,.single .cat-6 .post-title,
.single .cat-7 .post-image,.single .cat-7 .post-title {
	display:none;
}
body .module.layout-showcase .gallery-images img {
    max-width: 100px;
    max-height: 100px;
    margin-right: 30px;
    margin-bottom: 10px;
	width: 90px;
	height: 90px;
}
body .module .gallery-showcase-image {
    margin-bottom: 30px;
    line-height: 1;
}
.single .post {
	padding-top:150px;
	padding-bottom:70px;
}
#pagewrap .history_back a {
	display: block;
    max-width: 210px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    border: 1px solid #787878;
    background: #353535;
    padding: 3px 10px;
    margin: 0 auto 150px;
}
.te-single.module p {
	border-bottom:1px solid;
	display:inline;
}
.single .post-title {
	display:block;
	font-size:18px;
	color:#333333;
	border-bottom:1px solid #c9c9c9;
	padding-bottom:35px;
	margin-bottom:35px;
	margin-top:-5px;
}


/**news------------------------p6---------------------*/
#body .post-news .post-title {
	font-size:16px;
	font-weight:400;
	order:3;
}
#body .post-news .post-title a {
	border-bottom:1px solid;
}
#body .post-news .post-title a:hover {
	border-bottom:none;
}
#body .post-news .post-content {
    display: flex;
    flex-wrap: wrap;
}
#body .post-news .post-category a {
	border: none;
    font-size: 14px;
    font-weight: 700;
    color: #313131;
    background: #c9c9c9;
    display: block;
    width: 100px;
    text-align: center;
    padding: 1px 5px;
    box-sizing: border-box;
}
.post-news time {
	margin: 0;
    padding-left: 45px;
    padding-right: 80px;
    font-weight: 700;
	order:2;
}
.post-news .post-meta {
	order:1;
}
#body .post-news .post {
    border-bottom: 1px solid #efefef;
    padding: 28px 0;
    margin: 0;
}
#body .post-news .post:first-child {
    padding-top:0;
}
#body .post-news .post-category a {
	pointer-events:none;
}

/**about------------------------------p2----------------------------------*/
.t-p2 .main-head {
	margin-bottom:15px;
}
.t-p2.module .sub-head {
	font-size:16px;
	font-weight:400;
	color:#333333;
}
.t-p2.module {
	margin-bottom:50px;
}
.te-p2.module {
	color:#706d6a;
	margin-bottom:55px;
}
.link-p2 li {
	display:inline-block;
	margin-bottom:30px;
	margin-right:50px;
}
.link-p2 li:last-child {
	margin-right:0;
}
#body .link-p2 li a {
    padding: 13px 0;
    border: none;
    padding-right: 65px;
    background: url(../../uploads/ar.png) no-repeat right center;
    line-height: 1.4;
    text-decoration: none;
	font-family: "trajan-pro-3", serif;
}
.link-p2.module {
	margin-bottom:0;
}


/**price--------------------------------------p3--------------------*/
.tab-p3.module .module-title {
	font-size:18px;
	color:#fcf8f8;
	background:#333;
	padding:18px 30px;
	margin-bottom:0;
}
.tab-p3 tr td {
	border:none;
	border-bottom:1px dotted #c0c0c0;
	vertical-align:top;
	padding:23px 0;
}
.tab-p3 tr td:first-child {
	color:#333333;
}
.tab-p3 tr td:last-child {
	text-align:right;
}


.post-edit-link {
    display: none;
}

.archive figure img {
	height: 375px;
	max-width: 375px;
	object-fit: cover;
	width: 100%;
}
.wpcf7 table tr th, .wpcf7 table tr td {
    border: none;
    font-weight: bold;
}
.wpcf7 table tr th span {
    color: #fd0505;
    font-size: 12px;
}
.wpcf7-list-item,
.wpcf7-list-item label {
    display: inline-flex;
	align-items: center;
}
.wpcf7 table {
    margin-bottom: 50px;
}
.info-map iframe {
    filter: grayscale(100%);
    -webkit-filter:grayscale(100%);
}
.module.flow-text .module-title {
    font-size: max(1.250vw, 18px);
    line-height: 1.5;
    margin-bottom: 25px;
	margin-top:0;
}

.module.flow-num .module-title {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 25px;
    position: relative;
    text-align: center;
}
.module.flow-num .module-title:after {
    content: "";
    background: #333;
    display: block;
    height: 150px;
    position: absolute;
    top: 3em;
    left: 50%;
    transform: translate(-50%, 0);
    width: 1px;
}
.module_subrow.flow-box {
    margin-bottom: 50px;
}
.flow-box:last-child .module.flow-num .module-title:after {
    display: none;
}
.flow-tab .tab-nav {
	display: flex;
    justify-content: center;
    text-align: center;
}
#pagewrap .flow-tab .tab-nav li.current {
    background: none;
    border-bottom: none;
}
#pagewrap .flow-tab .tab-nav li {
    margin: 0;
}
#pagewrap .flow-tab .tab-nav li a {
	border-right: solid 1px #c9c9c9;
	color: #313131;
    padding: 0 20px;
}
#pagewrap .flow-tab .tab-nav li:last-child a {
    border: none;
}
#pagewrap .flow-tab .tab-nav li a:hover{
	color: #313131;
}
.module.module-text.tb_bdds253.tab-p3 .module-title{
    width: 1200px;
}






/* =============================================
	mobile menu settings
=============================================　*/
/* Mobile Menu Button */
#menu-button{
	visibility:hidden;
	opacity:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 900;
	top: 10px;
	right: 10px;
	width: 48px;
	height: 48px;
	background-color: rgb(255 255 255 / 70%);
	color:#333;
}
#menu-button.nav-on {
	visibility:visible;
	opacity:1;
}
#menu-button .ham-lines {
	position: relative;
	margin: 0 auto;
	width: 32px;
	height: 32px;
}
#menu-button .ham-lines span,
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	position: absolute;
	display: block;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 28px;
	height: 2px;
	background-color: #333;
	border-radius: 1px;
}
#menu-button .ham-lines span {
	bottom: 15px;
	transition: all .25s .25s;
	opacity: 1;
}
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	content: "";
}
#menu-button .ham-lines::before{
	bottom: 24px;
	animation: menu-bar01 .75s forwards;
}
#menu-button .ham-lines::after {
	bottom: 6px;
	animation: menu-bar03 .75s forwards;
}
#menu-button .ham-text {
	font-size: 12px;
	line-height: 1;
}
#menu-button.is-active .ham-lines span {
	opacity: 0;
}
#menu-button.is-active .ham-lines::before {
	animation: active-menu-bar01 .5s forwards;
}
#menu-button.is-active .ham-lines::after {
	animation: active-menu-bar03 .5s forwards;
}
@keyframes menu-bar01 {
	0% {
		transform: translateY(9px) rotate(45deg);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar03 {
	0% {
		transform: translateY(-9px) rotate(-45deg);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(9px) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(-9px) rotate(-45deg);
	}
}
/* Mobile Header Menu Container */
nav.nav-off{
	display:none;
}
#main-menu-container.is-active {
    position: fixed;
    z-index: 700;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow-y: auto;
    background: #313131;
    color: #fff;
    display: block;
}
/* Header Main Menu */
#main-menu-container.is-active .main-menu,
#main-menu-container.is-active .sub-menu {
	margin: 0;
	list-style: none;
}
#main-menu-container.is-active .menu-item {
	margin: 0;
	padding: 8px 0 0 16px;
}
#main-menu-container.is-active .main-menu {
	position: static;
	width: 100%;
	max-width: 94%;
	margin: 0 auto 16px;
	padding: 0;
	border: none;
	border-radius: 0;
	background-color: transparent;
	box-shadow: none;
}
#main-menu-container.is-active .main-menu>li {
	margin: 0 16px;
	padding: 8px;
	border-bottom: dotted 1px #ccc;
}
#main-menu-container.is-active .main-menu>li:last-of-type {
	border-bottom: none;
}
#main-menu-container.is-active .main-menu li a {
	font-size: 16px;
	line-height: 2;
	color: #111;
}

@media screen and (max-width: 1024px) { /* mobile visibility changes for max-width */
	#menu-button{
		visibility:visible;
		opacity:1;
	}
	#main-menu-container:not(.is-active){
		display:none;
	}
	
	/**menu**/
	#pagewrap #headerwrap #main-menu-container li a {
		display: block;
		color: #fff;
		padding: 10px;
		font-size:16px;
	}
	#headerwrap #main-menu-container li a:hover {
		opacity:0.7;
	}
	#headerwrap #main-menu-container li {
		float: none;
		text-align: center;
		padding: 0;
	}
	#headerwrap #main-menu-container ul {
		display:block;
		max-width: 94%;
		margin: 0 auto;
		padding: 10% 0;
	}
	#headerwrap #main-menu-container li a:hover, #headerwrap #main-menu-container li.current-menu-item a {
		color: #fff;
	}
	
	
	/**sub*/
	#headerwrap #main-menu-container li .sub-menu {
		position: static;
		display: block;
		width: 100%;
		background: rgb(255 255 255 / 50%);
		padding: 0;
		max-width: 100%;
		margin-top: 0;
	}
	#headerwrap #main-menu-container li .sub-menu li a {
		padding: 5px 0;
		text-decoration: none;
	}
	#headerwrap #main-menu-container li .sub-menu li {
		display: block;
		width: 100%;
		padding: 0;
	}
	
	
	
}

/* === mobile menu end === */


/* =============================================

	Media Query

============================================= */

@media screen and (max-width: 1024px) { 
	
	/**header*/
	#site-logo img {
		margin-bottom:0;
	}
	
	/**footer*/
	body #pc-backtop {
		display:none;
	}
	body #footer .sp-footer-icons-container a {
		background:#313131;
		color:#fff;
		text-decoration:none;
		border-color:#fff;
		min-height:50px;
		padding-top:6px;
	}
	#pagewrap .sp-footer-icons-container {
		display:flex;
	}
	#footerwrap {
		margin-bottom:50px;
	}
	body #footer .sp-footer-icons-container svg {
		fill:#fff;
	}
	.copyright-container {
		padding: 35px 0;
	}
	
	/**contact*/
	.te-policy.module {
		padding:40px 3%;
	}
	.te-policy.module .tb_text_wrap {
		padding:0;
	}
	
	/**works*/
	#sidebar .categories-list {
		padding-left:5%;
		padding-right:5%;
	}
	body .module.layout-showcase .gallery-images img {
		margin-right:10px;
	}
	body #footer .sp-footer-icons-container a.sp-footer-contact span{
		margin-bottom:0;
	}
	
}


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

}


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

	/**works*/
	.archive .post-content {
		display:block;
	}
	.archive #pagewrap .pagenav {
		padding:0;
		text-align:center;
	}
	.archive #content {
		width: 100%;
		max-width: 786px;
		margin: 0 auto;
		float: none;
		clear: both;
	}
	#sidebar {
		width: 100%;
		max-width: 330px;
		margin: 0 auto;
		float: none;
		clear: both;
	}

}


@media screen and (max-width: 680px) {
	
	
	
	/***/
	.module-image {
		text-align:center;
	}
	#pagewrap .module-gallery .gallery-item {
		width:49.25%;
		margin: 0 1.5% 1.5% 0;
		float:left;
	}
	#pagewrap .module-gallery .gallery-item:nth-of-type(2n) {
		margin-right:0;
	}
  	#pagewrap .gallery-columns-3 .gallery-item:nth-of-type(3n + 1) {
		clear:none;
	}
	.module .module-gallery-grid {
		display:block;
	}
	
	/*top*/
	.ro-top .module_column {
		min-height: auto;
	}
	.post-top .post-content,.post1-top .post-content {
		display: block;
	}
	.post1-top time {
		margin:0;
	}
	.t-top.module {
		margin-bottom:30px;
	}
	
	/**works*/
	.archive #layout {
		padding-top:80px;
	}
	.archive #content {
		padding-bottom:20px;
	}
	#sidebar {
		padding: 0 0 50px;
	}
	.single .post {
		padding-top: 80px;
		padding-bottom: 0;
	}
	#pagewrap .history_back a {
		margin-bottom:80px;
	}
	
	/**news*/
	.post-news time {
		padding:10px 0;
	}
	#body .post-news .post-content {
		flex-direction:column;
	}
	
	/**about*/
	.link-p2 li {
		margin-right: 30px;
	}
	body #site-logo a, body #site-logo a img {
		max-width: 35%;
		margin: 0 auto;
	}
	#headerwrap #header {
		padding: 20px 0 30px;
	}
	#body .btn-scroll a {
		font-size: 12px;
	}
	.btn-scroll:after {
		height: 25px;
		margin-top: 0;
	}
	#body .btn1-top a{
		min-height: 200px;
	}
	#body .btn2-top a {
		min-height: 70px;
		padding: 20px 10px;
	}
	.module.logo_f img {width: 15%;}
	#pagewrap .menu-ft li a {
		font-size: 18px;
	}
	.link-ft li img {margin-bottom: 0;}
	.t-sub.module{
		min-height: auto;
	}
	.tab-p3 tr td {
		display: block;
		padding: 15px 0;
	}
	.tab-p3 tr td:first-child {
		border-bottom: none;
		padding-bottom: 0;
	}
	.tab-p3 tr td:last-child {
		padding-top: 0px;
	}
	.module.flow-num .module-title {
		margin-bottom: 100px;
		margin-top:0;
	}
	.module.flow-text .module-title {
		margin-bottom: 15px;
	}
	.module_subrow.flow-box{
		min-height: 180px;
	}
	#pagewrap .module.flow-text{
		padding-bottom:0;
	}
	.flow-tit .t-top.module {
		margin: 30px 0 50px;
	}
	.flow-tab .tab-nav{
		flex-wrap: wrap;
	}
.themify_builder_content-417 .tb_a9uf555.module-text.module .module-title {
    display: none;
    }

}
/*works top サムネイルサイズ固定*/
.works-top .post-image img{
	width:375px;
	height:280px;
	object-fit:cover;
}
/*works top サムネイルサイズ固定end*/
























