@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:200,300,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200&display=swap');
@import url('https://use.fontawesome.com/releases/v5.6.4/css/all.css');

html {
	margin: 0;
	padding: 0;
	}

body {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	color: #49372c;
    font-family: "Noto Sans JP", "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
	text-decoration: none;
	font-weight: 200;

}
/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:after {
	content: "";
	display: table;
	clear: both;
}
#contents{
	display:none;
}
.loading {
	width:100%;
	margin: 0 auto;
}
.loading img{
	width:100vw;
	height: 100vh;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
a {
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
a:link, a:visited {
	color: #49372c;
	text-decoration: none;
}
a:hover, a:active {
	color: #999;
	text-decoration: underline;
}
a {outline:none;}
a img {outline:none;}
label {outline:none;}
img {
	border: none;
	vertical-align: bottom;
}
li{
	list-style-type: none;
}
button{
    background:none;
    cursor:pointer;
	border-style: none;
	margin-right: 5px;
	margin-left: 5px;
	outline: none;
}
button:hover{
	filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;	
}
a img {
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
outline:none;
}
a img:hover{
	filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;	
}
button img{
	outline:none;
}
h1 {
	font-weight: 300;
	font-size: 21px;
}
.br-sw {
	display: inline;
}
.sp-br {
	display: none;
}
/*----- main -----*/
.container {
	width: 100%;
	margin: 0;
	padding: 0;
}
.content-white {
	background-color: #FFF;
}
.content-wrapper {
	width: 100%;
	max-width: 1024px;
	margin: 0 auto;
}

.contents-text {
	font-size: 0.8em;
	padding-right: 1%;
	padding-left: 1%;
}
.text-v {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.text-jp {
	letter-spacing: 1px;
	font-size: 0.9em;
}
.text-en {
	letter-spacing: 1px;
}
.text-en-s {
	letter-spacing: 1px;
	font-size: 0.9em;
}
.text-m {
	font-size: 1.2em;
}
.text-b {
	font-weight: 700;
}
/* button */
.page-btn-area{
	width: 100%;
	float: left;
}
.page-btn{
	font-size: 1.1em;
	padding: 15px 30px;
	margin: 0;
	color: #FFF;
	background-color: #49372c;
	border-radius: 5px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	letter-spacing: 2px;
}

.page-btn:hover{
	background-color: #392b23;
	text-decoration: none;
}
.blue-btn{
	font-size: 1.1em;
	padding: 15px 30px;
	margin: 0;
	color: #FFF;
	background-color: #4694d1;
	border-radius: 5px;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	letter-spacing: 2px;
}
.blue-btn:hover{
	background-color: #004883;
	text-decoration: none;
}
#en-text {
	font-size: 0.85em;
	letter-spacing: 1px;
}

.text-white {
	color: #FFF;
}
/*----- fade -----*/
.fade-up {
  transition: opacity 0.7s;
  -moz-transition: opacity 0.7s;
  -webkit-transition: opacity 0.7s;
  -o-transition: opacity 0.7s;
  transition: transform 0.7s;
  -moz-transition: transform 0.7s;
  -webkit-transition: transform 0.7s;
  -o-transition: transform 0.7s;
}

/* sticky */
.sticky {
	position: -webkit-sticky; /* safari対応 */
	position: sticky;
	top: 0;　/* 上端から10pxのところで固定 */
	background-color: #FFF;
	z-index: 9;
}

.sticky80 {
  height: 80vh;
}
.sticky100 {
  height: 100vh;
}
/*----- page-top -----*/
#page-top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 15px;
  bottom: 50px;
  background: #000;
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
  border-radius:2px;
  	z-index: 999;
}
#page-top:hover{
	filter:alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;

}
#page-top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page-top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
content: '\f0d8';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/* icon-menu */
.icon-area-menu{
	width: 100%;
	clear: both;
	position: absolute;
	padding-left: 15%;
	top: 50%;
}
.icon-area-menu img{
	width: 10%;
	
}
ul.icon-area-menu li {
	display: inline;
	margin-right: 5%;
}
/* icon */
.icon-area{
	width: 100%;
	float: left;
	margin: 0;
	text-align: center;
	padding: 30px 0;
}
.icon-area img{
	width: 4%;
	
}
ul.icon-area li {
	display: inline;
	margin-right: 3%;
}
/*----- footer -----*/
#footer {

	width: 100%;
	color: #000;
	letter-spacing: 1px;
	background-color: rgba(27, 20, 17, 1);
}
.navbar-nav-left {
	width: 25%;
	float: left;
}
.navbar-nav-right {
	width: 35%;
	float: left;
}
.navbar-nav-left li, .navbar-nav-right li {
	margin-top: 10px;
}

