*{margin:0;padding:0}
div,h1,h2,h3,p,ul,li,input,textarea,table,tr,th,td,footer,header,nav,section{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}
a{text-decoration:none;outline:none}
a img{border-style:none}
ul,li{list-style-type:none}

html {
font-size:65%;
height:100%
}
body {
background:#6ac3c5;
color:#fff; /* 文字色(メイン部分の文字は別箇所#leftcolumn-innerで指定) */
font-family:Verdana,Roboto,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
font-size:1.5em;/* 文字の大きさ */
text-align:center;
height:100%;
line-height:150%;
overflow-wrap:break-word;
word-wrap:break-word
}
a {
color:#5c4d41
}
/*--------------------------------------------------------
基本
--------------------------------------------------------*/
#wrapper {
background:#fff;
margin:0 auto;
padding:100px 0 80px; /* (*1) 0 (*2) */
text-align:left;
height:100%;min-height:100%;
}
header{
background:#6ac3c5 url(img/back01.png) no-repeat 100% 100%;
position:fixed;
top:0;left:0;
height:100px; /* #wrapperの(*1)と同じ数値 */
width:100%;
z-index:20
}
#header-inner {
padding:10px;
}
#contents {
background:#fff;
min-height:100%
}
#contents-bg{
border-radius:0 10px 10px 0;
background:#fff;
position:fixed;
width:20px;height:auto;
top:100px;bottom:80px;right:280px;
z-index:3;
}
#leftcolumn{
float:left;
height:100%;width:100%;
margin-right:-300px;
left:0;
}
#leftcolumn-inner{
color:#5c4d41; /* メイン部分の文字色 */
margin-right:300px;min-height:100%; 
padding:20px;
}
#rightcolumn{
background:#6ac3c5;
float:right;
position:fixed;
/* width:300px;height:100%; */

