/* */
@font-face {
font-family: "YuGothic M";
src: local("Yu Gothic Medium"),
     local("Yu Gothic");
font-weight: 500;
}

*{
letter-spacing: 0.2em;
font-size: 18px;
line-height: 2em;
/*  英数字はHelvetica、日本語は游ゴシックが適用される。 */
font-family: Helvetica , "游ゴシック", sans-serif;
}
body{
width: 100%;
margin: 0;
background-image:url("../img/bg.jpg");
background-size:cover;
}
img{
max-width: 100%;
height: auto;
}
ul{
margin: 0;
}
p{
margin: 0;
padding: 0;
}
a{
color: #333;
}
a:hover{
color: #333;
opacity: 0.8;
}
a:visited{
color: #333;
}
.all{
overflow:hidden;
}

/*Navbar pc*/
.navbar{
 padding: 0 10em;
 text-align: center;
 background-image: url("../img/menu_bg.png");
 background-size: cover;
}
.nav-link {
 display: block;
 padding:0;
}
.navbar a{
 text-decoration: none;
 color: #ffffff;
 font-weight: bold;
}
.navbar a:hover {
 text-decoration: none;
 color: #ffffff;
 font-weight: bold;
 filter: alpha(opacity=50);
 -moz-opacity: 0.5;
 opacity: 0.5;

}
.navbar span{
 color: #ffffff;
 font-weight: bold;
 font-size: 25px;
}
.line{
  background-color:#fff;
  height: 20px;
}

/*Navbar sp*/
#nav-drawer {
 position: relative;
 margin-left: 0;
 margin-top: 0;
 padding: 10px;
 background-image: url("../img/menu_bg.png");
 text-align: right;
 margin: 0;
}
/*チェックボックス等は非表示に*/
.nav-unshown {
 display: none;
}
/*アイコンのスペース*/
#nav-open {
 display: inline-block;
 top: 40px;
 right: 20px;
 width: 30px;
 height: 12px;
 vertical-align: middle;
}
/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
 position: absolute;
 height: 3px;/*線の太さ*/
 width: 25px;/*長さ*/
 border-radius: 3px;
 background: #fff;/*線の色*/
 display: block;
 content: '';
 cursor: pointer;
}
#nav-open span:before {
 bottom: -8px;
}
#nav-open span:after {
 bottom: -16px;
}
/*閉じる用の薄黒カバー*/
#nav-close {
 display: none;/*はじめは隠しておく*/
 position: fixed;
 z-index: 99;
 top: 0;/*全体に広がるように*/
 left: 0;
 width: 100%;
 height: 100%;
 background: black;
 opacity: 0;
 transition: .3s ease-in-out;
}
/*中身*/
#nav-content {
 overflow: auto;
 position: fixed;
 top: 0;
 right: 0;
 z-index: 9999;/*最前面に*/
 width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
 max-width: 330px;/*最大幅（調整してください）*/
 height: 100%;
 background: #005B32;/*背景色*/
 transition: .3s ease-in-out;/*滑らかに表示*/
 -webkit-transform: translateX(130%);
 transform: translateX(130%);/*左に隠しておく*/
}
/*チェックが入ったらもろもろ表示*/
#nav-input:checked~#nav-close {
 display: block;/*カバーを表示*/
 opacity: .5;
}
#nav-input:checked~#nav-content {
 -webkit-transform: translateX(0%);
 transform: translateX(0%);/*中身を表示（右へスライド）*/
 box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
 z-index: 9998;
}
/*ハンバーガーメニューの中身もろもろ*/
.hamburger-top {
 position: relative;
 background-image: url("../img/menu_bg.png");
 text-align: center;
 padding: 2.5px;
 font-size: 22px;
 font-weight: bold;
 text-align: center;
 letter-spacing: 5px;
 color: #fff;
}
.humburger-top .cancel{
 display: inline-block;
 padding: 10px 3px;
}
.cancel {
 display: inline-block;
 position: absolute;
 cursor: pointer;
 top: 10px;
 right: 20px;
 width: 5px;
 height: 30px;
 background: #fff;
 transform: rotate(45deg);
 z-index: 99;
}
.cancel:before {
 display: block;
 content: "";
 position: absolute;
 top: 50%;
 left: -13px;
 width: 31px;
 height: 5px;
 margin-top: -3px;
 background: #fff;
}
.menu-container{
 padding: 5px 10px;
 color: #fff;
}
.menu-container li {
 float: none;
 font-size: 15px;
 padding: 10px 15px 10px 15px;
 list-style: none;
 text-align: center;
}
.menu-container li img{
 width: 80%
}
.menu-container li:last-child {
 border: none;
}
.menu-container li a {
 text-decoration: none;
 color: #fff;
 font-weight: bold;
}
.menu-container li a:hover {
 text-decoration: none;
 color: #ffffff;
 font-weight: bold;
 filter: alpha(opacity=70);
 -moz-opacity: 0.7;
 opacity: 0.7;
}

/*logo*/
#logo{
 margin: 0;
 text-align: center;
}
#logo img{
margin: 0;
vertical-align: top;
 width: 100%;
 line-height: 1.0em;
}

/*contents*/
.contents{
 margin-top: 3em;
 margin-bottom: 5em;
 text-align: center;
}

/*story*/
#story{
 margin-top: 7em;
 margin-bottom: 5em;
 position: relative;
}
.story {
 padding: 1em 7em 1em 1.5em;
 margin: 2em 1em;
 border: double 10px #ffd700;
 border-radius: 20px;
 background: #fff;
 opacity: 0.8;
 text-align: left;
 font-weight: bold;
}
.story p {
 margin: 0;
 padding: 0;
}
.story img {
 margin: 0;
 padding: 0;
}
.ginchan{
 position: absolute;
 width: 20%;
 right: 0;
 bottom: -30px;
}

/*howto*/
#howto .qr{
 position: relative;
 width: 70%;
 padding: 10em;
 margin: 0 auto;
 background-color: #fff;
 border-radius: 10px;
}
#howto .qr .code{
 position: absolute;
 top: 45px;
 left: 60px;
}
#howto .qr .code a{
 font-weight: bold;
 font-size: 30px;
}
#howto .qr .code img{
 width: 60%;
}
#howto .qr .linebtn{
 position: absolute;
 top: 140px;
 right: 70px;
}

/*attention*/
.attention {
 padding: 1em 1.5em;
 margin: 0 1em 2em;
 border: double 10px #ffd700;
 border-radius: 20px;
 background: #fff;
 opacity: 0.8;
 text-align: left;
 font-weight: bold;
}
.attention p {
 margin: 0;
 padding: 0;
}

/*footer*/
footer{
 text-align: center;
 padding-top: 3em;
}
}
