@charset "utf-8";
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					FONT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/NotoSerifJP-Regular.woff') format('woff');
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/NotoSerifJP-Medium.woff') format('woff');
}
@font-face {
   font-family: 'Noto Serif Japanese';
   font-style: normal;
   font-weight: 600;
  src: url('../fonts/NotoSerifJP-SemiBold.woff') format('woff');
}
@font-face {
   font-family: 'Noto Serif Japanese';
   font-style: normal;
   font-weight: 700;
  src: url('../fonts/NotoSerifJP-Bold.woff') format('woff');
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					RESET

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
body{line-height:0;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,legend,input,textarea,p,blockquote,table,caption,tbody,tfoot,thead,th,td,option,figure,figcaption{margin:0;padding:0;line-height:1;font-size:100%;
/*==================================================
Base Font
====================================================*/
font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
}
h1,h2,h3,h4,h5,h6 {font-size:100%;font-weight:normal;}table{border-collapse:collapse;border-spacing:0;}caption,th {text-align:left;}fieldset,img,abbr,acronym{border:0;margin: 0px;vertical-align: bottom;}object,embed,th,td{vertical-align: top;}address,caption,cite,code,dfn,th,var,optgroup,strong,em,b,i{font-style:normal;font-weight:normal;}ol,ul{list-style:none;}a,ins,del{text-decoration: none;}q:before,q:after {content:'';}* html body{font-size: 65%;}*+html body{font-size: 65%;}html{overflow: scroll;overflow: -moz-scrollbars-vertical;overflow-x: scroll;}strong{font-weight: bold;}em{font-style: italic;}del{text-decoration: line-through;}a{cursor:pointer;}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					COMMON

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
FLOAT
====================================================*/
/*--------------------------------------------------- clf*/
.clf:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;}
* html .clf { zoom: 1; } /* IE6 */
*:first-child+html .clf { zoom: 1; } /* IE7 */
.clf {overflow:hidden;}
input[type="submit"],
input[type="button"],
input[type="reset"] {
 -webkit-appearance: none;
}
/*--------------------------------------------------- FLOAT*/
.flt_left{float:left;}
.flt_right{float:right;}
.flt_clear{clear:both;}
/*==================================================
TEXT
====================================================*/
/*--------------------------------------------------- FONT*/
.fnt_min{font-family:'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;}
.fnt_gothic{font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;}
.fnt_bold{font-weight:bold;}
/*--------------------------------------------------- ALIGN*/
.ta_center, .taC { text-align:center;}
.ta_left, .taL { text-align:left;}
.ta_right, .taR { text-align:right;}
/*==================================================
LAYOUT
====================================================*/
.ilnblk { display: inline-block; }
/*--------------------------------------------------- MARGIN*/
.mgn_0{ margin:0;}
.mgn_auto{margin:auto;}
.mgn_top_0{ margin-top:0;}
.mgn_top_5{ margin-top:5px;}
.mgn_top_10{ margin-top:10px;}
.mgn_top_15{ margin-top:15px;}
.mgn_top_20{ margin-top:20px;}
.mgn_top_30{ margin-top:30px;}
.mgn_top_40{ margin-top:40px;}
.mgn_top_50{ margin-top:50px;}
.mgn_btm_0{ margin-bottom:0;}
.mgn_btm_5{ margin-bottom:5px;}
.mgn_btm_10{ margin-bottom:10px;}
.mgn_btm_15{ margin-bottom:15px;}
.mgn_btm_20{ margin-bottom:20px;}
.mgn_btm_30{ margin-bottom:30px;}
.mgn_btm_40{ margin-bottom:40px;}
.mgn_btm_50{ margin-bottom:50px;}
/*--------------------------------------------------- PADDING*/
.pdn_0{ padding:0;}
.pdn_5{ padding:5px;}
.pdn_10{ padding:10px;}
.pdn_15{ padding:15px;}
.pdn_20{ padding:20px;}
.pdn_30{ padding:30px;}
.pdn_40{ padding:40px;}
.pdn_50{ padding:50px;}
/*==================================================
NO STYLE
====================================================*/
.noStyle{
	margin:0 !important;
	padding:0 !important;
	background:none !important;
	border:none !important;
	text-decoration:none !important;
	float:none !important;}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					LAYOUT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
DEFAULT
====================================================*/
*{
	box-sizing:border-box;
	outline: none;}
html{
	width:100%;
	height:100%;
	overflow:auto;
	background: #f1f1f1;}
body {
	width:100%;
	height:100%;
	font-size:15px;
	color:#231815;
	padding-top: 90px;
}
body.popup_open {
	overflow: hidden;
}
/*==================================================
COLOR
====================================================

accent		: #F07700
sub			: #D1CDC7
sub light	: #FDF9F2

*/

/*==================================================
HEADER
====================================================*/
#header {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 90px;
	overflow: hidden;
	z-index: 8900;
}
#header:before,
#header:after {
	width: 100%;
	height: 100%;
	content: '';
	position: absolute;
	left: 0;
}
#header:before {
	background: #f1f1f1;
	z-index: -1;
	top: 0;
	transition: all 0.4s;
	-moz-transition: all 0.4s;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
}
.lnav #header:before {
	top: -100%;
}
#header:after {
	background: #dfdde6;
	z-index: -2;
	top: -100%;
}
.lnav #header:after {
	top: 0;
}

#header .inner {
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
	text-align: center;
}
#btn_nav {
	position: absolute;
	z-index: 7000;
	width: 50px /* 40px */;
	height: 32px /* 22px */;
	display: block;
	top: 30px;
	left: 0;
}
#btn_nav .bar {
	background: #6c609f;
	display: block;
	width: 40px;
	height: 2px;
	position: absolute;
	left: 5px;
	transition: all 0.3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
}
#btn_nav .bar.top {
	top: 5px;
}
#btn_nav .bar.middle {
	top: 15px;
}
#btn_nav .bar.bottom {
	top: 25px;
	width: 25px;
}
.lnav #btn_nav .bar.top {
	transform: rotate3d(0,0,1,30deg);
	top: 15px;
}
.lnav #btn_nav .bar.middle {
	transform: rotate3d(0,0,1,-30deg);
	top: 15px;
}
.lnav #btn_nav .bar.bottom {
	width: 0;
}

#hdr_logo a {
	padding: 25px;
	display: inline-block;
}
#hdr_logo a:hover {
	opacity: 0.75;
}

#hdr_recruit {
	background: #6c609f;
	color: #fff;
	font-size: 80%;
	width: 95px;
	text-align: center;
	height: 32px;
	display: inline-block;
	position: absolute;
	top: 27px;
	right: 103px;
	padding-top: 9px;
	border-radius: 2px;
	/* transition: all 0.3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s; */
}
#hdr_recruit:hover {
	/* top: 0;
	background: #6c609f; */
}

#hdr_recruit .pc_none{
	display: none;
}

#hdr_contact {
	background: #666666;
	color: #fff;
	font-size: 80%;
	width: 95px;
	text-align: center;
	height: 32px;
	display: inline-block;
	position: absolute;
	top: 27px;
	right: 0;
	padding-top: 9px;
	border-radius: 2px;
	/* transition: all 0.3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s; */
}
#hdr_contact:hover {
	/* top: 0;
	background: #6c609f; */
}
#hdr_sns {
	position: absolute;
	top: 30px;
	left: 40px;
}

#hdr_sns li {
}
#hdr_sns li a {
}
/*--------------------------------------------------- HEADER GLOBAL NAVI */
#gn {
	background: #dfdde6;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	padding-top: 90px;
	width: 100%;
	height: 100%;
	z-index: 8100;
	overflow-y: auto;
}
#gn .inner {
	max-width: 1020px;
	margin: 0 auto;
	padding: 0 10px;
}
#gn_main {
    display: flex;
    flex-wrap: wrap;
    max-width: 800px;
}
#gn_main .lst_main {
	width: 33.33%;
}
#gn_main .lst_main li {

}
#gn_main .lst_main li a {
	display: block;
	color: #231815;
	padding: 2px 5px;
	position: relative;
}

#gn_main .hdr_acr_menu .acr_btn {
	width: 17px;
	height: 17px;
	background-color: #6c609f;
	border-radius: 50%;
	position: absolute;
	top: 0;
	right: 25px;
	bottom: 0;
	margin: auto;
}

#gn_main .hdr_acr_menu .acr_btn:after,
#gn_main .hdr_acr_menu .acr_btn:before {
	content: '';
	background: #fff;
	width: 8px;
	height: 1px;
	position: absolute;
	top: 50%;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	transition: all 0.4s;
	-moz-transition: all 0.4s;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	opacity: 1;
}

#gn_main .lst_main li.open .hdr_acr_menu .acr_btn:after{
	opacity: 0;
}

#gn_main .hdr_acr_menu .acr_btn:after{
	transform: rotate3d(0,0,1,90deg);
}

#gn_main .lst_main li.acr_menu_wrap.open .lst_sub {
	display: block;
}

#gn_main .lst_main li.acr_menu_wrap .lst_sub {
	display: none;
}

#gn_main .lst_main li a:hover {
	color: #6c609f;
}
#gn_main .lst_main > li a .num,
#gn_main .lst_main > li a .txt {
    display: inline-block;
    vertical-align: middle;
    line-height: 2;
}
#gn_main .lst_main > li a .num {
    font-size: 87%;
    width: 35px;
}
#gn_main .lst_main > li a .txt {
    font-size: 114%;
}

#gn_main .lst_sub {
    margin-left: 35px;
    margin-bottom: 1em;
}
#gn_main .lst_sub li a,
#gn_main .lst_sub li span {
    font-size: 87%;
    padding: 2px 5px;
    line-height: 2;
    display: block;
    text-indent: 0;
}

#gn_ftr {
	text-align: right;
	padding: 1em 0 3em;
}
#hdr_nav_logo a {
	display: inline-block;
	padding: 0.6em 0;
}
#hdr_copy {

}
#hdr_copy small {
	font-size: 67%;
	display: inline-block;
}
/*--------------------------------------------------- HEADER COPYRIGHT */
#hdr_copy {
}
#hdr_copy small {
	color: #6c609f;
}
/*--------------------------------------------------- PAGE NAVI */
#pnav_wrapper {
	position: relative;
    z-index: 1;
	background: #f1f1f1;
}
#pnav.home_nav {
	justify-content: center;
}
#phdr_bg {
	background: #f1f1f1;
	height: 350px;
	z-index: 1;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
}
/*--------------------------------------------------- PAGE TITLE */
#ptitle {
	height: 170px;
	background-color: #666666;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url(../images/common/bg_03.jpg);
	padding: 1em;
	width: 100%;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	color: #fff;
	position: relative;
	z-index: 1;
}
#concept #ptitle,
#works #ptitle {
	background-image: url(../images/common/bg_01.jpg);
}
#revive #ptitle,
#carpenter #ptitle {
	background-image: url(../images/common/bg_02.jpg);
}
#modelhouse #ptitle {
	background-image: url(../images/common/bg_04.jpg);
}
#about #ptitle {
	background-image: url(../images/common/bg_05.jpg);
}
#contact #ptitle {
	background-image: url(../images/common/bg_07.jpg);
}
#links #ptitle {
	background-image: url(../images/common/bg_08.jpg);
}
#privacy-policy #ptitle {
	background-image: url(../images/common/bg_09.jpg);
}
#ptitle h2 .en,
#ptitle h2 .ja {
    display: block;
    text-align: center;
	width: 100%;
}
#ptitle h2 .en {
    font-size: 220%;
    font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.09em;
}
#ptitle h2 .ja {
    font-size: 87%;
    line-height: 2;
    padding-top: 0.5em;
}
/* STORY ページの特別仕様 */
#story #ptitle {
	position: relative;
    width: 100%;
    z-index: 2;
    background: none;
    align-items: flex-start;
    padding: 0 1em;
	height: auto;
}
#story #ptitle:after {
    content: '';
    height: 450px;
    background: url(../images/story/bg.jpg) center center / cover no-repeat;
    width: 100%;
    position: absolute;
    z-index: 1;
	left: 0;
	top: 0;
}
#story #ptitle h2 {
	position: relative;
    z-index: 3;
    height: 170px;
    align-content: center;
    display: flex;
    flex-wrap: wrap;
}
/*==================================================
FOOTER
====================================================*/

#gototop {
	position: fixed;
	z-index: 6000;
	right: 20px;
	top: 50%;
	display: block;
	width: 30px;
	height: 120px;
	background: url(../images/common/gototop.png) center center no-repeat;
}
/*--------------------------------------------------- FOOTER ftr_pickup*/
#ftr_pickup {
	border-top: 1px solid #d2d2d2;
	background: #fff;
	padding: 3.5em 10px 0;
}
#ftr_pickup ul {
	max-width: 1020px;
	padding: 0 10px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#ftr_pickup ul li {
	width: 50%;
	margin-bottom: 40px;
}
#ftr_pickup ul li:nth-child(2n+1){
	padding-right: 20px;
}
#ftr_pickup ul li:nth-child(2n){
	padding-left: 20px;
}
#ftr_pickup ul li a {
	color: #fff;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	height: 120px;
	display: flex;
	align-items: center;
	align-content: center;
	flex-wrap: wrap;
	padding: 2em;
}
#ftr_pickup ul li a:hover {
	opacity: 0.75;
}
#ftr_pickup ul li:nth-child(1) a {
	background-image: url(../images/common/ftr_bnr_01.jpg);
	background-position: center right;
}
#ftr_pickup ul li:nth-child(2) a {
	background-image: url(../images/common/ftr_bnr_04.jpg);
}
#ftr_pickup ul li:nth-child(3) a {
	background-image: url(../images/common/ftr_bnr_05.jpg);
}
#ftr_pickup ul li:nth-child(4) a {
	background-image: url(../images/common/ftr_bnr_03.jpg);
}
#ftr_pickup ul li:nth-child(5) a {
	background-image: url(../images/common/ftr_bnr_02.jpg);
}
#ftr_pickup ul li:nth-child(6) a {
	background-image: url(../images/common/ftr_bnr_06.jpg);
}
#ftr_pickup ul li a .en,
#ftr_pickup ul li a .ja {
	display: block;
	width: 100%;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
}
#ftr_pickup ul li a .en {
	font-size: 100%;
	line-height: 1.6;
}
#ftr_pickup ul li a .ja {
	font-size: 167%;
	line-height: 1.4;
}
/*--------------------------------------------------- FOOTER ftr_obi*/
#ftr_obi {
	width: 100%;
	height: 30px;
	background: #dad8e3;
	border-top: 1px solid #cbcbcb;
	border-bottom: 1px solid #cbcbcb;
}
#ftr_main {
	background: #f1f1f1;
	padding: 1em 10px;
}
#ftr_main .inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
/*--------------------------------------------------- FOOTER ftr_main_upper*/
#ftr_main_upper {
	display: flex;
	padding: 2em 0;
	justify-content: space-between;
	border-bottom: 1px solid #cbcbcb;
}
#ftr_logo {
	padding-right: 2em;
}
#ftr_logo a {
	display: inline-block;
}
#ftr_logo a img {
	max-width: 100%;
	height: auto;
}
#ftr_address {
	flex-grow: 2;
}
#ftr_address ul {
	display: flex;
}
#ftr_address ul li {
	width: 100%;
	padding: 0 1em;
}

#ftr_address dt,
#ftr_address dd {
	font-size: 80%;
	line-height: 1.6;
}
#ftr_sns {
	padding-left: 3em;
	border-left: 1px solid #cbcbcb;
}
#ftr_sns ul {
	display: flex;
    flex-direction: column;
}
#ftr_sns ul li {
	width: 100%;
}
#ftr_sns ul li a {
	display: inline-block;
	color: #666666;
	font-size: 80%;
	padding: 5px 5px 5px 30px;
	line-height: 20px;
}
#ftr_sns ul li a:hover {
	color: #6a5c9a;
}
#ftr_sns ul li.fb a {
	background: url(../images/common/ico_fb.png) left center no-repeat;
}
#ftr_sns ul li.ig a {
	background: url(../images/common/ico_ig.png) left center no-repeat;
}
#ftr_sns ul li.fb a:hover {
	background-image: url(../images/common/ico_fb_pl.png);
}
#ftr_sns ul li.ig a:hover {
	background-image: url(../images/common/ico_ig_pl.png);
}
/*--------------------------------------------------- FOOTER ftr_main_lower*/
#ftr_main_lower {
	padding: 1em 0 0;
}
#ftr_main_lower ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}
#ftr_main_lower ul li {
	padding: 0 1em;
}
#ftr_main_lower ul li a {
	display: block;
	font-size: 80%;
	color: #231815;
	padding: 1em;
}
#ftr_main_lower ul li a:hover {
	color: #6c609f;
}
/*--------------------------------------------------- FOOTER COPYRIGHT*/
#ftr_copy {
	text-align: center;
	color: #fff;
	background: #6a5c9a;
	padding: 1em 10px;
}
#ftr_copy small {
	display: inline-block;
    line-height: 1.4;
	font-size: 67%;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					BASE STYLE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
BOX
====================================================*/
/*--------------------------------------------------- BOX : COMMON*/
.box_content{
	max-width:1020px;
	margin:0 auto;
	box-sizing:border-box;}
.box_inner{
	padding:60px 0;}
.box_cmn{
	margin:0 0 40px;}
/*--------------------------------------------------- BOX : COMMON*/

/*--------------------------------------------------- BOX : SCROLL*/

/*--------------------------------------------------- BOX : DOCUMENT*/
.box_doc{
	max-width:720px;
	margin:0 auto;}
