@charset "utf-8";
/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

BaseLayout CSS

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/

body > .check {
	display: none;
}

body {	
	/*background:url(../img/common/bg.jpg) center top no-repeat;*/
	background-size:100% auto;
}

#wrapper {
	position:relative;
	width: 100%;
	max-width:1100px;
	margin:0 auto;
	-webkit-overflow-scrolling: touch;
}

body > .check + label {
	display: none;
}
body > .check:checked + #wrapper > label {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	display: block;
}

.font_j {
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing:0.1em;
}
.font_e {
	font-family: "宋体", serif;
	/*font-family: "微软雅黑","宋体";*/
	/*font-family: 'Roboto', sans-serif;*/
	letter-spacing:0.12em;
	font-size:80%;
}

/* Animation */

.slide{
	transition:all 1.2s;
	opacity:0;
	transform:translateY(100px);
}
.slide.init{
	opacity:1;
	transform:translateY(0);
}

.fade{
	transition:opacity 1s;
	opacity:0;
}
.fade.init{
	opacity:1;
}

.slideLeft{
	transition:all 1s;
	opacity:0;
	transform:translateX(80px);
}
.slideLeft.init{
	opacity:1;
	transform:translateX(0);
}

.slideRight{
	transition:all 1s;
	opacity:0;
	transform:translateX(-80px);
}
.slideRight.init{
	opacity:1;
	transform:translateX(0);
}


/*----------------------------------------------------
header
----------------------------------------------------*/
header {
	width:100%;
	height:198px;
	position:relative;
	z-index:10000;
	-webkit-transform: translateY(0);
	-moz-transform: translateY(0);
	-ms-transform: translateY(0);
	-o-transform: translateY(0);
	transform: translateY(0);
	
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	/*border-top: 4px solid #533C3B;*/
}
header.hide {
	-webkit-transform: translateY(-100%);
	-moz-transform: translateY(-100%);
	-ms-transform: translateY(-100%);
	-o-transform: translateY(-100%);
	transform: translateY(-100%);
}
header.fixed {
	-webkit-transform:initial !important;
	-moz-transform:initial !important;
	-ms-transform:initial !important;
	-o-transform:initial !important;
	transform:initial !important;
	transition: all 0s;
}
header section.top {
	position:relative;
	height:45px;
	border-top:4px solid #533C3B;
	border-bottom:1px solid #DDD;
}
header section.top .logo_k {
	float:left;
	width:98px;
	height:31px;
	margin-top:5px;
}
header section.top .btn_language {
	float:left;
	display: flex;
}
header section.top .btn_language li {
	margin-right: 4px;
    font-size: 1.2rem;
}
header section.top .btn_language li a {
	display: inline-block;
	padding: 6px 20px;
	border-radius: 0 0 4px 4px;
	background: #533C3B;
	color:#FFF;
	transition: opacity 0.4s;
}
header section.top .btn_language li a.active {
	opacity: 0.6;
	cursor:default;
}
header section.top .btn_language li a:hover {
	opacity: 0.6;
}
header section.top .search {
	float:right;
	width:19px;
	height:19px;
	margin-top:8px;
}
header section.top form {
	float:right;
	margin-top:5px;
}
header section.top .search img {
	vertical-align: top;
}
header section.top form #s {
	border: #DDD 1px solid;
	background: #F9F9F9;
	padding: 5px;
	font-size: 1.2rem;
}
header section.top #searchsubmit {
	cursor: pointer;
	width: 30px;
	height: 30px;
	border: none;
	text-indent: -9999px;
	background: url(../img/common/icon_search.png) no-repeat 4px 4px;
	background-size: 20px auto;
}

header h1 {
	position:relative;
	margin:30px 0;
}
header h1 img {
	width:90%;
	height:auto;
}
header h1 a {
	position:relative;
	display:block;
	width:144px;
	height:91px;
	margin:0 auto;
	text-align: center;
}
header h1.sp {
	display:none;
}

header .g_nav_trigger {
	display: none;
}

