@charset "utf-8";

@media print, screen and (min-width: 481px) {

body, table, th, td, h1, h2, h3, h4, h5, h6 {
	font-size: 14px;
	line-height: 180%;
	/*font-family: "SourceHanSans-Normal", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "KozGoStd-Light", "KozGoStd-Regular", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;*/
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "KozGoStd-Light", "KozGoStd-Regular", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
	font-weight: normal;
}

* {
	margin: 0;
	padding: 0;
}

img {
	border: none;
}

ol {
	margin-left: 2.0em;
	*margin-left: 2.5em;
}

ul {
	margin-left: 1.2em;
}

html {
	height: 100%;
}

html.scroll-prevent {
	position: fixed;
	z-index: -1;
	width: 100%;
	height: 100%;
	overflow-y: scroll;
}

body {
	height: 100%;
	background: #ffffff;
	color: #707070;
	-webkit-text-size-adjust: 100%;
}

a {
	-webkit-transition: all 0.4s;
	transition: all 0.4s;
}
a:link,
a:visited {
	color: #0f8c94;
	text-decoration: underline;
}
a:hover,
a:active {
	color: #0f8c94;
	text-decoration: underline;
}








/* basic style ------------------------------ */
.hover {
	display: inline-block;
	cursor: pointer;
}
.alpha {
	/* ----- */
}

/* clerfix ----- */
.clearfix {
	zoom: 1;
}
.clearfix:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
/* ----- clerfix */

.j-hr {
	margin: 32px 0px !important;
}
div.hr {
	border-bottom-style: solid !important;
	border-bottom-width: 1px !important;
	border-color: #cccccc !important;
	height: 1px !important;
	margin: 0px !important;
}

.pcNone {
	display: none;
}

.fL {
	float: left;
}
.fR {
	float: right;
}

.alnC {
	text-align: center !important;
}
.alnL {
	text-align: left !important;
}
.alnR {
	text-align: right !important;
}

.mb4 {
	margin-bottom: 4px !important;
}
.mb8 {
	margin-bottom: 8px !important;
}
.mb12 {
	margin-bottom: 12px !important;
}
.mb16 {
	margin-bottom: 16px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb24 {
	margin-bottom: 24px !important;
}
.mb32 {
	margin-bottom: 32px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb48 {
	margin-bottom: 48px !important;
}
.mb56 {
	margin-bottom: 56px !important;
}
.mb64 {
	margin-bottom: 64px !important;
}

.ancPoint {
	margin-top: -96px;
	padding-top: 96px;
}


.link01 {
	display: inline-block;
	padding-right: 10px;
	padding-bottom: 5px;
	font-size: 10px;
	line-height: 105%;
	color: #000000 !important;
	text-decoration: none !important;
	font-family: 'Novecentosanswide';
	border-bottom: 1px solid #000000;
}
.link01:before {
	display: inline-block;
	content: " ";
	width: 6px;
	height: 6px;
	background: url(../img/ic_splite_01.png) no-repeat 0px 0px;
	vertical-align: middle;
	margin-right: 5px;
	margin-top: -2px;
}


.link02 {
	display: inline-block;
	padding-right: 12px;
	padding-bottom: 8px;
	font-size: 11px;
	line-height: 105%;
	color: #000000 !important;
	text-decoration: none !important;
	font-family: 'Novecentosanswide';
	border-bottom: 1px solid #000000;
}
.link02:before {
	display: inline-block;
	content: " ";
	width: 6px;
	height: 6px;
	background: url(../img/ic_splite_01.png) no-repeat 0px 0px;
	vertical-align: middle;
	margin-right: 12px;
	margin-top: -2px;
}

.link02[target='_blank'] {
	display: inline-block;
	padding-right: 8px;
	padding-bottom: 8px;
	font-size: 11px;
	line-height: 105%;
	color: #000000 !important;
	text-decoration: none !important;
	font-family: 'Novecentosanswide';
	border-bottom: 1px solid #000000;
}
.link02[target='_blank']:before {
	display: inline-block;
	content: " ";
	width: 10px;
	height: 10px;
	background: url(../img/ic_blank.svg) no-repeat 0px 0px;
	vertical-align: middle;
	margin-right: 8px;
	margin-top: 0px;
}

.mail01 {
	display: inline-block;
}
.mail01:before {
	display: inline-block;
	content: " ";
	width: 12px;
	height: 8px;
	background: url(../img/ic_splite_01.png) no-repeat 0px -200px;
	vertical-align: middle;
	margin-right: 4px;
}


.mail02 {
	display: inline-block;
	padding-right: 12px;
	padding-bottom: 8px;
	font-size: 100%;
	line-height: 105%;
	color: #000000 !important;
	text-decoration: none !important;
	border-bottom: 1px solid #000000;
}
.mail02:before {
	display: inline-block;
	content: " ";
	width: 6px;
	height: 6px;
	background: url(../img/ic_splite_01.png) no-repeat 0px 0px;
	vertical-align: middle;
	margin-right: 12px;
	margin-top: -2px;
}



.disc01 {
	display: inline-block;
}
.disc01:before {
	display: inline-block;
	content: " ";
	width: 14px;
	height: 14px;
	background: url(../img/ic_splite_01.png) no-repeat 0px -100px;
	vertical-align: middle;
	margin-right: 2px;
	margin-top: -1px;
}






/* wrapper -------------------------------------------------- */
#wrapper {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	min-width: 1100px;
	min-height: 100%;
	position: relative;
	left: 0px;
	top: 0px;
	/*padding-bottom: 360px;*/
}






/* smartphone slide navigation -------------------------------------------------- */
#spWrapProtect {
	display: none;
}
#spGnav {
	display: none;
}






/* header -------------------------------------------------- */
#head {
	-webkit-backface-visibility: visible;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	min-width: 1100px;
	padding: 0px 20px;
	position: fixed;
	left: 0px;
	top: 0px;
	background-color: #ffffff;
	border-top: 3px solid #000000;
	/*border-bottom-color: rgba(0,0,0,0.75);*/
	box-shadow: 0px 2px 8px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0px 2px 8px rgba(0,0,0,0.2);
	z-index: 10000;
	overflow: visible;
}
#head:after { /* for IE8 */
	display: none;
	display: block\9; /* for IE8 */
	content: " ";
	width: 100%;
	height: 2px;
	overflow: hidden;
	position: absolute;
	left: 0px;
	bottom: -2px;
	background-color: #999999;
	z-index: 10;
}
body.home #head {
	height: 0px;
	border-top-width: 0px;
	overflow: hidden;
	-webkit-transition: height 0.6s;
	transition: height 0.6s;
}
body.home #head.open {
	/*height: 96px;*/
	height: 81px;
	border-top-width: 3px;
	overflow: hidden;
}

#headCatch {
	margin: 0px -20px;
	padding-top: 0px;
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 5px;
	text-align: left;
	background: #000000;
	color: #cccccc;
}
#headCatchInner {
	/*width: 1080px;*/
	margin: 0px auto;
	font-size: 10px;
	line-height: 100%;
}
#headCatchInner strong {
	font-weight: normal;
	font-style: normal;
}

body.android2 #head {
	position: absolute;
}

#headInner {
	margin: 0px auto;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 1;
	zoom: 1;
}
#headInner:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

#headLogo {
	width: 210px;
	height: 32px;
	overflow: hidden;
	float: left;
	margin-top: 20px;
	padding: 0px;
	font-size: 0.1em;
	line-height: 0.1em;
}
#headLogo a {
	display: block;
}
#headLogo img {
	width: 100%;
	height: auto;
}

#headFacebook {
	display: none;
}

#headText {
	float: left;
	padding: 32px 0px 0px 20px;
	font-size: 12px;
	line-height: 105%;
	color: #707070;
}

#lnavBg {
	background: #191919;
	width: 100%;
	padding: 0px 20px;
	height: 0px;
	z-index: 0;
	margin: 0px -20px;
}

#gnav {
	margin: 0px;
	padding: 0px;
	float: right;
	overflow: visible;
}
#gnavSpTrigger {
	display: none;
}
#gnav > ul {
	/*width: 650px;*/
	/*width: 660px;*/
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	border-right: 1px solid #ebebeb;
	height: 78px;
	overflow: visible;
	zoom: 1;
	display: flex;
}
#gnav > ul:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#gnav ul > li {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	margin: 0px;
	padding: 0px;
	border-left: 1px solid #ebebeb;
	width: 120px;
	height: 100%;
	overflow: visible;
	position: relative;
	left: 0px;
	top: 0px;
}
#gnav ul > li > a {
	-webkit-backface-visibility: hidden;
	display: table-cell;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	vertical-align: middle;
	text-align: center;
	font-family: 'Novecentosanswide';
	font-size: 12px;
	line-height: 100%;
	color: #000000 !important;
	text-decoration: none !important;
}
#gnav ul > li > a:link,
#gnav ul > li > a:visited {
	background: #ffffff;
}
#gnav ul > li > a:hover,
#gnav ul > li > a:active {
	background: #f7f7f7;
}

#gnav ul > li > a.current {
	background: #f7f7f7 !important;
}

body.project #gnav ul > li.project > a {
	background: #f7f7f7 !important;
}

body.about #gnav ul > li.about > a {
	background: #f7f7f7 !important;
}

body.access #gnav ul > li.access > a {
	background: #f7f7f7 !important;
}

body.faq #gnav ul > li.faq > a {
	background: #f7f7f7 !important;
}

body.contact #gnav ul > li.contact > a {
	background: #f7f7f7 !important;
}

#gnav ul > li .lnavTrigger {
	display: none !important;
}

