@charset "UTF-8";
@import url("grid.css");

:root { /* 色変更される場合は、#以降のカラーコードを変更してください IE非対応 */
    --base-color: #000;
    --link-color: #666;
    --linkhover-color: #999;
    --border-color: #ccc;
    --white-color: #fff;
}

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
    display:block;
    color: var(--link-color);
    text-decoration-line: none;
}
a:hover { 
    color: var(--linkhover-color);
}
a img:hover {
	opacity: 0.8;
}
.breadcrumb a{
    display: inline-block;
}

.breadcrumb a:link,.breadcrumb a:visited{
    color: #fe5256;
    text-decoration: underline;
}

.breadcrumb ul li{
    display: inline;
}

.breadcrumb ul li:not(:first-child)::before  {
  content: ' ▶ ';
}

.underline {
	border-bottom: 3px solid var(--base-color);
	padding-bottom: 0.5rem;
}
.center {
	text-align: center;
}

.h1-area{
    width: 100%;
    height: 271px;
    overflow: hidden;
}

.h1-area img{
    max-width: 100%;
    height: 271;
    display: block;
}

h2{
    color: #ea68a2;
    font-size: 2.8rem;
    margin-bottom: 20px;
}

.h2gr{
    font-weight: bold;
    color: #41b75c;
    font-size: 3rem;
}

.actbox{
    text-align: center;
    object-fit: none;
}



h3{
    font-size: 2.3rem;
}
.mb20{
    margin-bottom: 30px;
}

.mb30{
    margin-bottom: 30px;
}
.mt30{
    margin-top: 30px;
}

.ftbld{
    font-weight: bold;
}

.ftunderline{
    text-decoration: underline;
}

.list-container {
  list-style: none;
  padding-left: 0;
counter-reset: item;
}

.list-container li {
font-size: 1.8rem;
  position: relative;
  margin-bottom: 1rem;
  padding-left: 2rem;
}

.list-container li::before {
  content: counter(item, decimal) "."; /* `counter()`で番号を生成 */
  counter-increment: item;             /* 番号を自動でインクリメント */
  position: absolute;
  left: 0;
  top: 0;
  text-align: right;
  width: 1.5rem; /* 番号の幅を調整 */
}


/*ヘッダー
-------------------------------------*/
.head {
	display: flex;
    flex-direction: row;
    padding: 1rem 0 0 0;
}

.head h1 { 
    padding: 1rem 0;
	font-weight: 700;
	letter-spacing: 3px;
}

.topimg{
    margin-bottom: 70px;
}

.top-header-text{
    align-items: center;
    font-weight: bold;
    font-size: 1.6rem;
    font-family: "Noto Serif JP", serif;
;    
}


.breadcrumb{
    color: #fe5256;
}


nav{
    margin-bottom: 70px;
}
nav ul {
    display: flex;
    flex-direction: row;
    list-style: none;
    align-items: center;
    height: 80px;
    justify-content: space-around;
}


nav li {
    font-size: 2rem;
    flex: 1 0 auto;
    margin-bottom: 0;
}
nav li:first-child{
    border-left: 3px solid #11bec6;

}
nav li a {
    border-right: 3px solid #11bec6;
    display: flex;
    height: 80px;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    text-align: center;
    border-bottom: 3px solid transparent; /* 透明な下線を設定 */
    transition: border-bottom-color 0.3s ease; /* ホバー時のアニメーション効果 */
}

nav a {
    padding: 2rem 1rem;
    display: block;
}
nav a:hover {
    background-color:#b6edc9;
/*    color: #fe5256;*/
  border-bottom-color: #fe5256; /* ホバー時に下線の色を変更 */
}
nav a {
    padding: 1rem;
}
.current{
    border-bottom: 3px solid #fe5256;

}


.sec-main{
    margin: 0 20px 0 260px;
}

.sec-main h3{
    color: #44b9ef;
}

.sec-main p{
    font-size: 1.8rem;
}

.itemcenter{
    align-items: center !important;    
}