/*--------------------------------------------------- BOX : ATTENTION*/
.box_attention{
}
/*--------------------------------------------------- BOX : NORTICE*/
.box_notice{
}
/*--------------------------------------------------- POINT*/
.box_point{
}
/*==================================================
TITLE
====================================================*/
/*--------------------------------------------------- TITLE : H2*/
h2.ttl_cmn{
	margin:0 0 40px;
	padding:0 10px 20px;
	font-size:36px;
	line-height:1.5;
	text-align:center;
	border-bottom:1px solid #D1CDC7;}
/*--------------------------------------------------- TITLE : H3*/
h3.ttl_cmn{
	margin:20px 0 40px;
	padding:0 0 20px;
	font-size:24px;
	line-height:1.5;
	text-align:center;
	position:relative;}
h3.ttl_cmn:after{
	content:'';
	position:absolute;
	width:40px;
	height:2px;
	bottom:0;
	left:50%;
	margin:0 0 0 -20px;
	background:#000;}
/*--------------------------------------------------- TITLE : H4*/
h4.ttl_cmn{
	font-weight:bold;
	line-height:1.5;
	margin:0 0 20px;}
/*--------------------------------------------------- TITLE : H5*/
h5.ttl_cmn{
	line-height:1.5;}
/*==================================================
TEXT
==================================================*/
/* テキストを単純に紫色にする */
.ppl {
	color: #6c609f;
}
/*--------------------------------------------------- TEXT : COMMON*/
p.txt_cmn{
	font-size:16px;
	line-height:1.8;
	margin:0 0 20px;
	text-align:justify;}
/*--------------------------------------------------- TEXT : ATTENTION*/
p.txt_attention{
	font-weight:bold;
	font-size:18px;
	line-height:1.8;
	text-align:center;}
/*--------------------------------------------------- TEXT : NOTICE*/
p.txt_notice{
	font-size:12px;
	line-height:1.5;
	color:#7F7A70;}
/*--------------------------------------------------- TEXT : REQUIRED*/
p.txt_required{
	color:#AB0507;}
/*--------------------------------------------------- TEXT : POINT*/
p.txt_point{
	font-size:20px;
	font-weight:bold;
	color:#F07700;
	text-align:center;
	margin:20px 0;}
span.txt_point{
	font-weight:bold;
	color:#F07700;}
/*==================================================
LINK
====================================================*/
a{
	color: #231815;
	text-decoration:none;
	cursor:pointer;
	transition: all 0.7s;
	-moz-transition: all 0.7s;
	-webkit-transition: all 0.7s;
	-o-transition: all 0.7s;}
/*--------------------------------------------------- LINK : COLOR*/
a:link,
a:visited,
a:active {
	color: #6c609f;}
a:hover {
	color: #6c609f;
	text-decoration: none;}
a:active {
	text-decoration: none;}
a.ext:after,
#post_output .content a[target="_blank"]:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f0c1';
	padding: 0 0.2em;
}
/*--------------------------------------------------- LINK : NO TRANSITION*/
a.noanime{
	transition: all 0s ease-in-out 0s;
	-moz-transition: all 0s;
	-webkit-transition: all 0s;
	-o-transition: all 0s;}
/*--------------------------------------------------- LINK : IMG*/
a img{
	transition: all 0.7s ease-in-out 0s;
	-moz-transition: all 0.7s;
	-webkit-transition: all 0.7s;
	-o-transition: all 0.7s;}
a:hover img{
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;}
/*--------------------------------------------------- LINK : COMMON*/
a.lnk_cmn {
	display:block;
	min-width:320px;
	margin:0 auto;
	padding:10px;
	color:#FFF;
	background:#6c609f;
	border-radius:3px;
	text-align:center;
	box-sizing:border-box;}
/*--------------------------------------------------- LINK : COMMON*/
a.lnk_txt {
	display:inline-block;
	padding:3px;
	color: #6c609f;
	border-bottom:1px dotted;}
a.lnk_txt:hover {
	border-bottom-style: solid;}
/*--------------------------------------------------- LINK : SCALE*/
a.lnk_scale img{
	transform: scale(1.001);}
a.lnk_scale:hover img{
	transform: scale(1.1);}
/*==================================================
LIST
==================================================*/
.lst_cmn{
	margin:0 0 20px;
	border-top:1px dotted #D1CDC7;}
.lst_cmn li{
	line-height:1.7;
	padding:10px;
	border-bottom:1px dotted #D1CDC7;}

.lst_dot {
}
.lst_dot li {
	text-indent: -1.2em;
	margin-left: 1.2em;
}
.lst_dot li:before {
	content: '・';
	padding-right: 0.2em;
}
/*--------------------------------------------------- LIST : SNS */
.lst_cmn_sns {
	display: flex;
	justify-content: center;
	width: 96px;
}
.lst_cmn_sns li {
}
.lst_cmn_sns li a {
	width: 30px;
	height: 30px;
	display: inline-block;
}
.lst_cmn_sns li.fb a {
	background: url(../images/common/ico_fb.png) center center no-repeat;
}
.lst_cmn_sns li.ig a {
	background: url(../images/common/ico_ig.png) center center no-repeat;
}
.lst_cmn_sns li.fb a:hover {
	background-image: url(../images/common/ico_fb_pl.png);
}
.lst_cmn_sns li.ig a:hover {
	background-image: url(../images/common/ico_ig_pl.png);
}
/*--------------------------------------------------- LIST : NEWS */
.lst_news li{
	border-bottom:1px dotted #D1CDC7;}
.lst_news li a{
	display:block;
	padding:10px 0;}
.lst_news li a .date{
	display:inline-block;
	font-size:14px;
	margin:0 10px 0 0;}
.lst_news li a .cat{
	display:inline-block;
	font-size:12px;
	padding:3px 10px;
	border:1px solid #F07700;
	color:#F07700;
	border-radius:3px;}
/*--------------------------------------------------- LIST : FLOAT DL*/
.lst_float {
	display: table;
	width: 100%;
	table-layout: fixed;}
.lst_float dt{
	padding: 10px 0;
	display: table-cell;
	vertical-align: top;
	border-bottom:1px solid #D1CDC7;
	width:20%;}
.lst_float dd{
	padding: 10px 0 10px 10px;
	display: table-cell;
	vertical-align: top;
	border-bottom:1px solid #D1CDC7;}
/*--------------------------------------------------- LIST : INDENT*/
.lst_indent_1 li{
	padding-left:1em;}
.lst_indent_1 li:first-letter{
	margin-left:-1em;}
.lst_indent_2 li{
	padding-left:2em;}
.lst_indent_2 li:first-letter{
	margin-left:-2em;}
.lst_indent_3 li{
	padding-left:3em;}
.lst_indent_3 li:first-letter{
	margin-left:-3em;}

/*==================================================
TABLE
==================================================*/
.tbl_cmn{
	width:100%;
	margin:0 0 20px;
	border-top:1px solid #D1CDC7;}
.tbl_cmn th, .tbl_cmn td{
	padding:10px;
	line-height:1.5;
	vertical-align:middle;
	border-bottom:1px solid #D1CDC7;}
.tbl_cmn th {
	white-space:nowrap;
	background:#FDF9F2;}
/*--------------------------------------------------- TABLE : POSITION*/
table.center th,
table.center td,
table th.center,
table td.center{
	text-align:center;}
table.right th,
table.right td,
table th.right,
table td.right{
	text-align:right;}
table.top th,
table.top td,
table th.top,
table td.top{
	vertical-align:top;}
/*==================================================
FORM
====================================================*/
/*--------------------------------------------------- FORM : INPUT & TEXTAREA*/
.form_cmn input[type="text"],
input[type="text"].input_cmn,
.form_cmn input[type="email"],
input[type="email"].input_cmn,
.form_cmn input[type="password"],
input[type="password"].input_cmn,
.form_cmn input[type="tel"],
input[type="tel"].input_cmn,
.form_cmn input[type="number"],
input[type="number"],
.form_cmn textarea,
textarea.input_cmn{
	resize: vertical;
	display:block;
	width:100%;
	padding:5px 10px;
	border:1px solid #231815;
	line-height:1.6;
	border-radius:3px;
}
/*--------------------------------------------------- FORM : 入力欄カスタマイズ*/
.form_cmn input[type="checkbox"],
input[type="checkbox"].input_cmn {
	margin-right: 5px;
}
.form_cmn input[type="number"]::-webkit-outer-spin-button,
.form_cmn input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;}
.form_cmn input[type="number"] {
    -moz-appearance:textfield;}
.form_cmn input[type="number"].num-1,
.form_cmn input[type="number"].num-2 {
	display: inline-block;
	margin-right: 0.5em;
}
.form_cmn input[type="number"].num-1 {
	max-width: 42px;
	margin-left: 0.5em;
	text-align: center;
}
.form_cmn input[type="number"].num-2 {
	max-width: 54px;
	text-align: right;
}
.form_cmn input[type="text"].zip {
	max-width: 118px;}
.form_cmn input[type="text"].half {
	max-width: 60%;}
/*--------------------------------------------------- FORM : LABEL*/
.form_cmn label,
label.label_cmn{
	display:inline-block;
	padding: 5px 20px 5px 0;
	cursor:pointer;
	line-height: 1.6;
}
/*--------------------------------------------------- FORM : SELECT*/
.form_cmn select,
select.select_cmn{
	display:block;
	margin: 0 5px 0 0;
	padding: 1em 1em;
	cursor:pointer;
	border:1px solid #231815;
	font-size: 80%;
	background: none;
}
.form_cmn select option,
select.select_cmn option{
	cursor:pointer;
	border-bottom:1px solid #231815;}
/*--------------------------------------------------- FORM : BUTTON*/
.form_cmn input[type="submit"],
input[type="submit"].btn_cmn,
.form_cmn input[type="reset"],
input[type="reset"].btn_cmn,
.form_cmn input[type="button"],
input[type="button"].btn_cmn,
a.lnk_input{
	font-size: 12px;
	margin: 0 10px 10px;
	display:inline-block;
	min-width:150px;
	text-align:center;
	padding:10px 20px;
	cursor:pointer;
	background:#6c609f;
	color:#FFF;
	border: none;
	vertical-align:middle;
	transition: all 0.7s;
	-moz-transition: all 0.7s;
	-webkit-transition: all 0.7s;
	-o-transition: all 0.7s;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;}
.form_cmn input[type="reset"],
input[type="reset"].btn_cmn,
a.lnk_input.cancel,
a.lnk_input.back{
	background:#666;}
.form_cmn input[type="submit"]:hover,
input[type="submit"].btn_cmn:hover,
.form_cmn input[type="reset"]:hover,
input[type="reset"].btn_cmn:hover,
.form_cmn input[type="button"]:hover,
input[type="button"].btn_cmn:hover,
a.lnk_input:hover{

}
/*--------------------------------------------------- FORM : FOCUS*/
.form_cmn input:focus,
input.input_cmn:focus,
.form_cmn textarea:focus,
textarea.input_cmn:focus,
.form_cmn label:focus,
label.label_cmn:focus,
.form_cmn select:focus,
select.select_cmn:focus {
	border-color: #6c609f;}
.form_cmn input::-webkit-input-placeholder {
	color: #bdbdbd;}
.form_cmn input::-moz-placeholder {
	color: #bdbdbd;}
.form_cmn input:-ms-input-placeholder {
	color: #bdbdbd;}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

					HOME

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/

.btn_seemore {
	display: inline-block;
	border: 1px solid;
	min-width: 140px;
	text-align: center;
	font-size: 80%;
	line-height: 38px;}
.btn_seemore.b_wh {
    background: #fff;}
.btn_seemore:hover,
.btn_seemore.b_wh:hover {
	background: #6c609f;
	border-color: #6c609f;
	color: #fff;}
.btn_seemore.pl {
	background: #6c609f;
	border-color: #6c609f;
	color: #fff;}
.btn_seemore.pl:hover {
	color: #6c609f;
	background: #fff;}
.btn_seemore.pl.tr:hover {
	background: none;}
.btn_seemore.bk {
	color: #231815;
	border-color: #231815;}
.btn_seemore.bk:hover {
	color: #6c609f;
	border-color: #6c609f;
	background: none;}
.btn_seemore.wh {
	color: #fff;}
.btn_seemore.wh:hover {
	color: #231815;
	background: #fff;
	border-color: #fff;}
.btn_seemore.long {
    width: 200px;}

a.btn_lgbar {
	background: #fff;
	display: block;
	padding: 1em 2.5em;
	border: 1px solid #6c609f;
	position: relative;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 133%;
	letter-spacing: 0.26em;
	line-height: 1.6;
	color: #231815;
	text-align: center;
}
a.btn_lgbar.bk {
	border-color: #231815;
}
a.btn_lgbar.bk:hover {
	color: #6c609f;
	border-color: #6c609f;
}
a.btn_lgbar:after {
	content: '\f105';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	position: absolute;
	right: 1em;
	top: 50%;
	transform: translate3d(0,-50%,0);
}

/* HOME BASIC H2 */

h2.home_basic {
	padding-bottom: 2em;
}
h2.home_basic .en,
h2.home_basic .ja {
	display: block;
	text-align: center;
}
h2.home_basic .en {
	font-size: 220%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
}
h2.home_basic .ja {
	color: #6c609f;
	font-size: 87%;
	line-height: 2;
	padding-top: 0.5em;
}
/* HOME EN ONLY H2 + TAGLINE */
.home_idx_ttlarea {
	position: relative;
	margin-bottom: 2em;
}
.home_idx_en {
	color: #6c609f;
	font-size: 120%;
	line-height: 2;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	text-align: right;
	position: absolute;
	right: 0;
	bottom: 0;
	letter-spacing: 0.1em;
}
.home_idx_tl {
	letter-spacing: 0.38em;
	font-size: 134%;
	font-weight: 600;
	line-height: 1.5;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
}
/*==================================================
HOME MV
====================================================*/
#home_mv {
	position: relative;
	height: 560px;
}
#home_mv .txt {
	position: relative;
	z-index: 2;
	max-width: 1020px;
	padding: 0 10px;
	margin: 0 auto;
	top: 50%;
	transform: translate3d(0,-50%,0);
}
#home_mv .txt .msg {
	font-size: 114%;
	letter-spacing: 0.1em;
	line-height: 1.4;
	padding-bottom: 1em;
	display: inline-block;
}
#home_mv .txt .idx {

}
#home_mv .txt .idx .en {
	display: block;
	font-size: 312.5%;
	font-weight: bold;
	text-shadow: 0 0 10px rgba(255,255,255,0.1), 0 0 2px rgba(255,255,255,0.5), 0 0 1px rgba(255,255,255,0.8);
}
#home_mv .txt .idx .ja {
	display: block;
	color: #6c609f;
	letter-spacing: 0.1em;
	line-height: 2;
	padding-top: 0.5em;
}
/*= スライドショー ==============*/
#home_mv .img {
	width: calc(100% - ( (100% - 1000px) / 2 ) - 200px );
	height: 100%;
	background: #f1f1f1;
	right: 0;
	top: 0;
	position: absolute;
	overflow: hidden;
}
#SliderImg {
	overflow: hidden;
}
#SliderImg .sldimg {
	width: 100%;
	height: 100%;
	position:absolute;
	top:0;
	left:0;
	display:none;
}
#SliderImg .sldimg div {
	width: 100%;
	height: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
/*==================================================
HOME NAV
====================================================*/
.home_nav {
	max-width: 1020px;
	margin: 0 auto;
	display: flex;
}
#hnav.home_nav {
	justify-content: flex-end;
}
.home_nav ul {
	display: table;
}
#hnav.home_nav ul {
	max-width: 820px;
}
.home_nav ul li {
	padding: 1em 0;
	display: table-cell;
}
.home_nav ul li a {
	height: 60px;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	text-align: center;
	color: #231815;
	padding: 0 10px;
}
.home_nav ul li a:hover {
	background: rgba(255,255,255,0.25);
	color: #6c609f;
}
.home_nav ul li a .ja,
.home_nav ul li a .en {
	display: block;
	width: 100%;
	line-height: 1.8;
}
.home_nav ul li a .ja {
	font-size: 87%;
}
.home_nav ul li a .en {
	font-size: 80%;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	color: #666666;
}

/*==================================================
HOME INFO
====================================================*/
#home_info {
	padding: 2em 10px 3em;
}
#home_info .inner {
	display: table;
	table-layout: fixed;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
#home_info .inner .idx,
#home_info .inner .main {
	display: table-cell;
	vertical-align: top;
}
#home_info .inner .idx {
	width: 200px;
	text-align: left;
	padding-top: 0.75em;
}
#home_info h2.home_basic {
    padding-bottom: 0.75em;
}
#home_info h2.home_basic .en,
#home_info h2.home_basic .ja {
	text-align: left;
}
#home_info_sns {
	justify-content: flex-start;
	display: flex;
}
#home_info_sns li a {
    width: 24px;
    height: 24px;
    display: inline-block;
}
#home_info_sns li.ig {
	padding-right: 10px;
}
#home_info_sns li.ig a {
    background: url(../images/home/ico_ig.png) left top no-repeat;
}
#home_info_sns li.fb a {
    background: url(../images/home/ico_fb.png) left top no-repeat;
}
#home_info_sns li.ig a:hover {
    background-image: url(../images/home/ico_ig_pl.png);
}
#home_info_sns li.fb a:hover {
    background-image: url(../images/home/ico_fb_pl.png);
}

#home_info .main {

}
#home_info .main ul {

}
#home_info .main ul li {
	border-bottom: 1px solid #dbdbdb;
}
#home_info .main ul li a {
	display: table;
	table-layout: fixed;
	width: 100%;
	color: #231815;
}
#home_info .main ul li a:hover {
	color: #6c609f;
	background: rgba(255,255,255,0.25);
}
#home_info .main ul li a .cat,
#home_info .main ul li a .date,
#home_info .main ul li a .title {
	display: table-cell;
	vertical-align: top;
	font-size: 80%;
	line-height: 1.6;
	padding-top: 0.75em;
	padding-bottom: 0.75em;
}
#home_info .main ul li a .title:after {
	background: url(../images/common/ico_arw_right_01.png) left center no-repeat;
	content: 'もっと見る';
	padding-left: 10px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate3d(0,-50%,0);
	display: inline-block;
	z-index: -1;
}
#home_info .main ul li a .cat,
#home_info .main ul li a .date {
	width: 9em;
}
#home_info .main ul li a .title {
	width: auto;
	position: relative;
	padding-right: 7em;
}
/*==================================================
HOME CONCEPT & HOME REVIVE
====================================================*/
.home_imtx {
	position: relative;
	overflow: hidden;
	min-height: 320px;
	background: #fff;
}
.home_imtx:after {
	/* position: absolute;
	width: 100%;
	height: 3em;
	top: 0;
	left: 0;
	z-index: 0;
	content: ''; */
}
.home_imtx.gr:after {
	background: #f1f1f1;
}
.home_imtx.wh:after {
	background: #fff;
}
.home_imtx .txt {
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: flex-start;
	max-width: 1000px;
	margin: 0 auto;
}
.home_imtx.right .txt {
	justify-content: flex-end;
	/* padding-top: 0px; */
	margin-top: 50px;
	/* height: 300px; */
}
.home_imtx.left .txt {
	margin-top: 50px;
	/* height: 300px; */
}
.home_imtx .txt .inner {
	background: #fff;
	max-width: 500px;
	padding: 2em;
}
.home_imtx.right .txt .inner {
	right: 0;
}
.home_imtx.left .txt .inner {
	left: 0;
}
.home_imtx .txt .inner p {
	color: #666666;
	font-size: 87%;
	line-height: 1.9;
	margin-bottom: 1.5em;
}
.home_imtx .txt .inner p:last-of-type {
	margin-bottom: 0;
}
.home_imtx .txt .btnarea {
	padding-top: 3em;
}

.home_imtx .img {
	width: calc(100% - ( (100% - 1000px) / 2 ) - 340px );
	height: 320px;
	/*padding-top: 42%;*/
	position: absolute;
	top: 0;
	z-index: 1;
}
.home_imtx.right .img {
	left: 0;
}
.home_imtx.left .img {
	right: 0;
}
/*==================================================
HOME CONCEPT
====================================================*/
#home_concept {

}
#home_concept .txt {
}
#home_concept .img {
	background: url(../images/home/img_concept.jpg) center center / cover no-repeat;
}
/*==================================================
HOME REPORT & HOME WORKS
====================================================*/
.home_galtype {
	padding: 3.5em 10px;
}
.home_galtype .btnarea {
	padding-top: 2.5em;
	text-align: center;
}

.img_hover {
	display: block;
    width: 100%;
    position: relative;
    overflow: hidden;
}
.img_hover img {
	display: block;
    max-width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    transition: all 0.5s;
    -moz-transition: all 0.5s;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
}
a:hover .img_hover img,
.img_hover.hover img {
    -webkit-transform: scale3d(1.1,1.1,1.1);
    -ms-transform: scale3d(1.1,1.1,1.1);
    transform: scale3d(1.1,1.1,1.1);
}
/*==================================================
HOME REPORT
====================================================*/
.home_report {
	background: #fff;}
.home_report .inner {
	max-width: 1000px;
	margin: 0 auto;}
.home_report ul {
	display: flex;
	flex-wrap: wrap;}
.home_report ul li {
	width: 25%;}
.home_report ul li a {
	color: #231815;
	height: 100%;
	display: block;}
.home_report ul li a:hover {
	color: #6c609f;}
.home_report ul li a .img {
    padding: 67% 0 0;}
.home_report ul li a:hover .img {
	opacity: 0.75;}
.home_report ul li a .txt {
	padding: 0.5em 1em 0 0;}
.home_report ul li a .txt span {
	font-size: 80%;
	display: inline-block;
	line-height: 2;}
.home_report ul li a .txt h3 {
	line-height: 1.6;}
/*==================================================
HOME WORKS
====================================================*/
#home_works {
	padding: 3.5em 10px 9.67em;
}
#home_works .inner {
	max-width: 1000px;
	margin: 0 auto;
}
.lst_home_works {
	display: flex;
}
.lst_home_works > li {
	width: 100%;
}
.lst_home_works > li a {
	color: #231815;
	height: 100%;
	display: block;
	max-width: 310px;
}
.lst_home_works > li a:hover {
    color: #6c609f;
}
.lst_home_works > li a .img {
	padding-top: 67%;
}
.lst_home_works > li a .txt {
	padding: 0.75em 1em 0 0;
}
.lst_home_works > li a .txt h3 {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	line-height: 1.6;
}
.lst_home_works > li a .txt span {
	font-size: 87%;
	line-height: 2;
	display: inline-block;
}
/*==================================================
HOME MODELHOUSE
====================================================*/
#home_modelhouse {
	padding-bottom: 9.67em;
	background: #fff;
}
#home_modelhouse .fullbnr {
	width: 100%;
	height: 280px;
	width: 100%;
	color: #fff;
	background: url(../images/home/img_modelhouse.jpg) center center / cover no-repeat;
}
#home_modelhouse .fullbnr .inner {
	max-width: 1040px;
	padding: 0 20px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	height: 100%;
	align-items: center;
}
#home_modelhouse .fullbnr .txt {

}
#home_modelhouse .fullbnr .txt h2,
#home_modelhouse .fullbnr .txt small {
	text-shadow: 0 0 7px rgba(0,0,0,0.6);
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
}
#home_modelhouse .fullbnr .txt h2 {
	font-size: 220%;
	padding-bottom: 0.5em;
}
#home_modelhouse .fullbnr .txt small {
	font-size: 120%;
	display: inline-block;
	letter-spacing: 0.2em;
	line-height: 1.6;
}
/*==================================================
HOME REVIVE
====================================================*/
#home_revive {
	padding-bottom: 3em;}
#home_revive .img {
	background: url(../images/home/img_revive.jpg) center center / cover no-repeat;}
/*==================================================
HOME REPORT
====================================================*/
#home_blog {
	padding-top: 0;}
/*==================================================
HOME SDGs added on 20200218
====================================================*/
#home_sdg {
    background: #fff;}
#home_sdg .inner {
    max-width: 940px;
    margin: 0 auto;}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			PAGE COMMON

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.bg_white {
	background: #fff;
}
.bg_default {
	background: #f1f1f1;
}
#pnav.home_nav ul li a.current .ja,
#pnav.home_nav ul li a.current .en {
	color: #6c609f;
}
.pnav_sub {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
    max-width: 1012px;
    margin: 0 auto;
	padding: 3.4em 0;
}
.pnav_sub li {
	width: 25%;
	padding: 0 6px 12px;
}
.pnav_sub li a {
	display: block;
	background: #dad8e3;
	color: #231815;
	text-align: center;
    padding: 0.75em 0.5em;
    line-height: 1.4;
	height: 100%;
}
.pnav_sub li a:hover,
.pnav_sub li a.current {
	background: #6c609f;
	color: #ffffff;
}
.pnav_sub li a.current:hover {
	color: #dad8e3;
}

.tnav_sub {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 1012px;
    margin: 0 auto;
	padding: 3.4em 0;
}
.tnav_sub li {
	padding: 0 1em;
}
.tnav_sub li a {
	color: #666666;
	display: inline-block;
	line-height: 1.4;
	padding: 0.5em;
	position: relative;
}
.tnav_sub li a.current {
	color: #bfbfbf;
}
.tnav_sub li a:after {
	background: #a5a5a5;
	width: 0;
	height: 1px;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	transition: all 0.5s;
	-moz-transition: all 0.5s;
	-webkit-transition: all 0.5s;
	-o-transition: all 0.5s;
}
.tnav_sub li a.current:after {
	background: #bfbfbf;
}
.tnav_sub li a:hover:after,
.tnav_sub li a.current:after {
	width: 100%;
}

h3.below_nav {
	font-size: 200%;
    font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	text-align: center;
    line-height: 1.4;
    padding: 0 10px 2.3em;
	letter-spacing: 0.26em;
}
h3.below_nav.lspb {
	padding-bottom: 1.5em;
}
h3.below_nav.nopb {
	padding-bottom: 0.5em;
}

.msg_cmn {
	width: 100%;
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 4.4em;
	margin-bottom: 4.4em;
	max-width: 680px;}
.msg_cmn.sdg {
    max-width: 680px !important;}
.msg_cmn.w1000 {
	max-width: 1030px;
}
.msg_cmn.nmb {
	margin-bottom: 0;
	padding-bottom: 4.4em;
}
.msg_cmn.nmt {
	margin-top: 0;
	padding-top: 4.4em;
}
.msg_cmn.nmpt {
	margin-top: 0;
	padding-top: 0;
}
.msg_cmn.nmpb {
	margin-bottom: 0;
	padding-bottom: 0;
}
.msg_cmn.ul {
	padding-bottom: 4.4em;
	position: relative;
}
.msg_cmn.ul:after {
    width: calc(100% - 30px);
    background: #c2c7da;
    content: '';
    height: 1px;
    display: block;
    bottom: 0;
    position: absolute;
    left: 15px;
}
.msg_cmn.ul.gr:after {
    background:#b6b6b6;
}
/* h3 */
.msg_cmn h3.idx,
.msg_cmn h4.h3idx {
	font-size: 167%;
	font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	padding-bottom: 1.4em;
	line-height: 1.5;
}
.msg_cmn h3.idx.smaller,
.msg_cmn h4.h3idx {
	font-size: 134%;
}
.msg_cmn h4.h3idx.larger {
	font-size: 167%;
}
/* h3 : 下パディング控え目 */
.msg_cmn h3.idx.lspb {
	padding-bottom: 0.9em;
}
.msg_cmn h3.idx.nopb,
.msg_cmn h4.h3idx.nopb {
	padding-bottom: 0.4em;
}
/* h3 : センタリング */
.msg_cmn h3.idx.center {
	text-align: center;
}
/* h3 : 下線付き */
.msg_cmn h3.idx.ul,
.msg_cmn h4.h3idx.ul {
	border-bottom: 1px solid #6c609f;
	padding-bottom: 0.75em;
	margin-bottom: 0.75em;
}
.msg_cmn h3.narrow {
	letter-spacing: 0.12em;
}
/* index box */
.msg_cmn .idxbox {
	padding-bottom: 0.5em;
}
/* index box 下Padding多め */
.msg_cmn .idxbox.pb2em {
	padding-bottom: 2em;
}
.msg_cmn .idxbox.pb4em {
	padding-bottom: 4em;
}
/* index box 下線付き */
.msg_cmn .idxbox.ul {
	border-bottom: 1px solid #6c609f;
	padding-bottom: 1.5em;
	margin-bottom: 1.5em;
}
/* Hの直下にsmallが来る */
.msg_cmn .idxbox.hassub {
	padding-bottom: 1.5em;
}
.msg_cmn .idxbox h4,
.msg_cmn .idxbox h3.h4idx {
	font-size: 134%;
	font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	line-height: 1.4;
}
.msg_cmn .idxbox h3.h4idx {
	font-size: 167%;
}
.msg_cmn .idxbox h4.narrow {
	letter-spacing: 0.15em;
}
/* 直下・真上にsmallが来る .hassub / .hassup */
.msg_cmn .idxbox .sup,
.msg_cmn .idxbox .sub {
	line-height: 1.6;
	font-size: 100%;
	color: #231815;
	margin: 0.5em 0 0;
	display: block;
}
.msg_cmn .idxbox .sub {
	position: relative;
}
.msg_cmn .idxbox .sup {
	margin: 0 0 0.5em;
}
.msg_cmn .idxbox p {
	margin-bottom: 0;
}
/* 左にラインが入る場合 */
.msg_cmn .idxbox .sub.ll {
	padding-left: 2.5em;
}
.msg_cmn .idxbox .sub.ll:before {
	content: '';
	width: 2em;
	height: 1px;
	background: #616161;
	display: block;
	position: absolute;
	left: 0;
	top: 0.75em;
}
/* 左に太ライン入り、紫 / H4・該当するP */
.sq_num_ppl {
	color: #6c609f;
	border-left: 10px solid;
	font-size: 134%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.1em;
	line-height: 1.4;
	margin-bottom: 1em;
	padding-left: 10px;
	display: table;
	table-layout: fixed;
	width: 100%;
}
.sq_num_ppl .num,
.sq_num_ppl .txt {
	display: table-cell;
	vertical-align: top;
}
.sq_num_ppl .num {
	width: 2.25em;
}
.sq_num_ppl .num:after {
	content: '.';
}
.sq_num_ppl .txt {
}
/* 左に太ライン入り、紫 / リスト用 */
.lst_sq_num_ppl .sq_num_ppl {
	font-size: 120%;
	letter-spacing: 0.26em;
}
.lst_sq_num_ppl .sq_num_ppl .txt small {
	color: #666;
	font-size: 83%;
	display: inline-block;
	padding-left: 1em;
	letter-spacing: 0.09em;
	line-height: 1.6;
	font-family: "Noto Sans JP", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ proNw3", sans-serif;
}
.lst_sq_num_ppl .sq_num_ppl .txt small:before {
	content: '※';
}

