@charset "utf-8";

/*
-----------------------------------------------
Jam Design RESET CSS 1.2
▼姫路城・熊本城 2017.2
----------------------------------------------- */

@font-face {
font-family:"YuGothic-M";
font-weight:normal;
src:local("YuGothic-Medium"),
local("Yu Gothic Medium"),
local("YuGothic-Regular");
}
@font-face {
font-family:"YuGothic-M";
font-weight:bold;
src:local("YoGothic-Bold"),
local("Yu Gothic Bold"),
local("Yu Gothic");
}

* {
box-sizing:border-box;
margin:0;
padding:0;
border:0;
outline:0;
font-style:normal;
word-break:normal;
word-wrap:break-word;
font-feature-settings:"halt";
}
body {
-webkit-text-size-adjust:100%;
font-family:-apple-system,blinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN",YuGothic-M,"Helvetica Neue","Helvetica","Arial",sans-serif;
font-size:16px;
line-height:1.7;
color:#333;
}

article,aside,figure,footer,header,main,menu,nav,section {
display:block;
}
audio,canvas,video {
display:inline-block;
}
img {
vertical-align:bottom;
}
input,select,textarea {
font-size:100%;
vertical-align:middle;
}
ul,ol {
list-style-type:none;
}
h1,h2,h3,h4,h5,h6,strong {
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
font-feature-settings:"palt";
letter-spacing:.01em;
}
table {
border-collapse:collapse;
border-spacing:0;
}

a {
color:#08c;
text-decoration:none;
}
a:hover,a:active {
text-decoration:underline;
}
a img {
transition:opacity 0.5s ease-in-out;
}
a:hover img {
opacity:0.8;
}
ruby {
font-feature-settings:"pwid";
}

/* clearfix */
.cf:after {
display:block;
content:"";
clear:both;
}

.sponly {display:none;}
.txtL {text-align:left;}
.txtR {text-align:right;}
.center {text-align:center;}
.soroe {text-align:justify; word-break:break-all;}
.nowrap {white-space:nowrap;}
.imgL {float:left; margin:0 16px 4px 0;}
.imgR {float:right; margin:0 0 4px 16px;}
.btm8 {margin-bottom:8px;}
.btm16 {margin-bottom:16px;}
.btm24 {margin-bottom:24px;}
.btm32 {margin-bottom:32px;}
.btm48 {margin-bottom:48px;}
.inL {
display:inline-block;
font-feature-settings:"pwid";
}

.harf {
opacity:0.4;
}

#header img {
width:100%;
height:auto;
}
#chara {
position:relative;
margin:-80px auto 32px;
width:900px;
}
@media (max-width:767px){
#chara {
position:relative;
margin:-40px 14px 32px;
width:auto;
}

}

@media (max-width:600px){
#chara {
display:none;
}

}


/*
-----------------------------------------------
▼PCのみ
----------------------------------------------- */
@media (min-width:769px){
html,body {
height:100%;
}
body {
background:url(../img/bg.png) ;
}
#wrapper {
min-width:948px;
position:relative;
min-height:100%;
padding-bottom:60px;
}

}

/*
-----------------------------------------------
▼スマホ基本
----------------------------------------------- */
@media (max-width:767px){
body {
font-family:sans-serif;
font-size:18px;
overflow-x:hidden;
}
img {
max-width:100%;
height:auto;
}
.pconly {display:none;}
.sponly {display:block;}

}

@media (max-width:600px){
#header {
margin-bottom:32px;
}

}


/*
-----------------------------------------------
▼nav
----------------------------------------------- */
#nav {
margin-right:auto;
margin-left:auto;
width:900px;
}
#nav ul {
margin-right:-37px;
margin-left:-37px;
font-size:0;
}
#nav li {
display:inline-block;
vertical-align:top;
font-size:18px;
width:50%;
position:relative;
min-height:1px;
padding:0 37px 48px;
}
#nav li img {
max-width:100%;
height:auto;
}

@media (max-width:736px) {
#nav {
margin-right:14px;
margin-left:14px;
width:auto;
}
#nav ul {
margin-right:-8px;
margin-left:-8px;
}
#nav li {
font-size:16px;
padding:0 8px 16px;
}

}

@media (max-width:414px) {
#nav ul {
margin-right:0;
margin-left:0;
}
#nav li {
width:100%;
padding:0 0 24px;
}

}

#footer {
background:#369;
height:40px;
position:absolute;
bottom:0;
width:100%;
}
#footer .in {
margin-right:auto;
margin-left:auto;
width:900px;
color:#fff;
font-family:Helvetica,Arial,Verdana,sans-serif;
text-align:right;
padding:8px 0 0;
font-size:14px;
}

@media (max-width:767px){
#footer {
margin-top:32px;
height:auto;
position:static;
}
#footer .in {
margin-right:14px;
margin-left:14px;
width:auto;
text-align:left;
padding:12px 0;
font-size:12px;
}

}



/* css_end */