#gnav ul > li .lnavTrigger {
	text-align: center;
	position: absolute;
	left: 0px;
	bottom: 0px;
	width: 100%;
	text-align: center;
}
#gnav ul > li .lnavTrigger > span {
	display: inline-block;
	width: 70%;
	font-size: 10px;
	line-height: 100%;
	color: #ebebeb;
	border-top: 1px solid #ebebeb;
	padding: 5px 5px 3px 5px;
	cursor: pointer;
}
#gnav ul > li .lnavTrigger > span:before {
	content: "▼";
}
#gnav ul > li .lnavTrigger:hover > span {
	color: #0f8c94;
}
#gnav ul > li .lnavTrigger.active > span {
	color: #0f8c94;
}
#gnav ul > li .lnavTrigger.active > span:before {
	content: "×";
}

#gnav ul > li.facebook {
	width: 60px;
	overflow: hidden;
	text-align: center;
}
#gnav ul > li.facebook > a {
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background-image: url(../img/ic_facebook.svg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 30px;
}

#gnav ul > li .inner {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	min-width: 1060px !important;
	/*height: 80px !important;*/
	height: 50px !important;
	padding-top: 20px;
	position: absolute;
	/*left: -610px;*/
	/*left: -510px;*/
	left: -600px;
	/*bottom: -80px;*/
	bottom: -50px;
	color: #ffffff;
	display: none;
	zoom: 1;
}
#gnav ul > li .inner:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

#gnav ul > li .lnav {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	color: #ffffff;
	display: table;
	float: left;
	max-width: 1100px;
}
#gnav ul > li .lnav dl {
	margin: 0px;
	padding: 0px;
	display: table-row;
}
#gnav ul > li .lnav dt,
#gnav ul > li .lnav dd {
	margin: 0px;
	padding: 0px 0px 16px 0px;
	display: table-cell;
}
#gnav ul > li .lnav dt {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	min-width: 76px;
	font-family: 'Novecentosanswide';
	font-weight: 600;
	font-size: 11px;
	line-height: 105%;
	text-align: right;
	padding-right: 8px;
}
#gnav ul > li .lnav dd {
	font-size: 11px;
	line-height: 105%;
	padding-left: 30px;
	text-align: left;
}
#gnav ul > li .lnav dd input {
	display: inline-block;
	vertical-align: top;
	line-height: 100%;
	margin-top: -1px;
	margin-bottom: 0px;
}

.headSerchSubmit {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 180px;
	/*height: 50px;*/
	height: 30px;
	padding-left: 22px;
	padding-right: 20px;
	/*padding-top: 14px;*/
	padding-top: 4px;
	border-left: 1px dotted #757575;
	float: right;
	font-size: 12px;
	line-height: 105%;
	margin-top: -10px;
}
.headSerchSubmit a {
	display: block;
	text-align: center;
	color: #ffffff !important;
	text-decoration: none !important;
	border-bottom: 1px solid #ffffff;
	padding-bottom: 6px;
}
.headSerchSubmit a:before {
	display: inline-block;
	content: " ";
	width: 13px;
	height: 14px;
	background: url(../img/h_ic_search.png) no-repeat 0px 0px;
	margin-right: 5px;
	vertical-align: middle;
}






/* footer -------------------------------------------------- */
#foot {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	min-width: 1100px;
	min-height: 140px;
	padding: 0px 20px;
	/*position: absolute;
	left: 0px;
	bottom: 0px;*/
	position: relative;
	left: 0;
	top: 0;
	z-index: 100;
	background: #000000;
	color: #ffffff;
	padding-top: 65px;
	padding-bottom: 65px;
}
#footInner {
	margin: 0px auto;
	position: relative;
	left: 0px;
	top: 0px;
	zoom: 1;
}
#footInner:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

#foot #copyright {
	font-family: 'Novecentosanswide';
	font-size: 10px;
	line-height: 100%;
	font-weight: normal;
	font-style: normal;
	position: absolute;
	left: 0px;
	bottom: 8px;
}

#foot a:link,
#foot a:visited {
	color: #ffffff;
	text-decoration: none;
}
#foot a:hover,
#foot a:active {
	color: #ffffff;
	text-decoration: underline;
}

#footLogo {
	width: 210px;
	height: 32px;
	margin-bottom: 12px;
}
#footLogo a {
	display: block;
}
#footLogo img {
	width: 100%;
	height: 100%;
}

#foot #footAddress {
	font-size: 11px;
	line-height: 160%;
}

#foot .mail01:before {
	background: url(../img/f_ic_splite.png) no-repeat 0px 0px;
}

#footToPagetop {
	width: 86px;
	height: 131px;
	position: fixed;
	left: auto !important;
	right: -5px;
	bottom: 80px;
	z-index: 10;
	-webkit-transition: all 0.6s;
	transition: all 0.6s;
}
#footToPagetop.hide {
	right: -300px;
}
#footToPagetop a {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background: url(../img/f_topagetop.png) no-repeat 0px 0px;
}

#footAccess {
	width: 275px;
	overflow: hidden;
	float: left;
	margin-right: 80px;
	padding-bottom: 16px;
}

#footContact {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 220px;
	list-style-type: none;
	margin: 0px 40px 0px 0px;
	padding: 16px 20px;
	border: 1px solid #464646;
	font-size: 11px;
	line-height: 145%;
	float: right;
	text-align: center;
}
#footContact dt,
#footContact dd {
	display: block;
	margin: 0px;
	padding: 0px;
}
#footContact dt {
	font-family: 'Noto Sans JP';
	font-weight: 500;
}
#footContact dd {
	text-align: center;
	margin-top: 12px;
}
#footContact dd .summary {
	font-size: 10px;
	line-height: 115%;
	font-weight: normal;
}

#footContact dd .tel {
	display: inline-block;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	line-height: 145%;
	color: #ffffff;
}
#footContact dd .tel:before {
	display: inline-block;
	content: " ";
	width: 15px;
	height: 15px;
	background: url(../img/f_ic_splite.png) no-repeat 0px -200px;
	vertical-align: middle;
	margin-right: 4px;
}

#footContact dd a.mail02 {
	color: #ffffff !important;
	text-decoration: none !important;
	border-bottom-color: #ffffff;
}
#footContact dd .mail02:before {
	width: 15px;
	height: 10px;
	background: url(../img/f_ic_splite.png) no-repeat 0px -100px;
}

#footNav {
	width: 400px;
	overflow: hidden;
	float: left;
	zoom: 1;
}
#footNav:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#footNav > ul {
	width: 100%;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	font-size: 12px;
	line-height: 160%;
}
#footNav > ul > li {
	margin: 0px;
	padding: 0px;
	font-family: 'Novecentosanswide';
	font-weight: 500;
	float: right;
	width: 120px;
	margin-bottom: 8px;
}
#footNav > ul > li:nth-last-child(1) {
	margin-bottom: 0px;
}
#footNav > ul > li.project {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	float: left;
	width: 280px;
	min-height: 190px;
	padding-right: 40px;
	margin-bottom: 0px;
	zoom: 1;
}
#footNav > ul > li.project:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#footNav > ul > li.project > ul {
	list-style-type: none;
	margin: 0px;
	padding: 6px 0px 0px 0px;
}
#footNav > ul > li.project > ul > li {
	list-style-type: none;
	margin: 0px 0px 2px 0px;
	padding: 0px;
}

#foot #footNav > ul > li > ul a:link,
#foot #footNav > ul > li > ul a:visited {
	color: #bababa;
	text-decoration: none;
}
#foot #footNav > ul > li > ul a:hover,
#foot #footNav > ul > li > ul a:active {
	color: #bababa;
	text-decoration: underline;
}

#bottomBox01 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	background: #454545;
	color: #ffffff;
	width: 100%;
	padding: 16px 20px 20px 20px;
	text-align: center;
}
#bottomBox01 a:link,
#bottomBox01 a:visited {
	color: #ffffff;
	text-decoration: none;
}
#bottomBox01 a:hover,
#bottomBox01 a:active {
	color: #ffffff;
	text-decoration: underline;
}
#bottomBox01 .heading {
	display: inline-block;
	font-size: 11px;
	line-height: 105%;
	text-align: center;
	vertical-align: top;
	padding: 0px 12px 6px;
	margin-bottom: 6px;
	border-bottom: 1px solid #757575;
}
#serviceLinks {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	text-align: center;
	font-size: 11px;
	line-height: 105%;
}
#serviceLinks > li {
	display: inline-block;
	margin: 0px;
	padding: 0px;
}
#serviceLinks > li:before {
	content: "|";
	display: inline-block;
	margin: 0px 1.2em;
	color: #999999;
}
#serviceLinks > li:nth-child(1):before {
	display: none;
}

#bottomBox02 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	background: #292929;
	color: #999999;
	width: 100%;
	padding: 16px 20px 6px 20px;
	text-align: center;
}
#bottomBox02 a:link,
#bottomBox02 a:visited {
	color: #999999;
	text-decoration: none;
}
#bottomBox02 a:hover,
#bottomBox02 a:active {
	color: #999999;
	text-decoration: underline;
}
#bottomBox02 .heading {
	display: inline-block;
	font-size: 11px;
	line-height: 105%;
	text-align: center;
	vertical-align: top;
	padding: 0px 12px 6px;
	margin-bottom: 6px;
	border-bottom: 1px solid #757575;
}
#templeLinks {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	text-align: center;
	font-size: 10px;
	line-height: 105%;
}
#templeLinks > li {
	display: inline-block;
	margin: 0px 1.0em 1.6em;
	padding: 0px;
}






/* container -------------------------------------------------- */
#container {
	background: #ffffff;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	min-width: 1100px;
	padding: 96px 20px 96px 20px;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 10;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	overflow: hidden;
}

#contents {
	width: 1060px;
	margin: 0px auto;
	padding-bottom: 1px;
	overflow: hidden;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 1;
	zoom: 1;
}
#contents:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

