html,body,div,span,iframe,h1,h2,h1,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}

/* pf */

mark {
  background-color: rgba(253,192,192,.8) !important; 
  color: #57450f;            

}

#pagefind-summary {

    font-family: "IBM Plex Serif", serif !important;
}

:root {
  --pagefind-ui-scale: 0.8 !important;
  --pagefind-ui-primary: #e240a4;
  --pagefind-ui-text: #57450f !important; 
  --pagefind-ui-background: #fffff3 !important;
  --pagefind-ui-border: #57450f !important; 
  --pagefind-ui-font: "IBM Plex Serif", serif !important; 
  --pagefind-ui-border-radius: 0 !important;
  --pagefind-ui-image-border-radius: 0 !important;
  --pagefind-ui-font-size:1.2em !important;
}


/* ===================================
背景,文字,リンク設定
=================================== */

html{
font-size:62.5%;
height:100%
}
body{
background:#fffff3;/* 背景 */
color:#57450f; /* 文字色 */
font-size:1.3em;/* 文字の大きさ */
font-family: "IBM Plex Serif" !important;
letter-spacing:.1em;
line-height:1.5;
text-align:center;
overflow:hidden;
height:100%
}
/*  リンク
------------------------------ */
a{
color:inherit
}
#contents a{
color:#ff9f95
}
.block a{
color:#8c8673
}
#contents a:not(.bg-none),.block a:not(.bg-none){
border-bottom:1px dashed #ccc;
display:inline-block;
padding:.1em .3em;
position:relative;
transition:.6s
}
#contents a:not(.bg-none):hover,.block a:not(.bg-none):hover{
background:rgba(253,192,192,.8);
border-bottom:1px dashed transparent;
border-radius:5px;
color:#57450f
}
a.bg-none:hover{
text-decoration:underline
}

iframe {

    width: 100%;
    height: 100%;
    border: none;
    overflow-y:scroll;
    border-right: dotted 2px #57450f;
    border-left: dotted 2px #57450f;
}

#wrapper{
position:relative;
min-height:100%
}
header{
position:absolute;
top:0;left:0;
padding:20px;
text-align:center;
width:280px  /* (※1)と同じ */
}
#main{
float:left;
width:100%
}
#contents{
background:#fffff3;
margin:0 250px 0 280px; /* 0 (※2) 0 (※1) */
height:100%
}
#contents-inner{
padding:20px;
text-align:left;
max-width: 100%;
    width:700px;
    height:900px;
    justify-self: center;
    align-self: center;
    position:relative;
    display:block;
    width: 100%;
    overflow:hidden;
    padding:0;
}

#sitetitle a {

    color:#e240a4;
    text-decoration: underline;
}

#sitetitle {

    border-bottom: dotted 2px #57450f;
}


#leftcolumn{
float:left;
margin-left:-100%;
padding:0 20px;
width:280px; /* 左側の幅(※1) */
height:100%
}
#leftcolumn-inner{
background:#fffff3 url(image/bgpinklattice.gif);
padding:0 20px;
height:100%;
overflow:auto;
-webkit-overflow-scrolling:touch;
border-right: dotted 2px #57450f;
    border-left: dotted 2px #57450f;
}
#rightcolumn{
background:#fffff3 url(image/bgpinklattice.gif);
float:left;
margin-left:-230px; /* (※2)と同じだけマイナス */
position:relative;
border-right: dotted 2px #57450f;
    border-left: dotted 2px #57450f;
width:230px /* 右側の幅(※2) */
}
#rightcolumn-inner{

max-height:900px;
overflow-y:scroll;
overflow-x:hidden;
font-size: 1.2em;
}
#wrapper > #main{
height:auto
}

/* ===================================
メニュー
=================================== */

#menu{
display:block;
margin:20px -20px;
text-align:center
}
nav li{
background:#57450f;
color:#fffff3;
}
nav li a,nav li span{
background:#fffff3;
border-bottom:1px solid #57450f;
border-radius:0;
color:#57450f;/* メニューの文字色 */
display:block;
margin:0;
padding:2px;/* 一列の高さはここで調節 */
position:relative
}
nav li a:hover,nav li span:hover{
background:#fdc0c0;
color: #47000C;
transition:.6s
}
.sub-menu{
display:none;
overflow:hidden
}
.sub-menu li a{
background-color: #fffff3;
}