.msg_cmn p {
	color:#666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	margin-bottom: 1.4em;
	text-align: justify;
}
.msg_cmn p.ta_left {
	text-align: left;
}
.msg_cmn p:last-child {
	margin-bottom: 0;
}

.design p .ext {
    letter-spacing: 0.04em;
}

.msg_cmn figure {
	margin: 2.5em 0;
}
.msg_cmn figure.last {
	margin-bottom: 0;
}
.msg_cmn figure p {
	margin-bottom: 0;
}
.msg_cmn figure img,
.msg_cmn img {
	max-width: 100%;
	height: auto;
}
.msg_cmn figure figcaption {
	color: #666666;
	line-height: 1.6;
	padding-top: 0.5em;
	letter-spacing: 0.08em;
}
.msg_cmn figure figcaption.smaller {
	font-size: 80%;
}
.msg_cmn figure figcaption.right {
	text-align: right;
}

.msg_cmn figure .fig_col_2 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-between;
}
.msg_cmn figure img.mb,
.msg_cmn figure .fig_col_2.mb {
	margin-bottom: 5px;
}
.msg_cmn figure .fig_col_2 li {
	width: 50%;
}
.msg_cmn figure .fig_col_2 li:nth-child(2n+1){
	padding-right: 3px;
}
.msg_cmn figure .fig_col_2 li:nth-child(2n){
	padding-left: 3px;
}

.msg_cmn .lst_dot {
	margin-bottom: 1.2em;
}
.msg_cmn .lst_dot.last {
	margin-bottom: 0;
}
.msg_cmn .lst_dot li {
	color: #666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	text-align: justify;
}

.para_cmn {
	width: 100%;
    background-position: center center;
	background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    height: 260px;
}

.page_mv {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #666666;
	height: 450px;
}
.mv_sub img {
	max-width: 100%;
	height: auto;
}

.para_box{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	overflow: hidden;}
.para_inner{
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;}
.para_overlay{
	position: relative;
	z-index: 1;
}
.para_space{
	height: 260px;}
.para_inner.concept_design_01 {
	background-image: url(../images/concept/design/para_01.jpg);
}
.para_inner.concept_design_02 {
	background-image: url(../images/concept/design/para_02.jpg);
}
.para_inner.concept_flow_01 {
	background-image: url(../images/concept/flow/para_01.jpg);
}
.para_inner.concept_flow_02 {
	background-image: url(../images/concept/flow/para_02.jpg);
}
.para_inner.concept_flow_03 {
	background-image: url(../images/concept/flow/para_03.jpg);
}
.para_inner.concept_technology_01 {
	background-image: url(../images/concept/technology/para_01.jpg);
}
.para_inner.concept_technology_02 {
	background-image: url(../images/concept/technology/para_02.jpg);
}
.para_inner.concept_revival_01 {
	background-image: url(../images/concept/revival/para_01.jpg);
}
.para_inner.revive_instances_01 {
	background-image: url(../images/revive/instances/para_01.jpg);
}
.para_inner.about_policy_01 {
	background-image: url(../images/about/policy/para_01.jpg);
}
.para_inner.about_policy_02 {
	background-image: url(../images/about/policy/para_02.jpg);
}
.para_inner.carpenter_missions_01 {
	background-image: url(../images/carpenter/missions/para_01.jpg);
}
/* 年表等のTH:紫・TD：灰タイプ */
.tbllst_cmn {
	border-top: 1px solid #ccc;
}
.tbllst_cmn > dl {
	border-bottom: 1px solid #ccc;
	display: flex;
}
.tbllst_cmn > dl > dt,
.tbllst_cmn > dl > dd {
	padding-top: 1em;
	padding-bottom: 1em;
}
.tbllst_cmn > dl > dt {
	color: #6c609f;
	width: 33.33%;
	padding-right: 2em;
	line-height: 1.9;
}
.tbllst_cmn > dl > dd {
	width: 66.66%;
}
.tbllst_cmn > dl > dd p {
	margin-bottom: 0.5em;
}

.tbllst_cmn > dl > dd .address {
	margin-bottom: 1em;
}
.tbllst_cmn > dl > dd .address:last-of-type {
	margin-bottom: 0;
}
.tbllst_cmn > dl > dd .address dt,
.tbllst_cmn > dl > dd .address dd {
	color: #666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	text-align: justify;
}
.tbllst_cmn > dl > dd .address dt::before {
    content: '■';
	padding-right: 0.2em;
}
.tbllst_cmn > dl > dd .address dd {
	padding: 0.25em 0 0 1.2em;
	line-height: 1.6;
}

/* 紫枠・白背景の大きめボタン */
.btn_plus_l a.btn {
    background: #fff;
    display: block;
    padding: 1em 3em;
    border: 1px solid #6c609f;
    position: relative;
    font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 133%;
    letter-spacing: 0.26em;
    line-height: 1.6;
	color: #231815;
	text-align: center;
}

.btn_plus_1_btn {
    background: #fff;
    display: block;
    padding: 1em 3em;
    border: 1px solid #6c609f;
    position: relative;
    font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
    font-size: 133%;
    letter-spacing: 0.26em;
    line-height: 1.6;
    color: #231815 !important;
    text-align: center;
    margin-bottom: 1em;
}

.btn_plus_1_btn:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    content: '\f0c1';
    padding: 0 0.2em;
	color: #6c609f;
	font-size: 17px;
}

.btn_plus_l a.btn:before,
.btn_plus_l a.btn:after {
	content: '';
	background: #888888;
	width: 23px;
	height: 1px;
	position: absolute;
	right: 1em;
	top: 50%;
	transition: all 0.4s;
	-moz-transition: all 0.4s;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	opacity: 1;
}
.btn_plus_l a.btn:before {

}
.btn_plus_l a.btn:after {
	transform: rotate3d(0,0,1,90deg);
}
.btn_plus_l.open a.btn:before {
	transform: rotate3d(0,0,1,90deg);
	opacity: 0;
}
.btn_plus_l.open a.btn:after {
	transform: rotate3d(0,0,1,180deg);
}
.btn_plus_l dd {
	display: none;
}
.btn_plus_l.open dd {
	display: block;
	padding: 1em 1em 1.5em;
	background: #fff;
	border: 1px solid #f1f1f1;
	border-top: none;
}
#sdg_info {
    border-top: 1px solid #C9CEDE;
    padding-top: 4em;
    padding-bottom: 2em;}
#sdg_info .ttl {
    text-align: center;}
#sdg_info .ttl img {
    max-width: 100%;
    height: auto;}
#sdg_info ul {
    padding: 4em 0 3.5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;}
#sdg_info ul li {
    width: 25%;
    padding: 0 0.5% 1%;}
#sdg_info ul li img {
    max-width: 100%;
    height: auto;}
#sdg_info .msg {
    padding: 3em 0 1.75em;
    border-top: 1px solid #C9CEDE;
    border-bottom: 1px solid #C9CEDE;
    position: relative;}
#sdg_info .msg .btn {
    position: absolute;
    right: 0;
    bottom: 0;
    transform: translate3d(0,50%,0);}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			PAGE ABOUT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#about .msg_cmn {
	max-width: 830px;}

#about .recruit_bnr{
	max-width: calc(1020px - 94px);
	width: calc(100% - 100px);
	margin: 0 auto;
	background-color: white;
	border: #DBD8E3 5px solid;
	padding: 47px 56px;
}
#about .recruit_bnr .wrapper{
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#about .recruit_bnr .wrapper .left{
	width: calc(50% - 35px);
}
#about .recruit_bnr .wrapper .left h3{
	font-size: 25px;
	letter-spacing: 0.1em;
	color: #6C609F;
	margin-bottom: 38px;
}
#about .recruit_bnr .wrapper .left p{
	font-size: 15px;
	letter-spacing: 0.012em;
	line-height: 2.1;
}
#about .recruit_bnr .wrapper .line{
	display: block;
	content: '';
	width: 1px;
	height: 195px;
	margin: 0 35px;
	background-color: #6C609F;
}
#about .recruit_bnr .wrapper .right{
		width: calc(50% - 35px);
}
#about .recruit_bnr .wrapper .right .img{
	margin-bottom: 50px;
}
#about .recruit_bnr .wrapper .right .img img{
	width: 100%;
	height: auto;
}
#about .recruit_bnr .wrapper .right a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 57px;
	background-color: #6C609F;
}
#about .recruit_bnr .wrapper .right a span{
	color: #FFFFFF;
	letter-spacing: 0.2em;
	font-size: 16px;
	line-height: 1;
}

/*==================================================
 ご挨拶・会社概要
====================================================*/
#abt_ovw_intro {

}
#abt_ovw_intro .tagline {
	font-size: 167%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.1em;
	color: #231815;
	line-height: 1.8;
	border-bottom: 1px solid #c2c7da;
	padding-bottom: 1.5em;
	margin-bottom: 1.5em;}
#abt_ovw_intro .colbox {
	width: 100%;
	display: table;
	table-layout: fixed;}
#abt_ovw_intro .colbox .txt,
#abt_ovw_intro .colbox .img {
	display: table-cell;
	vertical-align: top;}
#abt_ovw_intro .colbox .txt {
	padding-right: 6%;}
#abt_ovw_intro .colbox .img {
	width: 30%;
	text-align: right;}
#abt_ovw_intro .colbox .img img {
	max-width: 100%;
	height: auto;}

#about.policy #abt_ovw_intro .colbox .img img {
	width: 100%;
}

#about.policy #abt_ovw_intro .signature .txt {
    padding-right: 0;
    text-align: left;
    width: 100%;
    display: unset;
}

#about.policy .msg_cmn .img p {
    margin-bottom: 0;
}

#abt_ovw_intro .signature {
	display: flex;
	justify-content: flex-end;
	padding-top: 3em;}
#abt_ovw_intro .signature .inner {
	display: flex;}

#about.policy #abt_ovw_intro .signature {
	display: unset;
	padding-top: 0;
}

#about.policy #abt_ovw_intro .signature .inner {
	margin-top: 0.5em;
    display: block;
}

#abt_ovw_intro .signature .txt {
	padding-right: 2em;}
#abt_ovw_intro .signature .date {
	align-self: flex-end;}
#abt_ovw_intro .signature p {
	color: #231815;
	letter-spacing: 0.26em;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	line-height: 1.6;}
#abt_ovw_intro .signature.sp {
	display: none;}
#abt_ovw_principle {

}
#abt_ovw_principle p,
.abt_ovw_policytxt li .txt {
	font-size: 134%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	line-height: 1.4;
	color: #231815;}
#abt_ovw_principle p.first {
	margin: 0 0 0.5em;
	position: relative;
	padding: 0 1em 0 1.5em;
	display: inline-block;}
#abt_ovw_principle p.first:before,
#abt_ovw_principle p.first:after {
	width: 1em;
	height: 1px;
	background: #231815;
	position: absolute;
	content: '';
	top: 50%;}
#abt_ovw_principle p.first:before {
	left: 0;}
#abt_ovw_principle p.first:after {
	right: 0;}
#abt_ovw_principle p.second {
	letter-spacing: 0.13em;}
.abt_ovw_policytxt.policy {
	margin-top: 2.5em;}
.abt_ovw_policytxt li {
	margin: 0.75em 0;
	position: relative;
	padding-left: 4.5em;}
.abt_ovw_policytxt li .num {
	color: #6c609f;
	position: absolute;
	left: 0;
	line-height: 1.9;}

#abt_ovw_policy {
	display: flex;
	flex-wrap: wrap;
	width: 100%;}
#abt_ovw_policy li {
	width: 50%;
	padding-bottom: 5em;}
#abt_ovw_policy li:nth-child(2n+1){
	padding-right: 10px;}
#abt_ovw_policy li:nth-child(2n){
	padding-left: 10px;}
#abt_ovw_policy li figure {
	margin: 0;
	position: relative;
	z-index: 1;}
#abt_ovw_policy li figcaption,
#abt_ovw_staff ul li h4 {
    font-size: 134%;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
    color: #231815;
    letter-spacing: 0.13em;}
#abt_ovw_policy li figcaption {
	padding: 0.25em 0.25em;
	background: #fff;
    min-width: 230px;
	text-align: center;
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 50%;
    transform: translate3d(-50%,50%,0);}

#fig_certifications ul {
	display: flex;
	justify-content: space-evenly;
	align-items: center;}
#fig_certifications ul li img {
	max-width: 100%;
	height: auto;}

#abt_ovw_cprof_map {

}
#abt_ovw_cprof_map dl dt {
	color: #6c609f;
	line-height: 1.9;
	padding-top: 1em;
	padding-bottom: 1em;}
#abt_ovw_cprof_map dl dd {

}
#abt_ovw_cprof_map dl dd ul {
	display: flex;
	width: 100%;
	padding-bottom: 1em;}
#abt_ovw_cprof_map dl dd ul li {
	width: 100%;}
#abt_ovw_cprof_map dl dd ul li:first-child {
	padding-right: 10px;}
#abt_ovw_cprof_map dl dd ul li:last-child {
	padding-left: 10px;}
#abt_ovw_cprof_map dl dd ul li .map {
	border: 1px solid #6c609f;}

#abt_ovw_staff ul li {
	border-top: 1px solid #ccc;
	padding: 2em 0;}
#abt_ovw_staff ul li:last-child {
    padding-bottom: 0;}
#abt_ovw_staff ul li h4 {
	padding-bottom: 1em;}

/* 20200217 SDGs added */
#about_sdg_intro {
    padding-top: 3.75em;
    padding-bottom: 3.75em;
    border-top: 1px solid #C9CEDE;
    border-bottom: 1px solid #C9CEDE;}
#about_sdg_intro .ttlimg {
    max-width: 100%;
    height: auto;}
#about_sdg_intro .msg {
    padding-top: 2.6em;}
#about_sdg_intro .msg p,
.about_sdg_item .inner .txt .idx,
.about_sdg_item .inner .txt p {
    color: #000;}
#lst_sdg_icons {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;}
#lst_sdg_icons li {
    width: 15.875%;
    margin: 0 0 8px;}
#lst_sdg_icons li .item {
    display: block;}
#lst_sdg_icons li .item img {
    max-width: 100%;
    height: auto;}
.about_sdg_item {
    padding: 2.7em 0 2em;
    border-bottom: 1px solid #C9CEDE;}
.about_sdg_item.last {
    border-bottom: none;}
.about_sdg_item .inner {
    display: flex;
    flex-wrap: wrap;}
.about_sdg_item .inner .img {
    width: 170px;}
.about_sdg_item .inner .txt {
    width: calc(100% - 170px);
    padding: 0 0 0 2.7em;}
.about_sdg_item .inner .txt .idx {
    padding: 0 0 1em;
    line-height: 1.6;
    font-size: 1.33em;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
    font-weight: bold;}
.about_sdg_item .inner .txt .btnarea {
    display: flex;
    flex-wrap: wrap;
    padding: 1.5em 0 0 0;}
.about_sdg_item .inner .txt .btnarea li {
    margin: 0 0.5em 1em 0;}
.about_sdg_item .inner .txt .btnarea a {
    max-width: 200px;
    width: 200px;
    font-size: 0.8em;}
/*==================================================
 会社概要
====================================================*/
.abt_his_docs {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.abt_his_docs .txt,
.abt_his_docs .img {
	display: table-cell;
	vertical-align: top;
}
.abt_his_docs .txt {
	padding-right: 3em;
}
.abt_his_docs .txt h3 {
	color: #666;
	line-height: 1.9;
	letter-spacing: 0.09em;
}
.abt_his_docs .img {
	width: 235px;
}
.abt_his_docs .img figure.nmbt {
	margin: 0;
}
/*==================================================
 職人十箇条
====================================================*/
#abt_mottoes {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: flex;
	width: 100%;
	flex-direction: column;
	justify-content: space-between;
}
#abt_mottoes .ttl h3 {
	padding-bottom: 0;
	line-height: 1.8;
}
#abt_mottoes ul {

}
#abt_mottoes ul li {
	font-size: 120%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	line-height: 3.2;
}
/*==================================================
 採用情報
====================================================*/
.abt_rec_list {

}
.abt_rec_list .recitem {
	padding: 0.5em 0;
}
#abt_rec_main .abt_rec_list:last-child .recitem {
	margin-bottom: 0;
}
.abt_rec_list dl {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin: 2em 0;
}
.abt_rec_list .recitem dl:last-child {
	margin-bottom: 0;
}
.abt_rec_list dl dt,
.abt_rec_list dl dd {
	display: table-cell;
	vertical-align: top;
}
.abt_rec_list dl dt {
	width: 140px;
}
.abt_rec_inqbox dl dt,
.abt_rec_inqbox dl dd,
.abt_rec_list dl dd {
	color:#666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	margin-bottom: 1.4em;
}
.abt_rec_list dl dd {
	text-align: justify;
}
#abt_rec_inquiry {
	padding-top: 2em;
	padding-bottom: 3em;
}
.abt_rec_list dl dt,
#abt_rec_inquiry h3 {
	font-size: 134%;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	color: #231815;
	letter-spacing: 0.09em;
	font-weight: 600;
	line-height: 1.6;
}
#abt_rec_inquiry h3 {
	text-align: center;
	width: 11em;
	border-bottom: 1px solid #cbcbcb;
	margin: 0 auto;
	padding-bottom: 1em;
}
.abt_rec_inqbox {
	max-width: 700px;
	margin: 3em auto 0;
}
.abt_rec_inqbox p {
	color: #231815;
	margin-bottom: 1em;
}
.abt_rec_inqbox dl {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.abt_rec_inqbox dt,
.abt_rec_inqbox dd {
	display: table-cell;
	vertical-align: top;
}
.abt_rec_inqbox dl dt {
	width: 6em;
}
.abt_rec_inqbox dd {
	position: relative;
	padding-left: 1em;
}
.abt_rec_inqbox dd:before {
	content: '：';
	position: absolute;
	left: 0;
}
.ttl_pbg {
	background: #DAD8E3;
	text-align: center;
}
.abt_rec_list.msg_cmn .ttl_pbg {
	padding: 20px;
}
/*==================================================
 結ホール
====================================================*/
#abt_hall_info .box {
	display: flex;
	width: 100%;
	margin: 4em 0;
}
#abt_hall_info .box:first-child {
    margin-top: 2.5em;
}
#abt_hall_info .box .idx {
	width: 30%;
}
#abt_hall_info h4 {
	font-size: 134%;
	font-weight: 600;


	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.05em;
	line-height: 1.4;
}
#abt_hall_info .box .cnt {
	width: 70%;
}
#abt_hall_info .abt_hall_tou li {
	color: #666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	margin-bottom: 1.4em;
	text-align: justify;
	position: relative;
	padding-left: 1.5em;
}
#abt_hall_info .abt_hall_tou li .num {
	position: absolute;
	left: 0;
	top: 0;
	line-height: 1.9;
}
#abt_hall_info .abt_hall_tou li .num:after {
	content: '.';
}
#abt_hall_matsuri li {
	margin-bottom: 1em;
}
#abt_hall_matsuri li:last-child {
	margin-bottom: 0;
}

.yuh_event {
	margin: 0 0 2em;
}
.yuh_event h4 {
	font-size: 120%;
    font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
    letter-spacing: 0.05em;
    line-height: 1.4;
	margin: 0.5em 0;
}
.yuh_event table {
	width: 100%;
	border-left: 1px solid #c7c7c7;
	border-right: 1px solid #c7c7c7;
	border-top: 1px solid #c7c7c7;
}
.yuh_event thead {
    background: #dad8e3;
}
.yuh_event tr {
    border-bottom: 1px solid #c7c7c7;
}
.yuh_event th,
.yuh_event td {
    color: #666;
    line-height: 1.6;
    letter-spacing: 0.09em;
    padding: 1.25em 0.5em;
    vertical-align: middle;
}
.yuh_event th.date {
    width: 10em;
}
.yuh_event thead th,
.yuh_event  td {
    border-left: 1px solid #c7c7c7;
}
.yuh_event thead th {
	font-weight: 600;
	text-align: center;
}
.yuh_event th.date .endday {
	display: block;
	text-align: right;
}
.yuh_event th.title {
	width: 50%;
}
/*==================================================
 結まつり
====================================================*/
.yui-matsuri .page_mv {
	height: 300px;
}
#abt_yum_list li {
	margin-bottom: 1em;
}
#abt_yum_list li:last-child {
	margin-bottom: 0;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			PAGE CONCEPT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/