#container .heading {
	color: #000000;
	font-family: 'Novecentosanswide';
	font-weight: 300;
	letter-spacing: 0.05em;
	font-size: 46px;
	line-height: 100%;
	text-align: center;
	padding-top: 64px;
	padding-bottom: 50px;
}
#container .heading .subText {
	display: block;
	font-size: 16px;
	line-height: 105%;
	padding-top: 20px;
	color: #707070;
}

#container .l-heading {
	color: #000000;
	font-family: 'Novecentosanswide';
	font-weight: 400;
	font-size: 28px;
	line-height: 115%;
	text-align: center;
	padding-bottom: 40px;
}

#container .m-heading {
	color: #000000;
	font-family: 'Novecentosanswide';
	font-weight: 300;
	font-size: 24px;
	line-height: 115%;
	text-align: center;
	padding-bottom: 40px;
}

#container .s-heading {
	color: #000000;
	font-family: 'Novecentosanswide';
	font-weight: 300;
	font-size: 16px;
	line-height: 115%;
	text-align: left;
	padding-bottom: 8px;
}

#contentsLoader {
	background: url(../img/loading2.gif) no-repeat 0px 0px;
	width: 40px;
	height: 40px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	position: absolute;
	left: 50%;
	top: 0px;
	z-index: 30000;
	margin-left: -20px;
}

.to-ext-site {
	text-align: center;
	padding-top: 40px;
}
.to-ext-site > a {
	display: inline-block;
	border: 1px solid #ababab;
	border-radius: 15px;
	padding: 15px 70px 15px 40px;
	background-image: url("../img/link_arrow.png");
	background-repeat: no-repeat;
	background-position: calc(100% - 20px) 50%;
	background-size: 12px;
	color:  #454545 !important;
	text-decoration: none !important;
	font-size: 12px;
	line-height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.to-ext-site > a img {
	vertical-align: middle;
	margin-left: 15px;
}






/* wordpress post -------------------------------------------------- */
#commonDetailOuter {
	display: flex;
	width: 1000px;
	/*margin: 0px auto 80px auto;*/
	margin: 0px auto 0px auto;
}

#commonDetailOuter .mainColumn,
#commonDetailOuter .sideColumn {
	display: block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#commonDetailOuter .mainColumn {
	width: 780px;
	overflow: hidden;
	padding-right: 120px;
	vertical-align: top;
}

#commonDetailOuter .sideColumn {
	width: 220px;
	overflow: hidden;
	padding-left: 30px;
	vertical-align: top;
	border-left: 1px solid #000000;
}


.commonSec {
	width: 800px;
	margin: 0px auto 0px auto;
	/*padding-bottom: 48px;*/
}
.commonBody {
	padding-top: 16px;
	/*margin: 0px auto 48px auto;*/
	margin: 0px auto 0px auto;
}
#container .commonBody .l-heading {
	text-align: left;
}
#container .commonBody .m-heading {
	text-align: left;
	font-family: 'Noto Sans JP';
	padding-bottom: 16px;
}
.commonBody > p {
	margin-bottom: 1.6em;
}

#projectDetailOuter .more {
	text-align: center;
	margin-top: 2.4em;
}
#projectDetailOuter .more a {
	font-size: 116%;
}

.postTitle {
	font-family: 'Noto Sans JP';
	font-weight: 200;
	/*font-size: 52px;*/
	font-size: 32px;
	line-height: 135%;
	color: #0f8c94;
	/*margin-bottom: 8px;*/
	margin-bottom: 24px;
}

.postDate {
	text-align: right;
	font-size: 12px;
	line-height: 105%;
	color: #999999;
	margin-bottom: 24px;
}

.postBody {
	word-wrap: break-word;
	word-break: break-all;
	zoom: 1;
}
.postBody:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.postBody > p,
.postBody > div,
.postSec > p,
.postSec > div {
	line-height: 200%;
	margin-bottom: 1.2em;
}
.postBody img,
.postSec img {
	max-width: 100%;
	height: auto;
}

.sideMore {
	font-size: 12px;
	line-height: 145%;
	margin-bottom: 24px;
}
.sideMore a:link,
.sideMore a:visited {
	color: #707070;
	text-decoration: none;
}
.sideMore a:hover,
.sideMore a:active {
	color: #0f8c94;
	text-decoration: underline;
}

.sideNav01 {
	list-style-type: none;
	margin: -24px 0px 24px 0px;
	padding: 0px;
}
.sideNav01 li {
	display: block;
	margin: 0px;
	padding: 24px 0px 24px 0px;
	border-bottom: 1px solid #ebebeb;
	font-size: 12px;
	line-height: 145%;
}
.sideNav01 li a:link,
.sideNav01 li a:visited {
	color: #707070;
	text-decoration: none;
}
.sideNav01 li a:hover,
.sideNav01 li a:active {
	color: #0f8c94;
	text-decoration: underline;
}
.sideNav01 li .date {
	color: #999999;
}
.sideNav01 li .text {
	padding-top: 4px;
}


.pager {
	clear: both;
	color: #707070;
	padding-top: 24px;
	border-top: 1px solid #ebebeb;
	margin-top: 40px;
	font-size: 12px;
	line-height: 135%;
}
.pager ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	text-align: center;
	zoom: 1;
}
.pager ul:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.pager a:link,
.pager a:visited {
	color: #707070;
	text-decoration: none;
}
.pager a:hover,
.pager a:active {
	color: #0f8c94;
	text-decoration: underline;
}
.pager span {
	opacity: 0.5;
}
.pager span.current {
	opacity: 1.0;
	font-weight: bold;
	color: #000000;
}
.pager ul li.prev {
	margin: 0px;
	padding: 0px;
	float: left;
}
.pager ul li.next {
	margin: 0px;
	padding: 0px;
	float: right;
}
.pager ul li.list,
.pager ul li.number {
	text-align: center;
}
.pager ul li.number {
	font-size: 14px;
	line-height: 105%;
}
.pager ul li.number a,
.pager ul li.number span {
	display: inline-block;
	/display: inline; /* for IE6&7 */
	zoom: 1;
	margin: 0px 10px;
}

.attachment {
	text-align: center;
	padding: 40px 0px;
}
.attachment img {
	max-width: 100%;
	height: auto;
}

/*iframe.wp-embedded-content {
 max-width: 500px;
	max-height: 282px;
}*/






/* home -------------------------------------------------- */
body.home #container {
	padding-top: 1px;
	box-shadow: 0px -5px 8px rgba(0,0,0,0.5);
	-webkit-box-shadow: 0px -5px 8px rgba(0,0,0,0.5);
}

body.home #projectSec,
body.home #machiteraSec,
body.home #trkgSec,
body.home #aboutSec,
body.home #accessSec {
	border-top: 2px solid #ebebeb;
}

body.home #projectSec {
	padding-bottom: 48px;
}

#homeLoader {
	-webkit-backface-visibility: visible;
	display: block;
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	/*background: #ffffff;*/
	background: #000000 url(../img/loading.gif) no-repeat 50% 50%;
	z-index: 300000;
}
#homeLoader p {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	line-height: 100%;
}
#homeLoader p span {
	display: inline-block;
	position: relative;
	left: 0px;
	top: 50px;
}

body.home #contents {
	overflow: visible;
}

#homePhotoOuter {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	height: 100%;
	background: #191919;
	min-width: 1100px;
	min-height: 620px;
	overflow: hidden;
	position: relative;
	left: auto;
	top: auto;
	z-index: 1;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	-webkit-backface-visibility: visible;
}
#homePhotoOuter:after {
	content: " ";
	display: block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 10;
	pointer-events: none;
}

.homePhotoTitleBox {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 20;
	width: 100%;
	height: 100%;
	margin: 0px;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	visibility: visible;
	pointer-events: none;
}
#homePleaseScroll {
	position: absolute;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: -165px;
	bottom: 50%;
	text-align: center;
	font-family: 'Novecentosanswide';
	font-weight: 300;
	letter-spacing: 0.1em;
	font-size: 22px;
	line-height: 100%;
	color: #ffffff;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.95);
	display: none;
	opacity: 1.0;
}
#homePleaseScroll.blink {
	-webkit-animation: blink 1.2s ease-in-out infinite alternate;
	-moz-animation: blink 1.2s ease-in-out infinite alternate;
	animation: blink 1.2s ease-in-out infinite alternate;
}
#homeSummary {
	position: absolute;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: -240px;
	bottom: 50%;
	text-align: center;
	letter-spacing: 0.1em;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.45);
	font-size: 18px;
	line-height: 145%;
	padding: 0px 20px;
	color: #ffffff;
	display: none;
}
#homeSummary strong {
	font-weight: normal;
}
.homePhotoTitleBox .homePhotoTitleMain {
	display: block;
	width: 700px;
	height: 140px;
	overflow: visible;
	margin: auto;
	padding: 0px;
	color: #ffffff;
	text-align: center;
	position: absolute;
	left: 0px;
	right: 0px;
	top: 0px;
	bottom: 0px;
	display: none;
}
.homePhotoTitleBox .homePhotoTitleMain:after {
	content: " ";
	display: block;
	width: 157px;
	height: 49px;
	background: url("../img/home_arrow_scroll.png") no-repeat 0px 0px;
	background-size: 100% auto;
	margin-left: auto;
	margin-right: auto;
	margin-top: 16px;
}
.homePhotoTitleBox .homePhotoTitleMain .catch {
	display: inline-block;
	position: relative;
	left: 0px;
	right: 0px;
	top: 0px;
	margin: 0px auto;
	font-size: 46px;
	line-height: 1.5em;
	font-weight: 500;
	text-shadow: 0px 0px 10px rgba(0,0,0,1.0);
	text-align: center;
	white-space: nowrap;
	height: 100%;
}
.homePhotoTitleBox #homeCatch01.homePhotoTitleMain:after {
	visibility: hidden;
}
.homePhotoTitleBox #homeCatch01.homePhotoTitleMain .catch {
	text-align: left;
}
.homePhotoTitleBox #homeCatch02.homePhotoTitleMain .catch {
	display: flex;
	justify-content: center;
	align-items: center;
}

