@charset "UTF-8";

#contents ul.ul-navi-01 { display:flex; margin:40px -3px 50px -3px; flex-wrap:wrap; }
#contents ul.ul-navi-01 li { display:flex; margin:0 3px; min-width:170px; flex:1 0 auto; text-align:center; }
#contents ul.ul-navi-01 li a { display:flex; padding:5px; border:1px solid #c0c0c0; border-radius:6px; width:100%; min-height:80px; background:#fff; font-size:15px; font-weight:bold; color:#333; line-height:1.3; text-align:center; text-decoration:none; box-sizing:border-box; justify-content:center; align-items:center; flex-direction:column; transition:background-color 0.3s; }
#contents ul.ul-navi-01 li span { display:block; font-weight:inherit; line-height:inherit; }
#contents ul.ul-navi-01 li.blank a { background-image:url(../../assets/img/marker/icon-arrow-16-r.png); background-position:90% 50%; background-repeat:no-repeat; background-size:8px auto; }
#contents ul.ul-navi-01 li .en { margin-bottom:5px; font-size:10px; color:#165E83; }

#contents ul.ul-navi-01[data-current="1"] li:nth-child(1) a,
#contents ul.ul-navi-01[data-current="2"] li:nth-child(2) a,
#contents ul.ul-navi-01[data-current="3"] li:nth-child(3) a,
#contents ul.ul-navi-01[data-current="4"] li:nth-child(4) a,
#contents ul.ul-navi-01[data-current="5"] li:nth-child(5) a { background-color:#203744; color:#fff; }
#contents ul.ul-navi-01[data-current="1"] li:nth-child(1) .en,
#contents ul.ul-navi-01[data-current="2"] li:nth-child(2) .en,
#contents ul.ul-navi-01[data-current="3"] li:nth-child(3) .en,
#contents ul.ul-navi-01[data-current="4"] li:nth-child(4) .en,
#contents ul.ul-navi-01[data-current="5"] li:nth-child(5) .en { color:#fff; }

#contents ul.ul-navi-02 { display:flex; margin:1px 0 0 1px; flex-wrap:wrap; }
#contents ul.ul-navi-02 li { display:flex; margin:-1px 0 0 -1px; border:1px solid #c0c0c0; min-width:33.333%; flex:1 1 auto; box-sizing:border-box; }
#contents ul.ul-navi-02 li a { display:flex; padding:5px; width:100%; min-height:60px; background:#fff; font-size:15px; font-weight:bold; color:#333; line-height:1.3; text-align:center; text-decoration:none; box-sizing:border-box; align-items:center; justify-content:center; flex-direction:row; transition:background-color 0.3s; }
#contents ul.ul-navi-02[data-current="1"] li:nth-child(1) a,
#contents ul.ul-navi-02[data-current="2"] li:nth-child(2) a,
#contents ul.ul-navi-02[data-current="3"] li:nth-child(3) a,
#contents ul.ul-navi-02[data-current="4"] li:nth-child(4) a,
#contents ul.ul-navi-02[data-current="5"] li:nth-child(5) a { background-color:#165E83; color:#fff; }

#contents h2, #contents h2:first-child { font-size:24px; }
#contents h2 span { display:block; font-size:14px; font-weight:inherit; color:#333; line-height:inherit; }
#contents h3, #contents h3:first-child { font-size:20px; }
#contents h4, #contents h4:first-child { font-size:15px; }
#contents h4 { margin-bottom:10px; }
#contents .h-01 { margin-bottom:25px; padding-bottom:15px; border-bottom-color:#333; font-size:20px; color:#333 !important; }

#contents p,
#contents ul li,
#contents ol li,
#contents ul.ul-plain > li,
#contents ol.ol-round-parentheses > li,
#contents ol.ol-encircled-number > li,
#contents dl.dl-01 > dt,
#contents dl.dl-01 > dd { font-size:14px; line-height:1.7; }

#contents ul.ul-plain > li,
#contents ol.ol-decimal li,
#contents ol.ol-round-parentheses > li,
#contents ol.ol-encircled-number > li { margin-bottom:15px; }

#contents ol.ol-encircled-number > li { margin-left:1.5em; }
#contents ol.ol-encircled-number > li:before { margin-left:-1.5em; width:1.5em; }

#contents ul.ul-notes-01 > li { margin-left:1em; text-indent:-1em; }

#contents dl.dl-01 dt,
#contents dl.dl-01 dd { float:none; width:auto; padding:0; }
#contents dl.dl-01 > dt { margin:0; font-weight:normal; }
#contents dl.dl-01 > dd { margin:0 0 20px 0; }
#contents dl.dl-01 > dd:last-child { margin-bottom:0; }

#contents dl.ol-fd01 > dt { font-size:14px; line-height:1.7; }
#contents dl.ol-fd01 > dd { margin-top:-1.7em; font-size:14px; line-height:1.7; }
#contents ol.ol-fd01 { counter-reset:fd-cnt; }
#contents ol.ol-fd01 > li { margin-left:1.5em; margin-bottom:10px; padding:0; counter-increment:fd-cnt; list-style:none outside; }
#contents ol.ol-fd01 > li:before { display:inline-block; margin: 0 0 0 -1.5em; width:1.5em; content:counter(fd-cnt); }
#contents ol.ol-fd01 > li:first-child { margin-left:4em; }
#contents ol.ol-fd01 > li:first-child:before { display:none; }

#contents .table-04.table-fd01 thead th { padding:13px 20px; height:auto; text-align:center; vertical-align:middle; }
#contents .table-04.table-fd01 th,
#contents .table-04.table-fd01 td { padding:3px 20px; height:50px; vertical-align:middle; }

