
@charset "utf-8";

/* /_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_
 全デバイス共通のスタイルとスマートフォン向けレイアウトの指定
/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

/* common.css
----------------------------------------- */
body {
	font-family: Helvetica, '游ゴシック', 'Yu Gothic', YuGothic, HiraKakuProN-W3, 'メイリオ', Meiryo, sans-serif;
	font-size: 14px;
	color: #FFF;
	line-height:1.9;
	text-align: left;
	-webkit-text-size-adjust: 100%;
}
a {
	color: #FFF;
	text-decoration: none;
}
a:hover {
	color:#FFF;
	text-decoration: none;
}
.sp {
	display: block;
}
.pc {
	display: none;
}

/* header
header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 65px;
	z-index: 9999;
	background: url(../img/menu/header_bottom.png) no-repeat center bottom #000000;
	background-size: 100% 1px;
}

header #inner {
	margin-bottom: 30px;
}
header h1 {
	margin: 21px 0 25px 0;
	padding-left: 30px;
	text-align: left;
}
header h1 img {
	width: 123px;
	height: auto;
	
}
.contact-sp-header {
	position: absolute;
	top: 25px;
	right: 20px;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-decoration: underline;
}
nav {
	margin-bottom: 20px;
	border-top: 1px solid #d9d9d9;
}
nav li {
	float: left;
	width: 50%;
	border-bottom: 1px solid #d9d9d9;
	text-align: center;
}

#about nav li.about a,
#works nav li.works a,
#blog nav li.blog a,
#contact nav li.contact a {
	opacity: 0.3;
}
nav ul li:nth-child(odd) {
	background: url(../img/line_nav.gif) repeat-y right top;
	background-size:  1px 10px;
}
nav ul li a {
	display: block;
	width: 100%;
	padding: 12px 0;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 13px;
	letter-spacing: 0.1em;
}
.socialBtn {
	text-align: center;
	margin: 0 auto;
}
.socialBtn li {
	display: inline;
	margin-right: 12px;
}
.socialBtn li.last {
	margin-right: 0;
}
.socialBtn img {
	width: 28px;
	height: 28px;
}

----------------------------------------- */

/* contents
----------------------------------------- */
#main h2.ttl {
	margin-bottom: 40px;
	text-align: center;
	line-height: 1.0;
	font-family: 'Lato', sans-serif;
	font-weight: 100;
	font-size: 40px;
	letter-spacing: 0.05em;
}

#main.inner h2.ttl {
	margin-bottom: 25px;
}
#main.inner h2.ttl img {
	height: 54px;
}
#main h3.ttl {
	margin-bottom: 12px;
	text-align: center;
	line-height: 1.0;
	font-size: 22px;
	color: #FFF;
}
#main p.ttl {
	margin-bottom: 20px;
	text-align: center;
	line-height: 1.0;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	font-size: 13px;
	letter-spacing: 0.1em;
	color: #a5a5a5;
}
.contBox {
	margin: 0 20px;
}
.toTop {
	text-align: center;
}
.toTop a {
	display: block;
	margin-bottom: 40px;
	padding: 8px 20px;
}
.toTop img {
	width: 52px;
	height: 26px;
}
.pageNation {
	position: relative;
	margin-bottom: 30px;
}
.pageNation .pageLeft {
	position: absolute;
	left: 20px;
	top: 0;
}
.pageNation .pageRight {
	position: absolute;
	right: 20px;
	top: 0;
}


/* wp-pagenavi
----------------------------------------- */
div.pagenavi {
}
.wp-pagenavi {
	clear: both;
	text-align: center;
}
.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	padding: 3px 5px;
	margin: 2px;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
	
}
.wp-pagenavi span.current {
	font-weight: bold;
	text-decoration: underline;
}