#homeFullImages {
	margin: 0px;
	padding: 0px;
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 2;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
#homeFullImages img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE対策*/
}

#homeFreeWall {
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 1;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	-webkit-backface-visibility: visible;
}
#homeFreeWall li {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	margin: 0px;
	padding: 0px;
	background: #ffffff;
	text-align: center;
}
#homeFreeWall li.brick a {
	display: block;
}
#homeFreeWall li.brick img {
	margin: 0;
	display: block;
	min-width: 100%;
}

#keyvisualOuter {
	width: 100%;
	height: 100%;
	min-width: 1100px;
	min-height: 620px;
	overflow: hidden;
	/*background-image: url(../img/home_kv01.jpg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-color: #cccccc;
	background-size: cover;*/
	position: relative;
	left: auto;
	top: auto;
	z-index: 1;
}

#keyvisualInner {
	-webkit-backface-visibility: visible;
	display: table;
	position: fixed;
	left: auto;
	top: auto;
	z-index: 5;
	width: 100%;
	height: 100%;
	min-height: 660px !important;
}
#keyvisualContents {
	display: table-cell;
	width: 100%;
	height: 100%;
	background: url(../img/spacer.gif) !important;
	text-align: center;
	vertical-align: middle;
}

#kvVideoIconBox {
	visibility: hidden; /* やっぱり非表示 2015.07.15 */
	display: table;
	position: absolute;
	right: 50px;
	top: 100px;
	width: 120px;
	height: 120px;
	z-index: 100;
}
#kvVideoIconInner {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

#kvVideoPlay {
	display: inline-block;
	width: 80px;
	height: 80px;
	background: url(../img/ic_play.png) no-repeat 0px 0px;
}
#kvVideoPause {
	display: inline-block;
	width: 80px;
	height: 80px;
	background: url(../img/ic_pause.png) no-repeat 0px 0px;
}

#keyvisualInfoBox {
	display: inline-block;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 2;
	background: url(../img/home_kv_box.png) no-repeat 0px 0px;
	width: 244px;
	height: 367px;
	margin-top: -160px;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	/*-moz-transform-origin: 50% 50%;
	-moz-transform: scale(0.8);
	zoom: 0.8;*/
	visibility: hidden;
}

#keyvisualOuter.youtube #keyvisualInfoBox {
	margin-top: -30px;
}

#kvPleaseScroll {
	background: url(../img/ic_scroll.png) no-repeat 0px 0px;
	background-size: 50px;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	position: absolute;
	left: 50%;
	bottom: 50px;
	z-index: 7;
	margin-left: -25px;
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
}

#kvPauseProtect {
	background: url(../img/spacer.gif);
	width: 100px;
	height: 100px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	position: absolute;
	left: 50%;
	bottom: 20px;
	z-index: 300;
	margin-left: -50px;
}

#kvVideoLoader {
	display: table;
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background: #000000 url(../img/loading.gif) no-repeat 50% 50%;
	z-index: 6;
}
#kvVideoLoader p {
	display: table-cell;
	width: 100%;
	height: 100%;
	vertical-align: middle;
	text-align: center;
	font-size: 10px;
	line-height: 100%;
}
#kvVideoLoader p span {
	display: inline-block;
	position: relative;
	left: 0px;
	top: 50px;
}

#kvVideoDot {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background: url(../img/dot.png);
	z-index: 1;
}

#kvLogo {
	width: 160px;
	height: 65px;
	position: absolute;
	left: 44px;
	bottom: 30px;
	zoom: 1;
}
#kvLogo img {
	width: 100%;
	height: auto;
}

.kvVideoTp {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 100;
}

#kvNavBox {
	width: 330px;
	display: block;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	position: absolute;
	right: 10px;
	top: 10px;
	z-index: 10;
	text-align: right;
}
#kvNavBox li {
	display: inline-block;
	margin: 0px 0px 0px 4px;
	padding: 0px;
	width: 12px;
	height: 12px;
}
#kvNavBox li a {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 100%;
	border: 1px solid #ffffff;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
}
#kvNavBox li.active a {
	background: #ffffff;
}
#kvNavBox li a:link,
#kvNavBox li a:visited {
	background: transparent;
}
#kvNavBox li a:hover,
#kvNavBox li a:active {
	background: #ffffff;
}
#kvNavBox li.active a:link,
#kvNavBox li.active a:visited {
	background: #ffffff;
}
#kvNavBox li.active a:hover,
#kvNavBox li.active a:active {
	background: #ffffff;
}

#kvYoutubeOuter {
	-webkit-backface-visibility: visible;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 20000;
	width: 100%;
	height: 100%;
	display: none;
}
#kvYoutubeOverlay {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: #000000;
	background: rgba(0,0,0,0.85);
}
#kvYoutubeBox {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 42%;
	z-index: 100;
	width: 800px;
	height: 452px;
	margin: -226px 0px 0px -400px;
	border: 2px solid #ffffff;
	background: #111111 url(../img/loading.gif) no-repeat 50% 50%;
}
#kvYoutubeBox iframe {
	width: 100% !important;
	height: 100% !important;
}
#kvYoutubeClose {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	border: 2px solid #ffffff;
	border-radius: 25px;
	vertical-align: middle;
	text-align: center;
	font-size: 30px;
	line-height: 100%;
	color: #ffffff;
	font-weight: bold;
	text-decoration: none !important;
	position: absolute;
	left: 50%;
	bottom: 8%;
	z-index: 200;
	margin-left: -25px;
	white-space: nowrap;
}
#kvYoutubeClose:before {
	display: inline-block;
	content: " ";
	width: 0px;
	height: 110%;
	vertical-align: middle;
}

#kvYoutubePlay {
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background: url(../img/ic_play.png) no-repeat 0px 0px;
	background-size: 50px;
	position: absolute;
	left: 15px;
	top: 185px;
	z-index: 10;
	cursor: pointer;
}

.kvYoutubeSwipe {
	display: block;
	width: 200px;
	height: 80px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background: url(../img/ic_swipe.png) no-repeat 0px 0px;
	position: absolute;
	left: 50%;
	bottom: 18%;
	margin-left: -100px;
	opacity: 0.6;
}

#kvVideoOuter {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background: #000000;
	z-index: 1;
}

#keyvisualOuter.youtube #kvVideoOuter {
	left: -9000px;
}

#kvVideoBox {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	position: relative;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	zoom: 1;
}
#kvVideoBox:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#kvVideoBox li {
	position: relative;
	left: 0px;
	top: 0px;
	float: left;
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}

#kvCatchBox {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: block;
	width: 244px;
	height: 244px;
	position: absolute;
	left: 0px;
	top: 0px;
}
#kvCatchBox li {
	display: table;
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 1;
}
#kvCatchBox li.active {
	z-index: 2;
}
#kvCatchBox li span {
	display: table-cell;
	width: 100%;
	height: 100%;
	text-align: center;
	vertical-align: middle;
}
#kvCatchBox li span img {
	margin-top: 20px;
	width: 140px;
	height: auto;
}



#homeInfoBox {
	display: table;
	padding: 30px 0px 30px 0px;
	margin: 0px auto;
	zoom: 1;
}
#homeInfoBox:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#homeInfoBox .heading {
	display: table-cell;
	width: 120px;
	font-family: 'Novecentosanswide';
	font-size: 12px;
	line-height: 105%;
	color: #000000;
	padding: 0px;
	vertical-align: middle;
}
#homeInfoBox .more {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding-left: 19px;
	border-left: 1px solid #ebebeb;
}
#homeInfoBox .more a {
	position: relative;
	left: 0px;
	top: -6px;
}



#homeInterviewSec {
	margin-bottom: 84px;
}
#homeInterviewSec p img {
	width: 100%;
	height: auto;
}






/* project -------------------------------------------------- */
body.project.list #wrapper {
	/*padding-top: 80px !important;*/
}
body.project.list #lnavBg {
	/*height: 80px !important;*/
	height: 50px !important;
	display: none;
}
body.project.list #gnav ul > li .inner {
	display: block !important;
}

#projectSec {
	/*padding-bottom: 48px;*/
}
#projectSec .heading {
	/* ----- */
}

#projectSec > .more {
	padding-top: 16px;
	text-align: center;
}
#projectSec > .more a {
	font-size: 16px;
}