#contents .box-fd01 { padding:40px 50px; background:#FFF; }
#contents .box-fd01.greeting p { margin-bottom:0; text-indent:1em; }

#contents .box-fd01.news h2 { display:none; }
#contents .box-fd01.news dl.dl-news-01 { margin:0 0 50px 0; padding:0; border:0; overflow:visible; }
#contents .box-fd01.news:not(:has(dl.dl-news-01))::before { display:block; margin-bottom:30px; padding:20px 0; font-size:16px; text-align:center; content:"お知らせはありません。"; }
#contents .box-fd01.news.program:not(:has(dl.dl-news-01))::before { content:"研修会の予定はありません。"; }



#contents.N .column-wide dl.accordion-01 > dt { padding:23px 20px; }
#contents.N .column-wide dl.accordion-01 > dt span { margin:0 !important; padding-left:0; width:auto; font-size:15px; }
#contents.N .column-wide dl.accordion-01 > dd { margin-top:0; margin-bottom:0; padding:30px 20px 50px 20px; width:auto; }

#contents ul.ul-video-01 { display:flex; margin:-15px -20px; flex-wrap:wrap; }
#contents ul.ul-video-01 > li { display:flex; margin:13px 20px; width:calc(50% - 40px); }
#contents ul.ul-video-01 a { display:flex; width:100%; text-decoration:none; transition:opacity 0.3s; flex-direction:column; }
#contents ul.ul-video-01 .img { display:block; }
#contents ul.ul-video-01 .img img { width:100%; height:auto; }
#contents ul.ul-video-01 .txt { display:flex; padding:15px 20px; background:#1d485e; font-size:14px; line-height:1.4; color:#fff; flex:1; align-items:center; }


#overlay { display:none; position:absolute; top:0; left:0; width:100%; min-width:1000px; height:100%; background:#000; opacity:0.8; z-index:1000; }
#modalContents { display:none; position:fixed; top:0; left:0; width:100%; z-index:1500; }
#modalContents .modalBox { margin:0 auto; width:90%; max-width:1000px; box-sizing:border-box; }
#modalContents .modalBox.movieBox iframe { display:block; width:100%; height:100%; }
#modalContents .modalBox.imageBox img { display:block; width:100%; height:auto; }
#modalContents .btClose { display:block; position:fixed; top:10px; right:10px; width:66px; height:66px; background:transparent url(../../assets/img/button/btn-close.png) 50% 50% no-repeat; background-size:50px auto; text-indent:-9999px; overflow:hidden;  cursor:pointer; }



@media screen and (min-width:601px) {
#contents.N .column-wide { width:940px; }
#contents ul.ul-navi-01 li a:hover,
#contents ul.ul-navi-02 li a:hover { background-color:#E8ECEE; }

#contents ul.ul-video-01 a:hover { opacity:0.7; }

}


@media screen and (max-width:600px) {
#contents ul.ul-navi-01 { margin:20px 0 35px 0; border:1px solid #C0C0C0; }
#contents ul.ul-navi-01 li { margin:0; border-bottom:1px solid #C0C0C0; min-width:100%; }
#contents ul.ul-navi-01 li:last-child { border-bottom:0; }
#contents ul.ul-navi-01 li a { padding:10px 15px; border:0; border-radius:0; min-height:45px; font-size:13px; flex-direction:row; }
#contents ul.ul-navi-01 li.blank a { background-position:95% 50%; }
#contents ul.ul-navi-01 li .en { margin-bottom:0; margin-left:auto; order:2; }

#contents ul.ul-navi-02 li a { padding:5px 10px; min-height:45px; font-size:13px; }

#banner.banner-B .container h1 { margin-bottom:0; }

#contents h2, #contents h2:first-child { font-size:20px; }
#contents h2 span { font-size:12px; }
#contents h3, #contents h3:first-child { font-size:17px; }
#contents h4, #contents h4:first-child { font-size:14px; }
#contents h3 { margin-top:30px; }
#contents .h-01 { margin-bottom:20px; padding-bottom:10px; font-size:16px; }

#contents .column-wide p,
#contents ul li,
#contents ol li,
#contents ul.ul-plain > li,
#contents ol.ol-round-parentheses > li,
#contents ol.ol-encircled-number > li,
#contents dl.dl-01 > dt,
#contents dl.dl-01 > dd { font-size:13px; line-height:1.6; }

#contents dl.ol-fd01 > dt { font-size:13px; line-height:1.6; }
#contents dl.ol-fd01 > dd { margin-top:-1.6em; font-size:13px; line-height:1.6; }

#contents .table-04.table-fd01 { font-size:12px; }
#contents .table-04.table-fd01 th,
#contents .table-04.table-fd01 td { padding:5px; }

#contents .box-fd01 { padding:20px 15px; }


#contents .box-fd01.news:not(:has(dl.dl-news-01))::before { margin-bottom:20px; font-size:14px; }



#contents.N .column-wide dl.accordion-01 > dt { padding:15px; }
#contents.N .column-wide dl.accordion-01 > dt span { font-size:14px; }
#contents.N .column-wide dl.accordion-01 > dd { padding:20px 15px 35px 15px; }

#contents ul.ul-video-01 { margin:-7px; }
#contents ul.ul-video-01 > li { margin:7px; width:calc(50% - 14px); }
#contents ul.ul-video-01 .txt { padding:7px 10px; font-size:12px; line-height:1.3; }



#overlay { min-width:initial; min-width:auto; }
#modalContents .modalBox { padding:0 15px; width:100%; }
#modalContents .btClose { top:0; right:0; width:50px; height:50px; background-size:30px auto; }
}
}
