html,body,div,span,iframe,h1,h2,h3,h4,p,pre,del,em,img,b,i,dl,dt,dd,ol,ul,li,form,table,tbody,tr,th,td,article,aside,footer,header,nav,section{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;box-sizing:border-box}
article,aside,footer,header,nav,section{display:block}
body{line-height:1;overflow-wrap:break-word;word-wrap:break-word}
input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;vertical-align:middle;box-sizing:border-box}
a{margin:0;padding:0;text-decoration:none;outline:none;font-size:100%;vertical-align:baseline;background:transparent}
a img{border-style:none}
ul,li{list-style-type:none}
.cf:before,.cf:after{content:" ";display:table}.cf:after{clear:both}

/* ===================================
背景,文字,リンク設定
=================================== */

html{
font-size:62.5%
}
body{
background:#fff; /* 背景 */
color:#000; /* 文字色 */
font-family:'Segoe UI','游ゴシック Medium','Yu Gothic Medium','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
font-size:1.3em; /* 文字の大きさ */
letter-spacing:.1em;
line-height:1.5;
padding:0 10px;
text-align:center
}
/*  リンク
------------------------------ */
a{
color:inherit
}
a:hover{
color:#00baa4;
background:#00baa4;
}
#main-wrap a,#leftcolumn a{
color:#00baa4;
text-decoration:underline
}
#main-wrap a:hover,#leftcolumn a:hover{
color:#ccc
}

/* ===================================
基本
=================================== */

#wrapper{
margin:20px auto;
text-align:left;
max-width:1000px /* 最大幅 全体表示がよければ不要 */
}
header{
padding:0 0 20px;
font-size:1.5em
}
#main-wrap{ 
width:100%;
float:right;
margin-left:-250px /* #leftcolumnのwidthと同じだけ左に余白 */
}  
#rightcolumn{
position:relative;
margin-left:250px /* #leftcolumnのwidthと同じかそれ以上 */
}
#rightcolumn-inner{
padding:0 0 20px 20px
} 
#leftcolumn{ 
float:left;
margin:0 auto;
width:250px
}
#leftcolumn-inner{
padding:0 20px 20px 0;
text-align:center
} 
footer{
padding:20px 0 0;
text-align:center
}

/* ===================================
メニュー
=================================== */

#menu{
margin:0 auto;
text-align:center
}
nav li{
display:inline-block;
margin:10px
}
nav li a{
border:2px solid #000;
display:table-cell;
vertical-align:middle;
text-align:center;
padding:5px;
position:relative; /* 必須 */
height:80px;width:80px;max-width:80px;
box-sizing:border-box
}
nav li:nth-child(odd){
background:#000;
color:#fff
}
nav li:nth-child(even){
background:#fff;
color:#000
}
nav li a:hover{
background:#00baa4;
color:#fff
}
#open{
display:none
}

/* ===================================
著作権表示、ページ上部へのリンク
=================================== */

#pagetop
background:rgba(0,0,0,.6);
border-radius:5px;
height:50px;width:50px;
position:fixed;
bottom:20px;right:20px
}
.arrow{
border-left:3px solid #fff;
border-top:3px solid #fff;
position:absolute;
top:40%;left:36%;
height:14px;width:14px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg)
}
#fl a{
color:#fff;
background:#000;
border-radius:5px;
display:inline-block;
margin:20px 0;
padding:5px
}

/* ===================================
見出し、枠、線
=================================== */

