body{
	word-wrap: break-word;
}

#common{
	background:url(../img/bk.jpg) center top  no-repeat;
}

#common-top{
	background:url(../img/bk_top.jpg) center top  no-repeat;
}

#common-sp{
	background:url(../img/bk.jpg) center top  no-repeat;
	background-size: contain;
}

.back-sp{
	background:#fffbac !important;
}

#spLinkBlockInPc{
	display:none;
}


@media screen and (min-width: 400px){
.sp-only {
	display:none;
}
}


/* txt
-------------------------------------------*/
.txt{
margin:10px 0;
}

.txt-pa{
padding:10px 0;
}

.txt-c{
text-align:center;
padding:10px;
}

.txt-r{
text-align:right;
padding:10px 0;
}

.txt-s{
text-align:center;
padding:10px;
}

.txt-center li{
padding:10px;
}

.a-underline a{
text-decoration:underline;
}

.float-l{
	float:left;
	margin-right:25px;
}

.float-l:after{
  content: "."; 
  display: block; 
  height: 0;
  font-size:0;
  clear: both; 
  visibility:hidden;
}


 /* clearfix
-------------------------------------------*/
.floatcontainer:after{
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;	
    clear: both; 
    visibility:hidden;
}
	
.floatcontainer{display: inline-block;} 

/* Hides from IE Mac \*/
* html .floatcontainer {height: 1%;}
.floatcontainer{display:block;}
/* End Hack */ 


/*nav
-------------------------------------------*/
.nav {
width:100%;
height:50px;
/*display: none;*/
background:url(/jp/img/menu_border.png) bottom no-repeat;
background-color:#000;
position:fixed;
top:0;
z-index:9999;
}

.nav::after {
content:'';
display:block;
clear:both;
}

.nav ul {
display:block;
font-size:14px;
color:#fff;
padding:13px 0 !important;
text-align:center;
}

.nav ul li {
display:inline-block;
margin-left:20px;
}

.nav ul li:first-child{
margin-left:0;
}

.nav-collapse li {
    width: auto !important;
    display: inline !important;
}

@media only screen and (max-width:768px){
.nav{
	height:auto !important;
width:100%;
background:url(/jp/img/menu_border.png) bottom no-repeat;
background-color:#000;
position: static;
top: auto;
}

nav ul li {
display: inherit;
margin-left:0;
border-bottom:1px solid #333;
}

nav ul li:last-child{
	border-bottom:none;
}

nav ul li a{
	display:block;
	height:44px;
	line-height:44px;
}

.nav-collapse li {
    width: 100% !important;
    display: block !important;
}
}


/* head-title
-------------------------------------------*/
.container{
	position:relative;
	max-width:960px;
	margin:0 auto;
}

.head-title{
	display:block;
	position:absolute;
	top:10px;
	left:0;
}

@media only screen and (max-width:768px){
.container{
	position: static;
}	
	
.head-title{
	display:block;
	position:absolute;
	top:10px;
	left:10px;
}
}


/* top
-------------------------------------------*/
#top {
    margin: 5em auto 0% auto;
	max-width:960px;
	padding:5px;
}

#top a:hover img{
	opacity: 1;
	-moz-opacity: 1; /* Firefox2 */
	filter: alpha(opacity=80); /* IE6/7/8 */
}

#top-inner{
    max-width: 960px;
    margin: 0 auto;
    position:relative;
}

#top-sp{
	width:100%;
	text-align:center;
}

#title-sp{
	margin-top:30px;
	padding:10px;
}

.dl-btn-list{
	text-align:center;
}

.dl-btn-list li{
	display:inline-block;
	margin:5px;
}

.top-left img{
	width:100%;
	max-width:602px;
}

.top-right{
	position:absolute;
	top:5%;
	right:-2em;
	text-align:center;
}

.top-right .pre-box img{
max-width:460px;
width:100%;
}

@media only screen and (max-width:768px){

#top{
	margin:0 auto;
}
	
}

 /* swiper-slide
-------------------------------------------*/
.swiper-slide img{
	max-width:100%;
	border-radius:8px;
	box-shadow:0px 0px 15px -1px #c30000;
}

.swiper-wrapper{
	margin-bottom:0.5em;
}

 /* sns-btn-list
-------------------------------------------*/
.sns-btn-list{
	margin-top:5%;
	text-align:center;
}

.sns-btn-list ul{
	margin-top:5%;
}

.sns-btn-list li{
display:inline-block;
line-height: 0;
}

.sns-btn-list .fb{
    vertical-align: top;
 }


/* contents
-------------------------------------------*/
#contents{
	/*display: none;*/
	max-width:960px;
	margin:1% auto 10% auto;
}