/*メイン画像
-------------------------------------*/
.mainimg img {
    width: 100vw;
}

/*メインコンテンツ
-------------------------------------*/
main {
/*    margin: 5rem 0 5rem 0;*/
    margin: 0 0 5rem 0;
}

/*キャッチタイトル
-------------------------------------*/
h2.catch {
    text-align: center;
    color: var(--link-color);
    font-size: 4.0rem;
    margin-bottom: 3rem;
}



/*トップ上部
-------------------------------------*/
.new_list{
    margin-top: 0;
    padding: 0;
    list-style: none;
}

.new_list li{
    margin-bottom: 0;
    padding: 10px;
}

.new_list li a{
    display: inline;
}

/* 偶数番目の li */
.new_list  li:nth-child(even) {
  background-color: #e9f5e9; /* 薄い緑 */
  margin-bottom: 0;
}


.new_list li::before{
/*      content:"● ";*/
}

.new_list li.pdflink::before{
      content:url('../img/icon-pdf.png');
      vertical-align: -50%;
      margin-right: 5px;
}

.area_list li{
    list-style: none;
 display:inline-block;
}
.area_list li a{
    text-decoration: underline;
}


.open-mark{
    padding: 5px;
    border: 1px solid #00b0ff;
    color: #00b0ff;
    background: #fff;
    font-weight: bold;
    border-radius: 5px;
    font-size: 12px;
    margin-left: 10px;
    display: inline-block;
}

.tbox{
    border: 3px solid #11bec6;;
}

.tbox p{
    font-family: "Noto Serif JP", serif;
}

.tbox_inner{
    font-size: 1.9rem;
    padding: 10px 30px 30px 30px;
}

.map_container{
    max-width: 1141px;
    margin: 0 auto;
}


.h1-basic{
    color: #ea68a2;
    font-size: 3rem;
}

#about p,#support_network p{
    font-size: 1.8rem;
    line-height: 3.6rem;
}

#about_logo p{
    font-size: 1.8rem;
}

#check01-01{
    border: 2px solid #ea68a2;    
    padding: 30px;
}
#check01-pic01{
    position: absolute;
    top:30px;
    right: 20px;
}

#check01-text01{
    margin-top: 100px;
}

#check01-text02{
    margin-top: 30px;
    font-size: 1.4rem;
    margin-bottom: 0;
}


#check01-01 li{
    list-style-position: inside;
    list-style-type: square;
}

#check_inner01{
    padding: 20px 20px 0 20px;
    margin-left: 80px;
    width: 80%;
    border: 2px solid #11bec6;
    background: #fff;
}

#check_inner01 ul{
    margin-bottom: 0;
    padding-bottom: 0;
    line-height: 2.2rem;
}

.bglightgr{
    background-color: #e9f5e9;
}

.photobox{

    width: 100%;
    margin: 0 auto;
}

.photobox ul{
    align-items: center;
    list-style: none;
    margin: 0 20px;
}

.photobox ul li{
vertical-align: top; 
    align-items: center;
    display: inline-block;
    text-align: center;
    margin-right: 10px;
}

.photobox ul li img{
    margin: 0 auto;
}


/*フッター
-------------------------------------*/
footer {
    padding: 0;
}

footer .container{
    text-align: center;
    height: 133px;
    background-image: url('../img/footer-back.png');
}

footer .container p{
    position: relative;
    top:80px;
    color: #996c00;
}

/*コピーライト
-------------------------------------*/
.copyright {
    color: #996c00;
    text-align: center;
}

/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: 15px;
    right: 15px;
}
#pagetop a {
    display: block;
    background-color: #0abfc5;
    color: var(--white-color);
    width: 50px;
    padding: 10px 5px;
    text-align: center;
}
#pagetop a:hover {
    background: var(--linkhover-color:);
}
/*パンくずリスト
-----------------------------------*/
.breadcrumb {
    margin: 0 0 1em 0;
    padding: 0; 
}
.breadcrumb li {
    list-style-type: none;
}
.breadcrumb li a {
    display: inline-block;
    color: var(--link-color);
}

