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,textarea{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}
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}
.if-container{display:inline-block;margin:0 auto;height:100%;width:100%;overflow:auto;-webkit-overflow-scrolling:touch}
.ifrm{border:none;display:block;height:99%;width:100%}
.cf:before,.cf:after{content:" ";display:table}.cf:after{clear:both}
/* この上はいじらないほうがいいです */

html{
font-size:62.5%;
height:100%
}
body{
background:#f8f6ef;/* インラインフレーム内背景色 */
color:#8c8673;/* インラインフレーム内文字色 */
font-size:1.2em;/* 文字の大きさ */
font-family:Verdana,Roboto,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
letter-spacing:.1em;
line-height:1.5;
padding:20px 20px 60px
}
a{
color:#f16b8e;
text-decoration:underline
}
a:hover{
color:#a3a328
}
/*--------------------------------------------------------
インラインフレーム外設定
--------------------------------------------------------*/
#page{
background:#f8f6ef;
color:#8c8673;
padding:0;
height:100%
}
header{
background:url(image/back04.gif);
height:100px;
position:relative;
top:0;left:0;
margin-bottom:-100px;
padding:10px 30px 20px 10px;
width:100%;
z-index:20
}
#wrapper{
position:relative;
background:#f8f6ef url(image/back01.gif);
padding-top:80px;
text-align:left;
height:100%;width:100%
}
/* 中央 */
#main{
width:100%;height:100%;
float:left
}
#contents{
background:#f8f6ef;
margin:0 290px; /* 左側の幅と右側の幅と同じ値を左右に指定 */
padding:40px 20px 60px;
height:100%
}
#block-hidden,#block-hidden-inner{
height:100%
}
/* 左側 */
#leftcolumn{
background:url(image/back02.gif) repeat-y 100% 0;
float:left;
padding:40px 40px 60px 10px;
margin-left:-100%;
width:290px; /* 幅 */
}
#leftcolumn-inner{
height:100%;
overflow:auto;
-webkit-overflow-scrolling: touch
}
/* 右側 */
#rightcolumn{
background:url(image/back03.gif) repeat-y;
float:left;
padding:40px 10px 60px 40px;
margin-left:-290px; /* 幅と同じだけマイナス */
width:290px; /* 幅 */
}
/* 右側 */
#rightcolumn-inner{
height:100%;
overflow:auto;
-webkit-overflow-scrolling: touch
}
footer{
background:url(image/back05.gif);
height:60px;
position:absolute;
bottom:0;left:0;
padding:30px 20px 0;
width:100%;
text-align:center;
z-index:20
}
.block{
background:#f8f6ef;
border-radius:5px;
margin:20px 0;
padding:10px
}
/*--------------------------------------------------------
index
--------------------------------------------------------*/
#index{
background:#f8f6ef url(image/back01.gif);
padding:20px
}
.indexbox{
background:#f8f6ef;
border-radius:5px;
margin:0 auto;
padding:1em;
width:500px
}
/*--------------------------------------------------------
ページ上部へのリンク
--------------------------------------------------------*/
#pagetop{
background:#ffb0b8;
border-radius:30px;
border:3px solid #fff;
color:#fff;
width:50px;height:50px; /* 大きさ */
bottom:10px;right:20px; /* 位置 */
line-height:16px;
padding-top:22px;
text-align:center;
display:block;
position:fixed;
text-decoration:none;
box-sizing:border-box;
box-shadow:0px 0px 10px #84b6d5;
z-index:60
}
a#pagetop{
color:#fff
}
#pagetop:before{
content:'\25B2';
font-size:14px;
position:absolute;
left:0;top:7px;
width:100%
}
/*--------------------------------------------------------
メニュー
--------------------------------------------------------*/
#menu{
display:block;
margin:20px auto
}
nav li a,nav li span{
color:#8c8673;/* メニューの文字色 */
font-size:1.5em;
font-weight:700;
display:block;
line-height:2em;
position:relative;
text-decoration:none;
}
nav li a:hover,nav li span:hover{
color:#fff;
text-shadow:2px 2px #8c8673;
text-decoration:none;
transition:.6s
}
.sub-menu{
display:none;
overflow:hidden
}
.sub-menu li{
text-indent:1em
}
.sub-menu li a:after{
display:none
}
nav li span:after{
border-top:2px solid #8c8673; /* メニュー「>」の色 */
border-right:2px solid #8c8673; /* メニュー「>」の色 */
content:"";
display:block;
margin-top:-5px;
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}