/*==================================================
 家づくりをデザインする
====================================================*/
#concept.design .box_imgs {
	max-width: 680px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 1em;
}
#concept.design .box_imgs figure {
	padding: 0 15px 2em;
}
#concept.design .box_imgs figure img {
	max-width: 100%;
	height: auto;
}
#concept.design .box_imgs figure figcaption {
	color: #666;
	line-height: 1.4;
    padding-top: 0.5em;
}
.con_des_rule {
	border: 1px solid #818181;
	background: #fff;
	padding: 2em;
}
.con_des_rule.kirei {
	margin-bottom: 3.25em;
}
.con_des_rule.kirei .header {
	display: table;
	width: 100%;
}
.con_des_rule.kirei .header .left,
.con_des_rule.kirei .header .right {
	display: table-cell;
	vertical-align: middle;
}
.con_des_rule.kirei .header h4 {
	font-size: 233%;
	font-weight: 600;
	letter-spacing: 0.12em;
	line-height: 1.4;
}
.con_des_rule.kirei .header .left small {
	font-size: 133%;
	color: #231815;
	letter-spacing: 0.2em;
}
.con_des_rule.kirei .header .right {
	text-align: right;
}
.con_des_rule.kirei .header .right small {
	color: #666;
	letter-spacing: 0.1em;
	font-size: 80%;
}
.con_des_rule.kirei .box {
	margin-top: 2.5em;
}
.con_des_rule.kirei .box .hdr {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin-bottom: 1.5em;
}
.con_des_rule.kirei .box .hdr .num,
.con_des_rule.kirei .box .hdr .txt {
	display: table-cell;
	vertical-align: top;
}
.con_des_rule.kirei .box .hdr .num {
	width: 60px;
	font-size: 233%;
	font-style: italic;
}
.con_des_rule.kirei .box .hdr .txt h5 {
	font-size: 180%;
	letter-spacing: 0.26em;
}
.con_des_rule.kirei .box .hdr .txt small {
	font-size: 113%;
	color: #231815;
	letter-spacing: 0.1em;
	display: block;
	margin-top: 0.5em;
}
.con_des_rule.kirei .box .hdr .txt small:before {
	content: '（';
}
.con_des_rule.kirei .box .hdr .txt small:after {
	content: '）';
}
.con_des_rule.kirei .box .cnt {
	padding-left: 60px;
}
.con_des_rule.kirei .box .cnt ul {

}
.con_des_rule.kirei .box .cnt ul li {
	position: relative;
	padding-left: 1.67em;
	color: #666;
	line-height: 1.6;
	letter-spacing: 0.09em;
	margin: 0.5em 0;
}
.con_des_rule.kirei .box .cnt ul li:before {
	content: '●';
	color: #6c609f;
	position: absolute;
	left: 0;
	top: 0;
}
.con_des_rule.kirei .box .cnt .txt_kome {
	text-indent: -1em;
	margin-left: 1em;
	font-size: 80%;
	margin-top: 1.25em;
}
.con_des_rule.kirei .box .cnt .txt_kome:before {
	content: '※';
}

.con_des_rule.r5s1m {

}
.con_des_rule.r5s1m h4,
.con_des_rule.r5s1m h5,
.con_des_rule.r5s1m .cnt .num,
.con_des_rule.r5s1m .cnt .idx {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 133%;
	line-height: 1.6;
}
.con_des_rule.r5s1m h4 {
	margin-bottom: 0.5em;
	letter-spacing: 0.26em;
}
.con_des_rule.r5s1m h5 {
	background: #6c609f;
	color: #fff;
	padding: 0.25em 0.5em;
	text-align: center;
	margin-bottom: 1em;
}
.con_des_rule.r5s1m .cnt {
	margin-bottom: 2.75em;
}
.con_des_rule.r5s1m .cnt:last-child {
	margin-bottom: 0;
}
.con_des_rule.r5s1m .cnt dl {
	display: flex;
	align-items: center;
	width: 100%;
	margin-top: 0.5em;
}
.con_des_rule.r5s1m .cnt dt,
.con_des_rule.r5s1m .cnt dd {
	display: table-cell;
	vertical-align: middle;
}
.con_des_rule.r5s1m .cnt .num,
.con_des_rule.r5s1m .cnt .idx {
	text-align: center;
}
.con_des_rule.r5s1m .cnt .num {
	color: #6c609f;
	border: 1px solid;
	width: 50px;
}
.con_des_rule.r5s1m .cnt .idx {
	width: 80px;
	font-weight: 600;
}
.con_des_rule.r5s1m .cnt .txt {
	color: #666;
	font-size: 120%;
	line-height: 1.4;
	display: inline-block;
}
.con_des_rule.r5s1m .cnt .txt.narrow {
	letter-spacing: -0.08em;
}
.con_des_rule.r5s1m .cnt .txt small {
	font-size: 67%;
	display: inline-block;
}
/*==================================================
 家づくりの流れ
====================================================*/
#flowbox {
	max-width: 680px;
    margin: 0 auto;
    padding: 0 15px;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	overflow: hidden;
}
#flowbox:before {
	height: 100%;
	width: 1px;
	background: #000;
	position: absolute;
	left: 50%;
	top: 10px;
	content: '';
}
#flowbox:after {
	content: '';
	width: 5px;
	height: 5px;
	background: #000;
	position: absolute;
	left: 50%;
	margin-left: -2px;
	bottom: 0px;
}
#flowbox ul {
	width: 50%;
}
#flowbox ul.right {
	padding-top: 7em;
}
#flowbox ul li {
	width: 100%;
	display: flex;
	position: relative;
	padding-bottom: 2em;
}
#flowbox ul li.sp {
	display: none;
}
#concept #flowbox ul li.i_4 {
	padding-bottom: 3em;
}
#flowbox ul.left li {
	padding-right: 20px;
	justify-content: flex-start;
}
#flowbox ul.right li {
	padding-left: 20px;
	justify-content: flex-end;
}
#flowbox li:after {
	content: '';
	width: 5px;
	height: 5px;
	background: #000;
	position: absolute;
	top: 10px;
}
#flowbox ul.left li:after {
	right: -3px;
}
#flowbox ul.right li:after {
	left: -2px;
}
#flowbox li .box {
	max-width: 295px;
}
#flowbox li h4 {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 134%;
	letter-spacing: 0.2em;
	line-height: 1.4;
	position: relative;
}
#flowbox li h4 .num {
	padding-right: 0.5em;
}
#flowbox li .img {
	margin: 1em 0;
}
#flowbox li .img img {
	max-width: 100%;
	height: auto;
}
#flowbox li p {
	color: #666;
	line-height: 1.8;
	letter-spacing: 0.06em;
	text-align: justify;
}
#concept .msg_cmn.msg_obi {
	max-width: none;
	background: #dad8e3;
}
#concept .msg_cmn.msg_obi.last {
	margin-bottom: 0;
}
.msg_cmn.msg_obi .idx {
	padding: 1.4em 0;
	text-align: center;
}
/*==================================================
 デザインと技術と技能
====================================================*/
#concept.technology .q1box {
	border-bottom: 1px solid #6c609f;
	margin: 2.5em 0;
	padding-bottom: 2.5em;
}
#concept.technology .q1box:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
#concept.technology .q1box .idxbox {
	padding-bottom: 2.5em;
}
#concept.technology .q1box .idxbox:last-of-type {

}
#concept.technology .q1box .q1cnt {
	display: table;
	width: 100%;
	table-layout: fixed;
}
#concept.technology .q1box .q1cnt .txt,
#concept.technology .q1box .q1cnt .img {
	display: table-cell;
	vertical-align: top;
}
#concept.technology .q1box .q1cnt .txt {
	padding-right: 2em;
}
#concept.technology .q1box .q1cnt .img {
}
#concept.technology .q1box .q1cnt .img img {
	max-width: 100%;
	height: auto;
}
#concept.technology .q1box .q1cnt .img img:last-child {
	margin-top: 0.4em;
}
.msg_cmn.no4_wood figure ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.msg_cmn.no4_wood figure ul li {
	width: 33.33%;
}
#con_tch_base figure ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
#con_tch_base figure ul li {
	width: 50%;
}
#con_tch_base figure ul li:nth-child(2n+1){
	padding-right: 2px;
}
#con_tch_base figure ul li:nth-child(2n){
	padding-left: 2px;
}
/*==================================================
 永く住み継ぐ家
====================================================*/
#con_inh_points_box {
	border-bottom: 1px solid #6c609f;
	margin: 3em 0;
	padding-bottom: 3em;
}
#con_inh_points {
	margin: 0 0 3em;
}
#con_inh_points_2 {
	margin: 3em 0 3em;
}
/*==================================================
 老建築・蘇生術
====================================================*/
#con_rev_intro {
	display: table;
	table-layout: fixed;
	width: 100%;
}
#con_rev_intro .txt,
#con_rev_intro .img {
	display: table-cell;
	vertical-align: top;
}
#con_rev_intro .txt {
	padding-right: 2em;
}
#con_rev_intro .txt p {
	line-height: 2.4;
}
#con_rev_intro .img {
	width: 296px;
}
#con_rev_intro .img img {
	max-width: 100%;
	height: auto;
}
.msg_cmn #con_rev_intro figure {
	margin: 0;
}
#con_rev_points {
}
.con_points .box {
	margin: 1.5em 0 3em;
}
.con_points .box:last-of-type {
	margin-bottom: 0;
}
#con_rev_example {

}
#con_rev_example dl {
	display: table;
	table-layout: fixed;
	width: 100%;
	border-bottom: 1px solid #cccccc;
}
#con_rev_example dl dt,
#con_rev_example dl dd {
	display: table-cell;
	vertical-align: top;
	line-height: 1.8;
	padding: 0.75em 0;
}
#con_rev_example dl:first-of-type dt,
#con_rev_example dl:first-of-type dd {
	padding-top: 0;
}
#con_rev_example dl dt {
	color: #6c609f;
	width: 33.33%;
	padding-right: 2em;
}
#con_rev_example dl dd {
	color: #666666;
}
/*==================================================
 太陽光発電
====================================================*/
.con_spw_points {
	display: flex;
	width: 100%;
}
.con_spw_points .box {
	width: calc(50% - 15px);
}
.con_spw_points .box.center {
	background: url(../images/common/ico_plus.png) center center no-repeat;
	width: 30px;
}
.con_spw_points .box.right {
	padding-left: 1.25em;
}
.con_spw_points .box.left {
	padding-right: 1.25em;
}
.con_spw_points .box p {
	border: 1px solid;
	padding: 0.8em 1.75em;
	position: relative;
	letter-spacing: 0.05em;
	text-align: left;
	height: 100%;
}
.con_spw_points .box p .ico {
	background: #6c609f;
	color: #fff;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	font-weight: 600;
	width: 84px;
	height: 84px;
	text-align: center;
	line-height: 84px;
	border-radius: 50%;
	position: absolute;
	right: -42px;
	top: -60px;
}
#con_spw_table {
	width: 100%;
	border-left: 1px solid #c7c7c7;
	border-right: 1px solid #c7c7c7;
	border-top: 1px solid #c7c7c7;
	margin: 2em 0 3em;
}
#con_spw_table th,
#con_spw_table td {
	color: #666;
	line-height: 1.6;
	letter-spacing: 0.09em;
	padding: 1.25em 0.5em;
	text-align: center;
	vertical-align: middle;
}
#con_spw_table tr {
	border-bottom: 1px solid #c7c7c7;
}
#con_spw_table thead th,
#con_spw_table td {
	border-left: 1px solid #c7c7c7;
}
#con_spw_table thead tr th:first-child {
	border-left: none;
}
#con_spw_table thead,
#con_spw_table tfoot {
	background: #dad8e3;
}
#con_spw_table thead th,
#con_spw_table tbody th,
#con_spw_table tfoot th,
#con_spw_table tfoot td {
	font-weight: 600;
}
#con_spw_table thead th {
	line-height: 1.25;
}
#con_spw_table tbody th {
	padding: 1.25em 0.5em 1.25em 1.25em;
}
#con_spw_table tbody th.dcircle {
	padding: 1.25em 0.5em 1.25em 0;
}
#con_spw_table tbody th.dcircle:before {
	content: '◎';
	padding-right: 0.25em;
}
#con_spw_table tbody td {
	width: 11em;
}

/*==================================================
 安全と安心
====================================================*/
#concept.warranty .msg_cmn .lst_dot li {
	font-weight: 600;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			PAGE REVIVE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
 民家再生の理念と意義
====================================================*/
#rev_prn_list {
	border-bottom: 1px solid #b6b6b6;
	padding-bottom: 5em;
}
#rev_prn_list li {
	display: flex;
	width: 100%;
	margin-bottom: 48px;
	position: relative;
	z-index: 2;
}
#rev_prn_list li:after {
	position: absolute;
	z-index: 1;
	width: 1px;
	height: 48px;
	background: #231815;
	content: '';
	bottom: -48px;
	left: 50%;
}
#rev_prn_list li:last-child {
	margin-bottom: 0;
}
#rev_prn_list li:last-child:after {
	display: none;
	content: none;
}
#rev_prn_list li:nth-child(2n+1){
	background: #fff;
}
#rev_prn_list li:nth-child(2n){
	background: #6c609f;
}
#rev_prn_list li .ico {
	width: 140px;
	align-self: center;
	text-align: center;
	padding: 1.5em;
}
#rev_prn_list li .ico img {
	max-width: 100%;
	height: auto;
}
#rev_prn_list li .txt {
	width: calc(100% - 140px);
	padding: 1.5em 2em 1.5em 0;
}
#rev_prn_list li .txt p {

}
#rev_prn_list li:nth-child(2n+1) .txt p {
	color: #6c609f;
}
#rev_prn_list li:nth-child(2n) .txt p {
	color: #fff;
}

/*==================================================
 古材ギャラリーと古材
====================================================*/
#rev_omt_img {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	border: 1px solid;
}
#rev_omt_img li {
	width: 50%;
	margin-bottom: 5px;
}
#rev_omt_img li:nth-child(2n+1){
	padding-right: 2px;
}
#rev_omt_img li:nth-child(2n){
	padding-left: 2px;
}
#rev_omt_img li:nth-child(3),
#rev_omt_img li:nth-child(4) {
	margin-bottom: 0;
}
#rev_omt_img li img {
	max-width: 100%;
	height: auto;
}
#rev_omt_egs {
	margin: 2em 0;
}
/*==================================================
 再生住宅実例
====================================================*/
#rev_ins_fig {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#rev_ins_fig li {
	height: 100px;
	max-width: 150px;
	position: relative;
	z-index: auto;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 134%;
	border: 1px solid #231815;
	width: 25%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	line-height: 1.4;
}
#rev_ins_fig li.w {
	letter-spacing: 0.2em;
}
#rev_ins_fig li:nth-child(1){
	background: #e0dbf6;
}
#rev_ins_fig li:nth-child(2){
	background: #b7ace9;
}
#rev_ins_fig li:nth-child(3){
	background: #8879c9;
	color: #fff;
}
#rev_ins_fig li:nth-child(4){
	background: #6c609f;
	color: #fff;
}
#rev_ins_fig li:after {
	content: url(../images/common/arw_ccl.png);
    width: 46px;
    height: 46px;
    position: absolute;
    z-index: 5;
    right: -32px;
    top: 50%;
    margin-top: -23px;
    display: block;
}
#rev_ins_fig li:last-child:after {
	display: none;
}
#rev_ins_fig li br.tb {
	display: none;
}
.rev_ins_figset {
	margin-bottom: 4em;
}
/*==================================================
 民家再生に興味のある方へ
====================================================*/
#rev_faq_list {
}
#rev_faq_list dl {
}
#rev_faq_list dl dt,
#rev_faq_list dl dd {
	position: relative;
}
#rev_faq_list dl dt:before,
#rev_faq_list dl dd:before {
	position: absolute;
	font-weight: 600;
	line-height: 1.9;
	left: 0;
}
#rev_faq_list dl dt:before {
	content: 'Q.';
	color: #6c609f;
}
#rev_faq_list dl dd:before {
	content: 'A.';
	color: #ce2301;
	top: 1.5em;
}
#rev_faq_list dl dt {
	padding: 0 0 1.5em 3em;
	border-bottom: 1px solid #b6b6b6;
}
#rev_faq_list dl dt p {
	color: #6c609f;
	font-weight: 600;
}
#rev_faq_list dl dd {
	padding: 1.5em 0 0 3em;
}
#rev_faq_list dl dd p {
}
#rev_faq_list dl dd ol {
	margin-bottom: 1em;
}
#rev_faq_list dl dd ol.last {
	margin-bottom: 0;
}
#rev_faq_list dl dd ol li {
	text-indent: -1.8em;
    margin-left: 1.8em;
    line-height: 1.9;
    color: #666;
    font-weight: 600;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			CARPENTER

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#carpenter .msg_cmn {
	max-width: 1020px;}
#bld_ms_intro {
	display: table;
	table-layout: fixed;
	width: 100%;
}
#bld_ms_intro .txt,
#bld_ms_intro .img {
	display: table-cell;
	vertical-align: top;
}
#bld_ms_intro .txt {
	padding-right: 3em;
}
#bld_ms_intro .img {
	width: 40%;
}
#bld_ms_intro .img img.first {
	margin-bottom: 5px;
}
#bld_ms_intro .img img.sp {
	display: none;
}
#bld_ms_intro .img br {
	display: none;
}

#cpt_msn_episodes .box {
	display: table;
	width: 100%;
	table-layout: fixed;
	background: #f0eff5;
	margin: 2em 0 0;
}
#cpt_msn_episodes .box .txt,
#cpt_msn_episodes .box .img {
	display: table-cell;
	vertical-align: middle;
}
#cpt_msn_episodes .box .txt {
	padding: 2em 1em 2em 2.5em;
}
#cpt_msn_episodes .box .img {
	padding: 2em 2.5em;
	width: 44%;
}
#cpt_msn_casephoto {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-top: 2em;
}
#cpt_msn_casephoto li {
	width: 24%;
}
#cpt_msn_casephoto li figure {
	margin: 0;
}
#cpt_msn_casephoto li figcaption {
	max-width: 240px;
}
#cpt_msn_cases {
	margin-top: 4.5em;
}
#cpt_msn_cases li {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	margin-top: 2em;
}
#cpt_msn_cases li a {
	position: relative;
	display: flex;
	align-items: center;
	border: 1px solid #6c609f;
	font-size: 134%;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	color: #fff;
	padding: 1em 3em 1em 1.5em;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
	min-height: 86px;
}
#cpt_msn_cases li a:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f054';
	position: absolute;
	right: 1.5em;
	font-size: 88%;
	transition: all 0.3s;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
}
#cpt_msn_cases li a:hover:after {
	right: 1.2em;
}
#cpt_msn_cases li a .num {
	padding-right: 2em;
}
/*==================================================
POPUP
====================================================*/
#popup{
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 9000;
	overflow: hidden;}
#popup_overlay{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: rgba(0,0,0,0.8);
	box-shadow: 0 0 100px rgba(0,0,0,0.3) inset;
	z-index: 9005;}
#popup_area {
	position: relative;
	z-index: 9010;
	width: 100%;
	height: 100%;
	max-width: 1120px;
	margin: 0 auto;
	padding: 10px;
}
#popup_inner{
	color: #fff;
	position: relative;
	width: 100%;
	height: 100%;
	padding: 3em 0;
	border-radius: 3px;
}
#popup_content{
	width: 100%;
	height: 100%;
	overflow-y: auto;
	overflow-x: hidden;
	padding: 0 10px;
}
#popup_close.sp {
	display: none;
}
#popup_close.pc {
	display: block;
}
#popup_close {
	width: 72px;
	height: 72px;
	position: absolute;
	right: 0;
	top: -36px;
	background: #6c609f;
	border: 1px solid #fff;
	border-radius: 50%;
	z-index: 9020;
}
#popup_close:after,
#popup_close:before{
	content: '';
	display: block;
	width: 2px;
	height: 30px;
	background: #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	margin: -15px 0 0 0;
	transform: rotate(45deg);}
#popup_close:before{
	transform: rotate(-45deg);}
#popup_content h3 {
	font-size: 134%;
	line-height: 1.6;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	margin-bottom: 2em;
	padding-right: 60px;
}
#popup_content #w_gallery {
	padding: 0 0;
	position: relative;
}
#popup_content #w_gallery .wslide,
#popup_content #w_gallery .slick-list {
	max-width: 1000px;
}
#popup_content #w_gallery .slide_item,
#popup_content #w_gallery .slick-track {
	height: 600px;
}
#popup_content #w_gallery .slick-prev {
	left: 10px;
}
#popup_content #w_gallery .slick-next {
	right: 10px;
}
#popup_content #w_gallery .slide-dots {
	justify-content: center;
}
#popup_content #w_gallery .slick-dots li:not(.slick-active) button {
	background-color: #fff;
}
#popup_content .caseslide,
#popup_content .extrainfo {
	padding-bottom: 3em;
}
#popup_content .extrainfo,
#popup_content .maincontent,
#c_postnavi {
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
#popup_content .maincontent {
	padding-bottom: 2.6em;
	border-bottom: 1px solid;
}
#popup_content p {
	line-height: 1.9;
	letter-spacing: 0.09em;
	margin-bottom: 1.4em;
	text-align: justify;
}
#popup_content img {
	max-width: 100%;
	height: auto;
}
#c_postnavi {
	background: none;
}
#c_postnavi a {
    color: #fff;
}
#c_postnavi a:hover {
    color: #231815;
    background: #fff;
    border-color: #fff;
}
#c_postnavi a,
#c_postnavi .inactive {
	border-width: 1px;
}
#c_postnavi ul li .inactive {
	visibility: hidden;
}
/*==================================================
大工の育成
====================================================*/
#cpt_cultivation {
	max-width: 1000px;
	margin: 0 auto;}
.cpt_cultivation_box {
	display: flex;
	width: 100%;
	margin: 4em 0;}
.cpt_cultivation_box.first {
	border-top: 1px solid #d1cee1;
	margin: 0 0 4em;
	padding-top: 2.5em;}
.cpt_cultivation_box .idx {
    width: 30%;}
.cpt_cultivation_box .idx h4 {
	font-size: 134%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.05em;
	line-height: 1.4;}
.cpt_cultivation_box .cnt {
    width: 70%;}

.cpt_cultivation_box figcaption.c {
	text-align: center;}
.cpt_cultivation_box figcaption.b {
	font-size: 125%;}