#projectSec #projectList {
	list-style-type: none;
	/*margin: 0px -45px 0px 0px;*/
	margin: 0px -60px 0px 0px;
	padding: 0px;
	letter-spacing: -0.8em;
	text-align: center;
	zoom: 1;
}
#projectSec #projectList:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#projectSec #projectList li {
	/*float: left;*/
	display: inline-block;
	/*width: 390px;*/
	width: 500px;
	/*margin: 0px 45px 45px 0px;*/
	margin: 0px 60px 60px 0px;
	letter-spacing: normal;
	padding: 0px;
	text-align: left;
	vertical-align: top;
	zoom: 1;
}
#projectSec #projectList li:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#projectSec #projectList li .thumb {
	box-sizing: border-box
	-webkit-box-sizing: border-box;
	border: 1px solid #f0f0f0;
	width: 100%;
	/*height: 214px;*/
	height: 274px;
	overflow: hidden;
	/*background: #ebebeb;*/
	background: #dcdcdc;
	text-align: center;
	margin-bottom: 16px;
}
#projectSec #projectList li .inner {
	display: block;
	width: 100%;
	height: 100%;
}
#projectSec #projectList li .thumb a {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
}
#projectSec #projectList li .thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE対策*/
}
#projectSec #projectList li .type {
	font-size: 12px;
	line-height: 100%;
	color: #000000;
	padding-right: 8px;
	margin-right: 12px;
	border-right: 1px solid #d1d1d1;
	float: left;
}
#projectSec #projectList li .category {
	font-size: 12px;
	line-height: 100%;
	color: #000000;
	float: left;
}
#projectSec #projectList li .pretitle {
	font-size: 16px;
	line-height: 160%;
	color: #000000;
	margin-bottom: 4px;
}
#projectSec #projectList li .name {
	clear: both;
	font-size: 26px;
	line-height: 160%;
	letter-spacing: 0.06em;
	color: #0f8c94;
	/*padding-top: 10px;*/
	margin-bottom: 8px;
}
#projectSec #projectList li .name a:link,
#projectSec #projectList li .name a:visited {
	color: #0f8c94;
	text-decoration: none;
}
#projectSec #projectList li .name a:hover,
#projectSec #projectList li .name a:active {
	color: #0f8c94;
	text-decoration: underline;
}
#projectSec #projectList li .summary {
	font-size: 16px;
	line-height: 160%;
	letter-spacing: 0.05em;
	min-height: 5.0em;
	overflow: hidden;
	margin-bottom: 8px;
	word-wrap: break-word;
	word-break: break-all;
}
#projectSec #projectList li .more {
	text-align: center;
}

body.project.detail #container {
	padding-top: 80px !important;
}

#projectSlideOuter {
	width: 100%;
	padding-top: 96px;
	height: 425px;
	background: #000000;
	overflow: hidden;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 11;
	box-shadow: 0px 2px 8px rgba(0,0,0,0.1);
	-webkit-box-shadow: 0px 2px 8px rgba(0,0,0,0.1);
}
#projectYoutubeLoader {
	position: absolute;
	left: 0px;
	top: 96px;
	width: 100%;
	height: 425px;
	z-index: 10000;
	background: #111111 url(../img/loading.gif) no-repeat 50% 50%;
}
#projectSwipeProtect {
	position: absolute;
	left: 0px;
	top: 81px;
	width: 100%;
	height: 425px;
	z-index: 10000;
	background: url(../img/spacer.gif);
	display: none;
}
#projectSlideInner {
	/*width: 1100px;*/
	width: 756px;
	height: 100%;
	margin: 0px auto;
	overflow: visible;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 1;
}
#projectSlide {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 1;
	zoom: 1;
}
#projectSlide:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#projectSlide li {
	margin: 0px;
	padding: 0px;
	/*width: 1100px;*/
	width: 756px;
	height: 100%;
	background-color: #333333;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: auto;
	background-image: url(../img/loading.gif);
	float: left;
	position: relative;
	left: 0px;
	top: 0px;
}
#projectSlide li.ready,
#projectSlide li.active {
	background-color: #333333;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
#projectSlide li a.projectYoutubePlay,
#projectSlide li a.projectPrivatePlay {
	display: block;
	width: 120px;
	height: 120px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background: url(../img/project_ic_play.png) no-repeat 0px 0px;
	position: absolute;
	left: 50%;
	top: 45%;
	margin: -60px 0px 0px -60px;
	display: none;
}

#projectSlide li .projectPrivateHTML {
	display: none;
}

#projectSlidePrev {
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	display: block;
	content: " ";
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background-color: #000000;
	/*background-color: rgba(0,0,0,0.5);*/
	background-color: rgba(0,0,0,0.8);
	background-image: url(../img/project_ic_prev.png);
	background-repeat: no-repeat;
	/*background-position: 1060px 45%;*/
	background-position: 716px 45%;
	position: absolute;
	/*left: -1100px;*/
	left: -756px;
	top: 0px;
	z-index: 10;
}
#projectSlideNext {
	transform: translate3d(0,0,0);
	-webkit-transform: translate3d(0,0,0);
	display: block;
	content: " ";
	width: 100%;
	height: 100%;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background-color: #000000;
	/*background-color: rgba(0,0,0,0.5);*/
	background-color: rgba(0,0,0,0.8);
	background-image: url(../img/project_ic_next.png);
	background-repeat: no-repeat;
	background-position: 15px 45%;
	position: absolute;
	/*right: -1100px;*/
	right: -756px;
	top: 0px;
	z-index: 10;
}
#projectSlidePrev:hover,
#projectSlideNext:hover {
	/*opacity: 0.8;*/
	opacity: 1.0;
}
#projectSlidePrev.dim {
	background-image: none;
	cursor: default;
}
#projectSlideNext.dim {
	background-image: none;
	cursor: default;
}
#projectSlidePrev.dim:hover,
#projectSlideNext.dim:hover {
	opacity: 1.0;
	cursor: default;
}

#projectDetailList {
	display: none;
}

#projectDetailOuter {
	display: flex;
	width: 1000px;
	/*margin: 0px auto 80px auto;*/
	margin: 0px auto 0px auto;
}

#projectDetailOuter .mainColumn,
#projectDetailOuter .sideColumn {
	display: block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#projectDetailOuter .mainColumn {
	width: 760px;
	overflow: hidden;
	padding-right: 120px;
	vertical-align: top;
}

#projectDetailOuter .mainColumn .pager {
	margin-top: 56px;
}

#projectDetailOuter .mainColumn .pretitle {
	font-family: 'Noto Sans JP';
	font-weight: 200;
	font-size: 20px;
	line-height: 135%;
	color: #000000;
	letter-spacing: 0.06em;
	margin-bottom: 16px;
}
#projectDetailOuter .mainColumn .postTitle {
	font-family: 'Noto Sans JP';
	font-weight: 200;
	/*font-size: 52px;*/
	font-size: 40px;
	line-height: 135%;
	color: #0f8c94;
	letter-spacing: 0.06em;
	margin-bottom: 32px;
}
#projectDetailOuter .mainColumn .postTitle span {
	font-size: 32px;
}

#projectDetailOuter .mainColumn .postCreated {
	font-size: 11px;
	line-height: 115%;
	text-align: right;
	margin-top: -0.6em;
	margin-bottom: 0.8em;
}

#projectDetailOuter .mainColumn .postSec {
	padding-top: 24px;
	/*font-size: 11px;*/
	zoom: 1;
}
#projectDetailOuter .mainColumn .postSec:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

#projectDetailOuter .mainColumn .postSec .postHeading {
	font-family: 'Noto Sans JP';
	font-weight: 200;
	font-size: 22px;
	line-height: 145%;
	padding-left: 26px;
	background: url(../img/project_ic_splite_01.png) no-repeat 0px -190px;
	margin-bottom: 8px;
}
#projectDetailOuter .mainColumn .postSec .postHeading.purpose {
	background-position: 0px 6px;
}
#projectDetailOuter .mainColumn .postSec .postHeading.plan {
	background-position: 0px -94px;
}
#projectDetailOuter .mainColumn .postSec > p  {
	margin-bottom: 1.2em;
}

#projectDetailOuter .sideColumn {
	width: 240px;
	overflow: hidden;
	padding-left: 25px;
	vertical-align: top;
	border-left: 1px solid #000000;
}

#projectDetailOuter .sideColumn .projectSideList {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
#projectDetailOuter .sideColumn .projectSideList dt {
	margin: 0px 0px 4px 0px;
	padding: 0px;
	font-family: 'Novecentosanswide';
	font-size: 10px;
	line-height: 105%;
	color: #0f8c94;
}
#projectDetailOuter .sideColumn .projectSideList dd {
	margin: 0px 0px 24px 0px;
	padding: 0px;
}


#projectYoutubeOuter {
	-webkit-backface-visibility: visible;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 50000;
	width: 100%;
	height: 100%;
	display: none;
}
#projectYoutubeOverlay {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: #000000;
	background: rgba(0,0,0,0.85);
}
#projectYoutubeBox {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 100;
	width: 1000px;
	height: 565px;
	overflow: visible;
	margin: -283px 0px 0px -500px;
	border: 2px solid #ffffff;
	background: #111111 url(../img/loading.gif) no-repeat 50% 50%;
}
#projectYoutubeVideo {
	width: 100%;
	height: 100%;
}
#projectYoutubeBox iframe {
	width: 100% !important;
	height: 100% !important;
}
#projectYoutubeClose {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	border: 2px solid #ffffff;
	border-radius: 25px;
	vertical-align: middle;
	text-align: center;
	font-size: 30px;
	line-height: 100%;
	color: #ffffff;
	font-weight: bold;
	text-decoration: none !important;
	position: absolute;
	right: -70px;
	top: 0px;
	z-index: 200;
	white-space: nowrap;
}
#projectYoutubeClose:before {
	display: inline-block;
	content: " ";
	width: 0px;
	height: 110%;
	vertical-align: middle;
}

#projectPrivateOuter {
	-webkit-backface-visibility: visible;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 50000;
	width: 100%;
	height: 100%;
	display: none;
}
#projectPrivateOverlay {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: #000000;
	background: rgba(0,0,0,0.85);
}
#projectPrivateBox {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 100;
	width: 1000px;
	height: 565px;
	overflow: visible;
	margin: -283px 0px 0px -500px;
	border: 2px solid #ffffff;
	background: #111111 url(../img/loading.gif) no-repeat 50% 50%;
}
#projectPrivateVideo {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
#projectPrivateBox iframe {
	width: 100% !important;
	height: 100% !important;
	background: transparent;
}
#projectPrivateClose {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	border: 2px solid #ffffff;
	border-radius: 25px;
	vertical-align: middle;
	text-align: center;
	font-size: 30px;
	line-height: 100%;
	color: #ffffff;
	font-weight: bold;
	text-decoration: none !important;
	position: absolute;
	right: -70px;
	top: 0px;
	z-index: 200;
	white-space: nowrap;
}
#projectPrivateClose:before {
	display: inline-block;
	content: " ";
	width: 0px;
	height: 110%;
	vertical-align: middle;
}