width:300px;height:100%;
right:0;
}
#rightcolumn-inner{
height:90%;
padding:20px 20px 20px 40px;
overflow:auto;
-webkit-overflow-scrolling:touch
}
#leftcolumn a{
color:#6ac3c5;
}
footer{
background:#6ac3c5 url(img/back02.png) no-repeat 100% 0%;
position:fixed;
bottom:0;left:0;
height:80px; /* #wrapperの(*2)と同じ数値 */
width:100%;
z-index:10
}
#footer-inner {
padding-top:20px;
text-align:center
}
body > #wrapper {
height:auto;
};
/* ページ内リンクのずれ修正 */
.link{
margin-top:-100px; /* headerのheightと同じだけマイナス */
padding-top:100px; /* headerのheightと同じ数値 */
}
/*--------------------------------------------------------
index
--------------------------------------------------------*/
#index{
background:#6ac3c5;
color:#fff;/* 文字色 */
margin:20px;
height:auto;min-height:inherit
}
.index-box{
background:#fff;
border-radius:10px;
color:#5c4d41;;
margin:0 auto;
padding:20px;
width:600px
}
/*--------------------------------------------------------
ページ上部へのリンク
--------------------------------------------------------*/
#pagetop{
background:#fff;
border:3px solid #de8283;
border-radius:40px;
height:50px;width:50px;
text-align:center;
position:fixed;
bottom:40px;right:20px;
box-sizing:border-box
}
.arrow {
border-left:5px solid #5c4d41;
border-top:5px solid #5c4d41;
position:absolute;
top:40%;left:32%;
height:15px;width:15px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
box-sizing:border-box
}
#pagetop:hover{
background-color:rgba(222,222,222,0.8);
transition:.3s
}
/*--------------------------------------------------------
メニュー
--------------------------------------------------------*/
#menu {
border-radius:5px;
font-weight:700;
position:absolute;
padding:10px;
text-align:left;
bottom:10px;left:0; /* 位置 */
}
nav li {
font-size:1.0em;
float:left;
position:relative;
height:1em;line-height:1em /* メニュー高さ */
}
nav li a:first-letter,nav .toggle:first-letter {
color:#de8283;
font-size:1.2em;
}
nav li a,nav .toggle {
color:#fff;
display:block;
padding:0 5px
}
nav li a:hover,nav .toggle:hover {
color:#de9a18
}
/* サブメニュー */
nav li ul {
position:absolute;
width:180px; /* サブメニュー幅 */
z-index:100
}
nav li ul li {
font-size:1em;
background:#e6e3e1;
display:block;
visibility:hidden;
overflow:hidden;
height:0;width:100%;
left:0;
}
nav li ul li a{
color:#5c4d41;
}
nav li ul li a:first-letter {
color:#5c4d41;
font-size:1em;
}
nav li ul li:hover,nav li ul li a:hover {
background:#de9a18;
color:#5c4d41;
}
nav li:hover ul li,nav li a:hover ul li {
visibility:visible;
overflow:visible;
height:2em;line-height:2em;/* サブメニュー高さ */
transition:.6s;
z-index:10
}
#open{display:none}
/*--------------------------------------------------------
見出し、枠、線
--------------------------------------------------------*/
h1 {
font-size:1.6em;
letter-spacing:3px;
margin:0 0 10px 0
}
h2 {
font-size:1.3em;
margin:20px 0;
padding:0.2em 0;
position:relative;
border-bottom:2px solid #5c4d41
}
h2:first-letter {
font-size:1.5em;
color:#de8283
}
h2::after {
background-color:#de8283;
position:absolute;
bottom:-2px;left:0;
content:'';
height:2px;width:20%;
z-index:2
}
#rightcolumn h2 {
border-bottom:2px solid #fff
}
h3 {
border-bottom:1px dashed #5c4d41;
font-size:1.2em;
font-weight:400;
margin:20px 0
}
.marker {
background:#ffe666;
padding:1px 5px
}
dt {
color:#d49c24;
font-weight:700;
float:left;
margin:0 0 5px;
width:150px
}
dd {
border-bottom:dotted 1px #999;
margin:0 0 5px 150px
}
dl:after{
content:"";
clear:both;
height:0;
display:block;
visibility:hidden;
}
.ln01 {
border-left:5px solid #de8283;
margin:5px 0;
padding:0 5px
}
.ln02 {
border-left:5px solid #a3a328;
margin:5px 0;
padding:0 5px
}
.navi {
border:1px dotted #5c4d41;
margin:10px 0;
padding:3px;
text-align:center
}
.title {
color:#de8283;
font-size:1.5em;
font-weight:700;
letter-spacing:3px;
margin:2em 0;
text-align:right
}
.txt {
border-left:1px dotted #5c4d41;
margin:1em;
padding:0 0 0 1em
}
em {
background:#de9a18; /* Ie9 */
background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(0.79, #fff), color-stop(0.8, #de9a18), color-stop(1, #de9a18));
background:-webkit-linear-gradient(transparent 80%, #de9a18 0%);
background:linear-gradient(transparent 80%, #de9a18 0%);
font-weight:700
}
input,textarea {
background:#fff;
border:1px solid #5c4d41;
color:#5c4d41;
font-family:Verdana,Roboto,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
font-size:1em;
margin:3px 0;
width:200px
}
textarea {
height:50px
}
.frame {
border:6px solid #fff;
border-radius:3px;
box-shadow:4px 4px 0 #ccc;
-webkit-box-shadow:4px 4px 0 #ccc
}
hr {
display:block;
border:0;  
border-top:1px solid #ccc;
margin:1em 0;
padding:0;
height:1px
}
.cf:before,.cf:after{content:" ";display:table}
.cf:after{clear:both}
/*--------------------------------------------------------
スマホ、タブレット用
横幅768pxで切り替え
--------------------------------------------------------*/
@media screen and (max-width: 768px) {
html {
position:relative;
height:auto;min-height:100%
}
body {
font-size:1.4em;
height:auto
}
header{
background:url(img/back01.png) no-repeat 0 0;
position:relative;
padding-right:60px;
top:0;left:0;
height:auto;min-height:80px
}
#wrapper {
background:none;
margin-bottom:80px;
padding:20px;
height:auto;min-height:inherit
}
#contents{
background:none;
color:#5c4d41;
margin:20px 0;
height:auto
}
#contents-bg{
display:none
}
#leftcolumn,#rightcolumn {
background:#fff;
border-radius:5px;
float:none;
margin:0 0 20px;
padding:0;
position:static;min-height:inherit;
height:auto;width:auto;
}
#leftcolumn-inner{
background:none;
margin-right:0;
padding:20px;
height:auto
}
#rightcolumn{
height:auto;width:auto;
}
#rightcolumn-inner{
padding:20px;
height:auto
}
#rightcolumn h2 {
border-bottom:2px solid #5c4d41
}
footer{
background-position:0 0;
position:absolute;
bottom:0;left:0;
}
#rightcolumn-inner li{
float:left;
}
#contents a {
color:#fff;
background:#6ac3c5;
border-radius:5px;
display:inline-block;
margin:5px 5px 5px 0;
padding:5px
}
#contents a.bg-none{
background:none;
border-radius:0;
margin:5px 5px 5px 0;
padding:0
}
#contents a img{
vertical-align:bottom
}
#fl {
color:#fff;
background:#6ac3c5;
border-radius:5px;
display:inline-block;
padding:5px;
text-align:center
}
.index-box{width:auto}
.link{margin-top:0;padding-top:0}
dt{float:none;width:auto}
dd{margin-left:20px}
/*--------------------------------------------------------
スマホ、タブレット用メニュー
--------------------------------------------------------*/
/* メニューを開くボタン */
#open {
display:inline-block;
background:#5c4d41;
border:2px solid #fff;
border-radius:40px;
margin:0 5px;
position:absolute;
height:40px;width:40px;/* 大きさ */
top:10px;right:0/* 位置 */
}
#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)}

/* メニュー */
#menu{
background-color:rgba(92,77,65,0.7);/* メニューの背景色 */
color:#f2eee1;/* メニューの文字色 */
display:none;
position:absolute;
top:60px;bottom:auto;left:0;
width:100%;
z-index:20
}
nav li {
font-size:1.2em;
display:inherit;
height:auto;line-height:inherit;
width:100%;
}
nav li a,
nav .toggle{
color:#f2eee1;/* メニューの文字色 */
display:block;
position:relative;
padding:20px 0;/* メニュー高さはここで調整 */
text-indent:1em
}
nav li a:first-letter,
nav .toggle:first-letter,
nav li ul li a:first-letter {
color:#f2eee1
}
nav li a:hover,
nav .toggle:hover{
background:#de9a18;
border-radius:5px;
color:#f2eee1
}
nav .toggle:after{
border-top:solid 3px #fff;/* メニュー「>」の色 */
border-right:solid 3px #fff;/* メニュー「>」の色 */
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:.6s
}
nav .toggle.open:after {
-ms-transform:rotate(135deg);
-webkit-transform:rotate(135deg);
transform:rotate(135deg)
}

/* サブメニュー */
nav li ul {
position:static;
width:100%;
display:none;
margin:0;
overflow:hidden
}
nav li ul li {
background:none;
border-bottom:0;
display:inherit;
float:left;
height:auto;
visibility:visible;
height:auto;width:50%/* 一列にするなら100% */
}
nav li ul li a {
border-bottom:0;
color:#fff;
padding:20px 0;/* サブメニュー高さはここで調整 */
}
nav li a:hover ul li,nav li:hover ul li {
height:auto;line-height:inherit
}
nav li ul li a:after{
display:none
}
}