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}
hr{border:0;display:block;margin:1em 0;padding:0;height:1px}
.cf:before,.cf:after{content:" ";display:table}.cf:after{clear:both}

/* ===================================
背景,文字,リンク設定
=================================== */

html{
font-size:62.5%;
height:100%;
}
body{
background:#fff;/* 背景 */
color:#57450f;/* 文字色 */
font-size:1.4em;/* 文字の大きさ */
font-family:'Segoe UI','游ゴシック Medium','Yu Gothic Medium','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
letter-spacing:.1em;
line-height:1.7;
text-align:center;
height:100%;
}
/*  Googleフォントを使用しない場合は不要
------------------------------ */
h1,nav,#fl{
font-family: 'Elsie Swash Caps','Segoe UI','游ゴシック Medium','Yu Gothic Medium','游ゴシック体',YuGothic,'Hiragino Kaku Gothic ProN','メイリオ',Meiryo,sans-serif
}
/*  リンク
------------------------------ */
a{
color:inherit
}
#contents a:not(.bg-none){
color:#4169e1;
padding:0 .1em
}
#contents a:not(.bg-none):hover{
background:#4169e1;
border-radius:5px;
color:#fff;
text-decoration:none
}

/* ===================================
基本
=================================== */

#wrapper{
margin:10px auto;
position:relative;
text-align:left;
max-width:725px; /* 全体の幅・大きさはここで変更 */
}

header{
background:url(image/back01.jpg) no-repeat 100% 0;
border:1px solid #574B90;
border-radius:3px;
color:#FFF4E1;
min-height:200px;

}

.header-inner{
padding:10px 20px;
text-align:right;}

#contents{
margin:20px auto;
padding:20px 20px 20px 10px;
text-align:left;
max-width:725px;/* 全体の幅 */
}

footer{
background:#4682b4;
border:1px solid #41341f;
border-radius:3px;
color:#fff;
padding:5px 10px;
text-align:right;
width:100%;
}

/*  文字の縁取り
------------------------------ */
header,nav span{
text-shadow:2px 0 0 #574B90, 1px 1px 0 #41341f, 0 1px 0 #41341f, -1px 1px 0 #41341f, -1px 0 0 #41341f, -1px -1px 0 #41341f, 0 -1px 0 #41341f, 1px -1px 0 #41341f
}


/*  背景と文字の影
    ストライプは#fff4f5と#ffd6da
------------------------------ */
/*header,footer{
-webkit-background-size:10px 10px;
background-size:10px 10px;
background-color:#fff4f5;
background-image:-webkit-linear-gradient(45deg,#ffd6da 25%,transparent 25%,transparent 50%,#ffd6da 50%,#ffd6da 75%,transparent 75%,transparent);
background-image:linear-gradient(45deg,#ffd6da 25%,transparent 25%,transparent 50%,#ffd6da 50%,#ffd6da 75%,transparent 75%,transparent)
}
.header-bottom,.footer-top{
background:#fff url(image/back01.gif) repeat-x 0 0;
height:18px
}
*/
/* ===================================
メニュー
=================================== */

#menu{
width:100%;
margin:0 auto;
text-align:center
}
nav li{
margin:5px;
display:inline-block;
vertical-align:middle
}
nav li a{
color:#57450f;
display:block;
font-weight:700;
height:80px;width:80px;
line-height:80px;
text-align:center
}

/*  メニューを開くボタン非表示
------------------------------ */
#open{display:none}

/* ===================================
ページ上部へのリンク、著作権表示
=================================== */

/*  位置はscroll.jsで設定
------------------------------ */
#pagetop{
background:rgba(0,0,139,.5);/* 背景 */
border:0;
border-radius:30px;
box-sizing:border-box;
color:#fff;
display:block;
font-size:13px;
letter-spacing: normal;
line-height:20px;
padding-top:12px;
position:fixed;
text-align:center;
text-decoration:none;
height:40px;width:40px; /* 大きさ */
bottom:-80px;
z-index:10
}
#pagetop:before{
content:"";
display:block;
border-left:2px solid #fff;
border-top:2px solid #fff;
position:absolute;
top:10px;left:16px;
height:6px;width:6px;
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
transform:rotate(45deg)
}
#pagetop:hover{
background:#0000cd;
}
#fl a{
display:inline-block;
margin:10px 0
}

/* ===================================
見出し、枠、線
=================================== */

h1{
font-size:5rem;
line-height:0.8;
padding:30 0 0
}
h2{
background:#4682b4;
border-radius:3px;
border:1px solid #665990;
color:#fff;
font-size:1.8rem;
padding:.2em;
margin:15px 0
}
/*h2 span{
background:#f8c8c8;
border-radius:3px;
color:#fff;
display:inline-block;
padding:0 10px
}
h2:first-child{
margin-top:0
}*/