.cpt_cultivation_box figcaption.serif {
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;}
.cpt_cultivation_box figcaption.bk {
	color: #231815}

.cpt_clt_mottoes_box {
	margin: 0 auto 1.5em;
	padding: 1.5em 2em;
	background: #fff;
	border: 1px solid #707070;}
.cpt_clt_mottoes_box ul {
	margin: 1.25em auto 0;
	max-width: 480px;}
.cpt_clt_mottoes_box ul li .txt {
	letter-spacing: 0;}
.cpt_clt_mottoes_box .idx,
.cpt_clt_doc_box .idx {
	display: block;
	margin: 0 auto;
	text-align: center;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	color: #231815;
	font-size: 125%;
	font-weight: 600;
	width: auto;
	line-height: 1.5;
	margin: 0 0 1em;}
.cpt_clt_mottoes_box .idx::before,
.cpt_clt_doc_box .idx::before {
	content: '＜'}
.cpt_clt_mottoes_box .idx::after,
.cpt_clt_doc_box .idx::after {
	content: '＞'}
.cpt_clt_doc_box {
	margin: 2em auto;}
.cpt_clt_doc_box.first {
	margin-top: 2.5em;}
.cpt_clt_doc_box figure {
	margin-bottom: 1em;}
.cpt_clt_doc_box p {
	text-align: center;}
.cpt_clt_doc_box .doc {
	padding: 1.5em;
	background: #fff;
	border: 1px solid #707070;}
.cpt_clt_doc_box .doc img {
	display: block;
	margin: 0 auto;
	max-width: 530px;
	height: auto;
	width: 100%;}
.cpt_clt_doc_box .btnarea {
	margin: 1em auto 0;
	text-align: center;}
.cpt_clt_doc_box .btnarea a {
	padding: 0 0.5em;}

.cpt_clt_pictbox_idx {
	padding: 0 0 0.5em;
	line-height: 1.5;}
.cpt_clt_pictbox_idx::before {
	content: '●';}
.cpt_clt_pictbox {
	margin: 0 0 1em;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;}
.cpt_clt_pictbox li {
	padding: 0 0 10px;
	width: 32%;}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			REPORTS

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/* ARCHIVE */
#lst_report_archive {
	border-top: 1px solid #d5d5d5;
}
#lst_report_archive li {
	border-bottom: 1px solid #d5d5d5;
	position: relative;
	z-index: 1;
}
#lst_report_archive li .newicon {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 87%;
	letter-spacing: 0.12em;
	position: absolute;
    left: -24px;
    top: 1em;
    display: block;
    width: 48px;
    height: 48px;
    background: #6c609f;
    color: #FFF;
    z-index: 5;
    border-radius: 50%;
    text-align: center;
    line-height: 50px;
}
#lst_report_archive li a {
	display: table;
    table-layout: fixed;
    width: 100%;
	color: #231815;
}
#lst_report_archive li a:hover {
	color: #6c609f;
}
#lst_report_archive li a .img,
#lst_report_archive li a .txt {
	display: table-cell;
	vertical-align: top;
}
#lst_report_archive li a .img {
	width: 160px;
	padding: 2.5em 0;
}
#lst_report_archive li a .img .thumb {
	padding: 67% 0 0;
}
#lst_report_archive li a .txt {
	padding: 2.5em 0 2.5em 2em;
}
#lst_report_archive li a .txt .date {
	font-size: 87%;
	margin-bottom: 1em;
}
#lst_report_archive li a .txt .title h3 {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 134%;
	letter-spacing: 0.15em;
	line-height: 1.4;
}
/* SINGLE */
#tkb-reports #post_output h3 {
	padding-top: 0;
}
#tkb-reports .content.main {
	margin-bottom: 1.5em;
}
#lst_report_single li {
	margin: 0.25em 0 1.25em;
	border-top: 1px solid #c5c5c5;
	border-bottom: 1px solid #c5c5c5;
}
#lst_report_single li:last-child {
	margin-bottom: 0;
}
#lst_report_single li.open {
	border-bottom: none;
}
#lst_report_single li .rep_day_bar {
	background: #d8d4e7;
	display: block;
	font-size: 133%;
    padding: 1em;
    line-height: 1.4;
    letter-spacing: 0.1em;
	position: relative;
	z-index: auto;
}
#lst_report_single li .rep_day_bar:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f107';
    position: absolute;
	right: 1em;
	top: 50%;
	transform: translate3d(0,-50%,0);
	z-index: 1;
}
#lst_report_single li.open .rep_day_bar:after {
	transform: translate3d(0,-50%,0) rotate3d(0,0,1,180deg);
}
#lst_report_single li .content {
	padding: 1.5em 0;
	display: none;
}
#lst_report_single li.open .content {
	display: block;
}
#lst_report_single li .pgc_img.pgc_box {
	padding-bottom: 1em;
}
#lst_report_single li .pgc_side.pgc_box {
	padding-bottom: 3em;
}
#post_output #lst_report_single figcaption p {
	line-height: 1.6;
	font-size: 88%;
}
/*==================================================
 PGC
====================================================*/
#custom_layout .pgc_box:last-child{
	padding-bottom: 0;
	margin-bottom: 0;}
.pgc_text,
.pgc_freearea,
.pgc_linklist,
.pgc_filelist {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0 0 2em;}
/* PGC TEXT, FREEAREA */
.pgc_text p,
.pgc_freearea p,
.pgc_side_text {
	line-height: 1.8;
	margin-bottom: 1em;
}
.pgc_text p {
	text-align: center;}
#custom_layout .pgc_text p:last-of-type,
#custom_layout .pgc_freearea p:last-of-type,
#custom_layout .pgc_side_right p:last-of-type,
#custom_layout .pgc_side_left p:last-of-type,
.pgc_text blockquote p:last-of-type,
.pgc_freearea blockquote p:last-of-type {
	margin-bottom: 0;
}
.pgc_freearea > ul > li,
.pgc_text > ul > li {
	text-indent: -1.2em;
	padding-left: 1.2em;
	line-height: 1.8;
}
.pgc_freearea > ul > li:before,
.pgc_text > ul > li:before {
    content: '・';
    padding-right: 0.2em;
}
.pgc_text ol,
.pgc_freearea ol {
	list-style: decimal;
	text-indent:-1.5em;
	padding-left: 1.5em;}
.pgc_text ol > li,
.pgc_freearea ol > li {
	text-indent: 0;
}
.pgc_text hr,
.pgc_freearea hr,
.pgc_text ul,
.pgc_freearea ul {
	margin: 1em 0;
}

.pgc_text blockquote,
.pgc_freearea blockquote {
	padding: 1em;
	background: #fafafa;
	margin-bottom: 1em;
}
.pgc_text blockquote p,
.pgc_freearea blockquote p {
	font-style: italic;
}
/* PGC IMAGE */
.pgc_img {
	width: 100%;
	max-width: 960px;
	margin: 0 auto 2em;
	text-align: center;
}
.pgc_img img {
	max-width: 100%;
	height: auto;
}
#post_output .pgc_img img,
#post_output .pgc_side_img img {
	margin-bottom: 0;
}
/* PGC SIDE */
.pgc_side {
	width: 100%;
	max-width: 700px;
	margin: 0 auto;
	display: table;
	table-layout: fixed;}
.pgc_side_left,
.pgc_side_right{
	display: table-cell;
	vertical-align: top;
	padding: 0 10px 0 0;}
.pgc_side_right{
	padding: 0 0 0 10px;}
.pgc_side_img{
	text-align: center;}
.pgc_side_text{
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			WORKS

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/

#lst_works_archive {
	flex-wrap: wrap;
	padding: 0 30px;
	max-width: 1060px;
	margin: 0 auto;
}
#lst_works_archive > li {
	width: 33.33%;
	text-align: center;
	padding-bottom: 3em;
}
#lst_works_archive > li a {
	margin: 0 auto;
}
#lst_works_archive li > a .txt {
	text-align: left;
}
.lst_workscat {
	letter-spacing: -0.5em;
	margin-top: 0.25em;
}
.lst_workscat li {
	display: inline-block;
	letter-spacing: normal;
	font-size: 87%;
	line-height: 1.6;
	display: inline-block;
}
.lst_workscat li:after {
	content: ',';
	padding-right: 0.5em;
}
.lst_workscat li:last-child:after {
	content: '';
	padding-right: 0;
}
/*==================================================
 WORKS SINGLE
====================================================*/
#w_header {
	padding: 0 15px;
	max-width: 830px;
	margin: 0 auto 2em;
}
#w_header h3 {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 167%;
	letter-spacing: 0.2em;
    line-height: 1.4;
}
#w_header p {
	padding: 0.75em 0;
	color: #666666;
	border-top:1px solid #8a8a8a;
	border-bottom:1px solid #8a8a8a;
	margin: 1em 0 0;
	line-height: 1.4;
}

#w_gallery {
	padding: 0 15px;
}
.wslide {
	opacity: 0;
	transition: opacity 0.3s linear;
}
.wslide.slick-initialized {
	opacity: 1;
}
#w_gallery .wslide {
	display: block;
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	position: relative;
	overflow: visible;
}
#w_gallery .slick-list,
#w_gallery .slide_item {
	width: 100%;
}
#w_gallery .slide_item,
#w_gallery .slick-track {
	height: 500px;
	width: 100%;
}
#w_gallery .slick-list {
	overflow: hidden;
	max-width: 800px;
	margin: 0 auto;
}
#w_gallery .slide_item {
	float: left;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	width: 100%;
}

#w_gallery .slick-arrow {
	position: absolute;
	top: 50%;
	z-index: 3000;
	padding: 20px 0;
}
#w_gallery .slick-prev {
	left: 0;
	transform: translate3d(-50%,-50%,0);
}
#w_gallery .slick-next {
	right: 0;
	transform: translate3d(50%,-50%,0);
}
#w_gallery .slick-arrow img {
	max-width: 100%;
	height: auto;
}
#w_gallery .slide-dots {
	text-align: center;
	letter-spacing: -0.4em;
}
#w_gallery .slide-dots li {
    display: inline-block;
	letter-spacing: normal;
	margin: 0 10px;
}
#w_gallery .slide-dots {
	display: flex;
	justify-content: flex-end;
	max-width: 810px;
	margin: 0 auto;
	padding: 1.5em 0;
}
#w_gallery .slick-dots {
	padding: 0;
}
#w_gallery .slick-dots li {
    display: inline-block;
    margin: 5px;
}
#w_gallery .slick-dots li button {
    padding: 0;
    border: none;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #999999;
    color: transparent;
    -webkit-appearance: none;
}
#w_gallery .slick-dots li.slick-active button {
   background-color: #6c609f;
  }

#w_content {
	display: flex;
	justify-content: space-between;
	padding: 0 15px 3.5em;
	max-width: 830px;
	margin: 0 auto;
}
#w_content .w_box {

}
#w_content .w_box_data {
	padding-right: 3em;
}
#w_content .w_box_data dl {
	display: table;
}

#w_content .w_box_data dt,
#w_content .w_box_data dd {
	display: table-cell;
	vertical-align: top;
}
#w_content .w_box_data dt {
	white-space: nowrap;}
#w_content .w_box_data dt:after {
	content: ':';
	padding: 0 0.4em;
}
#w_content .w_box_data dd {

}

#w_content .w_box_comment {
	max-width: 450px;
}

#w_content .w_box p,
#w_content .w_box dt,
#w_content .w_box dd {
	color: #666;
	font-size: 87%;
	line-height: 1.8;
}
#w_content .w_box h4 {
	font-size: 134%;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	padding-bottom: 1em;
}


#w_content .works_other_link {
	display: flex;
	flex-direction: column;
	row-gap: 15px;
	margin-top: 20px;
}

#w_content .works_other_link a {
	font-size: 12px;
	display: block;
	padding: 10px 35px;
	background-color: #6B5F9F;
	color: #fff;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			STORY

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#story #contents {
	position: relative;
    z-index: 5;
}
#story #contents #storymain {
	padding: 0 1em 1.5em;
    max-width: calc(800px + 2em );
    margin: 0 auto;
}
#story .tnav_sub {
	padding: 2em 0;
}
#story .tnav_sub a {
	color: #fff;
}
#story .tnav_sub a:hover {
	color: #bfbfbf;
}
/*==================================================
 STORY ARCHIVE
====================================================*/
#lst_story_archive {
	background: #f1f1f1;
}
#lst_story_archive li {
	padding-bottom: 3.8em;
}
#lst_story_archive li a {
	display: block;
	color: #231815;
}
#lst_story_archive li a:hover {
	color: #6c609f;
}
#lst_story_archive li a .img {
	padding-top: 37.5%;
	overflow: hidden;
}
#storymain .storycat {
	display: inline-block;
    min-width: 7.4em;
    text-align: center;
    color: #fff;
	padding: 0.75em 0.5em;
	background: #231815;
	letter-spacing: 0.2em;
}
#storymain #lst_story_archive li a .img .storycat {
	position: absolute;
	z-index: 6;
	top: 0;
	left: 0;
}
#storymain .storycat.life {
	background: #529e78;
}
#storymain .storycat.migration {
	background: #5c999a;
}
#storymain .storycat.carpenters {
	background: #9a5c5c;
}
#storymain .storycat.revival {
	background: #5b7999;
}
#storymain .storycat.architecture {
	background: #6c609f;
}
#storymain .p_cmn_nopost {
	color: #fff;
}
#lst_story_archive li a .txt {
	padding: 0.75em 0 1em;
}
.storymeta .vol {
	font-size: 120%;
    letter-spacing: 0.2em;
    line-height: 1.66;
	display: block;
}
.storymeta h3 {
	font-size: 134%;
	line-height: 1.5;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.2em;
}
/*==================================================
 STORY SINGLE
====================================================*/
#story_post {
	background: #fff;
	padding: 2em 2em;
}
#story_post > .inner {
	max-width: 600px;
	margin: 0 auto;
}
#story_post .storymeta {
	margin-bottom: 2.6em;
}
#story_post .storycat {
	margin-bottom: 1em;
}
#story_post .storymeta .vol {
}
#story_post .storymeta h3 {
	font-size: 167%;
	letter-spacing: 0.14em;
	line-height: 1.3;
}
#story_post p {
	color: #666666;
	font-size: 87%;
	line-height: 1.8;
	margin-bottom: 3em;
	letter-spacing: 0.08em;
	text-align: justify;
}
#story_post p.idt {
	text-indent: 1em;
}
#story_post img {
	max-width: 100%;
	height: auto;
}
#s_postnavi ul {
	max-width: 820px;
	padding: 3em 10px;
}
#s_postnavi ul li .inactive {
	visibility: hidden;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			MODEL HOUSE

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*==================================================
 MODEL HOUSE ARCHIVE
====================================================*/
#lst_mh_archive {
}
#lst_mh_archive li {
	padding-top: 5em;
	position: relative;
	z-index: 1;
}
#lst_mh_archive li .imgarea {
	max-width: 1030px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
	padding: 0 15px;
	display: block;
}
#lst_mh_archive li .img {
    padding-top: 50%;
	overflow: hidden;
}
#lst_mh_archive li .txtarea {
	background: #eeecf5;
	position: relative;
    z-index: 1;
    width: 100%;
    margin-top: -250px;
    padding-top: 275px;
	padding: 275px 15px 3.4em;
}
#lst_mh_archive li .txt {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
#lst_mh_archive li .txt .maintxt {
	padding-right: 2em;
	width: calc(100% - 140px);
}
#lst_mh_archive .tagline,
#lst_mh_archive .place {
	line-height: 1.6;
}
#lst_mh_archive .tagline {
	letter-spacing: 0.1em;
	padding-bottom: 0.5em;
}
#lst_mh_archive h3 {
	font-size: 167%;
	font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	line-height: 1.4;
}
#lst_mh_archive .place {
	letter-spacing: 0.2em;
	padding-top: 2.8em;
}
#lst_mh_archive .place:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f3c5';
	padding-right: 0.75em;
}
#lst_mh_archive li .txt .btnarea {
	width: 140px;
	align-self: center;
}
.mh_process {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.mh_process li {
	width: 33%;
	max-width: 230px;
	padding-bottom: 1.5em;
	position: relative;
}
.mh_process li:after {
	content: url(../images/modelhouse/ico_arw.png);
	position: absolute;
	width: 46px;
	height: 46px;
	z-index: 2;
	right: -23px;
	bottom: 50%;
}
.mh_process li:nth-child(3n):after,
.mh_process li:last-child:after {
	content: none;
}
.mh_process li figure {
}
.mh_process li figure img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
.mh_process li figure figcaption {
	letter-spacing: 0.04em;
	line-height: 1.4;
	padding: 0.5em 0;
}
/*==================================================
 MODEL HOUSE SINGLE
====================================================*/
/* ▼ 2019.08.06 Added ▼ */
#modelhouse .mh_is_closed {
	color: #fb3b2c;
	text-align: center;
	line-height: 1.8;
	margin: 0 0 3em;}
#modelhouse .mh_is_closed.bottom {
	margin: 0 0 4em;}
#mh_works_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	max-width: 1030px;
	margin: 0 auto;
	padding: 0 15px;}
/* ▲ 2019.08.06 Added ▲ */
#mh_header {
	text-align: center;
	margin-bottom: 2.5em;
	padding: 0 1em;
}
#mh_header .tagline {
	letter-spacing: 0.1em;
	padding-bottom: 0.5em;
	line-height: 1.6;
}
#mh_header h3 {
	font-weight: 600;
    font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
    font-size: 200%;
    letter-spacing: 0.2em;
    line-height: 1.4;
}
#modelhouse #w_gallery .slide-dots {
	justify-content: center;
}
#modelhouse #w_gallery .wslide,
#modelhouse #w_gallery .slick-list {
	max-width: 1000px;
}
#mh_content {
	max-width: 1030px;
	padding: 0 15px;
	margin: 0 auto;
}
#mh_content .mh_box {
	display: flex;
	width: 100%;
	margin: 4em 0;
}
#mh_content .mh_box:first-child {
    margin-top: 2.5em;
}
#mh_content .mh_box .idx {
	width: 30%;
}
#mh_content h4 {
	font-size: 134%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.05em;
	line-height: 1.4;
}
#mh_content .mh_box.kita h5 {
	font-size: 125%;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1.4;
	margin: 1.5em 0;
}
#mh_content .mh_box .cnt {
	width: 70%;
}
#mh_content p,
#mh_content dt,
#mh_content dd,
#mh_content dd li {
	color: #666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	text-align: justify;
}
#mh_content p {
	margin-bottom: 1.2em;
}
#mh_content .mh_box .cnt p:last-of-type {
	margin-bottom: 0;
}
#mh_content .mh_box.point ul li {
	font-size: 120%;
}
#mh_content .mh_box.point ul li:last-child {
	margin-bottom: 0;
}
#mh_content .mh_box.info {

}
#mh_content .mh_box.info dt {
	color: #231815;
	padding-bottom: 0.5em;
}
#mh_content .mh_box.info .btnarea {
	margin-top: 1.5em;
}
#mh_content .mh_box.info .maparea {
	margin-top: 2em;
	border: 1px solid #6c609f;
}
#mh_content .mh_box.outline .minih {
	color: #231815;
}
#mh_content .mh_box.kita .mh_more {
	margin-top: 1.2em;
}
#mh_content .mh_box.kita .mh_more dt {

}
#mh_content .mh_box.kita .mh_more dt a {
	background: #fff;
	display: block;
	padding: 1em 4em 1em 1em;
	border: 1px solid #6c609f;
	position: relative;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.26em;
	line-height: 1.6;
}
#mh_content .mh_box.kita .mh_more dt a:before,
#mh_content .mh_box.kita .mh_more dt a:after {
	content: '';
	background: #888888;
	width: 23px;
	height: 1px;
	position: absolute;
	right: 2em;
	top: 50%;
	transition: all 0.4s;
	-moz-transition: all 0.4s;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	opacity: 1;
}
#mh_content .mh_box.kita .mh_more dt a:before {

}
#mh_content .mh_box.kita .mh_more dt a:after {
	transform: rotate3d(0,0,1,90deg);
}
#mh_content .mh_box.kita .mh_more.open dt a:before {
	transform: rotate3d(0,0,1,90deg);
	opacity: 0;
}
#mh_content .mh_box.kita .mh_more.open dt a:after {
	transform: rotate3d(0,0,1,180deg);
}
#mh_content .mh_box.kita .mh_more dd {
	display: none;
}
#mh_content .mh_box.kita .mh_more.open dd {
	display: block;
	padding: 1em 1em 1.5em;
	background: #fff;
	border: 1px solid #f1f1f1;
	border-top: none;
}
#mh_content .mh_box.data dl {
	margin-bottom: 1.25em;
}
#mh_content .mh_box.data dl:last-of-type {
	margin-bottom: 0;
}
#mh_content .mh_box.data dt {
	color: #231815;
}
#mh_content .mh_box.kita dd,
#mh_content .mh_box.data dd {
	word-break: break-all;
}

#mh_content .mh_box.bnr a {
	display: block;
}
#mh_content .mh_box.bnr img {
	max-width: 100%;
	height: auto;
}

#mh_content .mh_link {
	margin: 6em 0;
}
#mh_content .mh_link a {
	display: block;
	position: relative;
	z-index: 1;
}
#mh_content .mh_link a:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-style: normal;
    content: '\f35d';
	font-size: 125%;
	position: absolute;
	right: 2em;
	top: 50%;
	z-index: 2;
	color: #fff;
	transform: translate3d(0,-50%,0);
}
#mh_content .mh_link a .img {
	padding-top: 12%;
}
#mh_content .mh_link a .txt {
	color: #fff;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
    font-size: 167%;
    letter-spacing: 0.05em;
    line-height: 1.4;
	width: 100%;
	height: 100%;
	z-index: 2;
	left: 0;
	top: 0;
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			CONTACT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#cotact_telwrap {
	padding: 2.5em 0;
    border-bottom: 1px solid #cfcfcf;
    border-top: 1px solid #cfcfcf;
	margin: 2.5em 0 0;
}
#cotact_telwrap .contact_item {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin-bottom: 3.25em;
}
#cotact_telwrap .contact_item:last-of-type {
	margin-bottom: 0;
}
#cotact_telwrap .contact_item > dt,
#cotact_telwrap .contact_item > dd {
	display: table-cell;
	vertical-align: top;
}
#cotact_telwrap .contact_item > dt {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-size: 134%;
	letter-spacing: 0.2em;
	line-height: 1.4;
}
#cotact_telwrap .contact_item > dd dl {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin-bottom: 10px;
}
#cotact_telwrap .contact_item > dd dl:last-child {
	margin-bottom: 0;
}
#cotact_telwrap .contact_item > dd dt,
#cotact_telwrap .contact_item > dd dd {
	display: table-cell;
	vertical-align: middle;
}
#cotact_telwrap .contact_item > dd dt {
	width: 60px;
}
#cotact_telwrap .contact_item > dd dd {
	line-height: 1.6;
	font-size: 133%;
}
#cotact_formwrap dl {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin: 2em 0;
}

#cotact_formwrap .calendar_time_area {
	/*display: flex;*/
	/* align-items: flex-start; */
}

#cotact_formwrap .calendar_time_area dt,
#cotact_formwrap .calendar_time_area dd {
	vertical-align: unset;
}

#cotact_formwrap .calender_time_item {
	width: calc(100% - 30%);
}

#cotact_formwrap .calender_time_sub_ttl {
	width: 20%;
}

#cotact_formwrap .calendar_time_area .flexbox {
	margin: 0;
	padding-right: 30px;
}

#cotact_formwrap .calender_time_item .calendar.flexbox {
	display: flex;
	flex-direction: column;
	row-gap: 20px;
}

#cotact_formwrap .calender_time_item dd {
	display: flex;
	justify-content: space-between;
}

#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap input {
	height: 100%;
	border: 1px solid #707070;
	border-radius: 3px;
}

#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap {
	width: 48%;
}

#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap:after {
	content: "";
	position: absolute;
	top: 0;
	right: 28px;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 10px;
	background-image: url(../images/contact/select_arrow.svg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap ::placeholder {
	font-size: 12px;
}

#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap select {
	margin: 0;
	width: 100%;
	resize: vertical;
	border: 1px solid #707070;
	color: #c1c1c1;
	/*line-height: 1.6;*/
	border-radius: 3px;
	background-color: #fff;
	padding: 5px 10px;
	height: 100%;

	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

#cotact_formwrap .calender_time_item dd.select-option .wpcf7-form-control-wrap select {
	color: #231815;
}

#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap select option:first-child {
	color: #c5c5c5;
}

#cotact_formwrap dl dt,
#cotact_formwrap dl dd {
	display: table-cell;
	vertical-align: middle;
}
#cotact_formwrap dl dt {
	width: 30%;
	line-height: 1.8;
}
#cotact_formwrap .calendar_time_area .small_font {
	font-size: 13px;
}

#cotact_formwrap dl dt.vat {
	vertical-align: top;
}
#cotact_formwrap dl dt.req:after {
	content: '必須';
	color: #fff;
	background: #6c609f;
	padding: 2px 5px;
	border-radius: 3px;
	font-size: 80%;
	margin-left: 1em;
	letter-spacing: 0.1em;
}
#cotact_formwrap dl dd .cols {
	display: flex;
	flex-wrap: wrap;
}
#cotact_formwrap dl dd .cols .unit {
	display: inline-block;
    vertical-align: bottom;
    padding-bottom: 2px;
}
#cotact_formwrap dl dd .cols .age,
#cotact_formwrap dl dd .cols .adult,
#cotact_formwrap dl dd .cols .child {
	padding-right: 2em;
}
#cotact_formwrap dl dd .idx {
	display: inline-block;
	line-height: 1.6;
}