/*--------------------------------------------------------
見出し、枠、線
--------------------------------------------------------*/
h1{
font-size:1.6em;
letter-spacing:.1em;
line-height:1;
margin:0 0 10px;
text-shadow:5px 5px 2px #ccc
}
h2,.h2{
border-bottom:3px solid;
font-size:1.2em;
font-weight:700;
letter-spacing:.1em;
margin:10px 0;
padding:0 0 5px;
text-shadow:5px 5px 2px #ccc
}
h3,.h3{
border-bottom:1px dashed;
font-size:1.2em;
font-weight:700;
margin:1em 0
}
dt{
background:#f8c8c8;
border-radius:5px;
color:#fff;
font-weight:700;
margin:0 0 5px;
padding:0 5px;
width:10em
}
dd{
border-bottom:1px solid #ccc;
margin:0 0 5px 1em
}
em{
background:#ffe1e4; /* Ie9 */
background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #f8f6ef), color-stop(0.49, #f8f6ef), color-stop(0.5, #ffe1e4), color-stop(1, #ffe1e4));
background: -webkit-linear-gradient(transparent 50%, #ffe1e4 0%);
background:linear-gradient(transparent 50%, #ffe1e4 0%);
font-weight:700
}
input,textarea{
background:#8c8673;
border:1px dashed;
color:#fff;
margin:3px 0;
width:200px
}
textarea{
height:50px
}
#page textarea{
width:100%
}
hr{
display:block;
border:0;  
border-top:1px solid #ccc;
margin:1em 0;
padding:0;
height:1px
}
.marker{
background:#f16b8e; /* Ie9 */
background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #f8f6ef), color-stop(0.79, #f8f6ef), color-stop(0.8, #f16b8e), color-stop(1, #f16b8e));
background:-webkit-linear-gradient(transparent 80%, #f16b8e 0%);
background:linear-gradient(transparent 80%, #f16b8e 0%)
}
.dcline{
border-left:8px solid #ffe1e4;
margin:5px 0;
padding:3px
}
.textbox{
border:1px dotted;
margin:10px 0;
padding:3px;
text-align:center
}
.title{
color:#ffb4bc;
font-size:1.5em;
font-weight:700;
letter-spacing:.1em;
margin:2em 0;
text-align:right
}
.txt{
border-left:1px dotted;
margin:1em;
padding:0 0 0 1em
}
.frame{
background:#fff;
padding:6px;
border-radius:3px;
box-shadow:3px 3px 3px #ccc
}
#rightcolumn li{
border-bottom:1px dashed
}
/*--------------------------------------------------------
スマホ、タブレット用
横幅768pxで切り替え
--------------------------------------------------------*/
@media screen and (max-width: 768px){
#wrapper{
padding-top:100px;
width:auto;
}
header{
padding:10px 60px 10px 20px
}
#main{
float:none;
width:auto;
padding:20px;
}
#contents{
margin:0;
padding:0 10px;
height:auto;
}
#leftcolumn,#rightcolumn{
background:none;
float:none;
padding:0;
margin:0;
width:auto
}
#leftcolumn-inner{
padding:0
}
#rightcolumn-inner{
padding:0
}
.block{
margin:20px
}
.indexbox{width:auto;}
#pagetop{bottom:20px}
#rightcolumn ul:before,#rightcolumn ul:after{content:" ";display:table}
#rightcolumn ul:after{clear:both}
#rightcolumn li{border-bottom:0;float:left;margin:5px}
img{max-width:100%;height:auto} /* 画像の縮小表示 */
/*--------------------------------------------------------
スマホ、タブレット用メニュー
--------------------------------------------------------*/
/* スライド */
#block-hidden{
background:rgba(140,134,115,.8); /* 背景色 */
padding:40px 0 20px; /* メニューボタン分空ける */
height:100%;width:100%;
position:fixed;
display:none;
top:0;right:0;
text-align:center;
z-index:1000
}
#block-hidden-inner{
height:100%;
overflow:auto;
-webkit-overflow-scrolling:touch
}
nav li a,nav li span{
color:#fff /* 文字色 */
}
nav li a:hover,nav li span:hover{
background:rgba(255,176,184,.8);
color:#fff
}
/* サブメニュー */
.sub-menu{
background:rgba(248,246,239,.4)
}
/* 一列にするなら削除 */
.sub-menu li{
display:inline-block;
text-indent:0;
width:50%
}
nav li span:after{
border-top:2px solid #fff; /* メニュー「>」の色 */
border-right:2px solid #fff; /* メニュー「>」の色 */
}
/* メニューを開くボタン */
#open{
background:#ffb0b8;
box-shadow:0px 3px 8px #ccc;
border:3px solid #fff;
height:40px;width:40px; /* 大きさ */
top:10px;right:20px; /* 位置 */
border-radius:20px;
display:inline-block;
position:absolute;
z-index:1001
}
#open-icon,#open-icon:before,#open-icon:after{
background:#fff; /* 線の色 */
}
#open-icon{display:block;margin:-1px 0 0 -10px;position:absolute;top:50%;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)}
}