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%;
position: relative;
min-height:100%
}
body{
background:#fff;/* 背景 */
color:#000;/* 文字色 */
font-size:1.2em;/* 文字の大きさ */
font-family:'Raleway','Segoe UI','游ゴシック Medium','Yu Gothic Medium','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
letter-spacing:.1em;
line-height:1.5;
text-align:center;
height:100%;width:100%
}

/*  Link
------------------------------ */
a{
color:#000
}
#contents a:not(.bg-none){
background:#e1d7b8;
border-radius:5px;
color:#000;
display:inline-block;
margin:5px 5px 5px 0;
text-decoration:none
}
#contents a.bg-none{
text-decoration:underline
}

/* ===================================
基本
=================================== */

#wrapper{
text-align:left
}
header{
background:#fff;
border-bottom:1px solid #000;
position:fixed;
top:0;left:0;
width:100%;
z-index:20
}
#header-inner{
padding:10px 10px 0;
text-align:right;
width:100%
}
#contents{
margin:0 auto;
height:100%;
width:1000px; /* 全体の幅・大きさはここで変更 */
}
#contents-inner{
padding:20px

}

footer{
background:#e1d7b8;
border-top:1px solid #000;
position:fixed;
bottom:0;left:0;
width:100%;
min-height:40px;
z-index:10
}
#footer-inner{
padding-top:10px;
text-align:center
}
/*  白枠
------------------------------ */
.block{
background:#fff;
border-radius:5px;
box-shadow:0 1px 5px #ccc;
clear:both;
margin:20px 0;
padding:8px;
word-wrap:break-word
}

/* ===================================
index
=================================== */

#index{
padding:20px;
height:auto;min-height:inherit;
width:auto
}

/* ===================================
Menu
=================================== */