#cotact_formwrap div.wpcf7 .ajax-loader {
	display: block;
	margin: 0 auto 0;
	width: 100%;
	background-repeat: no-repeat;
    background-position: center;
}
#cotact_formwrap div.wpcf7-response-output {
    margin: 1em 0 0;
    padding: 0.2em 1em;
	line-height: 1.4;
}
#cotact_formwrap span.wpcf7-list-item {
    margin: 0 0 0 0;
}
#cotact_formwrap span.wpcf7-not-valid-tip {
	line-height: 1.4;
	font-size: 88%;
}
#cotact_formwrap p.ppnote {
	margin: 3.5em 0;
}
#cotact_formwrap .btnarea {
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
}
#cotact_formwrap .btnarea .wpcf7-back,
#cotact_formwrap .btnarea .wpcf7-submit {
	margin: 0 10px 10px;
}
#cotact_formwrap .btnarea .wpcf7-back {
	background: #666666;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			CONTACT

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.links_facilities:before {
	width: calc(100% - 30px);
	background: #b6b6b6;
	content: '';
	height: 1px;
	display: block;
	top: -3.5em;
	position: absolute;
	left: 15px;
}
.links_box {
	margin-bottom: 4.5em;
}
.links_box.last {
	margin-bottom: 0;
}
.links_box dl {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin-bottom: 2.75em;
}
.links_box dl:last-child {
	margin-bottom: 0;
}
.links_box dt,
.links_box dd {
	display: table-cell;
	vertical-align: top;
	line-height: 1.6;
	letter-spacing: 0.12em;
}
.links_box dt {
	width: 40%;
}
.links_box dt a {
	display: inline-block;
}
.links_box dd {
	color: #666666;
}
.links_box h5 {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	line-height: 1.4;
	font-size: 120%;
    letter-spacing: 0.15em;
	margin-bottom: 2em;
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			POST

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.wp-embedded-content {
	max-width: 100%;}
/* 投稿無しメッセージ */
.p_cmn_nopost {
	padding: 3em 10px 5em;
    max-width: 1020px;
    margin: 0 auto;
    text-align: center;}
#post_wrapper {
	display: table;
	table-layout: fixed;
	width: 100%;
	max-width: 1020px;
	margin: 5em auto;}
#post_main,
#post_aside {
	display: table-cell;
	vertical-align: top;}
#post_main {
	padding: 0 5% 0 10px;}
#post_aside {
	padding: 0 10px 0 0;
	width: 260px;}

#post_main .infocat {
	background: #e3e3e3;
	font-size: 80%;
	letter-spacing: 0.1em;
	padding: 0.75em 1em;}
#post_main .infocat.news,
#post_main .infocat.foundation-team{
	background: #d8e3de;}
#post_main .infocat.press-release,
#post_main .infocat.carpenters {
	background: #dad8e3;}
#post_main .infocat.yui-hall,
#post_main .infocat.yui-matsuri,
#post_main .infocat.office {
	background: #e3d8de;}
#post_main .infocat.public-tour {
	background: #d8dee3;}
/*==================================================
 POST SIDEBAR
====================================================*/
#post_aside .side_box h3,
#side_category ul li {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	line-height: 1.4;
}
#post_aside .side_box h3 {
	font-size: 120%;
    letter-spacing: 0.15em;
	margin-bottom: 1.5em;
}
#post_aside .side_box_inner {
	padding: 0 0 3em 1.8em;
}
#side_category ul {
	margin-top: -0.5em;
}
#side_category ul li a {
	display: block;
	color: #231815;
	font-weight: 600;
	letter-spacing: 0.26em;
	font-size: 87%;
	padding: 0.5em 0 0.5em 1.5em;
	position: relative;
	height: 100%;
}
#side_category ul li a:hover,
#side_category ul li.current-cat a {
	color: #6c609f;
}
#side_category ul li a:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f105';
	position: absolute;
	left: 0;
	top: 0.65em;
}
#side_archive select {
	letter-spacing: 0.26em;
	width: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
}
#side_archive .select_wrapper {
	position: relative;
}
#side_archive .select_wrapper:after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f107';
	padding-right: 1.3em;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate3d(0,-50%,0);
	z-index: -1;
}
/*==================================================
 POST ARCHIVE
====================================================*/
#lst_post_archive li {
	margin-bottom: 3em;
}
#lst_post_archive li a {
	display: table;
	table-layout: fixed;
	width: 100%;
	color: #231815;
}
#lst_post_archive li a .img,
#lst_post_archive li a .txt {
	display: table-cell;
	vertical-align: top;
}
#lst_post_archive li a .img {
	width: 43%;
}
#lst_post_archive li a .img .thumb {
	padding-top: 60%;
}
#lst_post_archive li a .txt {
	padding: 0 0 0 4.5%;
}
#lst_post_archive li a .txt .date {
	line-height: 1.6;
	padding: 0.5em 0;
}
#lst_post_archive li a .txt .title {
	padding-bottom: 0.5em;
}
#lst_post_archive li a .txt h3 {
	font-size: 113%;
	font-weight: 600;
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	letter-spacing: 0.15em;
	line-height: 1.6;
}
#lst_post_archive li a .txt p {
	color: #666;
	line-height: 1.8;
	letter-spacing: 0.09em;
	text-align: justify;
}
/* ARCHIVEナビ */
#pagenavi {
	background: #fff;
	padding: 2em 10px;
}
#pagenavi .wp-pagenavi {
	text-align: center;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;}
#pagenavi .wp-pagenavi span:first-child,
#pagenavi .wp-pagenavi a:first-child {
}
#pagenavi .wp-pagenavi span,
#pagenavi .wp-pagenavi a {
	display: inline-block;
	border: none;
	color: #fff;
	margin: 2px;
	height: 38px;
	line-height: 38px;
	width: 38px;
}
#pagenavi .wp-pagenavi a {
	background: #666666;
}
#pagenavi .wp-pagenavi a:hover {
	background: #6a5c9a;
}
#pagenavi .wp-pagenavi span.pages {
	display: none;
}
#pagenavi .wp-pagenavi span.current {
	background: #6a5c9a;
	font-weight: normal;
}
#pagenavi .wp-pagenavi a.nextpostslink,
#pagenavi .wp-pagenavi a.previouspostslink {
	color: #999;
}
#pagenavi .wp-pagenavi a.last,
#pagenavi .wp-pagenavi a.first {

}
#pagenavi .wp-pagenavi a.last:hover,
#pagenavi .wp-pagenavi a.nextpostslink:hover,
#pagenavi .wp-pagenavi a.previouspostslink:hover,
#pagenavi .wp-pagenavi a.first:hover {
	background: #6a5c9a;
}
#pagenavi .wp-pagenavi a.last {
	right: 0;
	border-right: none;
}
#pagenavi .wp-pagenavi a.nextpostslink {
}
#pagenavi .wp-pagenavi a.previouspostslink {
}
#pagenavi .wp-pagenavi a.first {
	left: 0;
}
#pagenavi .wp-pagenavi span.extend {
	color: #b3b3b3;
}
/*==================================================
 POST SINGLE
====================================================*/
#post_main .infocat .date {
	padding-right: 1em;
}
#post_output h3 {
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	line-height: 1.6;
	font-size: 133%;
    letter-spacing: 0.15em;
	font-weight: 600;
	padding: 1em 0;
}
#post_output .content p {
	color: #666666;
	line-height: 1.9;
	letter-spacing: 0.09em;
	margin-bottom: 1.5em;
	text-align: justify;
}
#post_output .content p:last-of-type {
	/*margin-bottom: 0;*/}
#post_output .content img {
	max-width: 100%;
	height: auto;
	margin-bottom: 1em;
}
/* SINGLEナビ */
.postnavi {
	background: #fff;
}
.postnavi ul {
	display: flex;
	justify-content: space-between;
	max-width: 800px;
	margin: 0 auto;
	padding: 3em 45px;
}
.postnavi ul li {
}
.postnavi ul li.tolist {
}
.postnavi ul li.prev {
}
.postnavi ul li.next {
}
.postnavi a,
.postnavi .inactive {
	display: inline-block;
	text-align: center;
	border: 2px solid;
	min-width: 140px;
	font-size: 80%;
	line-height: 38px;
	letter-spacing: 0.1em;
}
.postnavi ul li .inactive {
	color: #999999;
}
.postnavi a {
	color: #231815;
}
.postnavi a:hover {
	color: #fff;
	background: #6c609f;
	border-color: #6c609f;
}
/*==================================================
 BLOG ARCHIVE
====================================================*/
.blog_intro {
	margin: 0 0 4em;}
.blog_intro p {
	color: #666;
	line-height: 1.8;
	letter-spacing: 0.09em;
	text-align: justify;
	margin-bottom: 1.5em;}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			Privacy Policy

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
.msg_cmn h5.pph5,
.msg_cmn h4.pph5 {
	line-height: 1.6;
	margin: 1.5em 0 1em;
	font-size: 120%;
}
.msg_cmn h4.pph5 {
	margin: 0 0 0.5em;
}
.ppbox {
	margin-bottom: 2.5em;
	padding-bottom: 2em;
	border-bottom: 1px solid #d2d2d2;
}
#pp_contact {
	display: flex;
}
#pp_contact li {
	width: 100%;
}
#pp_contact li:first-child{
	padding-right: 1em;
}
#pp_contact li:last-child{
	padding-left: 1em;
}
#pp_contact li .item {
	border: 1px solid #d2d2d2;
	padding: 1em;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			404

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
#error_404 {
	max-width: 640px;
	margin: 0 auto;
	text-align: center;
	padding: 4em 1em;
}
#error_404 {
	line-height: 1.8;
}
#error_404 .btnarea {
	padding-top: 3em;
}

/*==================================================
PRIVACY POLICY
====================================================*/
.privacy-content{
  padding-left: 30px;
  padding-right: 30px;
}

.privacy-content p{
  font-size: 15px;
  letter-spacing: 0.09em;
  line-height: 27px;
}

.privacy-title{
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0.145em;
	margin-bottom: 20px;
}


.privacy-num{
	font-size: 25px;
	font-weight: normal;
	letter-spacing: 0.09em;
	margin-bottom: 11px;
	display: flex;
	align-items: baseline;
	line-height: 37px;
}

.privacy-num:nth-of-type(1){
	margin-top: 30px;
}

.privacy-num span{
	position: relative;
	top: -3px;
	display: block;
	width: 50px;
	height: 50px;
	border: solid 1px #000;
	border-radius: 100%;
	place-content: center;
	font-size: 20px;
	text-align: center;
	letter-spacing: 0;
	margin-right: 10px;
	padding-bottom: 3px;
}

.privacy-text{
	padding-left: 60px;
	margin-bottom: 50px;
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1200px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:1200px){
/*==================================================
 PAGE COMMON
====================================================*/
	.para_cmn {
		height: auto;
		padding-top: 21.7%;
	}
	.page_mv {
		height: auto;
		padding-top: 37.5%;
	}
/*==================================================
 PAGE ABOUT
====================================================*/
	.yui-matsuri .page_mv {
		padding-top: 25%;
		height: auto;
	}

}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1100px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:1100px){
/*==================================================
 MODELHOUSE
====================================================*/
	#modelhouse #w_gallery .slick-arrow {
		padding: 20px 10px 25px;
		max-width: 60px;
		background: rgba(255,255,255,0.3);
	}
	#modelhouse #w_gallery .slick-arrow:hover {
		background: rgba(255,255,255,0.5);
	}
	#modelhouse #w_gallery .slick-prev {
		transform: translate3d(0,-50%,0);
	}
	#modelhouse #w_gallery .slick-arrow {
		transform: translate3d(0,-50%,0);
	}
/*==================================================
 CARPENTER
====================================================*/
	#popup_content #w_gallery .slick-arrow {
		padding: 20px 10px 25px;
		max-width: 60px;
		background: rgba(0,0,0,0.3);
	}
	#popup_content #w_gallery .slick-arrow:hover {
		background: rgba(0,0,0,0.5);
	}
	#popup_content #w_gallery .slick-prev {
		transform: translate3d(0,-50%,0);
		left: 0;
	}
	#popup_content #w_gallery .slick-next {
		transform: translate3d(0,-50%,0);
		right: 0;
	}
	#popup_close {
		top: -60px;
		width: 48px;
		height: 48px;
	}
	#popup_close:after,
	#popup_close:before {
		height: 20px;
		margin: -10px 0 0 0;
	}
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1020px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:1020px){

/*==================================================
 HEADER / FOOTER 1020
====================================================*/
	#btn_nav {
		left: 10px;
	}

	#hdr_contact {
		right: 10px;
	}

	#hdr_recruit{
		right:113px
	}

	#hdr_contact {
		right: 10px;
	}

	#ftr_pickup {
		padding-bottom: 20px;
	}
	#ftr_pickup ul li {
		margin-bottom: 20px;
	}
	#ftr_pickup ul li:nth-child(2n+1) {
		padding-right: 10px;
	}
	#ftr_pickup ul li:nth-child(2n) {
		padding-left: 10px;
	}
	#hdr_sns {
		left: 50px;
	}

/*==================================================
 WORKS 1020
====================================================*/
	#lst_works_archive {
		padding: 0 15px;
	}
	#lst_works_archive li {
		padding: 0 0.5em 3em;
	}
/*==================================================
 REPORT 1020
====================================================*/
	#tkb-reports #side_category ul {
		display: flex;
		flex-wrap: wrap;
	}
	#tkb-reports #side_category ul li {
		width: 100%;
		max-width: 200px;
	}

/*==================================================
 POST 1020
====================================================*/
	#post_wrapper,
	#post_main {
		display: block;
		width: 100%;
	}
	#post_main {
		padding: 0 1em 0 1em;
	}
	#post_output {
		padding-bottom: 5em;
	}
	#post_aside {
		padding: 2em 1.5em 0 1.5em;
		border-top: 1px solid #b6b6b6;
		display: flex;
		width: 100%;
	}
	#post_aside .side_box {
		width: 100%;
	}
	#post_aside .side_box_inner {
		padding: 0 0 0 1.8em;
	}
	#lst_post_archive {
		max-width: 700px;
		margin: 0 auto;
	}
	#lst_post_archive li a .img {

	}


}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			1000px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:1000px){
/*==================================================
 HOME 1000
====================================================*/
	#hnav.home_nav ul {
		max-width: none;
		width: 80%;
	}
	#hnav.home_nav ul li a {
		padding: 0;
	}
	#home_mv {
		height: 480px;
	}
	#home_mv .img {
		width: 80%;
	}

	#home_info .inner .idx {
		width: 20%;
	}
	.home_imtx .img {
		width: 65%;
	}
	.home_imtx .txt .inner {
		width: 50%;
	}

	.home_idx_en {
		position: static;
	}

/*==================================================
 WORKS 1000
====================================================*/
	#w_gallery .slick-arrow {
		padding: 20px 10px 25px;
		max-width: 60px;
		background: rgba(255,255,255,0.3);
	}
	#w_gallery .slick-arrow:hover {
		background: rgba(255,255,255,0.5);
	}
	#w_gallery .slick-prev {
		transform: translate3d(0,-50%,0);
	}
	#w_gallery .slick-arrow {
		transform: translate3d(0,-50%,0);
	}
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			880px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:880px){
/*==================================================
 HEADER / FOOTER 880
====================================================*/
	#ftr_pickup ul li a .en {
		font-size: 114%;
	}
	#ftr_pickup ul li a .ja {
		font-size: 160%;
	}
	#ftr_sns {
    	padding-left: 2em;
	}
/*==================================================
 ABOUT 880
====================================================*/
	#abt_mottoes {
		padding: 0 2em;
	}
	#abt_mottoes .ttl h3 {
		font-size: 150%;
	}
	#abt_mottoes ul li {
		font-size: 100%;
	}
}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			768px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:768px){
	body {
		font-size:13px;
	}
/*==================================================
 HEADER / FOOTER 768
====================================================*/
	#phdr_bg {
		height: 260px;
	}
	#ftr_logo {
		width: 200px;
		padding-right: 1em;
	}
	#ftr_sns ul li a {
		padding: 5px 5px 5px 25px;
	}

	#hdr_recruit,#hdr_contact{
		height: 28px;
    width: 85px;
    top: 0;
    bottom: 0;
    margin: auto;
	}

	#hdr_recruit{
		right: 103px;
	}

/*==================================================
 HOME 768
====================================================*/
	#home_mv .img {
		width: 100%;
	}
	#home_mv .txt {
		color: #fff;
	}
	#home_mv .txt .msg,
	#home_mv .txt .idx .ja,
	#home_mv .txt .idx .en {
		text-shadow: 0 0 6px rgba(0,0,0,0.7), 0 0 2px rgba(0,0,0,0.8);
	}
	#home_mv .txt .idx .ja {
    	color: #fff;
	}
	#hnav.home_nav ul {
		width: 100%;
	}
	#home_info .inner,
	#home_info .inner .main {
		display: block;
		width: 100%;
	}
	#home_info .inner .idx {
		padding-top: 0;
		display: flex;
		margin: 0 auto;
		justify-content: center;
		align-content: center;
		align-items: center;
		padding-bottom: 1em;
		width: 100%;
	}
	#home_info h2.home_basic {
		padding-bottom: 0;
		/*padding-right: 1em;*/
	}
	#home_info h2.home_basic .en,
	#home_info h2.home_basic .ja {
		text-align: center
	}
	#home_info_sns {
		display: none;
		/*padding-left: 1em;*/
	}
	#home_info .main ul li a .cat,
	#home_info .main ul li a .date {
		width: 8em;
	}
	a:hover .img_hover img,
	.img_hover.hover img {
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
	}
/*==================================================
 PAGE COMMON 768
====================================================*/
	.para_space {
		height: 180px;
	}
	#pnav.home_nav {
		display: none;
	}
	.pnav_sub li {
		width: 33.33%;
		padding: 0 4px 8px;
	}
	.tbllst_cmn > dl > dt {
		width: 20%;
		min-width: 140px;
		padding-right: 1.5em;
	}
	.tbllst_cmn > dl > dd {
		width: 80%;
	}
/*==================================================
 PAGE ABOUT 768
====================================================*/
	#abt_ovw_intro .colbox .img {
    	width: 200px;
	}
	#abt_ovw_intro .signature {
		padding-top: 1em;
	}
	#abt_ovw_staff,
	#abt_ovw_cprof {
		margin-left: 0;
	}

	#abt_hall_info .box {
		flex-wrap: wrap;
		margin: 3em 0;
	}
	#abt_hall_info .box .idx,
	#abt_hall_info .box .cnt {
		width: 100%;
	}
	#abt_hall_info .box .idx {
		padding-bottom: 1em;
		border-bottom: 1px solid #6c609f;
		margin-bottom: 1.5em;
	}
	#fig_certifications ul {
		flex-wrap: wrap;}
	#fig_certifications ul li {
		width: 100%;}
	#fig_certifications ul li.logo {
		order: 1;
		padding: 0 0 20px;}
	#fig_certifications ul li.cert {
		order: 2;}
/*==================================================
 PAGE CONCEPT 768
====================================================*/
	.con_des_rule.kirei .box .hdr .num {
		width: 50px;
		font-size: 200%;
	}
	.con_des_rule.kirei .box .cnt {
		padding-left: 50px;
	}

	.con_des_rule.r5s1m .cnt .num {
		width: 40px;
	}
	.con_des_rule.r5s1m .cnt .idx {
		width: 70px;
	}
	.con_des_rule.r5s1m .cnt .txt {
		width: calc(100% - 110px);
	}
	#flowbox {
		max-width: none;
		margin: 0 0 0 20px;
		padding: 0 15px 0 30px;
	}
	#flowbox:before {
		left: 2px;
	}
	#flowbox:after {
		left: 0;
		bottom: 0px;
		margin-left: 0;
	}
	#flowbox ul.right {
		display: none;
	}
	#flowbox ul.left {
		width: 100%;
	}
	#flowbox ul.left li {
		padding-right: 0;
	}
	#flowbox ul li.sp {
		display: flex;
	}
	#concept #flowbox ul li.i_4 {
		padding-bottom: 2em;
	}
	#flowbox ul.left li:after {
		right: auto;
		left: -30px;
	}
	#flowbox li .box {
		max-width: none;
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}
	#flowbox li h4 {
		width: 100%;
		margin: 0 0 1em;
	}
	#flowbox li .img {
		width: 40%;
		margin: 0;
	}
	#flowbox li p {
		width: 60%;
		padding-left: 1.5em;
	}
	#con_rev_example dl dt {
    	width: 20%;
	}

	.con_spw_points .box p .ico {
		padding: 0.75em 1.5em;
		width: auto;
		height: auto;
		line-height: 1.2;
		border-radius: 2em;
		right: auto;
		left: 20px;
		top: -20px;
	}
	.con_spw_points .box.w_ico {
		padding-top: 1em;
	}
	.con_spw_points .box.w_ico p {
		padding-top: 20px;
	}
/*==================================================
 REVIVE 768
====================================================*/
	#rev_prn_list li {
		margin-bottom: 36px;
	}
	#rev_prn_list li:after {
		height: 36px;
		bottom: -36px;
	}
	#rev_prn_list li .ico {
		width: 100px;
	}
	#rev_prn_list li .ico img {
		max-width: 80%;
	}
	#rev_prn_list li .txt {
		width: calc(100% - 100px);
	}
/*==================================================
 CARPENTER 768
====================================================*/
	#bld_ms_intro,
	#bld_ms_intro .txt {
		display: block;
		width: 100%;
	}
	#bld_ms_intro .txt {
		padding: 0 0 2em 0;
	}
	#bld_ms_intro .img {
		display: flex;
		width: 100%;
	}
	#bld_ms_intro .img img.pc {
		display: none;
	}
	#bld_ms_intro .img img.sp {
		display: block;
	}
	#bld_ms_intro .img img.first {
		margin: 0 2px 0 0;
	}
	#bld_ms_intro .img img.last {
		margin: 0 0 0 2px;
	}
	#cpt_msn_episodes .box,
	#cpt_msn_episodes .box .txt,
	#cpt_msn_episodes .box .img {
		display: block;
		width: 100%;
	}
	#cpt_msn_episodes .box .txt {
		padding: 2em 2em 0 2em;
		max-width: 600px;
		margin: 0 auto;
	}
	#cpt_msn_episodes .box .img {
		padding: 1.5em 2em 2.5em;
		text-align: center;
	}

	.cpt_cultivation_box {
		flex-wrap: wrap;
		margin: 3em 0;
	}
	.cpt_cultivation_box .idx,
	.cpt_cultivation_box .cnt {
		width: 100%;
	}
	.cpt_cultivation_box .idx {
		padding-bottom: 1em;
		border-bottom: 1px solid #6c609f;
		margin-bottom: 1.5em;
	}
	.cpt_cultivation_box .idx h4 br {
		display: none;
	}
/*==================================================
 WORKS 768
====================================================*/
	#w_content {
		flex-wrap: wrap;
	}
	#w_content .w_box {
		width: 100%;
	}
	#w_content .w_box_comment {
		max-width: none;
		order: 1;
	}
	#w_content .w_box_data {
		margin-top: 1.5em;
		padding-top: 1.5em;
		padding-right: 0;
		order: 2;
		border-top: 1px solid #ddd;
	}
	#w_content .w_box_data .datalist {
		display: flex;
		flex-wrap: wrap;
	}
	#w_content .w_box_data dl {
		width: 50%;
	}
	#w_content .w_box_data dl:nth-child(2n+1){
		padding-right: 1.5em;
	}
	#w_content .w_box_data dl:nth-child(2n){
		padding-left: 1.5em;
	}
	#w_content .w_box_data dt {
		width: 7em;
	}
