*{margin:0;padding:0}
div,h1,h2,h3,p,ul,li,input,textarea,table,tr,th,td,footer,header,nav,section{box-sizing:border-box}
input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}
a{text-decoration:none;outline:none}
h1,h2,h3,h4,h5,h6{font-size:100%}
a img{border-style:none}
ul,li{list-style-type:none}

html{
font-size:70%
}
body{
background:#000;/* 背景 */
color:#ffe1e1;/* 文字色 */
font-size:1.2em;/* 文字の大きさ */
font-family:Verdana,Roboto,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
letter-spacing:.1em;
line-height:1.5;
text-align:center;
overflow-wrap:break-word;
word-wrap:break-word
}
a{
color:#ffe1e1;
padding-bottom: 0.1px;
border-bottom: dotted 1px
}
a:hover{
color:#555
}
/*--------------------------------------------------------
基本
--------------------------------------------------------*/
#wrapper{
margin:20px;
text-align:left
}
#main-wrap{ 
width:100%;
float:right;
margin-left:-250px /* (※1)と同じだけマイナス */
}  
#rightcolumn{
position:relative;
margin-left:250px /* (※1)と同じ */
} 
#rightcolumn-inner{
padding:0 20px
} 
#rightcolumn a{
text-decoration:none;
}
#rightcolumn a:hover{
background:rgba(255, 0, 0, 0.8);
color:#000;
transition:.5s
}
#leftcolumn{
width:250px; /* (※1) */
float:left
}
#footer{
background-color:#000;
color:#000;
font-size:1em;
margin:30px 0 0;
text-align:center
}
/*--------------------------------------------------------
メニュー
--------------------------------------------------------*/
#menu{
display:block;
line-height:1;
margin:0 auto 20px
}
nav li a,nav li span{
background:#000;/* メニュー(白)の背景色 */
color:#ffe1e1;/* メニュ(白)ーの文字色 */
border:1px solid #ffe1e1;
display:block;
margin:10px 0 0;
padding:5px 20px;/* 一列の高さはここで調節 */
position:relative
}
nav li .list01{
background:#ffe1e1;/* メニュー(黒)の背景色 */
color:#000/* メニュー(黒)の文字色 */
}
nav li a:hover,nav li span:hover{
background-color:#ba0000;
color:#000;
transition:.6s
}
.sub-menu{
display:none;
overflow:hidden
}
.sub-menu li a{
background:#555
}
.sub-menu li a:after{
display:none
}
nav li span:after{
border-top:1px solid #555; /* メニュー「>」の色 */
border-right:1px solid #555; /* メニュー「>」の色 */
content:"";
display:block;
margin-top:-3px;
position:absolute;
top:50%;right:10px;
height:5px;width:5px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
transition:.5s
}
nav li span.open:after{
-ms-transform:rotate(135deg);
-webkit-transform:rotate(135deg);
transform:rotate(135deg)
}
#open{display:none}
/*--------------------------------------------------------
ページ上部へのリンク、著作権表示
--------------------------------------------------------*/
#pagetop {
background:rgba(255, 0, 0, 0.8);/* 背景 */
color:#000;/* 色 */
height:50px;width:50px; /* 大きさ */
border-radius:30px;
box-sizing:border-box;
display:block;
line-height:16px;
padding-top:25px;
position:fixed;
text-align:center;
bottom:-80px;
z-index:10
}
#pagetop:before {
content:'\25B2';
font-size:14px;
position:absolute;
left:0;top:10px;
width:100%
}
#pagetop:hover {
background:rgba(255, 0, 0, 0.5)
}
#fl a {
display:inline-block;
margin:10px 0
}
/*--------------------------------------------------------
見出し、枠、線
--------------------------------------------------------*/
h1{
background-color:#000;
color:#ffe1e1;
font-size:1.8em;
margin:0 0 01em;
padding:.2em .5em;
text-shadow:5px 5px 1px #990000
}
h1::before{
content:url(image/banner50.jpg);
vertical-align:middle
}
h2{
background-color:#ba0000;
color:#ffe1e1;
font-size:1.1em;
font-weight:400;
margin:1em 0 2em;
padding:.2em .5em;
border-bottom: 1px dashed #ffe1e1;
border-left:1px dashed #ffe1e1;
position:relative;
text-align:left
}
h2::after{
border-width:0 10px 10px 0;
border-style:solid;
border-color:#ffe1e1 #000
#ffe1e1 #ffe1e1;
box-shadow:-1px 1px 2px rgba(255, 255, 255, 0.1);
content:'';
position:absolute;
right:0;
top:0;
width:0
}
h3{
border-bottom:1px solid;
font-size:1.2em;
margin:20px 0
}
dt{
background:#ba0000;
border-radius:5px;
color:#000;
font-weight:700;
display:inline-block;
float:left;
clear:both;
margin:0 0 5px;padding:0 5px;
width:10em
}
dd{
border-bottom:dotted 1px #989280;
margin:0 0 5px 12em
}
em{
background:#ba0000; /* Ie9 */
background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #ffe1e1), color-stop(0.49, #ffe1e1), color-stop(0.5, #ba0000), color-stop(1, #ba0000));
background:-webkit-linear-gradient(transparent 50%, #ba0000 0%);
background:linear-gradient(transparent 50%, #ba0000 0%)
}
input,textarea{
background:#ba0000;
border:1px solid;
margin:3px 0;
width:100%
}
textarea{
height:50px
}
hr{
display:block;
border:0;  
border-top:1px solid #555;
margin:1em 0;
padding:0;
height:1px
}
.marker{
background:#ba0000;
padding:1px 5px
}
.dcline{
border-left:8px solid #ba0000;
margin:5px 0;
padding:3px
}
.textbox{
border:2px solid;
margin:10px 0;
padding:3px;
text-align:center
}
.title{
color:#ba0000;
font-size:1.5em;
font-weight:700;
margin:2em 0;
text-align:right
}
.txt{
border-left:1px solid;
margin:1em;
padding:0 0 0 1em
}
.frame{
background:#ba0000;
padding:7px
}
.cf:before,.cf:after{
content:" ";
display:table
}
.cf:after{
clear:both
}
.r{
text-align: right
}
.c{
text-align: center
}
.linknoneline{
border-bottom: none
}
/*--------------------------------------------------------
スマホ、タブレット用
横幅600pxで切り替え
--------------------------------------------------------*/
@media screen and (max-width: 600px){
body{
font-size:1.2em
}
#wrapper{
margin:20px 20px 60px;
position:relative /* メニュー表示位置の基準 */
}
#main-wrap{
float:none;
margin-left:0
}
#rightcolumn{
margin-left:0;
position:static
}
#rightcolumn-inner{
padding:20px 0
} 
#leftcolumn{
float:none;
width:100%
}
#fl{text-align:center}
dt{float:none;clear:none;width:auto}
dd{margin-left:20px}

