/********************************************************************************/
/*  年度更新時は★のついたカラーを今年度のテーマカラーに沿って変更(置換)する。  */
/*
/*★2021年度
/* 1)リンク文字                      297e7e    →    8C6900
/* 2)ヘッダライン                    329A9A    →    FDFD00
/* 3)メニュー文字、日付,H3,H4                  →    B28500
/* 4)メニューライン                  8cd9d9    →    FEF196
/* 5)カテゴリライン                  257272    →    F0F000
/* 6)メインカラーの濃いめ            1c5353    →    FFFF42
/*
/********************************************************************************/


/* ↓↓↓ 年度更新時にメインカラー等を更新 ↓↓↓ */
:root {
    --main-color: #FEC0E3;         /* メインカラー, ヘッダーライン, カテゴリ */
    --sub-color: #FB1A9B;          /* メインカラーの濃いめ, 日付, H3, H4 */
    --text-link: #BC036D;          /* リンク文字, メニュー現在地/ホバー時 */
    --menu-bg-gradient: linear-gradient(#ffffff, #FEC0E3);  /* メニュー背景グラデ */
    --bg-color: #FFCEEA;           /* 薄い色の背景色 */
}
/* ↑↑↑ カラー編集 ↑↑↑ */

h1,h2,h3,h4,h5,h6{margin:0;padding:0;}
img{
    border:none;
    /*---------追加-------------------*/
    max-width: 100%;
    height: auto;
    /*-----------------------------------*/
}
html *{
    font-size:97.5%;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color:#333;
}
a:link,a:visited{
    color:var(--text-link); /*★メインカラー*/
}
/*-------------------------------------------------
  Layout
-------------------------------------------------*/

body{
    margin:0;
    padding:0;
    background:#fff url(../image/bg01.jpg) repeat-x;
    border-top:4px solid var(--main-color); /*★メインカラーの薄め*/
    text-align:center;
    font-family: normal arial, helvetica, hirakakupro-w3, osaka, "ms pgothic", sans-serif;
    letter-spacing: 0.05rem;
    line-height: 1.7;
}
#container{
    margin:0px auto;
    padding:0px auto;
    width:840px;
    text-align:left;
}
#header{
    position:relative;
    margin-top:20px;
}

#main{
    float:right;
    width:600px;
    background:#fff;
    margin-top:20px;
}

#sidebar{
    float:left;
    width:220px;
    margin-top:20px;
}

#footer{
    clear:both;
    text-align:center;
    border-bottom:4px solid var(--main-color); /*★メインカラーの薄め*/
    padding-top:40px;
    width:100%;
}

/*-----------------------------------------------------
header detail
-------------------------------------------------------*/

#header h1{
    color:#333;
    background-image:url(../image/top-logo.jpg);
    background-repeat: no-repeat;
    background-size: 376px;
    height:126px;
    display:block;
    text-decoration:none;
    text-align:right;
    outline:none;
    padding-right:10px;
}
/*--global menu ----------------------------------*/

#global-menu{
    background: linear-gradient(#ffffff, #eee);
    border: 1px solid #eee;
    margin:0px;
    padding:2px 0;
    _width:100%;
    overflow:hidden;
    text-align:center;
}
#global-menu li{
    float:left;
    /* width:auto; */
    width: calc(20% - 1px);
    height:30px;
    list-style:none;
    line-height:30px;
    font-weight:bold;
    border-right:1px solid var(--main-color); /*★メインカラーのさらに薄め*/
}
#global-menu li:last-child {
    border-right: none;
}
#global-menu li a:link,#global-menu li a:visited{
    display:block;
    margin:0px 2px;
    padding:0 30px;
    font-size:12px;
    color:#333;
    text-decoration:none;
    outline:none;

}
#global-menu li a:hover,#global-menu .current a:link,#global-menu .current a:visited{
    color: var(--sub-color);  /*★*/
    background: var(--menu-bg-gradient);
}

/*--------------------------------------------------
  CONTENT detail
----------------------------------------------------*/

/*#main******************************/

.path{
    margin:8px 0;
    background:url(../image/ico03.gif) no-repeat 4px 8px;
    padding:5px 1em 10px 20px;
    font-size:12px;
}
.path a:link ,.path a:visited{
    color:#333;
}
.path span{
    padding:0 4px;
}
#main .infobox{
    border:1px solid #cfcfcf;
    /* background:url(../image/bg01.jpg) repeat-x; */
}
#main .infobox .date{
    color: var(--main-color); /*★メインカラーのやや濃いめ*/
    padding-right:1em;
}
#main .infobox h2{
    margin:0px;
    border-width:0 0 1px 0;
    padding-left:30px;
    /* background:url(../image/ico01.gif) no-repeat; */
    background: linear-gradient(#ffffff, #ececec);
    position: relative;
}
#main .infobox h2::after {
    position: absolute;
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    background: url(../image/ico01.gif) no-repeat;
    top: 10px;
    left: 8px;
}