/*==================================================
 STORY 768
====================================================*/
	#storymain .storycat {
		font-size: 88%;
	}
	#story_post .wp-caption {
		width: 100% !important;
	}
/*==================================================
 MODEL HOUSE 768
====================================================*/
	#lst_mh_archive li .txtarea {
		margin-top: -25%;
		padding: calc(25% + 1em) 1em 2.5em;
	}
	#mh_content .mh_box {
		flex-wrap: wrap;
		margin: 3em 0;
	}
	#mh_content h4 br {
		display: none;
	}
	#mh_content .mh_box .idx,
	#mh_content .mh_box .cnt {
		width: 100%;
	}
	#mh_content .mh_box .idx {
		padding-bottom: 1em;
		border-bottom: 1px solid #6c609f;
		margin-bottom: 1.5em;
	}
	#mh_content .mh_link {
		margin: 4em 0;
	}
	.mh_process {
		max-width: 700px;
		margin: 0 auto;
	}

	#about .recruit_bnr{
		width: calc(100% - 30px);
	}
	#about .recruit_bnr .wrapper{
	  flex-direction: column;
	}
	#about .recruit_bnr .wrapper .left{
		width: 100%;
		margin-bottom: 30px;
	}
	#about .recruit_bnr .wrapper .left h3 {
		line-height: 1.6;
	}
	#about .recruit_bnr .wrapper .line{
		width: 100%;
		height: 1px;
	}
	#about .recruit_bnr .wrapper .right{
		width: 100%;
		margin-top: 30px;
	}
	#about .recruit_bnr .wrapper .right a span{
		font-size: 13px;
		letter-spacing: 0.08em;
	}
/*==================================================
 PRIVACY POLICY 768
====================================================*/
.privacy-content{
  padding-left: 20px;
  padding-right: 20px;
}

.privacy-content p{
  font-size: 12px;
  line-height: normal;
}


.privacy-title{
	font-size: 18px;
	line-height: normal;
}

.privacy-num{
	font-size: 16px;
	margin-bottom: 11px;
	line-height: normal;
}

.privacy-num span{
	position: relative;
	top: 0;
	width: 30px;
	min-width: 30px;
	height: 30px;
	font-size: 16px;
	letter-spacing: 0;
	margin-right: 10px;
	padding-bottom: 0;
}

.privacy-num br{
	display: none;
}


.privacy-text{
	padding-left: 0;
	margin-bottom: 50px;
}




}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			680px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:680px){
	#rev_ins_fig li {
		max-width: none;
		width: 22%;
	}
	#rev_ins_fig li:after {
		right: calc(-9.1% - 23px);
	}

}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			640px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:640px){
/*==================================================
 HEADER / FOOTER 640
====================================================*/
	#gn_main .lst_main {
		width: 100%;
	}
	#gn_main .lst_main li a {
		padding: 5px;
	}
	#gn_main .lst_sub {
		display: none;
	}
	#gn_ftr {
		text-align: center;
	}

	#ftr_main_upper {
		flex-wrap: wrap;
		padding: 1em 0;
	}
	#ftr_logo,
	#ftr_address,
	#ftr_sns {
		width: 100%;
		padding-right: 0;
		padding-left: 0;
	}
	#ftr_logo {
		text-align: center;
	}
	#ftr_address {
		padding: 2em 0;
	}
	#ftr_sns {
		padding-top: 1em;
		border-left: none;
		border-top: 1px solid #cbcbcb;
	}
	#ftr_sns ul {
		flex-direction: row;
		justify-content: center;
	}
	#ftr_sns ul li {
		width: auto;
		padding: 0 10px;
	}
	#ftr_main_lower ul li {
		padding: 0 0.5em;
	}
/*==================================================
 HOME 640
====================================================*/
	#home_mv {
		height: 360px;
	}
	#hnav.home_nav {
		display: none;
	}
	.home_imtx .img {
		width: calc(100% - 80px);
		height: 240px;
	}
	#home_concept .img,
	#home_revive .img {
		background-position: bottom center;
	}
	.home_imtx .txt {
		padding-top: 200px;
	}
	.home_imtx.right .txt{
		height: 100%;
	}
	.home_imtx.left .txt{
		height: 100%;
	}
	.home_imtx .txt .inner {
		width: calc(100% - 80px);
		max-width: none;
		padding: 1.5em 2em;
	}
	.home_idx_en {
		position: absolute;
	}
	.home_idx_tl {
		letter-spacing: 0.2em;
	}

	.home_report ul {
		justify-content: space-around;
		max-width: 560px;
		margin: 0 auto;
		padding: 0 5px;
	}
	.home_report ul li {
		width: 48%;
		max-width: 250px;
		padding-bottom: 1.25em;
	}

	#hdr_sns{
		right: 5px;
    left: unset;
	}

	#hdr_contact{
		display: none;
	}

	#about.recruit #hdr_recruit{
		display: none;
	}

	#hdr_recruit{
		position: fixed;
    bottom: 25px;
    top: unset;
    left: unset;
    right: 10px;
    width: 82px;
    height: 82px;
    border-radius: 50%;
    display: flex;
		flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: unset;
    font-size: 12px;
	}
	#hdr_recruit .pc_none{
    display: block;
    margin-bottom: 5px;
	}

/*==================================================
 PAGE COMMON 640
====================================================*/
	.msg_cmn {
		margin-top: 3em;
		margin-bottom: 3em;
	}
	.msg_cmn.nmt {
		padding-top: 3em;
	}
	.msg_cmn.nmb {
		padding-bottom: 3em;
	}
	.msg_cmn.ul {
		padding-bottom: 3em;
	}
	.msg_cmn .idxbox.pb4em {
		padding-bottom: 2em;
	}
/*==================================================
 PAGE ABOUT 640
====================================================*/
	#abt_ovw_intro .colbox,
	#abt_ovw_intro .colbox .txt,
	#abt_ovw_intro .colbox .img {
		display: block;
		width: 100%;
	}
	#abt_ovw_intro .colbox .img {
		text-align: center;
	}
	#abt_ovw_intro .colbox .txt {
		padding: 0 0 2em 0;
	}
	#abt_ovw_intro .signature .inner {
		margin: 0 auto;
	}
	#abt_ovw_intro .signature .txt {
		padding-right: 1em;
	}
	#abt_ovw_intro .signature .txt {
		letter-spacing: 0;
	}
	#abt_ovw_policy li {
		padding-bottom: 1em;
	}
	#abt_ovw_policy li:nth-child(2n+1) {
		padding-right: 5px;
	}
	#abt_ovw_policy li:nth-child(2n) {
		padding-left: 5px;
	}
	#abt_ovw_policy li figcaption {
		font-size: 120%;
		position: static;
		transform: none;
		padding: 0.5em 0.25em;
		min-width: auto;
	}

    /* 20200217 SDGs */
    #lst_sdg_icons {
        justify-content: center;}
    #lst_sdg_icons li {
        width: 25%;
        margin: 0 0;
        padding: 0 0.5% 1%;}
    #about_sdg_intro {
        padding-top: 3em;
        padding-bottom: 3em;}
    .about_sdg_item .inner .img {
        width: 130px;}
    .about_sdg_item .inner .txt {
        width: calc(100% - 130px);
        padding: 0 0 0 2em;}

	#abt_mottoes {
		height: 100%;
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
		min-height: 40em;
	}
	#abt_mottoes ul {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		max-width: 200px;
	}
	#abt_mottoes ul li {
		font-size: 100%;
		line-height: 3;
		width: 20%;
		padding-bottom: 2em;
	}
	.abt_his_docs,
	.abt_his_docs .txt,
	.abt_his_docs .img {
		display: block;
		width: 100%;
	}
	.abt_his_docs .txt {
		padding: 0 0 2em;
	}
	.abt_his_docs .img {
		text-align: center;
	}
	.abt_his_docs .img figure {
		margin: 0 0;
	}
	.abt_his_docs .img figure figcaption br {
		display: none;
	}
	.abt_rec_list .recitem {
		margin-bottom: 4em;
	}
	.abt_rec_list dl,
	.abt_rec_list dl dt,
	.abt_rec_list dl dd {
		display: block;
		width: 100%;
	}
	.abt_rec_list dl {
		margin: 1em 0;
		border-bottom: 1px solid #e4e4e4;
	}
	.abt_rec_list dl:last-child {
		border-bottom: none;
	}
	.abt_rec_list dl dt {
		margin-bottom: 0.5em;
	}
	#abt_rec_inquiry h3,
	.abt_rec_list dl dt {
		font-size: 125%;
	}

	.yuh_event table,
	.yuh_event tbody,
	.yuh_event tr,
	.yuh_event th.date,
	.yuh_event td {
		display: block;
		width: 100%;
	}
	.yuh_event table {
		border-left: none;
		border-right: none;
	}
	.yuh_event table thead {
		display: none;
	}
	.yuh_event tr {
		margin-bottom: 1em;
	}
	.yuh_event table tr:last-child {
		margin-bottom: 1em;
	}
	.yuh_event th.date {
		background: #dad8e3;
		padding: 0.5em 0.5em;
	}
	.yuh_event th.date {
		border-bottom: 1px solid #c7c7c7;
	}
	.yuh_event th.date .endday {
		display: inline-block;
		text-align: left;
	}
	.yuh_event td {
		border-right: 1px solid #c7c7c7;
	}
	.yuh_event td.title {
		padding: 0.75em 0.5em 0.25em;
	}
	.yuh_event td.sponsor {
		padding: 0.25em 0.5em 0.75em;
	}

	.abt_rec_list.msg_cmn .ttl_pbg {
		padding: 10px;
	}
/*==================================================
 PAGE CONCEPT 640
====================================================*/
	.con_des_rule.kirei .header,
	.con_des_rule.kirei .header .left,
	.con_des_rule.kirei .header .right {
		display: block;
		width: 100%;
	}
	.con_des_rule.kirei .header h4 {
		font-size: 200%;
	}
	.con_des_rule.kirei .header .left small {
		font-size: 120%;
	}
	.con_des_rule.kirei .box .hdr {
		margin-bottom: 1em;
	}
	.con_des_rule.kirei .box .hdr .txt h5 {
		font-size: 160%;
	}
	.con_des_rule.kirei .box .hdr .txt small {
		font-size: 100%;
	}
	#con_rev_intro .img {
		width: 240px;
	}
	#con_rev_intro .txt {
		padding-right: 1em;
	}
	.con_spw_points {
		flex-wrap: wrap;
	}
	.con_spw_points .box {
		width: 100%;
	}
	.con_spw_points .box.w_ico {
		padding-top: 0;
	}
	.con_spw_points .box.left {
		padding-right: 0;
	}
	.con_spw_points .box.right {
		padding-left: 0;
	}
	.con_spw_points .box.center {
		height: 50px;
		width: 100%;
	}
	.con_spw_points .box p .ico {
		left: 1em;
		top: 0.8em;
		padding: 0.25em 1em;
		line-height: 1.4;
	}
	.con_spw_points .box.w_ico p {
		padding: 0.8em 1em 0.8em 7.5em;
	}
	#con_spw_table tbody td {
		width: 8em;
	}
/*==================================================
 PAGE REVIVE 640
====================================================*/
	#rev_faq_list dl dd:before {
		top: 1.0em;
	}
	#rev_faq_list dl dt {
		padding: 0 0 1em 1.5em;
	}
	#rev_faq_list dl dd {
		padding: 1em 0.5em 0 1.5em;
	}
	.rev_ins_figset {
		margin-bottom: 3em;
	}
/*==================================================
 PAGE CARPENTER 640
====================================================*/
	#cpt_msn_casephoto {
		max-width: 490px;
		margin: 2em auto 0;
		flex-wrap: wrap;
	}
	#cpt_msn_casephoto li {
		width: 49%;
		margin-bottom: 1em;
	}
	#cpt_msn_cases li a {
		flex-wrap: wrap;
	}
	#cpt_msn_cases li a .num,
	#cpt_msn_cases li a .txt {
		width: 100%;
	}
	#cpt_msn_cases li a .num {
		padding: 0 0 0.25em;
		font-size: 88%;
	}
	#popup_close.sp {
		display: block;
	}
	#popup_close.pc {
		display: none;
	}
	#popup_close {
		top: 0;
	}
/*==================================================
 STORY 640
====================================================*/
	#lst_story_archive li {
		padding-bottom: 2.5em;
	}
	#lst_story_archive li a .txt {
		padding: 0.75em 1em 1em;
	}
/*==================================================
 MODELHOUSE 640
====================================================*/
	#mh_content .mh_link a .img {
		padding-top: 20%;
	}
	#mh_content .mh_link a .txt {
		font-size: 150%;
	}
/*==================================================
 CONTACT 640
====================================================*/
	#cotact_telwrap .contact_item > dt {
		width: 180px;
		padding: 0.5em 0;
	}
	#cotact_formwrap dl,
	#cotact_formwrap dl dt,
	#cotact_formwrap dl dd {
		display: block;
		width: 100%;
	}
	#cotact_formwrap dl {
		margin: 0 0 0;
		padding: 1.5em 0;
		border-bottom: 1px solid #cfcfcf;
	}
	#cotact_formwrap dl dt {
		padding-bottom: 10px;
		line-height: 1.6;
	}

	#cotact_formwrap .calendar_time_area dt {
		width: 100%;
	}

	#cotact_formwrap .calendar_time_area {
		display: flex;
		flex-direction: column;
	}

	#cotact_formwrap .calender_time_item {
		width: 100%;
	}

	#cotact_formwrap .calendar_time_area .flexbox{
		padding-right: 0;
	}

}

/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			540px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:540px){
/*==================================================
 HEADER / FOOTER 540
====================================================*/
	#ftr_pickup ul li {
		width: 100%;
	}
	#ftr_pickup ul li:nth-child(2n+1) {
		padding-right: 0;
	}
	#ftr_pickup ul li:nth-child(2n) {
		padding-left: 0;
	}
/*==================================================
 HOME 540
====================================================*/
	#home_modelhouse .fullbnr {
		height: 200px;
	}
	#home_modelhouse .fullbnr .inner {
		flex-wrap: wrap;
	}
	#home_modelhouse .fullbnr .txt {
		width: 100%;
	}
	#home_modelhouse .fullbnr .btn {
		width: 100%;
		text-align: right;
	}
	#home_modelhouse .fullbnr .txt h2 {
		font-size: 175%;
	}
	#home_modelhouse .fullbnr .txt small {
		font-size: 100%;
	}

	.lst_home_works {
		flex-wrap: wrap;
	}
	.lst_home_works > li {
		margin-bottom: 1em;
	}
	.lst_home_works > li:last-child {
		margin-bottom: 0;
	}
	.lst_home_works > li a {
		display: table;
		table-layout: fixed;
		width: 100%;
	}
	.lst_home_works > li a .img,
	.lst_home_works > li a .txt {
		display: table-cell;
		vertical-align: top;
	}
	.lst_home_works > li a .img {
		padding-top: 0;
		width: 150px;
		height: 102px;
	}
	.lst_home_works > li a .txt {
		padding: 0.5em 1em;
	}

/*==================================================
 PAGE COMMON 540
====================================================*/
	.pnav_sub {
		padding: 3em 4px;}
	.pnav_sub li {
		width: 50%;}

    #sdg_info ul {
        max-width: 400px;
        margin: 0 auto;}
    #sdg_info ul li {
        padding: 0 1% 2%;
        width: 33.33%;}
    #sdg_info ul li.blank {
        display: none;}

/*==================================================
 PAGE ABOUT 540
====================================================*/
    .about_sdg_item .inner .img {
        width: 100px;}
    .about_sdg_item .inner .txt {
        width: calc(100% - 100px);
        padding: 0 0 0 1.5em;}

/*==================================================
 PAGE CONCEPT 540
====================================================*/
	.con_des_rule.kirei .header .right {
		margin-top: 0.5em;
	}

	#flowbox {
		max-width: 380px;
		margin: 0 auto;
		padding: 0 15px 0 45px;
	}
	#flowbox:before {
		left: 22px;
	}
	#flowbox:after {
		left: 20px;
	}
	#flowbox ul.left li:after {
		left: -25px;
	}
	#flowbox li .img,
	#flowbox li p {
		width: 100%;
	}
	#flowbox li p {
		padding: 1em 0 0 0;
	}
	#concept.technology .q1box .q1cnt,
	#concept.technology .q1box .q1cnt .txt,
	#concept.technology .q1box .q1cnt .img {
		display: block;
		width: 100%;
	}
	#concept.technology .q1box .q1cnt .txt {
		padding-right: 0;
		padding-bottom: 1em;
	}
	#concept.technology .q1box .q1cnt .img {
		text-align: center;
	}

	#con_rev_intro,
	#con_rev_intro .txt,
	#con_rev_intro .img {
		display: block;
		width: 100%;
	}
	#con_rev_intro .txt {
		padding-right: 0;
	}
	#con_rev_intro .txt p {
		text-align: center;
	}
	#con_rev_intro .img {
		padding-top: 1.5em;
		text-align: center;
	}

	#con_inh_points_box {
		padding-bottom: 2em;
		margin: 3em 0 2em;
	}
	#con_inh_points {
		margin: 0 0 2em;
	}
	#con_inh_points_2 {
		margin: 2em 0 2em;
	}
/*==================================================
 REVIVE 540
====================================================*/
	#rev_ins_fig li br.tb {
		display: block;
	}
/*==================================================
 REPORTS 540
====================================================*/
	.pgc_side,
	.pgc_side_left,
	.pgc_side_right {
		width: 100%;
		display: block;
	}
	.pgc_side_left,
	.pgc_side_right {
		padding: 0 0 2em 0;
	}
	.pgc_side_img {
		text-align: left;
	}
/*==================================================
 WORKS 540
====================================================*/
	#lst_works_archive {
		padding-bottom: 3em;
	}
	#lst_works_archive li {
		width: 100%;
		padding: 0;
	}
	#lst_works_archive li a {
		max-width: none;
	}
	#w_content .w_box_data dl {
		width: 100%;
	}
	#w_content .w_box_data dl:nth-child(2n+1){
		padding-right: 0;
	}
	#w_content .w_box_data dl:nth-child(2n){
		padding-left: 0;
	}
/*==================================================
 MODEL HOUSE 540
====================================================*/
	.mh_process {
		max-width: 460px;
	}
	.mh_process li {
		width: 49%;
	}
	.mh_process li:nth-child(2n):after,
	.mh_process li:last-child:after {
		content: none;
	}
	.mh_process li:nth-child(6n+3):after {
		content: url(../images/modelhouse/ico_arw.png);
	}
/*==================================================
 LINKS 540
====================================================*/
	.links_box dl,
	.links_box dt,
	.links_box dd {
		display: block;
		width: 100%;
	}
	.links_box dl {
		margin-bottom: 1.5em;
		padding-bottom: 1.5em;
		border-bottom: 1px solid #e4e4e4;
	}
	.links_box dl:last-child {
		padding-bottom: 0;
		border-bottom: none;
	}
	.links_box dt {
		padding-bottom: 0.5em;
	}
	.links_box dt a br {
		display: none;
	}
	.links_box h5,
	#links h4 {
		text-align: center;
	}
/*==================================================
 POST 540
====================================================*/
	#post_wrapper {
		margin: 3em auto;
	}
	#lst_post_archive {
    	max-width: 310px;
	}
	#lst_post_archive li a,
	#lst_post_archive li a .img,
	#lst_post_archive li a .txt {
		width: 100%;
		display: block;
	}
	#lst_post_archive li a .txt {
		padding: 1em 0 0 0;
		display: flex;
		flex-wrap: wrap;
	}
	#post_main #lst_post_archive .infocat {
		letter-spacing: 0;
		padding: 0.75em 0.5em;
		width: 100px;
		text-align: center;
		align-self: center;
	}
	#lst_post_archive li a .txt .date {
		line-height: 1.6;
		padding: 0 0 0 10px;
		align-self: center;
		width: calc(100% - 100px);
	}
	#lst_post_archive li a .txt .title {
		padding: 0.5em 0;
		width: 100%;
	}
	#post_aside {
		flex-wrap: wrap;
	}
	#post_aside .side_box_inner {
		padding: 0 0 0 1em;
	}
	#post_aside .side_box h3 {
		margin-bottom: 1em;
	}
	#side_category {
		padding-bottom: 1.5em;
	}
	#side_category ul {
		display: flex;
		flex-wrap: wrap;
	}
	#side_category ul li {
		width: 50%;
	}

	.postnavi ul {
		justify-content: space-around;
		padding: 3em 0.5em;
	}
	.postnavi a,
	.postnavi .inactive {
		min-width: 120px;
	}
/*==================================================
 PRIVACY POLICY 540
====================================================*/
	#pp_contact {
		flex-wrap: wrap;
	}
	#pp_contact li:first-child {
		padding: 0 0 1em 0;
	}
	#pp_contact li:last-child {
		padding: 0 0 0 0;
	}


	#cotact_formwrap .calender_time_item dd {
		flex-direction: column;
	}

	#cotact_formwrap .calender_time_item dd .wpcf7-form-control-wrap {
		width: 100%;
	}
}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			480px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:480px){
/*==================================================
 HEADER / FOOTER 480
====================================================*/
	#phdr_bg {
		height: 210px;
	}

	#hdr_logo {
		padding: 0 80px;
	}
	.lst_cmn_sns{
		width: auto;
	}
	#hdr_logo a {
		padding: 25px 0;
		max-width: 100%;
	}
	#hdr_logo a img {
		max-width: 100%;
		height: auto;
	}
	#btn_nav {
		top: 25px;
	}
	#ftr_main_lower ul {
		flex-wrap: wrap;
	}
	#ftr_main_lower ul li {
		width: auto;
	}

	#hdr_sns{
	}

/*==================================================
 HOME 480
====================================================*/
	#home_mv {
		height: 240px;
	}
	#home_mv .txt .msg {
		font-size: 100%;
	}
	#home_mv .txt .idx .en {
    	font-size: 220%;
	}
	h2.home_basic .en {
		font-size: 175%;
	}
	h2.home_basic .ja {
		padding-top: 0.25em;
	}
	#home_info .main ul li a {
		display: flex;
		flex-wrap: wrap;
	}
	#home_info .main ul li a .cat,
	#home_info .main ul li a .date,
	#home_info .main ul li a .title {
		display: block;
	}
	#home_info .main ul li a .cat,
	#home_info .main ul li a .date {
		opacity: 0.6;
	}
	#home_info .main ul li a .cat {

	}
	#home_info .main ul li a .date {
		width: calc(100% - 8em);
		position: relative;
	}
	#home_info .main ul li a .date:after {
		background: url(../images/common/ico_arw_right_01.png) left center no-repeat;
		content: 'もっと見る';
		padding-left: 10px;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translate3d(0,-50%,0);
		display: inline-block;
		z-index: -1;
	}
	#home_info .main ul li a .title {
		width: 100%;
		padding-top: 0;
		padding-right: 0;
	}
	#home_info .main ul li a .title:after {
		display: none;
		content: none;
	}

	#home_modelhouse .fullbnr {
		height: 180px;
	}
	.home_imtx .txt .inner,
	.home_imtx .img {
		width: 100%;
	}
	.home_imtx .txt {
		padding-top: 180px;
	}
	.home_imtx .img {
		height: 180px;
	}
	.home_imtx .txt .btnarea {
		padding-top: 2em;
		text-align: center;
	}
	.home_idx_ttlarea {
		margin-bottom: 1.5em;
	}
	.home_imtx .txt .inner {
		padding: 1.5em;
	}