.contents_t_02{
	background: linear-gradient(to right, rgba(232,46,46,1) 0%,rgba(0,0,0,0) 81%);
	 /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	padding:5px;
}

.flex{
	display: -webkit-flex;
    display: flex;
	margin:0 auto;
}

.flex .left{
	-webkit-flex: 1;
    flex:1;
	margin-right:5px;
	margin-bottom:5px;
	padding:10px;
}

.flex .right{
	-webkit-flex: 1;
    flex: 1;
	margin-bottom:5px;
	padding:10px;
}

.flex .left,.flex .right,.flex .about,.flex .unit,.flex .faq,.flex .sns,.flex .wiki{
	border:solid 1px #fff;
	margin-bottom:5px;
	padding:10px;
}

.flex .about,.flex .unit,.flex .faq,.flex .sns{
	text-align:center;
	display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
	}

.flex .about,.flex .unit,.flex .faq{
	margin-right:5px;
}

.flex .about{
	-webkit-flex: 2;
    flex: 2;
}

.flex .unit{
	-webkit-flex: 2;
    flex: 2;
}

.flex .faq{
	-webkit-flex: 1;
    flex: 1;
}

.flex .sns{
	-webkit-flex: 2;
    flex: 2;
}

.flex .wiki{
	display:none;
	  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.flex .wiki .clear{
	text-indent:100%;
	white-space:nowrap; 
	overflow:hidden;
}

@media only screen and (max-width:768px){
.flex{
	-webkit-flex-direction: column;
    flex-direction: column;
}

.flex .left,.flex .right,.flex .about,.flex .unit,.flex .faq,.flex .sns,.flex .wiki{
	border-bottom:0;
	border-right:0;
	border-left:0;
	margin-bottom:0;
}

.flex .about,.flex .unit,.flex .faq{
	margin-right:0;
}

.flex .left{
	background:url(../img/contents_t_02_sp.png) no-repeat 10px 10px;
	background-size:100px;
	height:80%;
	padding: 10px 0 10px 0!important;
	margin:0;
}

.flex .right{
	background:url(../img/contents_t_04_sp.png) no-repeat 10px 10px;
	background-size:144px;
	height:80%;
	font-size:80%;
}

.flex .left img,.flex .about img,.flex .unit img,.flex .faq img{
	display:none;
}

.flex .about a,.flex .unit a,.flex .faq a,.flex .wiki a{
	display:block;
	height:44px;
	width:100%;
}

.flex .about{
	background:url(../img/contents_t_01_sp.png) no-repeat 10px center;
	background-size:278px;
	height:44px;
	padding:0;
	width:100%;
}

.flex .unit{
	background:url(../img/contents_t_03_sp.png) no-repeat 10px center;
	background-size:278px;
	height:44px;
	padding:0;
	margin:0;
}

.flex .faq{
	background:url(../img/contents_t_05_sp.png) no-repeat 10px center;
	background-size:278px;
	height:44px;
	padding:0;
	margin:0;
}

.flex .wiki{
	display:block;
	background:url(../img/menu_t_05_sp.png) no-repeat 10px center;
	background-size:278px;
	height:44px;
	padding:0;
	margin:0;
}

.contents_t_02{
	background: none;
	padding:0;
}
	
}

.sns-img img{
	padding:5px;
}


/* img
-------------------------------------------*/
.contents01 img{
	width:100%;
	max-width:259px;
	margin-bottom:10px;
}

.contents_t_01 img{
	width:100%;
	max-width:255px;
}

.contents_t_02 img{
	width:100%;
	max-width:131px;
}

.contents02{
	text-align:center;
}

.contents02 img{
	width:100%;
	max-width:335px;
	margin-bottom:10px;
}

.contents_t_03{
	text-align:right;
}

.contents_t_03 img{
	width:100%;
	max-width:270px;
}

.contents_t_04 img{
	width:100%;
	max-width:180px;
	margin-bottom:10px;
}

.contents_t_05 img{
	width:100%;
	max-width:71px;
}


/* newsTxt
-------------------------------------------*/
.newsTxt{
	padding:5px;
	overflow:auto;
	overflow-y:auto;
	overflow-x: hidden;
	height:90%;
	max-height:200px;
}

.newsTxt li{
	margin-bottom:5px;
	line-height:1.3em;
}

.newsTxt-sp{
	padding:10px;
	border-top:1px solid #fff;
	border-bottom:1px solid #fff;
}

.newsTxt-sp ul li{
	border-bottom:1px solid #ccc;
	padding:5px;
	font-size:75%;
}

.newsTxt-sp li a{
	display:block;
	height:22px;
	line-height:22px;
}

.newsTxt-sp a{
   position: relative;
}

.newsTxt-sp a::after{
	content:"";
	display: block;
	width:5px;
	height:5px;
	border-top:2px solid #ccc;
	border-right:2px solid #ccc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right:0;
	top:50%;
	margin-top:-5px;
}


@media only screen and (max-width:768px){
.newsTxt {
    padding: 0 !important;
    width: auto;
    margin: 30px 10px 10px 10px;
	max-height: 90px;
}

.newsTxt li {
    margin-bottom: 5px;
    line-height: 1.6em !important;
    font-size: 100% !important;
}
}


/* infoTxt
-------------------------------------------*/
.infoTxt{
	font-size:x-small;
}


/* cm-list
-------------------------------------------*/
.cm-list{
   border:1px solid #fff;
   max-width:960px;
   margin:0 auto;
   text-align:center;
   padding:10px;
   line-height:16px;
}

.cm-list p{
   margin:5px;
   }

.cm-list li{
   display:inline-block;
}


@media only screen and (max-width:768px){

.cm-list li img{
max-width:100%;
}

.cm-list{
	border-right:0 !important;
	border-left:0 !important;
}
}

/* link-list
-------------------------------------------*/
.link-list{
	margin:5px auto;
	text-align:center;
	border:solid #fff 1px;
	padding:10px;
}

.link-list li,.link-list-sp li{
	display:inline-block;
	margin:2px 0;
}

.link-list-sp{
	margin:10px 5px;
	text-align:center;
}

.link-list-max{
	width:100%;
}

.link-list-now{
	width:48%;
}

@media only screen and (max-width:768px){
.link-list{
	margin:0 auto;
	text-align:center;
	border-top:none;
	border-left:none;
	border-right:none;
	padding:10px;
}


.link-list-max{
	width:auto;
}

.link-list-now{
	width:100%;
}

}

/* news
-------------------------------------------*/
.contents-container{
	max-width: 960px;
	margin:0 auto;
}

.contents-container h1{
	text-align:center;
	margin:10% 0 5% 0;
}

.news-list dl dt {
    float: left;
    clear: left;
    padding-top: 7px;
}

.news-list dl dd {
    margin-left: 7.5em;
    padding-top: 7px;
	padding-bottom: 7px;
}

.news-list li{
	border-bottom:1px solid #fff;
}

.news-box-date{
	color:#999;
}

.news-box-title{
	color:#FFD262;
}

.news-box-txt{
	padding:10px;
}


/* unit
-------------------------------------------*/
.unit-list{
	text-align:center;
}

.unit-list li{
	display:inline-block;
	margin:10px 3px;
}

.unit-list img{
	width:100%;
	max-width:200px;
}

.unit-info{
	background:#000;
	width:800px;
	margin:0 auto;
}

.unit-info-l{
	float:left;
}


/* footer
-------------------------------------------*/
footer{
	margin-top:10%;
}


/* menu-list-sp
-------------------------------------------*/
.menu-list-sp li{
	padding:0 0 0 10px;
	height:44px;
	border-top:solid 1px #fff;
	border-bottom:solid 1px #fff;
	margin:5px 0;
}

.menu-list-sp li:last-child{
	border-bottom:solid 1px #fff;
}

.menu-list-sp li a{
	display:block;
	height:44px;
	line-height:44px;
}

.menu-list-sp a{
   position: relative;
}

.menu-list-sp a::after{
	content:"";
	display: block;
	width:7px;
	height:7px;
	border-top:3px solid #ccc;
	border-right:3px solid #ccc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right:10px;
	top:50%;
	margin-top:-5px;
}


.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}