h3{
border-bottom:2px solid #0000ff;
font-size:1em;
margin:20px 0
}
h2 + h3 {
margin-top:15px
}
dt{
color:#00008b;
clear:both;
font-weight:700;
float:left;
margin:0 0 5px;
padding:0 5px;
width:12em /* 文字数によっては調整 */
}
dd{
border-bottom:1px solid #ceb6a0;
margin:0 0 5px 14em /* dtのwidthに2足してます */
}
em{
font-style:normal;
font-weight:700
}
input,textarea{
background:#faf7e6;
border:1px dashed #ceb6a0;
border-radius:5px;
margin:3px 0;
width:250px
}
textarea{
height:50px
}
hr{
border-top:1px solid #d2d2d2
}
.marker{
background:#f8c8c8;
background:-webkit-linear-gradient(rgba(248,200,200,0) 80%, #f8c8c8 0%);
background:linear-gradient(rgba(248,200,200,0) 80%, #f8c8c8 0%)
}
.dcline{
border-left:10px solid #00bfff;
margin:8px 0;
padding:10px 0 0
}
.textbox{
background:#fff;
border:1px dashed #ceb6a0;
margin:10px 0;
padding:3px;
text-align:left;
}
.title{
color:#f8c8c8;
font-size:1.5em;
font-weight:700;
margin:2em 0;
text-align:right
}

td, th {
padding: 5px 10px;
}

table.table01 {
	width:100%;
	border-right: dashed #ceb6a0 1px;
	border-collapse: collapse;
}
table.table01 thead th {
	background:#fff;
	color:#FFF;
	padding:10px 15px;
	border-right:#ceb6a0 dashed 1px;
	border-bottom:#ceb6a0 dashed 1px;
}
table.table01 thead th:last-child {
	border-right:#ceb6a0 dashed 1px;
}
table.table01 tbody th {
	background:#fff;
	color:#FFF;
	padding:10px 15px;
	border:#ceb6a0 dashed 1px;
	vertical-align:top;
}
table.table01 tbody tr:last-child th {
	border-bottom:#ceb6a0 dashed 1px;
}
table.table01 tbody td {
	background:#FFF;
	padding:10px 15px;
	border:#ceb6a0 dashed 1px;
	vertical-align:top;
	font-size:0.8em;

}

table.table02 {
	border-right: dashed #ceb6a0 1px;
}
table.table02 thead th {
	background:#fff;
	color:#FFF;
	padding:10px 15px;
	border-right:#ceb6a0 dashed 1px;
	border-bottom:#ceb6a0 dashed 1px;
}
table.table02 thead th:last-child {
	border-right:#ceb6a0 dashed 1px;
}
table.table02 tbody th {
	background:#FCECEA;
	padding:10px 15px;
	border:#ceb6a0 dashed 1px;
	vertical-align:top;
}
table.table02 tbody tr:last-child th {
	border-bottom:#ceb6a0 dashed 1px;
}
table.table02 tbody td {
	background:#fff9f4;
	padding:10px 15px;
	border:#ceb6a0 dashed 1px;
	vertical-align:top;

}




  
@media screen and (max-width: 640px) {
table.table01 thead {
	display:none;
}
table.table01 tbody th {
	display:block;
}
table.table01 tbody td {
	display:block;
}
table.table01 tbody td::before {
	content: attr(label);
	float: left;
	clear:both;
	font-weight:bold;
}
table.table01 tbody td p {
	padding-left:6em;
}
}

@media screen and (max-width: 640px) {
table.table02 thead {
	display:none;
}
table.table02 tbody th {
	display:block;
}
table.table02 tbody td {
	display:block;
}
table.table02 tbody td::before {
	content: attr(label);
	float: left;
	clear:both;
	font-weight:bold;
}
table.table02 tbody td p {
	padding-left:6em;
}
}





/*  複数行の右寄せ
------------------------------ */
.r-justified{
text-align:right
}
.r-justified p{
display:inline-block;
text-align:left
}
.inline{
display:inline-block
}
/*  文字の下の線
------------------------------ */
/* bodyのfont-sizeを変更したら数値を変更 */
/* 2.8 = font-size:1.4 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, #ceb6a0 1.1px, rgba(206,182,160,0) 1px);
background-image:linear-gradient(to right, #fff 1.1px, rgba(255,255,255,0) 1px), linear-gradient(to bottom, #ceb6a0 1.1px, rgba(206,182,160,0) 1px);
background-size:2px 2.8rem;
line-height:2
}

/* ===================================
横幅840pxで切り替え
=================================== */
@media screen and (max-width: 800px){
body{
padding:10px 20px 50px
}
header{
background-size:cover;
min-height:100px
}
dt{
float:none;
clear:none
}
dd{
margin-left:20px
}
/*  画像の縮小表示
------------------------------ */
img{
height:auto;
max-width:100%
}



/* ===================================
スマホ、タブレット用
横幅600pxで切り替え
=================================== */

@media screen and (max-width: 600px){
body{font-size:1.5em}
#contents{width:auto}
h1{font-size:1.2em}
dt{float:none;clear:none}
dd{margin-left:20px}
input,textarea{width:100%}
img{max-width:100%;height:auto} /* 画像の縮小表示 */

/*  メニュー
------------------------------ */
nav li a{height:35px;width:auto;min-width:35px;line-height:inherit}
.box1{background:url(image/icon01.gif) no-repeat 50% 50%}
.box2{background:url(image/icon02.gif) no-repeat 50% 50%}
.box3{background:url(image/icon03.gif) no-repeat 50% 50%}
.box4{background:url(image/icon04.gif) no-repeat 50% 50%}
.box5{background:url(image/icon05.gif) no-repeat 50% 50%}
.box6{background:url(image/icon06.gif) no-repeat 50% 50%}

/*  文字の下の線
------------------------------ */
/* bodyのfont-sizeを変更したら数値を変更 */
/* 3 = font-size:1.5 x line-height:2 */
.line{background-size:2px 3rem;line-height:2}

}