#projectAnnounceOuter {
	-webkit-backface-visibility: visible;
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 50000;
	width: 100%;
	height: 100%;
	display: none;
}
#projectAnnounceOverlay {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: #ffffff;
	background: rgba(255,255,255,0.85);
}
#projectAnnounceBox {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 100;
	width: 460px;
	min-height: 300px;
	padding: 30px;
	overflow: visible;
	margin: -150px 0px 0px -230px;
	border: 2px solid #999999;
	border-radius: 10px;
	background: #ffffff;
	color: #707070;
	text-align: center;
}
#projectAnnounceContents {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
#projectAnnounceClose {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	width: 50px;
	height: 50px;
	overflow: hidden;
	border: 2px solid #999999;
	border-radius: 25px;
	background: #ffffff;
	vertical-align: middle;
	text-align: center;
	font-size: 30px;
	line-height: 100%;
	color: #999999;
	font-weight: bold;
	text-decoration: none !important;
	position: absolute;
	right: -70px;
	top: 0px;
	z-index: 200;
	white-space: nowrap;
}
#projectAnnounceClose:before {
	display: inline-block;
	content: " ";
	width: 0px;
	height: 110%;
	vertical-align: middle;
}

#projectAnnounceHTML {
	width: 100%;
	height: 100%;
}
.projectPrivateButtons {
	padding-top: 20px;
	text-align: center;
}
.projectPrivateButtons .toForm {
	border-radius: 8px;
	color: #ffffff;
	width: 100%;
	overflow: hidden;
	margin-top: 20px;
}
.projectPrivateButtons .toForm a {
	display: block;
	padding: 10px;
	font-size: 100%;
	line-height: 100%;
	background: #333333;
	color: #ffffff;
	text-decoration: none;
}
.projectPrivateButtons .toForm a:link,
.projectPrivateButtons .toForm a:visited {
	background: #333333;
	color: #ffffff;
	text-decoration: none;
}
.projectPrivateButtons .toForm a:hover,
.projectPrivateButtons .toForm a:active {
	background: #666666;
	color: #ffffff;
	text-decoration: none;
}

.projectPrivateButtons .toVideo {
	border-radius: 8px;
	color: #ffffff;
	width: 100%;
	overflow: hidden;
	margin-top: 20px;
}
.projectPrivateButtons .toVideo a {
	display: block;
	padding: 10px;
	font-size: 100%;
	line-height: 100%;
	background: #0f8c94;
	color: #ffffff;
	text-decoration: none;
}
.projectPrivateButtons .toVideo a:link,
.projectPrivateButtons .toVideo a:visited {
	background: #0fb3bd;
	color: #ffffff;
	text-decoration: none;
}
.projectPrivateButtons .toVideo a:hover,
.projectPrivateButtons .toVideo a:active {
	background: #10c6d2;
	color: #ffffff;
	text-decoration: none;
}

.projectYoutubeSwipe {
	display: block;
	width: 200px;
	height: 80px;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	background: url(../img/ic_swipe.png) no-repeat 0px 0px;
	position: absolute;
	left: 50%;
	bottom: 8%;
	margin-left: -100px;
	opacity: 0.6;
}

.noresultBox {
	text-align: center;
	padding-bottom: 24px;
}

.resultMesBox {
	text-align: center;
	margin-top: -50px;
	padding-top: 15px;
	height: 15px;
	font-size: 12px;
	line-height: 100%;
	padding-bottom: 20px;
}






/* machitera -------------------------------------------------- */
#machiteraSec {
	padding-bottom: 80px;
}

#machiteraSec > .heading > .mainText {
	display: inline-block;
	width: 700px;
	height: 48px;
	background: url(../img/machitera_logo_wide.svg?t=2019010704) no-repeat 0px 0px;
	background-size: 100%;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	line-height: 100%;
	vertical-align: top;
	margin-left: -0.1em;
	margin-bottom: 15px;
}
#machiteraSec > .heading > .spaceText {
	display: none;
}

#machiteraSec .frame_wrap {
	/*background: url(../img/machitera_loading.gif) no-repeat 50% 5%;*/
	background: url(../img/machitera_loading.gif?t=2019010102) no-repeat 50% 5%, url("../img/pc_mctr_skeleton.png?t=2019010102") repeat 0px 0px;
	background-size: 54px auto, 353px auto;
}
#machiteraSec #machitera_iframe {
	-webkit-transition: all 0.6s;
	transition: all 0.6s;
	display: block;
	min-height: 800px;
}
#machiteraSec .to-ext-site {
	padding-top: 20px;
}
#machiteraSec .to-ext-site > a img {
	width: 300px;
	height: 34px;
}






/* terakoyagaku -------------------------------------------------- */
#trkgSec {
	padding-bottom: 80px;
}

#trkgSec .to-ext-site > a img {
	width: 180px;
	height: 30px;
}

#trkgSec > .heading > .mainText {
	display: inline-block;
	width: 340px;
	height: 58px;
	background: url(../img/terakoyagaku_logo.svg) no-repeat 0px 0px;
	background-size: 100%;
	overflow: hidden;
	text-align: left;
	text-indent: -9000px;
	line-height: 100%;
	vertical-align: top;
	margin-left: -0.1em;
	margin-bottom: 10px;
}
#trkgSec > .heading > .spaceText {
	display: none;
}

.trkgBlockOuter {
	display: flex;
}

.trkgBlockType01 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 50%;
	font-family: 'Sawarabi Mincho', sans-serif;
	border-top: 1px solid #ababab;
	border-bottom: 1px solid #ababab;
	padding-top: 20px;
}
.trkgBlockType01:nth-of-type(1) {
	padding-right: 40px;
}
.trkgBlockType01:nth-of-type(2) {
	padding-left: 40px;
	border-left: 1px solid #ababab;
}
.trkgBlockType01 > .trkg-heading {
	font-size: 28px;
	line-height: 1.5em;
	font-family: 'Sawarabi Mincho', sans-serif;
	color: #000000;
	text-align: center;
	margin-bottom: 16px;
}
.trkgBlockType01 .trkgList {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
.trkgBlockType01 .trkgList > li {
	margin: 0px;
	padding: 16px 0px;
	border-top: 1px solid #ebebeb;
	zoom: 1;
}
.trkgBlockType01 .trkgList > li:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.trkgBlockType01 .trkgList > li .image {
	display: flex;
	align-content: center;
	justify-content: center;
	width: 180px;
	height: 122px;
	overflow:  hidden;
	background: #cccccc;
	float: left;
}
.trkgBlockType01 .trkgList > li .image > a {
	display: flex;
	align-content: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	overflow:  hidden;
}
.trkgBlockType01 .trkgList > li .image img {
	max-width: none;
	max-height: none;
	width: 100%;
	height: auto;
}
.trkgBlockType01 .trkgList > li .main {
	width: 295px;
	float: right;
	position: relative;
	left: 0px;
	top: 0px;
}
.trkgBlockType01 .trkgList > li .category {
	display: inline-block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	min-width: 90px;
	max-width: 200px;
	padding: 6px 5px 5px 5px;
	border-radius: 15px;
	font-size: 11px;
	line-height: 100%;
	background: #666666;
	color: #ffffff;
	text-align: center !important;
	vertical-align: top;
}
.trkgBlockType01 .trkgList > li .title {
	font-size: 18px;
	line-height: 150%;
	letter-spacing: 0.06em;
	padding-top: 4px;
}
.trkgBlockType01 .trkgList > li .title span {
	display: block;
	font-size: 12px;
	line-height: 130%;
	letter-spacing: 0.06em;
}
.trkgBlockType01 .trkgList > li .title a {
	color: #000000;
}
.trkgBlockType01 .trkgList > li .title a:link,
.trkgBlockType01 .trkgList > li .title a:visited {
	color: #000000;
	text-decoration: none;
}
.trkgBlockType01 .trkgList > li .title a:hover,
.trkgBlockType01 .trkgList > li .title a:active {
	color: #000000;
	text-decoration: underline;
}
.trkgBlockType01 .trkgList > li .date {
	position: absolute;
	right: 0px;
	top: 5px;
	font-size: 11px;
	line-height: 100%;
	font-family: 'Noto Sans JP';
}
.trkgBlockType01 .trkgList > li .writer {
	padding-top: 6px;
	line-height: 1.2em;
	zoom: 1;
}
.trkgBlockType01 .trkgList > li .writer:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.trkgBlockType01 .trkgList > li .writer_image {
	background-color: #cccccc;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	float: left;
}
.trkgBlockType01 .trkgList > li .writer_name,
.trkgBlockType01 .trkgList > li .writer_text {
	display: block;
	float: right;
	width: 250px;
}
.trkgBlockType01 .trkgList > li .writer_name {
	font-size: 12px;
	padding-top: 2px;
}
.trkgBlockType01 .trkgList > li .writer_text {
	font-size: 10px;
}

.trkgBlockType02 {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-family: 'Sawarabi Mincho', sans-serif;
	border-bottom: 1px solid #ababab;
	padding-top: 20px;
}
.trkgBlockType02 > .trkg-heading {
	font-size: 28px;
	line-height: 1.5em;
	font-family: 'Sawarabi Mincho', sans-serif;
	color: #000000;
	text-align: center;
	margin-bottom: 16px;
}
.trkgBlockType02 .trkgList {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	display: flex;
	flex-wrap: wrap;
}
.trkgBlockType02 .trkgList > li {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 50%;
	margin: 0px 0px 0px 0px;
	padding: 16px 0px;
	border-top: 1px solid #ebebeb;
	zoom: 1;
}
.trkgBlockType02 .trkgList > li:nth-child(odd) {
	padding-right: 40px;
	border-right: 1px solid #ebebeb;
}
.trkgBlockType02 .trkgList > li:nth-child(even) {
	padding-left: 40px;
}
.trkgBlockType02 .trkgList > li:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.trkgBlockType02 .trkgList > li .image {
	display: flex;
	align-content: center;
	justify-content: center;
	width: 180px;
	height: 122px;
	overflow:  hidden;
	background: #cccccc;
	float: left;
}
.trkgBlockType02 .trkgList > li .image > a {
	display: flex;
	align-content: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	overflow:  hidden;
}
.trkgBlockType02 .trkgList > li .image img {
	max-width: none;
	max-height: none;
	width: 100%;
	height: auto;
}
.trkgBlockType02 .trkgList > li .main {
	width: 295px;
	float: right;
	position: relative;
	left: 0px;
	top: 0px;
}
.trkgBlockType02 .trkgList > li .category {
	display: inline-block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	min-width: 90px;
	max-width: 200px;
	padding: 6px 5px 5px 5px;
	border-radius: 15px;
	font-size: 11px;
	line-height: 100%;
	background: #666666;
	color: #ffffff;
	text-align: center !important;
	vertical-align: top;
}
.trkgBlockType02 .trkgList > li .title {
	font-size: 18px;
	line-height: 150%;
	letter-spacing: 0.06em;
	padding-top: 4px;
}
.trkgBlockType02 .trkgList > li .title span {
	display: block;
	font-size: 12px;
	line-height: 130%;
	letter-spacing: 0.06em;
}
.trkgBlockType02 .trkgList > li .title a {
	color: #000000;
}
.trkgBlockType02 .trkgList > li .title a:link,
.trkgBlockType02 .trkgList > li .title a:visited {
	color: #000000;
	text-decoration: none;
}
.trkgBlockType02 .trkgList > li .title a:hover,
.trkgBlockType02 .trkgList > li .title a:active {
	color: #000000;
	text-decoration: underline;
}
.trkgBlockType02 .trkgList > li .date {
	position: absolute;
	right: 0px;
	top: 5px;
	font-size: 11px;
	line-height: 100%;
	font-family: 'Noto Sans JP';
}
.trkgBlockType02 .trkgList > li .writer {
	padding-top: 6px;
	line-height: 1.2em;
	zoom: 1;
}
.trkgBlockType02 .trkgList > li .writer:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.trkgBlockType02 .trkgList > li .writer_image {
	background-color: #cccccc;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	float: left;
}
.trkgBlockType02 .trkgList > li .writer_name,
.trkgBlockType02 .trkgList > li .writer_text {
	display: block;
	float: right;
	width: 250px;
}
.trkgBlockType02 .trkgList > li .writer_name {
	font-size: 12px;
	padding-top: 2px;
}
.trkgBlockType02 .trkgList > li .writer_text {
	font-size: 10px;
}

#trkg-community .trkgList > li .category {
	background: #7e3885;
}
#trkg-space .trkgList > li .category {
	background: #e6b946;
}
#trkg-others .trkgList > li .category {
	background: #b6a188;
}