nav {
	height:50px;
	background-color:#FFF;
	text-align:center;
}
nav .close {
	display:none;
}
nav > ul {
	padding-left: 25px;
}
nav ul {
	position:relative;
	background-color: #FFF;
}
nav ul li {
	display:inline-block;
	line-height:50px;
	margin:0 12px;
	letter-spacing:0.05em;
}
nav > ul > li {
	line-height: 91px;
	padding: 30px 0;
	margin: 0 20px;
}
nav ul li.pc {
	margin: 0 22px;
	padding:0;
}
nav ul li .submenu {
	position:absolute;
	background-color:rgba(255,255,255,0.9);
	width: 760px;
	left: 50%;
	margin-left: -380px;
	padding:30px;
	top: 152px;
	/*border-left: 1px solid #DDD;
	border-right: 1px solid #DDD;
	border-bottom: 1px solid #DDD;*/
}
nav ul li .submenu .subImg {
	width:185px;
	float:left;
	margin-right:50px;
}
nav ul li:nth-child(3) .submenu .subImg {
	height:auto;
}
nav ul li .submenu .subImg img {
	width:185px;
	height:auto;
	/*border: 1px solid #DDD;*/
}
nav ul li .submenu li,
nav ul li .submenu li a {
	display:block;
	white-space: nowrap;
	font-size:85%;
	line-height:32px;
}
nav ul li .submenu li {
	float:left;
	width:210px;
	margin:0;
	text-align:left;
}
nav ul li .submenu.about li {
	width:465px;
}
nav ul li .submenu.about li.subImg {
	width:185px;
}
nav ul li .submenu li.noLink {
	font-size:85%;
	line-height:32px;
	font-family: "Times New Roman", Times, serif;
	/*font-family: 'Roboto', sans-serif;*/
	letter-spacing:0.12em;
	color:#888;
}
nav ul li .submenu li a:hover {
	background-color:rgba(255,255,255,0.15);
}
nav ul li .submenu li {
	min-width:180px;
	border-bottom:1px solid rgba(255,255,255,0.15);
}
nav ul li .submenu li:last-child {
	border:none;
}
nav ul li{
	color:#FFF;
}
nav ul li a {
	display:block;
	color:#533C3B !important;
}
nav ul .submenu {
	display:none;
}

header.fixed nav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height:50px;
	z-index:100;
}

.page_top {
	position:fixed;
	right:20px;
	bottom:20px;
	cursor:pointer;
}

/*----------------------------------------------------
共通
----------------------------------------------------*/
main .subTtl {
	margin: 30px 0 60px;
	line-height: 48px;
	border: #ddd solid 1px;
	border-right: none;
	border-left: none;
	text-align: center;
	font-size: 25px;
	/*font-family: "Times New Roman", Times, serif;*/
}
main .subTtl li {
	display: inline-block;
	font-size: 14px;
}
main .subTtl li + li {
	margin: 0 0 0 20px;
}
main .subTtl li + li h2 {
	font-size: 25px;
}
main .subTtl li + li.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 40px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
main .subTtl li + li.arrow::before,
main .subTtl li + li.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
main .subTtl li + li.sample::before{
	left: 0;
	width: 15px;
	height: 15px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
main .subTtl h2 {
	line-height: 48px;
	font-size: 25px;
}

main .imgChange {
	display:none;
}

.wp-pagenavi {
	text-align:center;
}
.wp-pagenavi .pages {
	display: block;
	margin-bottom: 10px;
}
.wp-pagenavi a, .wp-pagenavi span {
	text-decoration: none;
	/*border: 1px solid #DDD;*/
	padding: 5px 3px;
	margin: 2px;
	font-size:80%;
}
.wp-pagenavi span.current {
	background-color:#666;
	color:#FFF;
}
.wp-pagenavi {
	clear: both;
	margin-top:25px;
}
.wp-pagenavi .pages,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	border:none;
}
.wp-pagenavi a.page,
.wp-pagenavi .current{
	border:1px solid #DDD;
	padding:5px 9px;
}


/*----------------------------------------------------
footer
----------------------------------------------------*/
footer {
	position:relative;
	margin-top:80px;
	background-color:#533C3B;
}
footer .inner {
	position:relative;
	width:100%;
	max-width:1100px;
	margin:0 auto;
	padding:40px 0 70px;
}
footer .inner dl {

}
footer .inner dl dt {
	width: 100px;
	float:left;
}
footer .inner dl dd {
	margin: 0 0 0 130px;
	padding: 15px 0 0;
	/*text-align: center;*/
}
footer .inner dl dd ul {
	padding: 0;
	float: left;
}
footer .inner dl dd ul li ul {
	padding: 0 0 15px;
	display: block;
	float: none;
}
footer .inner dl dd ul li ul li {
	padding: 0 0 10px;
	display: block;
}
footer .inner dl dd ul li span {
	display: block;
	margin: 0 0 10px;
	padding: 0 0 10px;
	border-bottom: 1px solid #886b69;
}
footer ul.tree {
	font-size:80%;
}
footer ul.tree li {
	padding-bottom:2px !important;
}
footer ul li {
	display:inline-block;
	vertical-align:middle;
}
footer .inner dl dd > ul > li {
	margin-right:35px;
}
footer ul li a {
	color:#FFF !important;
}
footer ul li .noLink {
	color:#888 !important;
	font-family: "Times New Roman", Times, serif;
	/*font-family: 'Roboto', sans-serif;*/
	letter-spacing: 0.12em;
	font-size: 80%;
}
footer ul.tree li a {
	display: block;
	padding: 2px 0;
}
footer ul li:first-child img {
	width:122px;
	height:auto;
}
footer ul + a, footer ul + span {
	display: block;
	width:122px;
	height:auto;
	margin:35px 0 15px;
	text-align:center;
}
footer ul + a img, footer ul + span img {
	width:98px;
	height:auto;
}
footer p.copy {
	font-size:80%;
	color:#FFF;
}