#main .infobox ul{
    font-size:90%;
}
#main .infobox li{
    list-style:disc url(../image/ico02.gif);
}
#main .article-body{
    margin:1em 0.5em 0 1em;
}
#main .article-body dl {
    width:100%;
}
#main .article-body dt {
    float:left;
    clear:left;
    width: 80px;
    margin-bottom:15px;
    /* margin-right:-30px; */
    border-bottom:1px var(--text-link) dotted;
}
#main .article-body dd {
    float:left;
    width: 450px;
    margin-bottom: 15px;
    margin-left: 20px;
}
#main h2{
    /* font-size:90%; */
    color:#666;
    padding:8px 0px 8px 10px;
    margin-top:25px;
    /* background:url(../image/bg01.jpg) repeat-x;
    border:1px solid var(--main-color); */ /*★メインカラーのさらに薄め*/
    background: linear-gradient(#ffffff, #ececec);
    border: 1px solid #cfcfcf;
}
#main h2 strong{
    border-left:6px solid var(--main-color); /*★メインカラーのやや濃いめ*/
    padding-left:8px;
}
#main h3{
    margin:1em 0;
    color:var(--sub-color);  /*★メインカラーのやや濃いめ*/
    /* font-size:0.9em; */
}
#main h4{
    margin:1em 0;
    color:var(--sub-color);  /*★メインカラーのやや濃いめ*/
    font-size:0.9em;
    background-color:#000099; 
}
#main p{
    line-height:1.6;
    /* font-size:0.9em; */
}
#main .list1{
    font-size:0.9em;
}
#main .list1 li{
    list-style:disc url(../image/ico04.gif);
}

#main .newbox {
    font-size: 0.9em;
    line-height: 25px;
    margin-left: 10px;
    height: 600px;
    overflow: auto;
    margin-right: 10px;
}
#main .newbox p{
    margin:0px;}


#news {
	width: 100%;
	height: 200px;
	margin: 0;
}
#news iframe {
	border: 0;
	width: 100%;
	height: 100%;
}
#news ul {
    font-size:90%;
    text-align: left;
    /* padding-top: -30px; */
    padding-left: 30px;
}
#news li {
    /* list-style:disc url(../image/ico02.gif); */
    list-style: none;
    position: relative;
    padding-bottom: 6px;
}
#news li::before {
    content: '!';
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--bg-color);
    font-size: 10px;
    font-weight: 700;
    color: var(--sub-color);
    position: absolute;
    top: 2px;
    left: -22px;
    padding: 0px 0 6px 6px;
}
#news .date{
    color:var(--sub-color); /*★*/
    padding-right:1em;
}

/* contact form ******************************/
.btn {
    padding: 0.8em 1.5em;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}
.btn:hover {
    opacity: 0.6;
}
.btn._submit {
    background: var(--menu-bg-gradient);
    color: var(--text-link);
    border: 1px solid var(--sub-color);
    font-weight: 700;
}


/*sidebar detail *******************************/

#sidebar h4{
    /* background:#fff url(../image/bg-sidem.jpg) no-repeat;
    border:1px solid var(--main-color); */ /*★メインカラーのさらに薄め*/
    background: linear-gradient(#ffffff, #ececec);
    border: 1px solid #ececec;
    position: relative;
    padding:8px 10px 8px 30px;
    color:#333;
    font-size:0.9em;
}
#sidebar h4::after {
    position: absolute;
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    background: url(../image/ico01.gif) no-repeat;
    top: 10px;
    left: 8px;
}
#sidebar ul.sidemenu{
    padding: 0px;
    margin: 0px;
    list-style:none;
}
#sidebar ul.sidemenu li{
    border-color:#ececec;
    border-width:0 0 1px 0;
    border-style:solid;
    /* margin: 0px 2px 2px 0px; */
    padding: 8px 0 8px 5px;
}
#sidebar ul.sidemenu li a:link,#sidebar li a:visited{
    padding:1px 0px 1px 10px;
    display: block;
    margin: 1px;
    border-left: var(--main-color) 2px solid; /*★メインカラーのやや濃いめ*/
    color: #444;
    text-decoration: none;
}
#sidebar ul.sidemenu li a:hover{
    padding:1px 0px 1px 13px;
    border-left: var(--main-color) 2px solid; /*★メインカラーのやや濃いめ*/
    color: var(--text-link); /*★メインカラー*/
}

#sidebar .current a:link,#sidebar .current a:visited{
    padding:1px 0px 1px 13px;
    border-left: #CCCCCC 2px solid;
    color: var(--text-link); /*★メインカラー*/
}
#sidebar dl.zyusyo{
    margin-left:1em;
}
#sidebar dl.zyusyo dt {
    font-size:1em;
    font-weight:bold;
    color:#333366;
}
#sidebar dl.zyusyo dd {
    font-size:0.9em;
    /* margin:0 0 1em 1em; */
    margin: 0 0 2em 0;
}
#sidebar ul.banner {
    padding: 0px;
    margin: 0px;
    list-style:none;
    text-align:center;
}


/*footer detail****************************/

#footer address{
    width:780px;
    margin:0 auto;
    font-style:normal;
    font-size:12px;
    border-top:1px solid var(--main-color); /*★メインカラーのやや薄め*/
    color:#666;
    text-align:center;
    padding:10px 0px 20px 0px;
}


/**********clearfix*******************
子要素のfloatを解除するCSSクラス
必要に応じて使用・削除してください。
**************************************/
.clearfix:after {
     content: ".";
     display: block;
     height: 0;
     clear: both;
     visibility: hidden;
}

.clearfix {display: inline-block;}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