/* interview -------------------------------------------------- */
#bottomInterviewBox {
	background: #f7f7f7;
}
#bottomInterviewInner {
	width: 1060px;
	margin: 0px auto;
	background: #f7f7f7;
	text-align: center;
}
#bottomInterviewInner img {
	width: 100%;
	height: auto;
}






/* about -------------------------------------------------- */
#aboutSec {
	margin-bottom: 84px;
}
#aboutSec:last-child {
	margin-bottom: 0px;
}
#aboutSec .heading {
	/* ----- */
}

#aboutSec .more {
	display: none;
	text-align: center;
	margin-top: 2.4em;
}
#aboutSec .more a {
	font-size: 116%;
}
body.home #aboutSec .more {
	display: block;
}

#homeAboutInner {
	margin: 0px -40px 0px 0px;
	zoom: 1;
	display: flex;
}
#homeAboutInner:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

.aboutTable {
	width: 510px;
	min-height: 374px;
	margin: 0px 40px 0px 0px;
	padding: 0px;
	border: none;
	border-collapse: collapse;
	border-bottom: 1px solid #ebebeb;
}
.aboutTable a:link,
.aboutTable a:visited {
	color: #000000;
	text-decoration: underline;
}
.aboutTable a:hover,
.aboutTable a:active {
	color: #0f8c94;
	text-decoration: underline;
}
.aboutTable th,
.aboutTable td {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	vertical-align: top;
	text-align: left;
	font-weight: normal;
	padding: 16px 0px 14px 10px;
	border-top: 1px solid #ebebeb;
	font-size: 13px;
	line-height: 160%;
}
.aboutTable th {
	font-weight: 500;
	color: #0f8c94;
	width: 14%;
}
.aboutTable td {
	font-weight: 400;
	color: #000000;
}

.aboutTable td .list {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	font-size: 100%;
	line-height: 180%;
}
.aboutTable td .list li {
	margin: 0px 0px 6px 0px;
	padding: 0px;
}
.aboutTable td .list .summary {
	display: inline-block;
	font-size: 11px;
	line-height: 145%;
	color: #666666;
}

.aboutTable td .partner {
	list-style-type: none;
	margin: 12px 0px 0px 0px;
	padding: 0px;
	text-align: left;
}
.aboutTable td .partner li {
	display: inline-block;
	margin: 0px 10px 0px 0px;
	padding: 0px;
}

.aboutCntsSec {
	padding: 48px 40px 80px;
	border-top: 2px solid #ebebeb;
	word-wrap: break-word;
	word-break: break-all;
	margin: 0px auto;
	zoom: 1;
}
.aboutCntsSec:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.aboutCntsSec:nth-last-child(1) {
	padding-bottom: 0px;
}

.aboutCntsSec img {
	width: 100%;
	height: auto;
}
.about-heading {
	font-size: 32px;
	line-height: 160%;
	letter-spacing: 0.05em;
	color: #000000;
	margin-top: 40px;
	margin-bottom: 40px;
}

#aboutMain {
	border-top: none !important;
	padding-top: 0px !important;
}
#aboutMain .about-m-heading {
	font-size: 24px;
	line-height: 115%;
	letter-spacing: 0.05em;
	color: #000000;
	margin-top: 40px;
	margin-bottom: 24px;
}

#about-visual {
	margin-left: -40px;
	margin-right: -40px;
	margin-bottom: 40px;
}

#aboutImageBox {
	margin-top: 40px;
}
#aboutImageList {
	list-style-type: none;
	margin: 0px;
	margin-left: -40px;
	margin-right: -40px;
	padding: 0px;
	zoom: 1;
}
#aboutImageList:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#aboutImageList > li {
	position: relative;
	left: 0px;
	top: 0px;
	margin: 0px;
	padding: 0px;
	width: 50%;
	float: left;
	zoom: 1;
}
#aboutImageList > li:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#aboutImageList > li .image {
	width: 100%;
	position: relative;
	left: 0px;
	top: 0px;
	z-index: 1;
}
#aboutImageList > li .caption {
	position: absolute;
	right: 0px;
	bottom: 0px;
	z-index: 10;
	padding: 6px 10px;
	background: #ffffff;
	background: rgba(255,255,255,0.75);
	color: #000000;
	font-size: 11px;
	line-height: 105%;
}

#aboutMemberList {
	list-style-type: none;
	margin: 80px 0px 0px 0px;
	padding: 0px;
}
#aboutMemberList > li {
	margin-bottom: 40px;
	zoom: 1;
}
#aboutMemberList > li:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#aboutMemberList > li:last-child {
	margin-bottom: 0px;
}
#aboutMemberList > li .image {
	float: left;
	width: 200px;
}
#aboutMemberList > li .text {
	float: right;
	width: 750px;
}
#aboutMemberList > li .name {
	font-size: 20px;
	line-height: 115%;
	color: #000000;
	margin-bottom: 0.8em;
}
#aboutMemberList > li .jobs {
	font-size: 16px;
	line-height: 160%;
	color: #000000;
}
#aboutMemberList > li .summary {
	margin-top: 0.8em;
}

.aboutHistoryOuter {
	clear: both;
	padding-top: 24px;
	zoom: 1;
}
.aboutHistoryOuter:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.aboutHistoryBox {
	width: 480px;
}
.aboutHistoryBox.movieHistory {
	float: left;
	width: 470px;
}
.aboutHistoryBox.buddhismHistory {
	float: right;
	width: 500px;
}
.aboutHistoryBox .about-s-heading {
	font-size: 16px;
	line-height: 115%;
	color: #000000;
	margin-bottom: 8px;
}
.aboutHistoryBox p,
.aboutHistoryBox dl {
	font-size: 90%;
}
.aboutHistoryBox dl {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
.aboutHistoryBox dl > dt {
	margin: 0px;
	padding: 0px;
}
.aboutHistoryBox dl > dd {
	margin: 0px 0px 0px 2.0em;
	padding: 0px;
}






/* access -------------------------------------------------- */
#accessSec {
	/*margin-bottom: 84px;*/
	zoom: 1;
}
#accessSec:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#accessSec .heading {
	/* ----- */
}

#accessGmap {
	position: relative;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 450px;
	margin-bottom: 40px;
}
#accessGmap iframe {
	width: 100%;
	height: 100%;
}
#accessGmap .gmapProtect {
	position: absolute;
	left: 50%;
	top: 0px;
	z-index: 300000;
	width: 1100px;
	height: 100%;
	margin-left: -550px;
	background: url(../img/spacer.gif);
}

#accessAddress {
	float: left;
	width: 320px;
	margin: 0px 56px 0px 0px;
	font-size: 13px;
	line-height: 200%;
}
#accessAddress .list {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	font-size: 11px;
	line-height: 200%;
}
#accessAddress .list li {
	margin: 0px;
	padding: 0px 0px 0px 14px;
	background: url(../img/ic_splite_01.png) no-repeat 0px -494px;
}