nav li:first-child{
border-top:1px solid #57450f
}
.sub-menu li:first-child{
border-top:0
}
/*  メニューの「>」
------------------------------ */
nav li span:after{
border-top:2px solid #57450f; /* 色 */
border-right:2px solid #57450f; /* 色 */
content:"";
display:block;
margin-top:-5px;
position:absolute;
height:5px;width:5px;
top:50%;right:10px;
-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,#back{display:none}

/* ===================================
index 
=================================== */

#index{
background:#fffff3 url(image/bgpinklattice.gif);
color:#57450f;
padding:20px;
height:auto
}
.indexbox{
background:#fffff3;
border:2px solid #57450f;
margin:20px auto;
padding:1em;
max-width:500px
}

/* ===================================
ページ上部へのリンク、著作権表示
=================================== */

/*  位置はjquery.scroll.jsで設定
------------------------------ */
#pagetop{
background:#57450f;
border-radius:5px;
box-sizing:border-box;
display:block;
position:fixed;
text-align:center;
height:40px;width:40px; /* 大きさ */
bottom:-80px;
z-index:10
}
.arrow{
border-left:4px solid #fff;
border-top:4px solid #fff;
position:absolute;
top:40%;left:32%;
height:14px;width:14px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg);
}
#fl a{
color:#57450f;
position:absolute;
text-align:center;
align-content:end;
}

#fl {
border-radius:10px;
margin-right:40px;
margin-left:0;
padding:10px;

}

/* ===================================
見出し、枠、線
=================================== */

