*{margin:0;padding:0}
div,h1,h2,h3,p,ul,li,input,textarea,table,tr,th,td,footer,header,nav,section{box-sizing:border-box}
input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}
a{text-decoration:none;outline:none}
a img{border-style:none}
ul,li{list-style-type:none}

html{
font-size:62.5%;
position: relative;
min-height:100%
}
body{
background:url(image/back03.png ); /* 背景 */
color:#3e5479; /* 文字色 */
font-size:1.2em; /* 文字の大きさ */
font-family:'ヒラギノ角ゴ Pro W3',Verdana,Roboto,'游ゴシック','Yu Gothic','游ゴシック体','YuGothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
letter-spacing:.2em;
text-align:center;
overflow-wrap:break-word;
word-wrap:break-word
}
a{
color:#7a6b5200
}
/*--------------------------------------------------------
基本
--------------------------------------------------------*/
#wrapper{
text-align:left
}
#index{
height:auto;
text-align:left
}
/*--------------------------------------------------------
上
--------------------------------------------------------*/
header{
 /* 背景画像 */
position:sticky;
width:100%;
min-width:1000px;/* #contentsのwidthと同じ数値 */
z-index:10
}
#header-inner{
min-height:0px;
padding:0px;
text-align:right
}
/*--------------------------------------------------------
メイン
左側のwidthと右側のwidthを足して全体の幅を超えないように
--------------------------------------------------------*/
#contents{
margin:0 auto;
width:1200px /* 全体の幅・大きさはここで変更 */
}
/* 左側 */
#leftcolumn{
position:fixed;
float:left;
text-align:left;
width:850px
}
/* 右側 */
#rightcolumn{
display:inline;
float:right;
margin:0;
width:850px
}
.block{
background:#f5f1e5; /* 背景画像 */
border-radius:15px;
border:5px solid #3e5479;
clear:both;
margin:10px 10px;
padding:10px;
word-wrap:break-word
}
.block a{
border-radius:5px;
color:#3e5479;
display:inline-block;
margin:5px 5px 5px 0
}
.block a.bg-none{
background:none;
border-radius:0
}
.block a img{
vertical-align:middle
}
#contents,#rightcolumn,#leftcolumn,.block{
box-sizing:border-box
}
/*--------------------------------------------------------
下
--------------------------------------------------------*/
footer{
 /* 背景画像 */
position:absolute;
bottom:0;left:0;
min-height:50px;
width:100%;
min-width:1000px; /* #contentsのwidthと同じ */
}
.footer-inner{
padding:0px;
text-align:center
}
footer a{
color:#f2eee1
}
/*--------------------------------------------------------
メニュー
--------------------------------------------------------*/
#menu{

background:#f5f1e5;
border-radius:0 5px 5px 0;
padding:10px 0px;
margin:0px 0;
position:absolute;
float:inline-start;
bottom:0;left:0;
width:50%
}
nav li{
display:inline-block; /* 横並び */
position:relative; /* サブメニュー表示位置の基準 */
height:2em;line-height:2em; /* メニュー高さ */
}
nav li a,nav li span{
font-size:1.6em;
color:#3e5479;
display:block;
padding:0 5px;
text-decoration:none
}
nav li a:hover,nav li span:hover{
color:#3e5479;
text-decoration:none
}
nav >ul >li>a:first-letter,nav li span:first-letter{
color:#3e5479
}
/* サブメニュー */
.sub-menu{
  border:6px solid #3e5479;
background:#f2eee1;
position:absolute;
width:180px; /* サブメニュー幅 */
z-index:20
}
.sub-menu li{
display:block; /* 横並びをリセット */
visibility:hidden; /* 隠す */
overflow:hidden; /* 隠す */
height:0; /* 隠す */
width:100%
}
.sub-menu li a{
color:#3e5479;

display:block
}
.sub-menu li a:hover{
background:#3e5479;
color:#f2eee1
}
nav li:hover .sub-menu li{
visibility:visible;
overflow:visible;
height:3em;line-height:3em; /* サブメニュー高さ */
transition: .5s
}
#open{display:none}
/*--------------------------------------------------------
ページ上部へのリンク、著作権表示
--------------------------------------------------------*/
#pagetop {/* 位置はscroll.jsで設定 */
background:url(image/back02.gif);/* 背景 */
color:#3e5479;/* 色 */
height:50px;width:50px; /* 大きさ */
border-radius:30px;
box-sizing:border-box;
display:block;
line-height:16px;
padding-top:25px;
position:fixed;
text-align:center;
z-index:10
}
#pagetop:before {
content:'\25B2';
font-size:16px;
position:absolute;
left:0;top:10px;
width:100%
}
#pagetop:hover {
background:rgba(225,215,184,.8)
}
#fl a {
color:#3e5479;
background:#3e5479;
border-radius:5px;
display:inline-block;
padding:3px
}
/*--------------------------------------------------------
見出し、枠、線
--------------------------------------------------------*/
h1{
text-shadow:2px 2px 0px #3e5479;
font-size:1.5em;
line-height:1;
margin:0 0 .5em
}
h2{
font-size:1.2em;
margin:15px 0;
border-bottom:3px double #353535
}
h3{
background:url(image/icon01.gif) no-repeat;
border-bottom:1px dotted #353535;
font-weight:400;
line-height:18px;
margin:1em 0;
padding:0 25px
}
dt{
background:#3e5479;
border-radius:5px;
color:#f5f1e5;
font-weight:700;
float:left;
clear:both;
margin:0 0 5px;
padding:  5px;
width:150px
}
dd{
border-bottom:dashed 1px;
margin:0 0 20px 170px
}
#leftcolumn dt{
float:none;
clear:none;
width:auto
}
#leftcolumn dd{
margin-left:20px
}
input,textarea{
background:#3e5479;
border:1px solid;
color:#353535;
margin:3px 0;
width:400px
}
#leftcolumn textarea{
width:200px
}
textarea{
height:50px
}
hr{
display:block;
border:0;  
border-top:1px solid #3e5479;
margin:1em 0;
padding:0;
height:1px
}
.marker{
background:#3e547952;
padding:1px 5px
}
.dcline{
border-left:5px solid #3e5479;
margin:5px 0;
padding:3px
}
.textbox{
border:1px solid #35353571;
margin:10px 0;
padding:3px;
text-align:center
}
.title{
color:#3e5479;
font-size:1.5em;
font-weight:700;
margin:2em 0;
text-align:right
}
.txt{
border-left:1px dotted #3e5479;
margin:1em;
padding:0 0 0 1em
}
.frame{
background:#3e5479;
border-radius:20px;
padding:3px;
}