a.footer-menu-item{
	color: #ccc;
	font-size: 0.9em;
}
a.footer-menu-item:hover{
	color: #FFF;
}
.copy-info {
	width: 100%;
	font-size: 0.9em;
	text-align: center;
	padding-bottom: 20px;
	padding-top: 20px;
	float: left;
}
/* margin */
.mar_r_1p { margin-right: 1%; }
.mar_b_1p { margin-bottom: 1%; }
.mar_b_2p { margin-bottom: 2%; }
.mar_auto { margin: 0 auto; }
.mar_0 { margin: 0; }
.mar_t_0 { margin-top: 0; }
.mar_r_0 { margin-right: 0; }
.mar_b_0 { margin-bottom: 0; }
.mar_l_0 { margin-left: 0; }
.mar_5 { margin: 5px; }
.mar_t_5 { margin-top: 5px; }
.mar_r_5 { margin-right: 5px; }
.mar_b_5 { margin-bottom: 5px; }
.mar_l_5 { margin-left: 5px; }
.mar_t_10 { margin-top: 10px; }
.mar_r_10 { margin-right: 10px; }
.mar_b_10 { margin-bottom: 10px; }
.mar_l_10 { margin-left: 10px; }
.mar_t_15 { margin-top: 15px; }
.mar_t_20 { margin-top: 20px; }
.mar_r_20 { margin-right: 20px; }
.mar_b_20 { margin-bottom: 20px; }
.mar_b_15 { margin-bottom: 15px; }
.mar_l_20 { margin-left: 20px; }
.mar_t_30 { margin-top: 30px; }
.mar_r_30 { margin-right: 30px; }
.mar_b_25 { margin-bottom: 25px; }
.mar_b_30 { margin-bottom: 30px; }
.mar_l_30 { margin-left: 30px; }
.mar_t_45 { margin-top: 45px; }
.mar_t_50 { margin-top: 50px; }
.mar_r_50 { margin-right: 50px; }
.mar_b_45 { margin-bottom: 45px; }
.mar_b_50 { margin-bottom: 50px; }
.mar_l_50 { margin-left: 50px; }
.mar_b_100 { margin-bottom: 100px; }
.mar_t_80 { margin-top: 80px; }
.mar_t_100 { margin-top: 100px; }
.mar_t_200 { margin-top: 200px; }
.mar_t_20_5 { margin-top: 20px; }
/* padding */
.pad_v_10 { padding: 10px 0; }
.pad_v_20 { padding: 20px 0; }
.pad_v_30 { padding: 30px 0; }
.pad_0 { padding: 0; }
.pad_t_0 { padding-top: 0; }
.pad_r_0 { padding-right: 0; }
.pad_b_0 { padding-bottom: 0; }
.pad_l_0 { padding-left: 0; }
.pad_5 { padding: 5px; }
.pad_t_5 { padding-top: 5px; }
.pad_r_5 { padding-right: 5px; }
.pad_b_5 { padding-bottom: 5px; }
.pad_l_5 { padding-left: 5px; }
.pad_10 { padding: 10px; }
.pad_t_10 { padding-top: 10px; }
.pad_r_10 { padding-right: 10px; }
.pad_b_10 { padding-bottom: 10px; }
.pad_l_10 { padding-left: 10px; }
.pad_20 { padding: 20px; }
.pad_t_20 { padding-top: 20px; }
.pad_r_20 { padding-right: 20px; }
.pad_b_20 { padding-bottom: 20px; }
.pad_l_20 { padding-left: 20px; }
.pad_30 { padding: 30px}
.pad_t_30 { padding-top: 30px; }
.pad_r_30 { padding-right: 30px; }
.pad_b_30 { padding-bottom: 30px; }
.pad_l_30 { padding-left: 30px; }
.pad_t_50 { padding-top: 50px; }
.pad_l_50 { padding-left: 50px; }
.pad_l_100 { padding-left: 100px; }
.pad_t_70 { padding-top: 70px; }
.pad_t_80 { padding-top: 80px; }
.pad_lr_2 { 
	padding-left: 2%;
	padding-right: 2%;
}
.pad_lr_5 { 
	padding-left: 5%;
	padding-right: 5%;
}
.pad_lr_10 { 
	padding-left: 10%;
	padding-right: 10%;
}

.text-centre{
	text-align: center;
}
.text-left{
	text-align: left;
}
.text-right{
	text-align: right;
}

.title-en {
	font-size: 36px;
	letter-spacing: 5px;
	margin: 0;
}
.title-sub-en {
	font-size: 10px;
	margin: 0;
}
.title-link:hover {
	text-decoration: none;
}
.sm-br {
	display: none;
}
@media screen and (max-width: 960px) {
	.text-right{
		padding-right: 15px;
	}
	.text-left{
		padding-left: 15px;
	}

}

@media screen and (max-width: 650px) {
	h1 {
		font-size: 18px;
	}

	.br-sw {
		display: none;
	}
	.icon-area-menu{

	top: 45%;
	}
	.icon-area img{
	width: 7%;
	
	}
	.navbar-nav-left {
	width: 30%;
	float: left;
	}
	.navbar-nav-right {
	width: 30%;
	float: left;
	}
}
@media screen and (max-width: 460px) {
	.text-right{
		padding-right: 10px;
	}
	.text-left{
		padding-left: 10px;
	}
	/* icon */
	.icon-area-menu{
	padding-left: 10%;
	top: 320px;
	}
	.icon-area-menu img{
	width: 13%;
	
	}
	.icon-area img{
	width: 10%;
	
	}
	ul.icon-area li {
	margin-right: 5%;
	}
	.navbar-nav-left {
	width: 40%;
	float: left;
	}
	.navbar-nav-right {
	width: 40%;
	float: left;
	}
	.sp-br {
	display: inline;
	}
	.sm-br {
	display: block;
	}
}
@media screen and (max-width: 360px) {

	/* icon */
	.icon-area-menu{
	padding-left: 13%;
	top: 300px;
	}


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

	/* icon */
	.icon-area-menu{
	padding-left: 13%;
	top: 270px;
	}


}