/* タブレット向け：760px～960px */
@media only screen and (min-width: 760px) {
.sp {
	display: none;
}
.pc {
	display: block;
}

/* header
header {
	position: relative;
	height: 65px;
	margin: 0 auto;
}
header #inner {
	margin-bottom: 30px;
}
header h1 {
	position: absolute;
	left: 28px;
	top: 33px;
	margin: 0;
	padding-left: 28px;
	text-align: center;
}
header h1 img {
	width: 117px;
	height: auto;
}
nav {
	position: absolute;
	bottom: 28px;
	right: 200px;
	margin-bottom: 0;
	border-top: none;
}
nav li {
	margin-left: 20px;
	display: inline;
	float: none;
	border-bottom: none;
	text-align: right;
}
nav li.contact {
	display: inline;
}
nav ul li:nth-child(odd) {
	background: none;
}
nav ul li a {
	display: inline;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.1em;
}
.socialBtn {
	position: absolute;
	top: 112px;
	right: 30px;
}
.socialBtn li {
	display: inline;
	margin-right: 14px;
}
.socialBtn li.last {
	margin-right: 0;
}
.socialBtn img {
	width: 22px;
	height: 22px;
}

----------------------------------------- */

/* contents
----------------------------------------- */
#main.inner {
	max-width: 960px;
	padding: 0;
	margin: 0 auto;
}
#main h2.ttl.large {
	margin: 0 0 70px 0;
	font-size: 46px;
	text-align: left;
}
.contBox {
	margin: 0 40px;
}
.pageNation .pageLeft {
	position: absolute;
	left: 40px;
	top: 0;
}
.pageNation .pageRight {
	position: absolute;
	right: 40px;
	top: 0;
}


/* wp-pagenavi
----------------------------------------- */
.wp-pagenavi {
	clear: both;
	text-align: left;
}


} /* タブレット向け */

/* PC向けレイアウトの指定：961px～ */
@media only screen and (min-width: 961px) {


a:hover {
	text-decoration: underline;
}

/* header
header h1 {
	position: absolute;
	left: 0px;
	top: 33px;
}
	header h1 img {
	width: 117px;
	height: auto;
}
nav {
	position: absolute;
	margin-top: 28px;
	margin-right: 300px;
	text-align: center;
}
.socialBtn {
	position: absolute;
	top: 20px;
	right: 10px;
}

----------------------------------------- */
/* contents
----------------------------------------- */
#main.inner {
	max-width: 1200px;
	padding: 0;
	margin: 0 auto;
}
.contBox {
	margin: 0;
}
.pageNation .pageLeft {
	position: absolute;
	left: 0;
	top: 0;
}
.pageNation .pageRight {
	position: absolute;
	right: 0;
	top: 0;
}

} /* PC向け */

/* header
=========================================== */