.container {
  position: relative;
  display: inline-block;
   z-index: 101;
}
.tooltiptext {
  visibility: hidden;
  width: 150px;
  border:3px solid #3e5479;
  background-color: rgb(245 241 229);
  box-shadow:0 0px 5px #1b253800;;
  color: #3e5479;
  text-align: center;
  padding: 5px 5px;
  border-radius: 6px;
  position: absolute;
  z-index: 50;
  bottom: 125%;
  left: 50%;
  margin-left: -50px;
  opacity: 0;
  transition: opacity 0.3s;
}

.container:hover .tooltiptext {
  visibility: visible;
  opacity: 1;
}

.column {
  float: left;
  width: 50%;
}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}
.cf:before,.cf:after{content:" ";display:table}
.cf:after{clear:both}

* {box-sizing:border-box}

/* Slideshow container */
.slideshow-container {
  max-width: 1900px;
  position: relative;
  margin: auto;
}

/* Hide the images by default */
.mySlides {
  display: none;
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.0s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  background-color: rgba(0,0,0,0.8);
}

/* Number text (1/3 etc) */
.numbertext {
  color: #3e5479;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}

/* The dots/bullets/indicators */
.dot {
  cursor: pointer;
  height: 50px;
  width: 50px;
  margin: 0 5px;
  background-color: #8b9bb6;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.active, .dot:hover {
  background-color: #3e5479;
}

/* Fading animation */
.fade {
  animation-name: fade;
  animation-duration: 1.5s;
}

@keyframes fade {
  from {opacity: .4}
  to {opacity: 1}
}

/*--------------------------------------------------------
スマホ、タブレット用
横幅600pxで切り替え
--------------------------------------------------------*/
@media screen and (max-width: 600px){
body{
font-size:1.3em;
margin-bottom:80px; /* footerのheightと同じ */

@media screen and (max-width: 600px) {
  .column {
    width: 100%;
  }
}

}
#wrapper{
min-height:100%;
padding:0
}
header{
min-width:100%
}
h1{
min-height:40px;
padding-left:60px
}
#index h1{
min-height:inherit;
padding-left:0
}
#contents{
margin:0 auto;
width:100%
}
#rightcolumn,#leftcolumn{
position:relative;
float:none;
width:100%
}
.block a{
color:#3e5479;
background:#3e547900;
border-radius:5px;
display:inline-block;
margin:3px 3px 3px 0;
padding:3px
}
.block a.bg-none{
background:none;
border-radius:0;
padding:0
}
.block li{
float:left
}
footer{
height:80px;
min-width:100%
}
#fl:hover{
background:#95856a
}


dt{float:none;clear:none;width:auto}
dd{margin-left:20px}
input,textarea{width:90%}
img{max-width:100%;height:auto} /* 画像の縮小表示 */
/*--------------------------------------------------------
スマホ、タブレット用メニュー
--------------------------------------------------------*/
/* メニュー */
#menu{
background:rgb(242, 238, 225); /* メニューの背景色 */
border-radius:0;
border:6px solid #3e5479;
margin:0;padding:0;
display:none;
bottom:inherit;
text-align:left;
width:100%;
z-index:20
}
nav li{
display:block; /* 横並び解除 */
height:auto;line-height:inherit /* 高さリセット */
}
nav > ul > li+li:before{
content:none
}
nav li a,nav li span{
display:block;
position:relative;
padding:15px 20px /* リンクの余白 一列の高さはここで調節 */
}
nav li a:hover,nav li span:hover{
background:rgba(62, 84, 121, 1);
color:#f2eee1;
}
/* サブメニュー */
.sub-menu{
background:none;
position:static;
display:none; /* 隠す */
width:100%;
z-index:auto
}
.sub-menu li{
display:inline-block;/* 一列ごとにするならここを削除 */
visibility:visible; /* リセット */
overflow:visible; /* リセット */
height:auto; /* 高さリセット */
width:50% /* 一列ごとにするならここを削除 */
}
.sub-menu li a:hover{
background:rgb(221, 211, 179);
color:#353535
}
.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 #e2e1f2;/* メニュー「>」の色 */
border-right:3px solid #f2eee1;/* メニュー「>」の色 */
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)
}
/* メニューを開くボタン */
#open{
background:#3e5479;
border:2px solid #353535;
border-radius:20px;
display:inline-block;
position:absolute;
height:40px;width:40px;/* 大きさ */
top:10px;left:10px/* headerを基準とした位置 */
}
#open-icon,#open-icon:before,#open-icon:after{
background:#f2eee1; /* 線の色 */
}
#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)}

}