h1{
font-size:2em;
letter-spacing:.1em;
margin:.5em 0;
text-shadow:5px 5px 1px #ccc
}
h2{
background:#000;
color:#fff;
font-size:1.2em;
margin:1em 0 2em 0;
padding:10px;
position:relative
}
h2::after{
border:8px solid transparent;
border-top:8px solid #000;
content:'';
position:absolute;
top:100%;left:30px;
height:0;width:0
}
h3{
border-bottom:2px solid;
font-size:1.2em;
letter-spacing:.1em;
margin:20px 0
}
dt{
font-weight:700;
padding:0 0 1em 0
}
dd{
border-bottom:1px solid;
margin:0 0 1em 1em
}
em{
font-style:normal;
font-weight:700
}
input,textarea{
background:#fff;
border:2px solid;
margin:3px 0;
width:100%
}
textarea{
height:50px
}
hr{
display:block;
border:0;  
border-top:1px solid #ccc;
margin:1em 0;
padding:0;
height:1px
}
.marker{
background:#ea75ac;
background: -webkit-linear-gradient(rgba(234,117,172,0) 50%, #ea75ac 0%);
background:linear-gradient(rgba(234,117,172,0) 50%, #ea75ac 0%)
}
.dcline{
border-left:8px solid #000;
margin:5px 0;
padding:3px
}
.textbox{
border:2px solid;
margin:10px 0;
padding:3px;
text-align:center
}
.title{
color:#00baa4;
font-size:1.5em;
font-weight:700;
letter-spacing:.1em;
margin:2em 0;
text-align:right
}
.txt{
border-left:1px solid #999;
margin:1em;
padding:0 0 0 1em
}
.frame{
background:#00baa4;
border-radius:3px;
padding:7px
}
/*  文字の下の線
------------------------------ */
/* bodyのfont-sizeを変更したら数値を変更 */
/* 2.6 = font-size:1.3 x line-height:2 */
.line{
padding-bottom:0.1em;
background-color:#fff;
background-image:-webkit-linear-gradient(left, #fff 1.1px, rgba(255,255,255,0) 1px), -webkit-linear-gradient(top, #666 1.1px, rgba(102,102,102,0) 1px);
background-image:linear-gradient(to right, #fff 1.1px, rgba(255,255,255,0) 1px), linear-gradient(to bottom, #666 1.1px, rgba(102,102,102,0) 1px);
background-size:2px 2.6rem;
line-height:2
}

/* ===================================
スマホ、タブレット用
横幅600pxで切り替え
=================================== */

@media screen and (max-width: 600px){
body{
font-size:1.5em;
padding:0
}
header{
padding: 0 0 10px
}
#wrapper{
margin:20px 20px 50px;
position:relative
}
#menu{
padding-top:40px /* ボタン分空ける */
}
#main-wrap{
float:none;
margin-left:0
}
#rightcolumn{
margin-left:0;
position:static
}
#rightcolumn-inner{
padding:20px 0
}
#leftcolumn{
float:none;
width:100%
}
#leftcolumn-inner{
padding:0;
text-align:left
}
footer{
padding:50px 0
}
#main-wrap a:not(.bg-none){
color:#fff;
background:#00baa4;
border-radius:5px;
display:inline-block;
margin:3px 3px 3px 0;
padding:3px;
text-decoration:none
}
nav li{
margin:5px
}
/*  文字の下の線
------------------------------ */
/* bodyのfont-sizeを変更したら数値を変更 */
/* 3 = font-size:1.5 x line-height:2 */
.line{
background-size:2px 3rem;
line-height:2
}
/*  画像の縮小表示
------------------------------ */
img{
max-width:100%;
height:auto
}

/* ===================================
スマホ、タブレット用スライド
=================================== */

/*  スライド
------------------------------ */
#side{
background:#fff;/* 背景 */
padding:60px 20px 20px; /* ボタン分空ける */
position:fixed;
height:100%;width:300px; /* (*1)同じにする */
top:0;right:0;
-ms-transform:translate(300px); /* (*1)同じにする */
-webkit-transform:translate(300px); /* (*1)同じにする */
transform:translate(300px); /* (*1)同じにする */
transition:all .3s;
z-index:1000
}
#side-bg{
background:rgba(51,51,51,.5)/* 周りの背景色 */
}
/*  サイドを開くボタン
------------------------------ */
#open{
background:#d2d2d2;/* 背景 */
border-radius:3px;
color:#fff; /* 文字色 */
display:inline-block;
padding:0 10px;
position:absolute;
height:30px;width:100px; /* 大きさ */
right:10px;
z-index:1001
}
#open:before{
content:"";
position:absolute;
top:50%;
right:-15px;
margin-top:-5px;
border:8px solid transparent;
border-left:8px solid #d2d2d2;
z-index:0
}
/*  サイドを閉じるボタン
------------------------------ */
#open.buttonclose{
background:#00baa4;/* 背景 */
position:fixed;
top:20px;right:30px
}
#open.buttonclose:before{
border-left:8px solid #00baa4
}
#side.open{-ms-transform:translate(0);-webkit-transform:translate(0);transform:translate(0)}
#side-inner{height:100%;overflow:auto;-webkit-overflow-scrolling:touch}
#side-bg{display:none;position:fixed;height:100%;width:100%;top:0;left:0;z-index:999;cursor:pointer}
.open-text{display:inline-block;line-height:30px;height:30px;margin-left:30px}
#open-icon,#open-icon:before,#open-icon:after{background:#fff} /* 線の色 */
#open-icon{display:block;margin:-1px 0 0 0;position:absolute;top:50%;height:2px;width:18px}
#open-icon:before,#open-icon:after{content:"";display:block;position:absolute;top:50%;left:0;height:2px;width:18px;transition:.3s}
#open-icon:before{margin-top:-7px}
#open-icon:after{margin-top:5px}
#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)}
}
