@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------------
reset
----------------------------------------------------------*/
html{
overflow-y: scroll;
font-size: 10px;
}
@media (max-width: 768px){
html{
font-size: 2.666vw;
}
}

body{
width: 100%;
color: #222;
font-size: 1.6rem;
font-weight: 500;
line-height: 1.6;
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W6", 'Hiragino Kaku Gothic Pro', "メイリオ", 'Meiryo', "ＭＳ Ｐゴシック", 'MS PGothic', Helvetica, Arial, sans-serif;
-webkit-text-size-adjust: 100%;
margin: 0;
padding: 0;
}
@media (max-width: 768px){
body{
min-width: 320px;
}
}

h1,h2,h3,h4,h5,h6{
font-size: 1.6rem;
margin: 0;
}

p{
margin: 0;
}

ul,ol{
margin: 0;
padding: 0;
}

ul{
list-style: none;
}

ol{
list-style-position: inside;
}

table{
margin:0;
border-collapse: collapse;
border-spacing: 0;
}
tr,th,td{
font-weight: normal;
margin: 0;
padding: 0;
}
dl,dt,dd{
margin: 0;
padding: 0;
}

hr{
display:none;
}

img{
width: 100%;
height: auto;
border: 0;
vertical-align: middle;
}

li img{
vertical-align: middle;
}

button,input,select,textarea{
font-size: 1.6rem;
vertical-align: middle;
}

button{
display: inline;
border: none;
padding: 0;
background: none;
}

em,address,small{
font-style: normal;
}

em{
font-weight: bold;
}

article,aside,dialog,figure,footer,header,menu,nav,section,mark,audio,video,main{
display: block;
margin: 0;
padding: 0;
border: 0;
outline: 0;
}

fieldset{
margin: 0;
padding: 0;
border: none;
}

nav ul{
list-style: none;
}

*{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

.clearfix::after{
content: "";
height: 0;
display: block;
clear: both;
visibility: hidden;
}

.pc_dsb{display: block!important;}
.pc_dsn{display: none!important;}
.sp_dsb{display: none!important;}
.sp_dsn{display: block!important;}
@media (max-width: 768px){
.pc_dsb{display: none!important;}
.pc_dsn{display: block!important;}
.sp_dsb{display: block!important;}
.sp_dsn{display: none!important;}
}

a{
text-decoration: none;
color: inherit;
display: inline-block;
transition: 0.3s;
}
@media (min-width: 769px){
a:hover{
opacity: 0.7;
}
}

/*----------------------------------------------------------
wrap
----------------------------------------------------------*/
#wrap{
overflow: hidden;
}

/*----------------------------------------------------------
header
----------------------------------------------------------*/
#header .logo{
width: 1000px;
text-align: right;
margin: 0 auto;
padding: 20px 0 0;
}
#header .logo a{
width: 220px;
}
@media (max-width: 768px){
#header .logo{
width: 100%;
padding: 1.5rem 2.0rem 0;
}
#header .logo a{
width: 14.7rem;
}
}

/*----------------------------------------------------------
footer
----------------------------------------------------------*/
#footer{
background: #222;
padding: 15px 0;
}
#footer .copyright{
width: 1000px;
color: #fff;
font-size: 1.2rem;
text-align: center;
margin: 0 auto;
}
@media (max-width: 768px){
#footer{
padding: 1.0rem 0;
}
#footer .copyright{
width: 100%;
font-size: 1.0rem;
}
}