/* slicknav
-------------------------------------------*/
.slicknav_menu {
	display:none;
	background-color:transparent !important;
}

.slicknav_nav{
background: #000;
}

.slicknav_btn{
	background-color:transparent !important;
}

@media screen and (max-width: 50em) {
	/* #menu is the original menu */
	.js #menu {
		display:none;
	}
	
	.js .slicknav_menu {
		display:block;
	}
}

/* section
-------------------------------------------*/
.section {
    padding: 0 20px;
	margin:20px 0;
}

.section.list {
    padding-top: 15px;
    background: rgba(51,51,51,0.8);
}

.section-title{
	font-size:120%;
	margin-bottom:15px;
	border-bottom:3px solid #666;
}

section .section-inner {
    padding-bottom: 0;
}

 /* qs-nav-list
-------------------------------------------*/
.qs-nav-list a{
	text-decoration:underline;
}

.qs-nav-list > li {
    vertical-align: top;
    width: 49.5%;
    margin-bottom: 10px;
	display: inline-block;
}

.qs-nav-list > li .link-wrap {
    position: relative;
    margin: 0 10px;
    padding: 0 0 10px 20px;
}

.qs-nav-list > li .link-wrap:before {
    content: "Q";
    position: absolute;
    top: 0;
    left: 0;
    color: #24ceff;
    font-size: 110%;
    font-weight: bold;
}


 /* qs-contents
-------------------------------------------*/
.section.qs-contents {
    padding: 0;
}