#accessContact {
	list-style-type: none;
	margin: 0px;
	padding: 24px 30px;
	border: 1px solid #ececec;
	font-size: 12px;
	line-height: 145%;
	white-space: nowrap;
	float: left;
}
#accessContact dt,
#accessContact dd {
	display: inline-block;
	margin: 0px;
	padding: 0px;
}
#accessContact dd {
	margin-left: 40px;
}
#accessContact dd .summary {
	font-size: 11px;
	line-height: 115%;
	font-weight: normal;
}

#accessContact dd .tel {
	display: inline-block;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 105%;
	color: #000000;
}
#accessContact dd .tel:before {
	display: inline-block;
	content: " ";
	width: 15px;
	height: 15px;
	background: url(../img/ic_splite_01.png) no-repeat 0px -400px;
	vertical-align: middle;
	margin-right: 4px;
}






/* faq -------------------------------------------------- */
#faqSec {
	/*padding-bottom: 84px;*/
}

#faqSecInner {
	width: 900px;
	margin: 0px auto;
	position: relative;
	left: 0px;
	top: 0px;
	zoom: 1;
}
#faqSecInner:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}

#faqSecInner .more {
	position: absolute;
	right: 0px;
	top: 8px;
}

#container #faqSec .m-heading {
	font-size: 42px;
	line-height: 100%;
	text-align: left;
	padding-bottom: 32px;
	float: left;
}
#container #faqSec .m-heading span {
	display: inline-block;
	font-weight: 400;
	font-size: 14px;
	line-height: 100%;
	color: #707070;
	vertical-align: middle;
	margin-left: 10px;
}

#faqSelectOuter {
	float: right;
}
body.faq #faqSelectOuter {
	float: none;
	position: absolute;
	right: 0px;
	top: 70px;
}

#faqSelectBox {
	display: inline-block;
}

#faqListOuter {
	clear: both;
	position: relative;
	left: 0px;
	top: 0px;
}

.faqList {
	width: 100%;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	border-top: 1px solid #ebebeb;
	position: relative;
	left: 0px;
	top: 0px;
}
.faqList li {
	margin: 0px;
	padding: 18px 0px 16px 82px;
	border-bottom: 1px solid #ebebeb;
	position: relative;
	left: 0px;
	top: 0px;
}
.faqList li::before {
	display: block;
	content: " ";
	width: 18px;
	height: 18px;
	position: absolute;
	right: 20px;
	top: 20px;
	z-index: -1;
	background: url(../img/faq_ic_splite.png) no-repeat 0px 0px;
}
.faqList li.open::before {
	background-position: 0px -100px;
}

.faqList li .question {
	padding-right: 60px;
	font-size: 16px;
	line-height: 105%;
	color: #000000;
	vertical-align: bottom;
	cursor: pointer;
}
.faqList li .question:hover {
	color: #0f8c94;
}
.faqList li .question .number {
	display: block;
	font-weight: 300;
	font-size: 24px;
	line-height: 100%;
	color: #0f8c94;
	letter-spacing: 0.06em;
	position: absolute;
	left: 12px;
	top: 14px;
}
.faqList li .question .number span {
	display: inline-block;
	font-weight: 200;
	font-size: 32px;
	line-height: 100%;
	vertical-align: top;
	margin-top: -5px;
}

.faqList li .answer {
	padding: 20px 60px 0px 0px;
}
.faqList li .answer > p,
.faqList li .answer > div {
	margin-bottom: 1.2em;
}






/* contact -------------------------------------------------- */
#contactSec {
	/*margin-bottom: 84px;*/
	zoom: 1;
}
#contactSec:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
#contactSec .heading {
	/* ----- */
}

#contactSecInner {
	width: 800px;
	margin: 0px auto;
}
#contactSecInner > p {
	margin-bottom: 1.6em;
}
#contactSecInner > p.form-buttons {
	margin-bottom: 0px;
}
#contactSecInner > .note {
	font-size: 84%;
}
#contactSecInner .finMes01 {
	font-size: 132%;
	line-height: 160%;
	font-family: 'Noto Sans JP';
	font-weight: 500;
	color: #0f8c94;
	text-align: center;
}
#contactSecInner .finMes02 {
	text-align: center;
	margin-bottom: 40px;
}






/* form -------------------------------------------------- */
.select01 {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	font-size: 13px;
	line-height: 100%;
	background: #f6f5f5;
	border: 1px solid #cecece;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	padding: 14px 0px 14px 0px;
	text-align: left;
	cursor: pointer;
}
.customSelect {
	font-size: 13px;
	line-height: 100%;
	border: 1px solid #cecece;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	padding: 14px 0px 14px 0px;
	text-align: left;
	background: #f6f5f5 url(../img/select_bg01.png) no-repeat right 45%;
	color: #000000;
	white-space: nowrap;
}
.customSelect.customSelectHover {
	border: 1px solid #cecece;
}
.customSelect.customSelectOpen {
	border: 1px solid #cecece;
}
.customSelect.customSelectFocus {
	border: 1px solid #cecece;
}
.customSelect.customSelectDisabledOption {
	border: 1px solid #cecece;
}
.customSelect.customSelectDisabled {
	border: 1px solid #cecece;
}
.customSelectInner {
	/*width: auto !important;*/
	padding: 0px 30px 0px 14px;
	text-align: left;
}

.form-note {
	font-size: 84%;
}
#contactSecInner .form-note {
	margin-bottom: 2.0em;
}

.form-error {
	color: #ff0000;
}

.required {
	color: #000000;
}

.formTable {
	width: 100%;
	margin: 0px 0px 24px 0px;
	padding: 0px;
	border: none;
	border-collapse: collapse;
	border-bottom: 1px solid #ebebeb;
}
.formTable a:link,
.formTable a:visited {
	color: #666666;
	text-decoration: none;
}
.formTable a:hover,
.formTable a:active {
	color: #0f8c94;
	text-decoration: underline;
}
.formTable th,
.formTable td {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	vertical-align: top;
	text-align: left;
	font-weight: normal;
	padding: 16px 0px 14px 20px;
	border-top: 1px solid #ebebeb;
	font-size: 13px;
	line-height: 145%;
}
.formTable th {
	font-family: 'Noto Sans JP';
	font-weight: 500;
	color: #0f8c94;
	width: 32%;
}
.formTable td {
	font-family: 'Noto Sans JP';
	font-weight: 300;
}

.formTable td > p {
	vertical-align: top;
	margin-bottom: 0.8em;
}

.formTable td .form-error {
	padding-top: 0.8em;
	font-weight: bold;
}

.formTable .partnerRow {
	display: none;
}

.formTable .note {
	font-size: 84%;
	font-weight: normal;
	color: #707070;
}

.form-buttons {
	text-align: center;
}
.form-buttons a,
.form-buttons input {
	margin: 0px 10px;
	vertical-align: top;
}

.formTable input {
	vertical-align: top;
}

.input01 {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	width: 400px;
	height: 1.6em;
	background: #ffffff;
	border: 1px solid #cccccc;
	border-radius: 0px;
	font-size: 100%;
	line-height: 105%;
	vertical-align: middle;
	display: inline-block;
	margin: -2px 0px -5px 0px;
}

.input02 {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	width: 100px;
	height: 1.6em;
	background: #ffffff;
	border: 1px solid #cccccc;
	border-radius: 0px;
	font-size: 100%;
	line-height: 105%;
	vertical-align: middle;
	display: inline-block;
	margin: -2px 0px -5px 0px;
}

.textarea01 {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 500px;
	height: 12em;
	padding: 10px;
	background: #ffffff;
	border: 1px solid #cccccc;
	border-radius: 0px;
	font-size: 100%;
	line-height: 115%;
}

.button01 {
	box-sizing: border-box;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	padding: 12px 12px 12px 12px;
	border:  none;
	border-radius: 12px;
	color: #ffffff;
	font-size: 116%;
	line-height: 115%;
	vertical-align: top;
	text-align: center;
	background: #333333;
}
.button01:link,
.button01:visited,
.button01:hover,
.button01:active {
	color: #ffffff !important;
	text-decoration: none !important;
}

.button02 {
	box-sizing: border-box;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: inline-block;
	padding: 12px 24px 12px 24px;
	border:  none;
	border-radius: 12px;
	color: #ffffff;
	font-size: 116%;
	line-height: 115%;
	vertical-align: top;
	text-align: center;
	background: #0f8c94;
}
.button02:link,
.button02:visited,
.button02:hover,
.button02:active {
	color: #ffffff !important;
	text-decoration: none !important;
}






/* information -------------------------------------------------- */
.infoList {
	list-style-type: none;
	margin: 0px auto;
	padding: 0px;
}
.infoList li {
	margin: 0px;
	padding: 8px 0px 8px 0px;
	width: 100%;
	zoom: 1;
}
.infoList li:after {
	height: 0;
	display: block;
	clear: both;
	visibility: hidden;
	content: " ";
	line-height: 0; 
}
.infoList li:nth-last-child(1) {
	padding-bottom: 0px;
}
.infoList li .date {
	float: left;
	width: 100px;
}
.infoList li .text {
	float: left;
	width: 700px;
}
.infoList li a:link,
.infoList li a:visited {
	color: #707070;
	text-decoration: none;
}
.infoList li a:hover,
.infoList li a:active {
	color: #0f8c94;
	text-decoration: underline;
}

body.home .infoList {
	display: table-cell;
	font-size: 11px;
	line-height: 135%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 650px;
	margin: 0px;
	padding: 0px;
	vertical-align: middle;
	padding-left: 19px;
	border-left: 1px solid #ebebeb;
}
body.home .infoList li .date {
	width: 70px;
}
body.home .infoList li .text {
	width: 540px;
}




}