/*==================================================
 PAGE COMMON 480
====================================================*/
	.para_space {
		height: 120px;
	}
	#ptitle,
	#story #ptitle h2 {
		height: 120px;
	}
	#ptitle h2 .en {
		font-size: 175%;
	}
	h3.below_nav,
	#mh_header h3 {
		font-size: 170%;
		letter-spacing: 0.13em;
	}
	#lst_mh_archive h3,
	.msg_cmn .idxbox h3.h4idx,
	.msg_cmn h3.idx,
	#w_header h3,
	#story_post .storymeta h3 {
		font-size: 150%;
		letter-spacing: 0.18em;
	}
	#abt_ovw_intro .tagline {
		font-size: 150%;
	}
	.msg_cmn p,
	.msg_cmn .lst_dot li,
	#lst_post_archive li a .txt p,
	#post_output .content p,
	#mh_header .tagline,
	#mh_content p,
	#mh_content dt,
	#mh_content dd,
	#mh_content dd li,
	.tbllst_cmn > dl > dd .address dt,
	.tbllst_cmn > dl > dd .address dd,
	#abt_hall_info .abt_hall_tou li,
	.links_box dt,
	.links_box dd {
		letter-spacing: 0;
	}
	#mh_content .mh_box.kita .mh_more dt a,
	#abt_ovw_intro .signature p,
	.con_des_rule.r5s1m h4,
	.con_des_rule.kirei .box .hdr .txt h5 {
		letter-spacing: 0.13em;
	}

	a.btn_lgbar,
	.btn_plus_l a.btn,
	.btn_plus_1_btn {
		letter-spacing: 0.13em;
		font-size: 120%;
	}

	.tbllst_cmn > dl {
		flex-wrap: wrap;
	}
	.tbllst_cmn > dl > dt,
	.tbllst_cmn > dl > dd {
		width: 100%;
		padding-right: 1em;
		padding-left: 1em;
	}
	.tbllst_cmn > dl > dt {
		padding-bottom: 0;
	}
	.tbllst_cmn > dl > dd {
		padding-top: 0.5em;
	}

	.lst_sq_num_ppl .sq_num_ppl .txt small {
		display: block;
		padding-left: 0;
	}
/*==================================================
 PAGE ABOUT 480
====================================================*/
	#abt_ovw_policy {
		min-width: 240px;
		margin: 0 auto;
		width: 80%;
	}
	#abt_ovw_policy li {
		width: 100%;
	}
	#abt_ovw_policy li:nth-child(2n+1),
	#abt_ovw_policy li:nth-child(2n) {
		padding-right: 0;
		padding-left: 0;
	}
	#abt_ovw_policy li figcaption {
		font-size: 100%;
	}
	.yui-matsuri .page_mv {
		background-image: url(../images/about/yui-matsuri/mv_sp.jpg) !important;
		padding-top: 100%;
	}

	#abt_ovw_cprof_map dl dd ul {
		flex-wrap: wrap;
		padding-bottom: 0;
	}
	#abt_ovw_cprof_map dl dd ul li:first-child {
		padding-right: 0;
		margin-bottom: 2em;
	}
	#abt_ovw_cprof_map dl dd ul li:last-child {
		padding-left: 0;
	}
/*==================================================
 PAGE CONCEPT 480
====================================================*/
	.con_des_rule.kirei .header h4 {
		font-size: 160%;
	}
	.con_des_rule.kirei .header .left small {
		font-size: 100%;
		letter-spacing: 0.1em;
	}
	.con_des_rule.kirei .box .hdr {
		border-bottom: 1px solid #d2d2d2;
		padding-bottom: 1em;
	}
	.con_des_rule.kirei .box .hdr .num {
		width: 40px;
		font-size: 150%;
	}
	.con_des_rule.kirei .box .hdr .txt h5 {
		font-size: 150%;
	}
	.con_des_rule.kirei .box .cnt {
		padding-left: 0;
	}
	.con_des_rule.r5s1m .cnt dl {
		flex-wrap: wrap;
		border-bottom: 1px solid #d2d2d2;
	}
	.con_des_rule.r5s1m .cnt .num {
		width: 50px;
		margin-right: 0.5em;
		font-size: 120%;
	}
	.con_des_rule.r5s1m .cnt .idx {
		width: auto;
		font-size: 120%;
	}
	.con_des_rule.r5s1m .cnt .txt {
		width: 100%;
		padding: 0.5em 0;
		font-size: 100%;
	}

	#concept.design .box_imgs figure {
		width: 100% !important;
    	text-align: center;
	}
	#concept .msg_cmn.msg_obi.first {
		font-size: 125%;
	}
	#con_rev_example dl,
	#con_rev_example dl dt,
	#con_rev_example dl dd {
		display: block;
		width: 100%;
	}
	#con_rev_example dl dt {
		padding-right: 0;
		padding-bottom: 0.5em;
	}
	#con_rev_example dl dd {
		padding-top: 0;
	}

	#con_spw_table,
	#con_spw_table thead,
	#con_spw_table tbody,
	#con_spw_table tfoot,
	#con_spw_table tr,
	#con_spw_table th,
	#con_spw_table td {
		width: 100%;
		display: block;
	}
	#con_spw_table {
		border-left: none;
		border-right: none;
		margin: 2em 0 2em;
	}
	#con_spw_table thead {
		display: none;
	}
	#con_spw_table tfoot {
		background: none;
	}
	#con_spw_table tr {
		border-left: 1px solid #c7c7c7;
		border-right: 1px solid #c7c7c7;
		border-bottom: none;
		margin-bottom: 1.5em;
	}
	#con_spw_table th,
	#con_spw_table td {
		border-bottom: 1px solid #c7c7c7;
	}
	#con_spw_table th {
		background: #dad8e3;
	}
	#con_spw_table tbody td,
	#con_spw_table tfoot td {
		width: 100%;
		padding-left: 12em;
		text-align: right;
		position: relative;
	}
	#con_spw_table td .txt_tbls_th {
		width: 12em;
		display: inline-block;
		position: absolute;
		left: 0.5em;
		text-align: left;
		font-weight: normal;
	}
	#con_spw_table thead th,
	#con_spw_table td {
		border-left: none;
	}


/*==================================================
 REVIVE 480
====================================================*/
	#rev_prn_list {
		padding-bottom: 3em;
	}
	#rev_prn_list li {
		flex-wrap: wrap;
		margin-bottom: 28px;
	}
	#rev_prn_list li:after {
		height: 28px;
		bottom: -28px;
	}
	#rev_prn_list li .ico,
	#rev_prn_list li .txt {
		width: 100%;
	}
	#rev_prn_list li .ico {
		text-align: center;
		padding: 1.5em 1.5em 1em;
	}
	#rev_prn_list li .ico img {
		max-width: 50px;
	}
	#rev_prn_list li .txt {
		padding: 0 1.5em 1.5em;
	}
/*==================================================
 CARPENTER 480
====================================================*/
	#bld_ms_intro .img {
		flex-wrap: wrap;
		justify-content: center;
	}
	#bld_ms_intro .img img.first {
		margin: 0 0 5px 0;
	}

	#bld_ms_intro .img img.last {
		margin: 0 0 0 0;
	}
/*==================================================
 WORKS 480
====================================================*/
	#works .wslide {
		opacity: 1;
	}
	#works #w_gallery .slide_item,
	#works #w_gallery .slick-track {
		height: 62.5%;
	}
	#w_gallery .slide-dots {
		padding: 1em 0;
	}
	#w_gallery .slick-dots li {
		margin: 0px 3px;
	}
	#modelhouse #w_gallery .slick-arrow,
	#w_gallery .slick-arrow {
		padding: 15px 10px 20px;
		max-width: 50px;
	}
	/* SPのとき施工事例のスライド解除 */
	#works #w_gallery .slide_item {
		float: none;
		margin-bottom: 1em;
	}
	#works #w_gallery .wslide .slide_item:last-child {
		margin-bottom: 2em;
	}
	#works #w_gallery .slide-dots {
		display: none;
	}
/*==================================================
 STORY 480
====================================================*/
	.storymeta h3 {
		font-size: 120%;
	}
	.storymeta .vol {
		font-size: 100%;
	}
	#story_post {
		padding: 1.5em;
	}
	#story_post .storymeta {
		margin-bottom: 1.5em;
	}
	#story_post p {
		margin-bottom: 2em;
	}


/*==================================================
 MODEL HOUSE 480
====================================================*/
	#lst_mh_archive li {
		padding-top: 3em;
	}
	#lst_mh_archive li .txt .maintxt,
	#lst_mh_archive li .txt .btnarea {
		width: 100%;
	}
	#lst_mh_archive li .txt .maintxt {
		padding: 0 0 2em 0;
	}
	#lst_mh_archive .place {
		letter-spacing: 0.1em;
		padding-top: 1.5em;
	}
	#lst_mh_archive li .txt .btnarea {
		text-align: center;
	}
	#lst_mh_archive li .txt .btnarea a {
		width: 80%;
	}
	#mh_content .mh_box.kita .mh_more dt a:before,
	#mh_content .mh_box.kita .mh_more dt a:after {
		right: 1em;
	}
/*==================================================
 POST 480
====================================================*/
	#post_wrapper {
		margin: 3em auto;
	}
	#post_output {
		padding-bottom: 3em;
	}
/*==================================================
 CONTACT 480
====================================================*/
	#cotact_telwrap {
		padding: 2.5em 0 3.5em;
	}
	#cotact_telwrap .contact_item,
	#cotact_telwrap .contact_item > dt,
	#cotact_telwrap .contact_item > dd{
		display: block;
		width: 100%;
	}
	#cotact_telwrap .contact_item {
		border: 1px solid #e4e4e4;
		padding: 1.5em;
		margin-bottom: 1em;
	}
	#cotact_telwrap .contact_item > dt {
		padding: 0px 0 0.75em;
	}
	#cotact_telwrap .contact_item > dd dl {
		margin-bottom: 5px;
	}
	#cotact_telwrap .contact_item > dd dt {
		width: 40px;
	}
	#cotact_telwrap .contact_item > dd dt img {
		width: 30px;
	}
	#cotact_telwrap .contact_item > dd dd {
		font-size: 113%;
	}

}
/*||||||||||||||||||||||||||||||||||||||||||||||||||
----------------------------------------------------

			400px

----------------------------------------------------
||||||||||||||||||||||||||||||||||||||||||||||||||||*/
@media screen and (max-width:400px){
/*==================================================
 HOME 400
====================================================*/
	.home_idx_en {
		position: static;
	}
	.home_idx_ttlarea {
		margin-bottom: 1em;
	}
	.home_report ul li {
		width: 100%;
		max-width: none;
		max-width: 300px;
	}
	.lst_home_works > li a,
	.lst_home_works > li a .img,
	.lst_home_works > li a .txt {
		display: block;
		width: 100%;
		max-width: 300px;
		margin: 0 auto;
	}
	.home_report ul li a .img,
	.lst_home_works > li a .img {
		height: auto;
	}
	.home_report ul li a .img img {
		width: 100%;
		max-width: 300px;
	}
	.lst_home_works > li a .img {
		padding-top: 55%;
	}
	#home_works .lst_home_works > li a .img {
		padding-top: 67%;
	}
	.home_report ul li a .txt,
	.lst_home_works > li a .txt {
		padding: 0.5em 0;
	}

/*==================================================
 PAGE COMMON 400
====================================================*/
	#pnav_sub_area {
		padding: 2em 0.5em 4em;
	}
	.pnav_sub {
		background: #dad8e3;
		justify-content: space-between;
		padding: 0.5em;
	}
	.pnav_sub li {
		padding: 0;
		width: 49%;
	}
	.pnav_sub li a {
		text-align: left;
		padding: 0.5em 0.5em;
		background: none;
		font-size: 88%;
	}
	.tnav_sub,
	#story .tnav_sub {
		justify-content: space-between;
		padding: 2em 0.5em;
	}
	.tnav_sub li {
		padding: 0;
		width: 49%;
	}
	.tnav_sub li a {
		padding: 0.5em 0.5em;
		background: none;
		font-size: 88%;
		display: block;
	}
	.tnav_sub li a.current {
		background: #a5a5a5;
		color: #fff;
	}
	.tnav_sub li a:after {
		display: none;
		content: none;
	}

	.sq_num_ppl,
	.sq_num_ppl .num,
	.sq_num_ppl .txt {
		display: block;
		width: 100%;
	}
	.sq_num_ppl,
	#abt_ovw_principle p,
	.abt_ovw_policytxt li .txt {
		font-size: 125%;
	}
	#lst_mh_archive h3,
	.storymeta h3,
	.storymeta .vol,
	#rev_omt_egs .sq_num_ppl,
	.msg_cmn h3.idx,
	.msg_cmn h4.h3idx,
	h3.below_nav,
	.msg_cmn .idxbox h4,
	.msg_cmn .idxbox h3.h4idx,
	#flowbox li h4,
	#abt_ovw_principle p.first,
	.abt_ovw_policytxt li .txt,
	#cotact_telwrap .contact_item > dt {
		letter-spacing: 0.13em;
	}
	#story_post .storymeta h3,
	#lst_report_archive li a .txt .title h3 {
		letter-spacing: 0.07em;
	}
	.msg_cmn h4.h3idx.larger {
		font-size: 134%;
	}

    #sdg_info ul {
        max-width: 300px;}
    #sdg_info ul li {
        padding: 0 2% 4%;
        width: 50%;}
/*==================================================
 CONCEPT 400
====================================================*/
	#abt_mottoes {
		display: block;
		position: relative;
		padding: 0 1em;
	}
	#abt_mottoes .ttl {
		position: absolute;
		right: 1em;
		top: 0;
	}
	#abt_mottoes .cnt {
		width: 100%;
		height: 100%;
	}
	#abt_mottoes ul {
		max-width: none;
		width: 100%;
		justify-content: flex-end;
	}
	#abt_mottoes ul li {
		width: auto;
	}
	#abt_mottoes ul li:first-child {
		padding-right: 8em;
	}

	.msg_cmn.no4_wood figure ul li {
		width: 50%;
	}
	.con_spw_points p br {
		display: none;
	}
	#con_tch_base figure {
		max-width: 322px;
		margin-right: auto;
		margin-left: auto;
	}
	#con_tch_base figure ul li {
		width: 100%;
		text-align: center;
	}
	#con_tch_base figure ul li:nth-child(2n+1){
		padding-right: 0;
		margin-bottom: 4px;
	}
	#con_tch_base figure ul li:nth-child(2n){
		padding-left: 0;
	}
/*==================================================
 REVIVE 400
====================================================*/
	.msg_cmn figure .fig_col_2 li {
		width: 100%;
		padding-bottom: 5px;
	}
	.msg_cmn figure .fig_col_2 li:nth-child(2n+1) {
		padding-right: 0;
	}
	.msg_cmn figure .fig_col_2 li:nth-child(2n) {
		padding-left: 0;
	}
	.msg_cmn figure .fig_col_2 li:last-child {
		padding-bottom: 0;
	}
	.rev_ins_figset figure {
		max-width: 325px;
		margin-right: auto;
		margin-left: auto;
	}
	#rev_ins_fig li {
		font-size: 120%;
		height: 80px;
		width: 23%;
	}
	#rev_ins_fig li:after {
		transform: scale3d(0.75,0.75,0.75);
	}
/*==================================================
 CARPENTER 400
====================================================*/
	#cpt_msn_episodes .box .txt {
		padding: 1.5em 1.5em 0 1.5em;
	}
	#cpt_msn_episodes .box .img {
		padding: 1.5em 1.5em 1.75em;
	}
	#cpt_msn_casephoto {
		max-width: 240px;
	}
	#cpt_msn_casephoto li {
		width: 100%;
	}
/*==================================================
 STORY 400
====================================================*/
	#story #ptitle:after {
		height: 120px;
	}
	#story .tnav_sub a,
	#story .tnav_sub a:hover {
		color: #666666;
	}
	#story .tnav_sub li a.current {
		color: #fff;
	}
	#story_post p {
		letter-spacing: 0.04em;
	}
	#storymain .p_cmn_nopost {
		color: inherit;
	}
/*==================================================
 MODEL HOUSE 400
====================================================*/
	.mh_process {
		max-width: 230px;
	}
	.mh_process li {
		width: 100%;
	}
	.mh_process li:last-child {
		padding-bottom: 0;
	}
	.mh_process li:after {
		right: 50%;
		margin-right: -23px;
		bottom: -23px;
		transform: rotate3d(0,0,1,90deg);
	}
	.mh_process li:nth-child(2n):after {
		content: url(../images/modelhouse/ico_arw.png);
	}
	.mh_process li:last-child:after {
		content: none;
	}
/*==================================================
 POST 400
====================================================*/
	.postnavi a,
	.postnavi .inactive {
		min-width: 96px;
	}
/*==================================================
 ABOUT 400
====================================================*/
    #lst_sdg_icons li {
        width: 33.33%;}
    .about_sdg_item .inner {
        position: relative;
        padding: 120px 0 0;}
    .about_sdg_item .inner .img {
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        text-align: center;}
    #about .msg_cmn figure img,
	#about .msg_cmn img {
        max-width: 100px;}
    .about_sdg_item .inner .txt {
        width: 100%;
        padding: 0;}
    .about_sdg_item .inner .txt .idx {
        padding: 0 0 0.75em;
        text-align: center;}
    .about_sdg_item .inner .txt .btnarea {
        justify-content: center;}

	#about .msg_cmn .br_sp_none {
		display: none;
	}

}



/* 2022/3/18追加 */
.recruit .page_mv{
	display: none;
}

/*==================================================
RECRUIT
====================================================*/
.recruit #home_concept{
	margin-bottom: 20px;
}
.recruit .home_imtx{
	background-color: unset;
}
.recruit #home_concept .img {
	background: url(../images/about/recruit/img_concept.jpg) center center / cover no-repeat;
}
.recruit #home_revive .img {
    background: url(../images/about/recruit/img_revive.jpg) center center / cover no-repeat;
}
.recruit .event{
	max-width: 813px;
	margin: 50px auto 66px;
	padding: 43px 60px 68px;
}

.recruit .event h3{
	text-align: center;
	font-size: 25px;
	margin-bottom: 46px;
}
.recruit .event p{
	line-height: 1.6;
	margin-bottom: 32px;
}
.recruit .event img{
	width: 100%;
	height: auto;
}

.recruit .abt_rec_list dl dd {
	text-align: justify;
	display: flex;
}

.recruit .subtitle{
	font-size: 20px;
	margin-bottom: 14px;
}

.recruit .recitem a{
	word-wrap: break-word;
	width: inherit;
}

.recruit .home_imtx.right .txt:after{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: white;
	right: -100%;
}
.recruit .home_imtx.left .txt:after{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: white;
	left: -100%;
}

@media screen and (max-width:640px){
	.recruit .home_imtx .img{
		width: 100%;
	}
	.recruit .home_imtx .txt .inner{
		width: 100%;
	}
	.recruit .home_imtx .txt {
    padding-top: 190px;
	}
	.recruit .home_imtx.right .txt{
		height: unset;
	}
	.recruit .home_imtx.left .txt{
		height: unset;
	}
}
@media screen and (max-width:480px){
	.recruit .home_imtx .txt {
    padding-top: 130px;
	}
	.recruit .event {
    padding: 33px 30px 33px;
	}
}
@media screen and (max-width:400px){
	.recruit .recitem img {
		max-width: 100% !important;
	}
}

h3.idx.table_title{
	font-size: 22px;
}
@media screen and (max-width:480px){
	h3.idx.table_title{
		font-size: 18px;
	}
}

.accordion{
	max-width: 710px;
	margin: 0 auto 85px;
	padding-right: 15px;
	padding-left: 15px;
}
.accordion .title{
	position: relative;
	padding: 45px 0;
	border-top: 2px solid #b6b6b6;
	border-bottom: 2px solid #b6b6b6;
}
.accordion .title .mark{
	position: absolute;
	width: 26px;
	height: 26px;
	background-color: #6B5F9F;
	border-radius: 50%;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}
.accordion .title .mark .line{
	position: absolute;
	width: 10px;
	height: 1px;
	background-color: white;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	transition: 0.2s;
}
.accordion .title .mark .line:first-child{

}
.accordion .title .mark .line:last-child{
	transform: rotate(90deg);
}
.accordion.open .title .mark .line:last-child{
	transform: unset;
}
.accordion .title p{
	font-family: 'Noto Serif Japanese', YuMincho, "Hiragino Mincho ProN", serif;
	font-weight: 600;
	/* font-size: 25px; */
	line-height: 1.5;
	letter-spacing: 0.26em;
	font-size: 167%;
}
.accordion .contents{
	display: none;
}
.accordion.open .contents{
	display: block;
}
.accordion .contents .block_year{
	position: relative;
	padding: 50px 0 25px;
	border-bottom: 1px solid #CCCCCC;
}
.accordion .contents .block_year:before{
	position: absolute;
	content: '';
	width: 1px;
	height: 100%;
	background-color: #CCCCCC;
	top: 0;
	left: 150px;
}
.accordion .contents .block_year .year{
	position: absolute;
	top: 15px;
}
.accordion .contents .block_year .year span{
	font-size: 15px;
	font-weight: bold;
	color: #6C609F;
}
.accordion .contents .block_year .line{
	display: flex;
	align-items: baseline;
	margin-bottom: 20px;
}
.accordion .contents .block_year .line:last-child{
	margin-bottom: unset;
}
.accordion .contents .block_year .line .label{
	width: 150px;
}
.accordion .contents .block_year .line .label p{
	font-size: 15px;
	color: #6C609F;
}
.accordion .contents .block_year .line .detail{
	width: calc(100% - 150px);
	padding-left: 40px;
}
.accordion .contents .block_year .line .detail p{
	font-size: 15px;
	line-height: 1.9;
}
.accordion .contents .block_year .line .detail .outer{
	position: relative;
	display: inline;
}
.accordion .contents .block_year .line .detail .outer:after{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-style: normal;
	content: '\f0c1';
	padding: 0 0.2em;
}
.accordion .contents .note{
	font-size: 15px;
	font-weight: 600;
	margin-top: 60px;
}

@media screen and (max-width:640px){
	.accordion{
	}
	.accordion .title{
	}
	.accordion .title .mark{
	}
	.accordion .title .mark .line{
	}
	.accordion .title .mark .line:first-child{
	}
	.accordion .title .mark .line:last-child{
	}
	.accordion.open .title .mark .line:last-child{
	}
	.accordion .title p{
	}
	.accordion .contents{
	}
	.accordion.open .contents{
	}
	.accordion .contents .block_year{
	}
	.accordion .contents .block_year:before{
		display: none;
	}
	.accordion .contents .block_year .year{
	}
	.accordion .contents .block_year .year span{
	}
	.accordion .contents .block_year .line{
		flex-direction: column;
	}
	.accordion .contents .block_year .line:last-child{
	}
	.accordion .contents .block_year .line .label{
		width: 100%;
		margin-bottom: 20px;
	}
	.accordion .contents .block_year .line .label p{
	}
	.accordion .contents .block_year .line .detail{
		width: 100%;
		padding-left: unset;
	}
	.accordion .contents .block_year .line .detail p{
	}
	.accordion .contents .block_year .line .detail .outer{
	}
	.accordion .contents .block_year .line .detail .outer:after{
	}
	.accordion .contents .note{
	}
}