/*--------------------------------------------------------
スマホ、タブレット用メニュー
--------------------------------------------------------*/
/* メニュー */
#menu{
background:#ffe1e1;
display:none;
position:absolute; /* 表示位置固定 */
top:90px;left:0; /* 位置 */
width:100%;
z-index:10
}
nav li{
display:inline-block;
position:relative;
width:33.333%; /* 一列に3個 4個にするなら25% */
vertical-align:top
}
nav li a,nav li span{
display:block;
margin:0;
padding:15px 20px; /* 一列の高さはここで変更 */
}
/* サブメニュー */
.sub-menu{
position:absolute;
width:100%;
z-index:30
}
.sub-menu li{
display:block;
width:100%
}
/* メニューを開くボタン */
#open{
background:#000; /* 背景色 */
color:#ffe1e1;
display:inline-block;
position:absolute;
border: 1px dashed #000;
border-radius: 10px;
text-align:center;
width:50px;height:50px; /* 大きさ */
top:5px;right:5px; /* 位置 */
z-index:20
}
.open-text{
position:absolute;
bottom:0;left:0;
width:100%
}
#open-icon,#open-icon:before,#open-icon:after{
background:#ffe1e1 /* 線の色 */
}
#open-icon{display:block;margin:-1px 0 0 -10px;position:absolute;top:20px;left:50%;height:2px;width:20px}
#open-icon:before,#open-icon:after{content:"";display:block;position:absolute;top:50%;left:0;height:2px;width:20px;transition:.3s}
#open-icon:before{margin-top:-8px}
#open-icon:after{margin-top:6px}
#open .close{background:transparent}
#open .close:before,#open .close:after{margin-top:0}
#open .close:before{-ms-transform:rotate(-45deg);-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}
#open .close:after{-ms-transform:rotate(-135deg);-webkit-transform:rotate(-135deg);transform:rotate(-135deg)}
}
/*--------------------------------------------------------
スマホ、タブレット用メニュー
横幅480pxで切り替え
--------------------------------------------------------*/
@media screen and (max-width: 480px){
nav li{
width:100%
}
nav li a,nav li span{
padding:10px 20px; /* 一列の高さはここで変更 */
}
.sub-menu{
position:static
}
}