footer .insta {
	display:block;
	position:absolute;
	width:36px;
	height:36px;
	top: 49px;
	right:20px;
}
footer .insta img {
	width:100%;
	height:auto;
}


/*----------------------------------------------------
underNavi
----------------------------------------------------*/
main ul.underNav {
	border: none;
}
main ul.underNav li {
	width: 50%;
	height: 53px;
	line-height: 53px;
	padding: 0 15px 0 0;
	float: left;
	box-sizing: border-box;
	margin: 0;
	position: relative;
}
main ul.underNav li a {
	display:block;
}
main ul.underNav li span {
	display: block;
	border: #ddd solid 1px;
	border-right: none;
	border-left: none;
}
main ul.underNav li p {
	padding: 0 0 0 65px;
	font-size: 18px;
}
main ul.underNav li {
	text-align: left;
}
main ul.underNav li span > span.underArrow {
	width: 42px;
	height: 42px;
	display: block;
	position: absolute;
	top: 6px;
	left: 0;
	background-color: #EEE;
	border: none;
}
main ul.underNav li span > span.underArrow::before,
main ul.underNav li span > span.underArrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
main ul.underNav li span > span.underArrow::before {
	left: 16px;
	width: 15px;
	height: 15px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
main ul.underNav li + li {
	border-left: #DDD solid 1px;
	padding: 0 0 0 15px;
	text-align: right;
}
main ul.underNav li + li p {
	padding: 0 65px 0 0;
	font-size: 18px;
}
main ul.underNav li + li span > span.underArrow {
	width: 42px;
	height: 42px;
	display: block;
	position: absolute;
	top: 6px;
	right: 0;
	left: auto;
	background-color: #EEE;
	border: none;
}
main ul.underNav li + li span > span.underArrow::before,
main ul.underNav li + li span > span.underArrow::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
main ul.underNav li + li span > span.underArrow::before {
	left: 9px;
	width: 15px;
	height: 15px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*----------------------------------------------------
Search
----------------------------------------------------*/
.searchBox {
	width:100%;
	max-width:800px;
	margin:0 auto;
	text-align:left !important;
}
.searchBox .entry-title {
	font-size:1.8rem;
	color:#333;
}
.searchBox .entry-summary p {
	font-size:1.2rem;
}
.searchBox .entry-summary {
	margin-bottom:30px;
}

/*----------------------------------------------------
404
----------------------------------------------------*/
.error-404 p{
	font-size:3.2rem;
	text-align:center;
	padding-top:50px;
	padding-bottom:20px;
}
.error-404 h1{
	text-align:center;
}
.error-404 div{
	text-align:center;
	padding-top:50px;
}
.error-404 div a{
	text-decoration:underline;
}

@media screen and (max-width: 900px) {
	.error-404{
		margin: 65px 0 0;
	}
}


/*
------------------------------------------------------------------------------------------------------------------ max */
@media screen and (max-width: 1300px) {
	
	/* header */
	
	header section.top .logo_k {
		margin-left:10px;
	}
	header section.top .search {
		margin-right:10px;
	}
	
	/* footer */
	
	footer .inner {
		padding-left:10px;
		padding-right:10px;
	}
	
}

@media screen and (max-width: 1100px) {
	header section.top .btn_language {
		margin-left: 4px;
	}
}

/*
------------------------------------------------------------------------------------------------------------------ Tab */
@media screen and (max-width: 940px) {
	/* footer */
	
	footer .inner {
		padding-left:10px;
		padding-right:10px;
	}
	
	footer .inner dl dt {
		width: 100%;
		float: none;
		text-align: center;
	}
	footer .inner dl dt img {
		width: 80px;
	}
	footer .inner dl dd {
		margin: 0;
		padding: 30px 0 0;
		text-align:center;
	}
	footer .inner dl dd ul {
		display: inline-block;
		float:none;
	}
	footer .inner dl dd ul {
		padding: 0 25px 0 0;
	}
	footer ul {
		text-align:center;
	}
	footer ul li {
		margin:0 10px 10px;
	}
	footer ul li:first-child {
		width:100%;
		text-align:center;
		margin:0 0 10px;
	}
	footer ul li:first-child img {
		width: 70px;
	}
	footer ul + a, footer ul + span {
		margin: 35px auto 15px;
	}
	footer ul + a img, footer ul + span img {
		width: 76px;
	}
	footer p.copy {
		text-align:center;
	}
	footer ul.tree {
		display:none !important;
	}
	footer .inner dl dd ul li span {
		margin: 0;
		padding: 0;
		border:none;
	}
}
@media screen and (max-width: 900px) {
	
	/* header */

	header {
		height: 110px;
		position: fixed;
		top: 0;
		left: 0;
		padding-bottom: 0;
		z-index: 30;
		background: #FFF;
	}
	
	header h1.sp {
		display:block;
	}
	
	nav ul {
		background: none;
	}
	nav ul li.pc {
		display:none;
	}
	nav ul li a {
		color: #FFF !important;
	}
	nav ul li .submenu {
		display:none;
	}
	nav > ul > li {
		line-height: 1;
		padding: 0;
		margin: 0 12px;
	}
	nav > ul > li a {
		display:block;
		padding:24px 0;
	}
	
	header .g_nav_trigger {
		position: absolute;
		display: block;
		width: 26px;
		height: 26px;
		border: 1px solid #CCC;
		top: 64px;
		right: 0;
		margin-right:10px;
		box-sizing: border-box;
		z-index:15;
	}
	header .g_nav_trigger span {
		display: block;
		position: absolute;
		top: 6px;
		left: 4px;
		width: 16px;
		height: 2px;
		background: #AAA;
	}
	header .g_nav_trigger span:before {
		content: "";
		display: block;
		position: absolute;
		top: 5px;
		left: 0;
		width: 16px;
		height: 2px;
		background: #AAA;
	}
	header .g_nav_trigger span:after {
		content: "";
		display: block;
		position: absolute;
		top: 10px;
		left: 0;
		width: 16px;
		height: 2px;
		background: #AAA;
	}
	header section.top .logo_k {
		margin-left:10px;
	}
	header section.top .search {
		margin-right:10px;
	}
	
	header nav,
	header.fixed nav {
		width: 259px;
		height: 1500px;
		position: absolute;
		top: 0;
		left:auto;
		right: -259px;
		z-index:15;
		background: #533C3B;
		text-align: left;
		overflow: auto;
		line-height: 1;
		padding-top: 0;
	}
	header nav ul li {
		display:block;
		border-bottom:1px solid #887373;
	}
	header nav ul li a {
		display:block;
	}
	header h1 {
		margin:10px 0;
	}
	header h1 a {
		width:70px;
		height:auto;
	}
	
	main {
		position: relative;
	}
	main section.slider {
		padding-top:65px;
	}
	
	main .subTtl {
		margin: 65px 0 40px;
	}

}



/*
------------------------------------------------------------------------------------------------------------------ Tab */
@media screen and (max-width: 768px) {



}



/*
------------------------------------------------------------------------------------------------------------------ Tab */
@media screen and (max-width: 640px) {
	main ul.underNav {
		width: 100%;
		margin: 30px 0;
	}
	main ul.underNav li {
		width: 100%;
		padding: 0;
	}
	main ul.underNav li + li {
		border-left: none;
		padding: 0;
		text-align: right;
	}
	main ul.underNav li + li span {
		border-top: none;
	}
}



/*
------------------------------------------------------------------------------------------------------------------ Tab */
@media screen and (max-width: 600px) {

	header section.top form input:first-child {
		width:120px;
	}
	
	main .subTtl h2 {
		font-size: 18px !important;
	}

}



/*
------------------------------------------------------------------------------------------------------------------ PC */
@media screen and (max-width: 414px) {
	
	header section.top form input:first-child {
		width:80px;
	}

	footer .inner dl dd ul {
		display:block;
		padding:0;
	}
	footer .inner dl dd > ul > li {
		margin-right: 0;
	}
	footer .inner dl dd > ul:nth-child(2),
	footer .inner dl dd > ul:nth-child(3),
	footer .inner dl dd > ul:nth-child(5),
	footer .inner dl dd > ul:nth-child(6) {
		display:inline-block;
		margin:0 12px;
	}
	
	footer .insta {
		position: relative;
		left:50%;
		bottom: 0;
		top:auto;
		margin-left:-18px;
		margin-bottom: 15px;
		width: 34px;
		height: 34px;
	}

}