.section.qs-contents .section-title {
    padding: 16px 12px;
    font-size: 150%;
	color:#fff;
	border-bottom:2px dotted #fff;
}


 /* qs-list
-------------------------------------------*/
.qs-list .qs-item {
    padding: 20px 0;
    border-bottom: 1px solid #ccc;
}

.qs-list .qs-info {
    margin: 0 20px;
}

:not(.oldie) .qs-list .qs-info .qs-text {
    min-height: 35px;
}
.qs-list .qs-info .qs-text {
    position: relative;
    padding: 0 0 6px 20px;
    font-weight: bold;
}

.qs-list .qs-info .as-text {
    position: relative;
    margin-bottom: 10px;
    padding-left: 20px;
}

.qs-list .qs-info .qs-text:before {
    content: "Q";
    position: absolute;
    top: 0;
    left: 0;
    color: #24ceff;
}

.qs-list .qs-info .as-text:before {
    content: "A";
    position: absolute;
    top: 0;
    left: 0;
    color: #ff0000;
    font-weight: bold;
}

 /* back-link
-------------------------------------------*/
.back-link {
    padding: 20px 0;
    text-align: right;
}


 /* about
-------------------------------------------*/
.story h2{
margin:10px;
font-size:120%;
}


 /* other
-------------------------------------------*/
.content .other{
margin-top:10%;
padding:0 10px;
}

.content .other h2{
font-size:110%;
margin-bottom:10px;
}

.content .other dl{
padding:10px;
}

.content .other dt{
margin-top:10px;
}

.content .other dd{
padding:0 20px;
}


/* invite
-------------------------------------------*/
#invite-content header img{
width:100%;
}

#invite-content h1{
text-align:center;
font-size:1.5rem;
}

#invite-content .invite-info{
margin:10px;
}

#invite-id{
margin:10px auto;
border:1px solid #ccc;
padding:10px;
width:80%;
text-align:center;
}

#invite-gift{
padding:10px;
border:1px solid #cc9933;
background-color:#000;
}

#invite-gift h2{
text-align:center;
color:#ffff33;
font-size:1.2rem;
}

#invite-gift dt{
margin-top:5px;
margin-bottom:3px;
border-bottom:1px solid #cc9933;
font-weight:bold;
color:#ff0066;
}

#invite-gift dd{
margin-left:10px;
}

#invite-note{
margin:10px 0;
}

#invite-note p{
color:#ff0000;
}

#invite-content .btn{
text-align:center;
font-weight:bold;
font-size:1.1rem;
background-color:#ff3333;
border-radius:6px;
padding:12px;
width:80%;
margin:20px auto 30px auto;
}


/* Media Queries
-------------------------------------------*/
@media only screen and (max-width:768px){

.contents01 img{
	display:none;
}

.contents_t_01 img{
	display:none;
}

.contents_t_04 img{
	display:none;
}

.infoTxt{
    margin: 30px auto 5px 10px;
	font-size:100% !important;
}	

.contents02 img{
	display:none;
}

.contents_t_03 img{
	display:none;
}


.contents_t_05 img{
	display:none;
}

.contents_t_06 img{
	display:none;
}


.contents-container{
	width:100%;
}

.qs-nav-list > li {
    width: 100%;
}

.top-left img{
	display: none;
}

.top-right{
	position:static;
	float:none;
	text-align:center;
}

.top-right p img{
	width:300px;
}

.txt-s{
text-align:left;
padding:10px;
}

}

/*
-------------------------------------------*/
body{
background:#000;
}

.ul-list{
margin:10px auto;
text-align:center;
}

.ul-list li{
display:inline-block;
margin:5px;
}

.ul-list li img{
width:213px;
}

.unit-img{
//float:left;
text-align:center;
}

.unit-img img{
width:500px;
}

.unit-box{
background:#000;
color:#fff;
width:80%;
margin:20px auto;
}

.unit-name{
padding:0 10px 0 10px;
overflow: auto;
margin-top:10px;
}

.unit-name .small{
font-size:90%;
color:#999;
}

.unit-name h1{
font-size:110%;
}

.unit-name p{
margin:10px 0;
}

.unit-box:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}

#fancybox-content {
border: 0px solid #666 !important;
}

#fancybox-outer{
background: #000 !important;
}

@media only screen and (max-width:550px){
.unit-box{
width:90%;
margin:10px auto;
}

.unit-img{
float:none;
text-align:center;
}

.unit-img img{
width:100%;
max-width:213px;
}

}