/*文字レイアウト・デザイン
-----------------------------------*/
.tright{
    text-align: right;
}
.tcenter{
    text-align: center;
}

.fts{
    font-size: 1.6rem !important;
}


@media screen and (max-width: 1120px){
nav li {
    font-size: 1.4rem;
    flex: 1 0 auto;
    margin-bottom: 0;
}

.sec-main{
    margin: 0 20px 0 100px;
}

}

@media screen and (max-width: 1000px){
#check_inner01{
    margin-left: 10px;
}

#check01-text01{
    margin-top: 150px;
}

}

@media screen and (min-width: 769px){
.sp{
    display: none;
}
.pc{
    display: block;
}

.h2-title{
    display: block;
    background: url(../img/h2-bg.png) no-repeat;
    background-size: contain;
    height: 66px;
    font-size: 2.4vw;
    padding-top: 1vw;
    padding-left: 21vw;
    padding-bottom: 0;
}

/* PC時はMENUボタンを非表示 */
#open,#close {
    display: none !important;
}

#navi {
    display: block !important;
}

}

@media screen and (max-width: 768px){
.h1-basic{
    font-size: 2.6rem;
}

.h2-title{
    font-size: 2.6rem;
    display: block;
    background: url(../img/h2-bg-sp.png) no-repeat;
    background-size: contain;
    height: 66px;
    padding-top: 1.9vw;
    padding-left: 21vw;
    padding-bottom: 0;
}


.pc{
    display: none;
}

.head {
	flex-direction: column;
    text-align: left;
    margin-bottom: 20px;
}
.telbox {
	margin-left: 0;
	text-align: center;
}
.head #open,#close  {

    position: fixed;
/*    top: 28px;*/
    top:10px;
    right: 12px;
    }

.topimg{
    margin-bottom: 0px;
}

nav ul {
    height: auto;
	flex-direction: column;
    border: none;
}

nav li {
    font-size: 1.8rem;
    width: 100%;
	padding-top: 0;
	border-bottom: 1px solid #11bec6;
	margin-bottom: 0;
}

nav li:first-child{
    border-left:none;

}

nav li a{
    border-right: 1px;

}
.new_list li {
    padding: 10px;
}

#navi-wrap{
    display: none;
}


/* スマホ時はMENUボタンを表示 */
#open {
    border: 1px solid #c0c0c0;

    display: block;
    background: url(../img/button.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    position: absolute;
/*    top: 20px;*/
    top: 20px;
    right: 12px;
}
#close  {
    border: 1px solid #c0c0c0;

    display: block;
    background: url(../img/button2.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    position: absolute;
/*    top: 20px;*/
    top: 20px;
    right: 12px;
}
.top5{
    top:5px !important;
}


/* スマホ時はメニューを非表示 */
#navi {
    display: none;
}


.sec-main{
    margin: 0 20px 0 40px;
}

#check_inner01 {
    width: 100%;
    margin-left: 0;
}

#check01-text01{
    margin-top: 20px;
}

#check01-pic01{
    text-align: center;
    position: relative;
    top:30px;
    right: 20px;
}


}

@media screen and (max-width: 680px){
.h2-title{
    font-size: 2.2rem;
    display: block;
    height: 50px;
    padding-left: 21vw;
    padding-top: 0;
    padding-bottom: 0;
}

    h3{
        font-size: 2rem;
    }

.new_list li {
    padding: 10px;
}

.sec-main{
    margin: 0 20px 0 20px;
}
.photobox ul{
    margin: 0;
}


footer .container p{
    font-size: 1.4rem;
}


}


@media screen and (min-width: 1121px){
.h2-title{
    font-size: 24px;
    padding-left: 250px;
    background: url(../img/h2-bg.png) no-repeat;
    background-size: contain;
    height: 66px;
}


}


/* 狭い画面幅でのスタイル */
@media (max-width: 767px) {
.photobox ul{
    width: 100%;
}
.photobox ul{
    margin: 0;
}

.photobox ul li{
    display: block;
    text-align: center;
}

}