h1{
font-size:1.4rem;
margin-bottom:.5em;
text-shadow:5px 5px 1px #ccc
}
h2{
border-bottom:2px solid;
font-size:1.4rem;
margin:1em 0;
text-align:right
}
#contents h2{
background:#fdc0c0;
border-top:2px dotted #57450f;
border-bottom:2px dotted #57450f;
color:#57450f;
margin:1em -20px 1em;
padding-left:1em;
text-align:left
}
h1{
background:#57450f;
border-radius:3px;
color:#fffff3;
font-size:1.4rem;
font-weight:400;
line-height:1;
margin:1em 0;
padding:5px
}
#contents h1{
margin:1em -10px
}
dt{
background:#9f9885;
border-radius:5px;
color:#fffff3;
clear:both;
font-weight:700;
float:left;
margin:0 0 5px;
padding:0 5px;
width:10em
}
dd{
border-bottom:dotted 1px #9f9885;
margin:0 0 5px 12em;
padding:0 5px
}
em{
background:#ffe796;
background:-webkit-linear-gradient(rgba(255,231,150,0) 80%, #ffe796 0%);
background:linear-gradient(rgba(255,231,150,0) 80%, #ffe796 0%);
font-style:normal;
font-weight:700
}
input,textarea{
background:#fffff3;
border:1px solid #57450f;
border-radius:5px;
color:#57450f;
margin:3px 0;
width:90%
}
textarea{
height:50px
}
hr{
border:0;
border-top:1px solid #ccc;
display:block;
margin:1em 0;
padding:0;
height:1px
}
.marker{
background:#ffdcda;
background:-webkit-linear-gradient(rgba(255,220,218,0) 40%, #ffdcda 0%);
background:linear-gradient(rgba(255,220,218,0) 40%, #ffdcda 0%);
padding:0 3px
}
.dcline{
border-left:8px solid #57450f;
margin:5px 0;
padding:3px
}
.textbox{
border:2px dotted;
margin:10px 0;
padding:3px;
text-align:center
}
.title{
color:#fdc0c0;
font-size:1.8rem;
font-weight:700;
margin:2em 0;
text-align:right
}
.txt{
border-left:1px solid #57450f;
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 #8c8673
}
/*  文字の下の線
------------------------------ */
/* bodyのfont-sizeを変更したら数値を変更 */
/* 2.6 = font-size:1.3 x line-height:2 */
.line{
padding-bottom:0.1em;
background-color:#fffff3;
background-image:-webkit-linear-gradient(left, #fffff3 1.1px, rgba(255,255,243,0) 1px), -webkit-linear-gradient(top, #666 1.1px, rgba(120,120,102,0) 1px);
background-image:linear-gradient(to right, #fffff3 1.1px, rgba(255,255,243,0) 1px), linear-gradient(to bottom, #666 1.1px, rgba(102,102,102,0) 1px);
background-size:2px 2.6rem;
line-height:2
}

/* ===================================
横幅900pxで切り替え
=================================== */

/*  説明リストの横並び解除
------------------------------ */
@media screen and (max-width: 900px){
dt{float:none;clear:none}
dd{margin-left:20px}
/*  画像の縮小表示
------------------------------ */
img{max-width:100%;height:auto}
}

/* ===================================
スマホ、タブレット用
横幅768pxで切り替え
=================================== */

@media screen and (max-width: 768px){
body{
font-size:1.4em;
}
#wrapper{
background:#fffff3 url(image/bgpinklattice.gif);
padding:20px 10px 60px
}
header{
text-align:left
}
#leftcolumn,#rightcolumn{
margin:0 0 20px
}
#contents,.block{
background:#fffff3;
border:#57450f 2px solid;
border-radius:10px;
margin:1em 0;
padding:10px 20px
}
.block{
border:#9f9885 3px solid;
padding:10px
}
h1,h2,h1{
font-size:1.5rem
}
#contents h2{
background:none;
border-top:0;
border-bottom:2px solid #57450f;
margin:1em 0;
padding-left:0;
text-align:right
}
#contents h1{
margin:1em 0
}
/*  リストの横並び
------------------------------ */
#rightcolumn ul:before,#rightcolumn ul:after{
content:" ";
display:table
}
#rightcolumn ul:after{
clear:both
}
#rightcolumn li{
border-bottom:0;
float:left
}
/*  文字の下の線
------------------------------ */
/* bodyのfont-sizeを変更したら数値を変更 */
/* 2.8 = font-size:1.4 x line-height:2 */
.line{
padding-bottom:0.1em;
background-color:#fffff3;
background-image:-webkit-linear-gradient(left, #fffff3 1.1px, rgba(255,255,243,0) 1px), -webkit-linear-gradient(top, #666 1.1px, rgba(120,120,102,0) 1px);
background-image:linear-gradient(to right, #fffff3 1.1px, rgba(255,255,243,0) 1px), linear-gradient(to bottom, #666 1.1px, rgba(102,102,102,0) 1px);
background-size:2px 2.8rem;
line-height:2
}
/*  リセット
------------------------------ */
#wrapper{height:auto;min-height:100%}
header{padding:0;position:static;height:auto;width:auto}
h1{line-height:1;padding:0 150px 0 0;min-height:50px}
#index h1{padding:0;min-height:inherit}
#main{float:none;width:auto}
#contents{height:auto}
#contents-inner{padding:0}
#leftcolumn{float:none;padding:0;height:auto;width:auto}
#leftcolumn-inner{background:none;border:0;margin:0;padding:0;height:auto;overflow:visible}
#rightcolumn{background:none;border-left:0;float:none;position:static;height:auto;width:auto}
#rightcolumn-inner{background:none;padding:0}
#fl{text-align:center;}

/* ===================================
スマホ、タブレット用メニュー
=================================== */

/*  スライド
------------------------------ */
#side{
background:rgba(77,69,60,.9); /* 背景色 */
display:none;
padding:60px 10px 20px; /* メニューボタン分空ける */
position:fixed;
line-height:2;
top:0;right:0;
height:100%;width:300px;
z-index:900
}
#side-bg{
background:rgba(51,51,51,.5)/* 周りの背景色 */
}
#side-inner{
padding:0 10px
}
/*  メニュー
------------------------------ */
#menu{
background:#fffff3;
border:#9f9885 3px solid;
border-radius:10px;
margin:20px 0;
padding:10px;
}
nav li a,nav li span{
padding:5px 0;/* 一列の高さはここで調節 */

}
/*  メニューを開くボタン
------------------------------ */
#open{
background:#57450f;
border-radius:5px;
color:#fffff3; /* 文字色 */
display:inline-block;
position:absolute;
text-align:center;
height:40px;width:40px; /* 大きさ */
right:15px; /* 位置 */
z-index:1001
}
#open-icon,#open-icon:before,#open-icon:after{
background:#fffff3/* 線の色 */
}
/*  前に戻るボタン
------------------------------ */
#back{
background:#57450f;
border-radius:5px;
color:#fffff3;
display:inline-block;
position:absolute;
text-align:center;
height:40px;width:40px; /* 大きさ */
right:60px; /* 位置 */
}
#back a{
color:#fffff3;
display:block;
height:100%;
}
#back a:before{
content:'\21E6';
display:block;
font-size:17px;
line-height:17px;
position:relative;
top:5px;width:100%
}

#side-bg{display:none;position:fixed;height:100%;width:100%;top:0;left:0;z-index:999;cursor:pointer}
#side-inner{height:100%;overflow:auto;-webkit-overflow-scrolling:touch}
.open-text,.back-text{font-size:10px;letter-spacing:0;position:absolute;bottom:0;left:0;width:100%}/* ボタン文字サイズ */
#open.buttonclose{position:fixed;top:15px;right:15px}
#open-icon{display:block;margin:-1px 0 0 -9px;position:absolute;top:14px;left: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)}

}