#menu{
background:#fff;
line-height:1;
margin:10px 0 0;
position:absolute;
text-align:left;
bottom:0;left:0;
width:100%
}
nav li{
border-radius:5px 0 0 0;
border-top:1px solid #000;
border-left:1px solid #000;
border-right:1px solid #000;
display:inline-block; /* 横並び */
vertical-align:top;
position:relative; /* サブメニュー表示位置の基準 */
height:2em;line-height:2em; /* メニュー高さ */
width:120px /* メニュー幅・削除すると文字の長さに併せて幅が決まります */
}
nav li a,nav li span{
color:#000;
display:block;
padding:0 10px
}
nav li a:hover,nav li span:hover{
color:#fff
}
/*  サブメニュー
------------------------------ */
.sub-menu{
background:#fff;
position:absolute;
width:120px; /* サブメニュー幅 */
z-index:20
}
.sub-menu li{
border-radius:0;
border:0;
display:block; /* 横並びをリセット */
height:0; /* 隠す */
width:100%;
visibility:hidden; /* 隠す */
overflow:hidden /* 隠す */
}
.sub-menu li a{
color:#000
}
.sub-menu li a:hover{
background:#95856a
}
nav li:hover .sub-menu li{
height:2em;line-height:2em; /* サブメニュー高さ */
visibility:visible;
overflow:visible;
transition: .5s
}
/*  メニューの色
------------------------------ */
.menubg01{background:#c78e75}
.menubg02{background:#991e46}
.menubg03{background:#f0543b}
.menubg04{background:#fdb945}
.menubg05{background:#1cb272}
.menubg06{background:#14737a}
.menubg07{background:#632f8c}

/* ===================================
ページ上部へのリンク、著作権表示
=================================== */

/*  位置はscroll.jsで設定 
------------------------------ */
#pagetop{
background:rgba(0,0,0,.8);
border:3px solid #fff;
border-radius:30px;
box-shadow:0 1px 5px #000;
box-sizing:border-box;
color:#fff;/* 色 */
display:block;
line-height:16px;
padding-top:22px;
position:fixed;
text-align:center;
bottom:-80px;
height:50px;width:50px; /* 大きさ */
z-index:10
}
#pagetop:before{
content:'\25B2';
font-size:14px;
position:absolute;
left:0;top:7px;
width:100%
}
#pagetop:hover{
background:rgba(255,255,255,.8);
color:#000
}
/*  著作権表示
------------------------------ */
#fl a{
display:inline-block;
margin:10px 0
}

/* ===================================
見出し、枠、線
=================================== */

h1{
font-size:1.2em;
letter-spacing:.1em;
margin:0 0 .5em 0
}
h2{
background:#fff;
box-shadow:1px 1px 2px #999;
font-size:1.2em;
margin:15px 0;
padding:3px 10px
}
.color01{border-left:8px solid #c78e75}
.color02{border-left:8px solid #fa8282}
.color03{border-left:8px solid #ffa973}
.color04{border-left:8px solid #e6be67}
.color05{border-left:8px solid #b9cc5c}
.color06{border-left:8px solid #408080}
.color07{border-left:8px solid #6ab5ff}

h3{
border-bottom:1px solid;
font-size:1.2em;
font-weight:400;
margin:15px 0;
padding:3px 10px
}
dt{
color:#5b1157;
font-weight:700;
float:left;
clear:left;
overflow-wrap: normal;
margin:0 0 5px;
width:12em
}
dd{
color:#667586;
border-bottom:1px solid;
margin:0 0 5px 13em;
}
em{
background:#6769e6;
background:-webkit-linear-gradient(rgba(230,190,103,0) 80%, #6769e6 0%);
background:linear-gradient(rgba(230,190,103,0) 80%, #6769e6 0%);
font-weight:700
}
input,textarea{
border:1px solid;
margin:3px 0;
width:400px
}
textarea{
height:50px
}
hr{
border:0;
border-top:1px solid #ccc;
display:block;
margin:1em 0;
padding:0;
height:1px
}
.marker{
background:#f3ace6;
background:-webkit-linear-gradient(rgba(250,130,130,0) 50%, #f3ace6 0%);
background:linear-gradient(rgba(250,130,130,0) 50%, #f3ace6 0%)
}
.dcline{
border-left:5px #6b9593 solid;
margin:10px 0;
padding-left:7px
}
.textbox{
border:1px solid;
margin:10px 0;
padding:3px;
text-align:center
}
.title{
font-size:1.5em;
font-weight:700;
margin:2em 0;
text-align:right
}
.title:first-letter{
color:#dab8e1;
font-size:1.6em
}
.txt{
border-left:1px dotted;
color:#999;
margin:1em;
padding:0 0 0 1em
}
.frame{
background:#fff;
border-radius:3px;
box-shadow:3px 3px 3px #ccc;
padding:6px
}

ul.funlist li::before {
  content: "✓";
  margin:10px 0;
  padding-left:17px;
  color: green;
}

ol.funlist li{
  margin:10px 0;
  padding-left: 17px;
}

/* ===================================
横幅1000pxで切り替え
=================================== */

@media screen and (max-width: 1000px){
#contents{width:100%}
}

/* ===================================
Smart Phone / Tablet
横幅600pxで切り替え
=================================== */

@media screen and (max-width: 600px){
body{
font-family:'Segoe UI','游ゴシック Medium','Yu Gothic Medium','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
font-size:1.3em
}
header{
background:#e1d7b8;
border-bottom:0;
position:relative;
min-height:60px;min-width:100%
}
#contents{
height:auto;width:100%
}
footer{
position:absolute;
min-width:100%
}
input,textarea{
width:100%
}
dt{
float:none;
clear:none
}
dd{
margin-left:20px
}
img{ /* 画像の縮小表示 */
max-width:100%;
height:auto
}

/* ===================================
Smart Phone / Tablet Menu
=================================== */

/*  Slide
------------------------------ */
#menu{
background:#95856a;
border:1px solid #000;
margin:0;
position:static;
bottom:inherit;
text-align:left;
z-index:20
}
/*  メニュー
------------------------------ */
nav ul{
margin-bottom:-1px;
margin-right:-1px
}
nav li{
border-top:0;
border-bottom:1px solid #000;
border-left:0;
border-radius:0;
display:inline-block;
width:50%;
height:auto;line-height:inherit /* 高さリセット */
}
nav li a,nav li span{
display:block;
padding:15px 20px; /* リンクの余白 一列の高さはここで調節 */
position:relative
}
nav li a:hover,nav li span:hover{
background:#95856a;
color:#000
}
/*  サブメニュー
------------------------------ */
.sub-menu{
border-top:1px solid #000;
border-left:1px solid #000;
border-right:1px solid #000;
margin-left:-1px;
margin-right:0;
margin-bottom:0;
overflow:hidden;
box-sizing:content-box;
display:none; /* 隠す */
width:100%;
z-index:30
}
.sub-menu li{
border-bottom:1px solid #000;
visibility:visible; /* リセット */
overflow:visible; /* リセット */
height:auto; /* 高さリセット */
width:100% 
}
.sub-menu li a{
color:#fff
}
.sub-menu li a:after{
display:none
}
nav li:hover .sub-menu li{
height:auto;line-height:inherit /* 高さリセット */
}
/*  メニューの「>」
------------------------------ */
nav li span:after{
border-top:3px solid #fff;/* 色 */
border-right:3px solid #fff;/* 色 */
content:"";
display:block;
margin-top:-5px;
position:absolute;
top:50%;right:20px;
height:5px;width:5px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
transition:.2s
}
nav li span.open:after{
-ms-transform:rotate(135deg);
-webkit-transform:rotate(135deg);
transform:rotate(135deg)
}
}