#header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 65px;
	z-index: 9999;
	background: url(../img/menu/header_bottom.png) no-repeat center bottom #000000;
	background-size: 100% 1px;
}
.header_in {
	margin: auto;
	position: relative;
	display: block;
}
.header_logo {
	width: 117px;
	height: 123px;
	position: absolute;
	left: 17px;
	top: 17px;
	background: url("../img/logo/header_logo.png") no-repeat;
	background-size: 100% auto;
	z-index: 9997;
	transition: 0.3s all;
}
.header_logo.small {
	/*width: 50px;
	height: 53px;
	top: 8px;*/

	left: 15px;
	top: 15px;
	width: 40px;
	height: auto;
}
.header_logo a {
	display: block;
	width: 100%;
	height: 100%;
}
.header_logo a span {
	opacity: 0;
}
.header_navBtn.open {
	display: none;
	position: absolute;
	right: 0;
	top: 24px;
	cursor: pointer;
}
.header_navBtn.open span {
	width: 34px;
	height: 2px;
	background: #FFF;
	display: block;
}
.header_navBtn.open .line1 {
	margin-bottom: 5px;
}
.header_navBtn.open .line2 {
	margin-bottom: 5px;
}
.header_navBtn.close {
	position: absolute;
	right: 0;
	top: 20px;
	cursor: pointer;
	display: none;
	padding: 10px;
}
.header_navBtn.close span {
	width: 52px;
	height: 3px;
	background: #FFF;
	display: block;
}
.header_navBtn.close .line1 {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	position: relative;
	top: 2px;
}
.header_navBtn.close .line2 {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
.header_nav {
	margin: auto;
	text-align: center;
}
.header_nav_list {
	display: inline-block;
	padding-top: 23px;
}
.header_nav_list li {
	float: left;
}
.header_nav_list li a:hover {
	opacity: 0.8;
}
.header_nav_list li + li {
	border-left: 1px solid #FFF;
	/*margin-left:15px; 
	padding-left:15px;*/
	margin-left:8px; 
	padding-left:8px;
}
.header_nav_list li img {
	height: 18px;
	width: auto;
}
.header_nav_list .pullMenu {
	position: relative;
	cursor: pointer;
	text-align: left;
}
.header_nav_list .pullMenu_nav {
	position: absolute;
	display: none;
	left: 0;
	top: 100%;
	background: #000000;
	padding-top: 24px;
}
.header_nav_list .pullMenu_nav_in {
	background: #000000;
	padding: 20px 0;
}
.pullMenu_nav_in img {
	height: 18px;
	width: auto;
	max-width: inherit !important;
}
.header_nav_list .pullMenu_nav p + p {
	background:url("../img/menu/header_pullmenu_bottom.png") no-repeat center top;
	background-size: 100% 1px;
	padding-top: 20px;
	margin-top: 20px;
}
.header_nav_list .pullMenu_nav p span {
	display: none;
}
.header_nav_list .pullMenu_nav a {
	display: block;
	padding: 0 15px;
}
.header_nav_list .pullMenu:hover .pullMenu_nav {
	display: block;
}
.header_sns {
	position: absolute;
	right: 0;
	top: 0;
	height: 65px;
	padding: 0 28px 0 0;
}
.header_sns_in {
	height: 100%;
	position: relative;
}
.header_sns_menu {
	float: left;
	height: 100%;
}
.header_sns_menu_btn {
	cursor: pointer;
	height: 100%;
}
.header_sns_menu_btn:hover {
	opacity: 0.8;
}
.header_sns_menu_btn img {
	height: 13px;
	width: auto;
	padding-top: 25px;
}
.header_sns_cal a:hover {
	opacity: 0.8;
}
.header_sns_cal {
	border-left: 1px solid #FFF;
	padding-left: 15px;
	margin-top: 23px;
	margin-left: 15px;
	float: left;
	}
.header_sns_cal img {
	height: 17px;
	width: auto;
}
.header_sns_list {
	position: fixed;
	top:65px;
	right: 0;
	background: #000000;
	display: none;
	padding:18px 30px;
}
.header_sns_menu:hover .header_sns_list {
	display: block;
}
.header_sns_list {
	overflow: hidden;
}
.header_sns_list li {
	float: left;
}
.header_sns_list .cal {
	display: none;
}
.header_sns_list li + li {
	margin-left: 20px;
}
.header_sns_list li a:hover {
	opacity: 0.8;
}
.header_sns_list li img {
	height: 50px;
	width: auto;
}
@media screen and (max-width: 1100px){
	#header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 65px;
		z-index: 9999;
		background: url(../img/menu/header_bottom.png) no-repeat center bottom #000000;
		background-size: 100% 1px;
	}
	.header_in {
		position: fixed;
		top: 0;
		right: 0;
		height: 100%;
		z-index: 9997;
		background: #000000;
		transform: translate(130%,0);
		-webkit-transform: translate(130%,0);
		transition: 0.4s all;
		-webkit-transition: 0.4s all;
	}
	.navOpen .header_in {
		transform: translate(0);
		-webkit-transform: translate(0);
	}
	.header_in:after {
		content: '';
		display: block;
		height: 100%;
		width: 50px;
		background:url(../img/header_bg.png) no-repeat right top;
		background-size: 100% 100%;
		position: absolute;
		left: -50px;
		top: 0;
		z-index: 9996;
	}
	.header_in_in {
		width: 100%;
		height: 100%;
		overflow-y: scroll;
		position: relative;
		z-index: 9997;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	.header_nav {
		text-align: left;
		padding-top: 60px;
	}
	.header_navBtn.open {
		display: block;
	}
	.header_navBtn.close {
		display: block;
	}
	.header_nav_list {
		position: relative;
		padding-left: 50px;
	}
	.header_nav_list li {
		float: none;
		margin-left:0px;
		padding-left: 0;
	}
	.header_nav_list li + li {
		border-left: none;
		margin-left:0px;
		padding-left: 0;
	}
	.header_nav_list .pullMenu {
		padding-left: 0;
	}
	.header_nav_list .pullMenu_ttl {
		display: none;
	}
	.header_nav_list .pullMenu_nav {
		display: block;
		padding: 0;
		position: static;
		background: none;
	}
	.header_nav_list .pullMenu_nav_in {
		padding: 0;
		position: static;
		background: none;
	}
	.header_nav_list li img {
		height: 20px;
	}
	.header_nav_list .pullMenu_nav a {
		padding: 0;
	}
	.header_nav_list .pullMenu_nav p {
		margin-top: 15px;
	}
	.header_nav_list .pullMenu_nav p + p {
		background:none;
		padding-top:0;
		margin-top: 20px;
	}
	.header_nav_list .pullMenu_nav p span {
		display: block;
		padding-bottom: 5px;
	}
	.header_nav_list .pullMenu_nav p span img {
		width: 26px;
		height: auto;
		padding-right: 10px;
	}
	.header_nav_list {
		padding-bottom: 40px;
	}
	.header_nav_list li {
		margin-bottom: 22px;
	}
	.header_sns {
		position: static;
		padding: 20px 50px 40px 50px;
		background:url(../img/header_sns_line.png) no-repeat right top;
		background-size:100% 1px;
		height: auto;
	}
	.header_sns_in {
		height: auto;
	}
	.header_sns_menu {
		height: auto;
	}
	.header_sns_menu_btn {
		display: none;
	}
	.header_sns_cal {
		display: none;
	}
	.header_sns_list {
		display: block;
		position: static;
		padding: 0;
	}
	.header_sns_list .cal {
		display: block;
	}
	.header_sns_list li + li {
		margin-left: 25px;
	}
}
@media screen and (max-width: 760px){
	#header {
		height: 45px;
	}
	.header_logo {
		width: 75px;
		height: auto;
		background: url("../img/logo/header_logo.png") no-repeat;
		background-size: 100%;
		left: 10px;
		top: 10px;
	}
	.header_logo.small {
		width: 37px;
		height: auto;
		left: 10px;
		top: 10px;
	}
	.header_navBtn.close {
		top: 15px;
		right: 0px;
	}
	.header_navBtn.close span {
		width: 36px;
		height: 2px;
	}
	.header_navBtn.open {
		top: 14px;
	}
	.header_nav_list {
		padding-left: 0;
	}
	.header_nav_list li {
		padding-left: 30px;
		padding-right: 30px;
	}
	.header_nav_list li + li {
		padding-left: 30px;
		margin-top: 28px;
	}
	.header_nav_list .pullMenu {
		padding-left: 0;
	}
	.header_nav_list li img {
		height: 18px;
	}
	.header_nav_list .pullMenu_nav p span img {
		width: 19px;
	}
	.header_nav_list .pullMenu_nav p + p {
		margin-top: 28px;
	}
	.header_nav_list .pullMenu_nav p span {
		display: inline;
	}
	.header_sns {
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 20px;
	}
	.header_sns_menu {
		float: none;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
	.header_sns_list {
		padding-left: 5px;
	}
	.header_sns_list li + li {
		margin-left: 24px;
	}
}

/* footer
=========================================== */

#footer {
	position: relative;
	background: #000000;
}
.footer_item01 {
	position: relative;
	border-top: 1px solid #333333;
	width: 100%;
	height: 150px;
}
.footer_item02 {
	position: relative;
	border-top: 1px solid #333333;
	width: 100%;
	height: 100px;
}
.footer_lang {
	padding:40px 0 0 35px;
	overflow: hidden;
	color: #FFF;
}
.footer_lang .lang {
	float: left;
}
.footer_lang .lang img {
	height: 12px;
	width: auto;
	opacity: 0.5;
}
.footer_lang .lang.current img {
	opacity: 1;
}
.footer_lang .slash {
	float: left;
	padding:2px 0.7em 0 0.7em;
	font-size: 14px;
}
.footer_contact {
	position: absolute;
	right: 35px;
	top: 60px;
}
.footer_contact a:hover {
	opacity: 0.7;
}
.footer_contact img {
	height: 25px;
	width: auto;
	opacity: 0.5;
}
.footer_copy {
	color: #a3a3a3;
	font-size: 10px;
	letter-spacing: 1px;
	position: absolute;
	left: 35px;
	top: 20px;
	background: #000000;
}
.footer_copy img {
	width: 345px;
}
.footer_share {
	position: absolute;
	right: 35px;
	top: 15px;
	font-size: 12px;
	color: #FFF;
	letter-spacing: 1px;
	display: table;
}
.footer_share .ttl {
	display: table-cell;
	padding:0 8px 0 0;
}
.footer_share .icn > p {
	display: table-cell;
}
.footer_share .icn_twt {
	padding-right: 15px;
}
.footer_share .icn_insta {
	padding-right: 15px;
}
.footer_share .icn_YT {
	padding-right: 15px;
}
.footer_share .icn_LINE {
	padding-right: 15px;
}
.footer_share .icn img {
	height: 50px;
	width: auto;
}
.footer_share .icn a:hover {
	opacity: 0.7;
}
.footer_pageTop {
	width: 52px;
	position: fixed;
	z-index: 9999;
	right: 45px;
	bottom: 30px;
	transition: 0.3s transform;
	-webkit-transition: 0.3s transform;
	display: none;
}
.footer_pageTop:hover {
	transform:translate(0,-4px);
	-webkit-transform:translate(0,-4px);
}
.footer_pageTop img {
	max-width: 100%;
}
@media screen and (max-width: 640px){
	.footer_item01 {
		/*display: none;*/
		height: 35px
	}
	.footer_lang {
		display: none;
	}
	.footer_contact {
		position: absolute;
		right: 35px;
		top: 5px;
	}
	.footer_contact img {
		zoom: .75;
	}
	.footer_pageTop {
		display: none;
	}
	.footer_copy {
		position: static;
	}
	.footer_share {
		position: relative;
		right: 0;
		top: 0;
		border-bottom: 1px solid #333333;
		width: 100%;
	}
	.footer_share .ttl {
		position: absolute;
		left: 6%;
		top: 50%;
		transform: translate(0,-50%);
		-webkit-transform: translate(0,-50%);
		color: #a3a3a3;
		font-size: 10px;
	}
	.footer_share .icn {
		display: -webkit-flex;
		display: flex;
		justify-content: center;
		-webkit-justify-content: center;
	}
	.footer_share .icn a {
		display: block;
		padding-top: 12px;
		padding-bottom: 12px;
	}
  .footer_share .icn_YT {
	  padding-left: 10px;
      padding-right: 10px;
	  position: relative;
  }
  .footer_share .icn_line {
      padding-left: 10px;
      padding-right: 10px;
	  position: relative;
  }
 .footer_share .icn_twt {
	   padding-left: 10px;
	   padding-right: 10px;
	   position: relative;
	}
  .footer_share .icn_insta {
      padding-left: 10px;
      padding-right: 10px;
	  position: relative;
  }
 .footer_share .icn_fb {
	  padding-left: 10px;
	  padding-right: 10px;
	  position: relative;
  }
	/*
	.footer_share .icn_fb:before, .footer_share .icn_line:before {
		content: '';
		display: block;
		width: 1px;
		height: calc(100% - 24px);
		height: -webkit-calc(100% - 24px);
		background: #333;
		position: absolute;
		left: 0px;
		top: 12px;
  }
	*/
	.footer_copy {
		margin: auto;
		padding: 10px 0;
		text-align: center;
	}
	.footer_copy img {
		width: 85.9375%;
		max-width: 275px;
	}
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

#top {
	width:100%;
	/*background-image:url("../img/BACK/back.png");
	background-repeat:repeat-y;*/
	background-size: contain;
	background-color: #231815;
}
/*
.content {
	width:100%;
	background-image:url("../img/BACK/back.png");
	background-repeat:repeat-y;
	background-size: contain
}
*/