@charset "UTF-8";
/*
Theme Name:School Basic Template
Theme URI:http://www.gd-system.jp/
Description:学校用テーマ
Version:1.0
Author:grafix
Author URI:http://www.gd-system.jp/
*/
/* html tag */
body { font-size: 14px; line-height: 1.5; word-wrap: break-word; word-break: break-all; text-justify: inter-ideograph; font-family: "Noto Sans Japanese","Rounded Mplus 1c",'新細丸ゴシック','細丸ゴシック','ヒラギノ丸ゴ Pro W3','メイリオ',sans-serif; }

a { color: #2e93d4; text-decoration: none; }

a:hover { text-decoration: underline; }

img { max-width: 100%; max-height: 100%; width: auto; height: auto; vertical-align: bottom; -webkit-transition: opacity .2s ease-in-out; transition: opacity .2s ease-in-out; }

*::after, *::before { vertical-align: bottom; }

a:hover img { opacity: 0.7; zoom: 1; text-decoration: none; }

a[href^=tel] { color: #000; cursor: text; pointer-events: none; }

a[href^=tel]:hover { text-decoration: none; }

body { background-color: #fcfbf9; }

pre { display: block; font-size: 87.5%; color: #212529; }

/************************************************************************************************************************
1. General Setting
*************************************************************************************************************************/
/*float用*/
.fl { float: left; }

.fr { float: right; }

/*floatのclearfix用*/
.cfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; font-size: 0; }

.cfix { min-height: 1px; }

/*floatにより、親要素の高さが失われるのを防ぐ為にclear要素を入れる*/
.clear { clear: both; }

.fontS { font-size: 62.5%; font-size: 9px; font-size: 0.9rem; }

.fontM { font-size: 62.5%; font-size: 12px; font-size: 1.2rem; }

.fontL { font-size: 62.5%; font-size: 15px; font-size: 1.5rem; }

.wf-roundedmplus1c { font-family: "Rounded Mplus 1c"; }

.wf-notosansjapanese { font-family: "Noto Sans Japanese"; }

body { background-color: #fff; font-family: "Noto Sans Japanese","Rounded Mplus 1c",'新細丸ゴシック','細丸ゴシック','ヒラギノ丸ゴ Pro W3','メイリオ'; color: #666; background-color: #fff; width: 100%; -webkit-overflow-scrolling: touch; }

ul { list-style: none; }

a { text-decoration: none; outline: none; }

#errorImage { padding-bottom: 150px; }

/* IE8+, Chrome */
input, button { outline: 0; }

/* Firefox */
input::-moz-focus-inner, button::-moz-focus-inner { border: 0; }

/*select*/
.img-fluid { max-width: 100%; height: auto; }

/************************************************************************************************************************
2. container：共通
*************************************************************************************************************************/
/************************************************************************************************************************
3. カスタムアニメーション
*************************************************************************************************************************/
@-webkit-keyframes fadeInUp { from { opacity: 0;
				-webkit-transform: translate3d(0, 50px, 0);
				transform: translate3d(0, % 0px, 0);
				-webkit-filter: blur(20px);
				filter: blur(20px); }
		to { opacity: 1;
				-webkit-transform: none;
				transform: none; } }

@keyframes fadeInUp { from { opacity: 0;
				-webkit-transform: translate3d(0, 50px, 0);
				transform: translate3d(0, 50px, 0);
				-webkit-filter: blur(20px);
				filter: blur(20px); }
		to { opacity: 1;
				-webkit-transform: none;
				transform: none; } }

.fadeInUp { -webkit-animation-name: fadeInUp; animation-name: fadeInUp; }

@-webkit-keyframes zoomIn { from { opacity: 0;
				-webkit-transform: scale3d(1.1, 1.1, 1.1);
				transform: scale3d(1.1, 1.1, 1.1);
				-webkit-filter: blur(20px);
				filter: blur(20px); }
		90% { opacity: 1; } }

@keyframes zoomIn { from { opacity: 0;
				-webkit-transform: scale3d(1.1, 1.1, 1.1);
				transform: scale3d(1.1, 1.1, 1.1);
				-webkit-filter: blur(20px);
				filter: blur(20px); }
		90% { opacity: 1; } }

.zoomIn { -webkit-animation-name: zoomIn; animation-name: zoomIn; }

/**********************************************
 All
***********************************************/
.section { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; -webkit-align-content: center; align-content: center; }

/**********************************************
 section_eyecatch
***********************************************/
#section_eyecatch { position: relative; padding-bottom: 100px; width: 100%; table-layout: fixed; padding-top: 110px; }

@media screen and (max-width: 576px) { #section_eyecatch { padding-bottom: 50px; } }

/* flexboxのvegas対応 配下にsection_innerが来る */
.vegas-wrapper { padding-bottom: 0px !important; display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }

.section_eyecatch_logo { display: block; margin: auto; margin-top: 150px; color: #fff; font-size: 24px; font-family: serif; }

.section_eyecatch_logo.text { text-shadow: 0 0 3px #000; }

/*SCROLLイメージの設定*/
#section_eyecatch .scroll { display: block; position: absolute; bottom: 30px; }

/**********************************************
 section_important
***********************************************/
#section_important { position: relative; background-color: #fcfbf9; padding-top: 50px; padding-bottom: 0px; overflow: hidden; }

#section_important .card { margin-bottom: 20px; border: solid 2px #FC6665; }

#section_important .card-header { background-color: #065b20; color: #FFF; }

#section_important .report .category { margin-right: 20px; }

#section_important .report .category .badge { padding: 5px; }

/**********************************************
 section_infonews
***********************************************/
#section_infonews { position: relative; background-color: #fcfbf9; min-height: 500px; padding-top: 40px; padding-bottom: 50px; overflow: hidden; }

#section_infonews .card { margin-bottom: 20px; }

#section_infonews .card-header { background-color: #065b20; color: #FFF; }

#section_infonews .card-header .en { color: #ddd; font-size: 5px; font-size: 0.5rem !important; font-weight: 200; letter-spacing: 0.1em; margin-bottom: 0; }

/*カードの中身*/
.report { overflow: auto; text-align: left; }

.report ul { padding: 0; margin: 0; -ms-text-overflow: hidden; text-overflow: hidden; }

.report li { position: relative; height: auto; margin: 0; }

.report .card-body li:not(:last-child) { border-bottom: #ddd dotted 1px; }

.report .card-body ul li a.item { display: block; width: 100%; text-decoration: none; padding-top: 20px; padding-bottom: 20px; color: #666; }

.report ul li a.item .row { padding: 0; margin: 0; }

.report li a:hover { background: #f3f3f3; }

.report .date { position: relative; line-height: 2; padding-left: 10px; padding-right: 0px; padding-bottom: 5px; }

.report .date .badge { margin-right: 5px; padding: 5px; }

/*カテゴリ*/
#section_infonews .report .category { margin-left: 20px; }

#section_infonews .report .category .badge { padding: 5px; }

#section_infonews .report .category .badge:hover { background-color: #999; }

#section_infonews .report .category .badge-primary { background-color: #ffa100; }

#section_infonews .report .category .badge-success { background-color: #95ed7b; }

#section_infonews .report .category .badge-danger { background-color: #fd96ff; }

#section_infonews .report .category .badge-info { background-color: #96d5ff; }

#section_infonews .report .category .badge-light { background-color: #0F7FFE; color: #fff; }

#section_infonews .report .category .badge-dark { background-color: #929000; color: #fff; }

/*タイトル*/
.report .newstitle { position: relative; line-height: 1.5; padding-top: 5px; padding-left: 10px; padding-right: 10px; color: #666; }

.report .viewbadge { display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; -webkit-justify-content: flex-end; justify-content: flex-end; padding-left: 5px; padding-right: 5px; padding-top: 5px; }

.report .viewbadge .badge { padding: 5px; font-size: 7px; font-size: 0.7rem; font-weight: 400; background-color: #ccc; }

/*ピックアップ*/
#pickup .pickupset { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; -webkit-align-content: center; align-content: center; padding-top: 5px; padding-bottom: 5px; }

#pickup .pickupset .pickupstr { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; -webkit-align-content: center; align-content: center; padding-top: 5px; padding-bottom: 5px; position: absolute; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.4); color: #fff; }

#pickup .pickupset .pickupstr .en { color: #888; font-size: 5px; font-size: 0.5rem !important; font-weight: 200; letter-spacing: 0.1em; margin-bottom: 0; }

#pickup .pickupset a { display: block; position: relative; color: #333; flex: none; }

#pickup .pickupset img { flex: none; width: 100%; }

/* > lg(992)の場合*/
@media screen and (max-width: 991px) { #section_infonews .report .card-body ul li a.item { padding-top: 15px; padding-bottom: 15px; } }

/* md(768) < の場合*/
/* > md(768)の場合*/
@media screen and (max-width: 767px) { #section_infonews .report .card-body ul li a.item { padding-top: 10px; padding-bottom: 10px; } }

/* > sm(576)の場合*/
@media screen and (max-width: 575px) { #section_infonews .report .card-body { padding: 10px; } }

/**********************************************
 section_footer
***********************************************/
#section_footer { text-align: center; padding-bottom: 100px; }

@media screen and (max-width: 767px) { #section_footer { padding-bottom: 50px; } }

#section_footer img { display: inline; }

/************************************************************************************************************************
Header：共通
*************************************************************************************************************************/
header { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; position: fixed; width: 100%; z-index: 5; }

/************************************************************************************************************************
Header：title部
*************************************************************************************************************************/
#headarea_title { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; position: relative; width: 100%; min-height: 110px; padding-bottom: 10px; z-index: 4; background: #fff; -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); font-size: 8px; font-size: 0.8rem; }

#headarea_title .container { margin: 0; padding: 0; }

#headarea_title .inner_left { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }

#headarea_title .inner_left .headlogo { position: relative; font-size: 2rem; line-height: 1.5; font-family: serif; }

#headarea_title .inner_left .headlogo a { color: #065b20; font-weight: bold; }

#headarea_title .inner_right { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-content: center; align-content: center; font-size: 8px; font-size: 0.8rem; }

#headarea_title #firstrow { display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; -webkit-align-items: center; align-items: center; height: 25px; margin-bottom: 10px; }

#headarea_title #firstrow a { text-decoration: none; color: #065b20; }

#headarea_title #firstrow a:hover { color: #878e9b; }

#headarea_title #firstrow a:not(:last-child) { margin-right: 35px; }

#headarea_title #firstrow i { margin-right: 3px; }

#headarea_title #secondrow { display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; -webkit-align-items: center; align-items: center; -webkit-justify-content: flex-end; justify-content: flex-end; height: 25px; margin-bottom: 10px; }

#headarea_title #secondrow #ch_fontsize { display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; }

#headarea_title #secondrow #ch_fontsize ul { margin: 0; padding: 0 10px 0 10px; }

#headarea_title #secondrow #ch_fontsize li { margin-right: 3px; }

#headarea_title #secondrow #ch_fontsize .btn { cursor: pointer; font-size: 6px; font-size: 0.6rem; background: #065b20; border: 1px solid #065b20; }

#headarea_title #secondrow #ch_fontsize .btn:hover { background: #878e9b; border: 1px solid #878e9b; }

#headarea_title #secondrow .google_translate { display: block; margin-left: 10px; }

#headarea_title #thirdrow { display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; -webkit-align-items: center; align-items: center; -webkit-justify-content: flex-end; justify-content: flex-end; height: 30px; }

#headarea_title #thirdrow form { display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; -webkit-align-items: center; align-items: center; }

#searchbox { width: 200px; height: 30px; margin-right: 5px; }

/* 検索枠の設定（スクリプトの場合） */
.gsc-search-box { max-width: 300px; }

#gs_tti50 { padding-top: 0px; padding-bottom: 0px; margin: 2px 0px; overflow: hidden; }

/************************************************************************************************************************
Header：グローバルメニューボタン部
*************************************************************************************************************************/
/*header腰下 ＞ メニュー部*/
#headarea_nav { display: flex; display: -webkit-flex; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; align-content: center; -webkit-align-content: center; background: #065b20; position: relative; width: 100%; z-index: 3; transition: .3s; font-size: 10px; font-size: 1.0rem; color: #fff; }

/* トップページのHEADER */
#navcontent { display: block; padding-top: 10px; padding-bottom: 10px; width: 100%; }

#topnav ul { margin: 0; padding: 0; display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-around; justify-content: space-around; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; }

#topnav ul li { padding: 0; }

#topnav ul li:not(:last-child) { border-right: solid 1px #aaa; }

#topnav ul li a { font-size: 10px; font-size: 1.0rem; letter-spacing: 0.1em; color: #fff; display: block; width: 100%; height: 100%; line-height: 1.5; text-align: center; padding: 5px 22px; text-decoration: none; }

#topnav ul li a:hover { color: #ccc; background: rgba(255, 255, 255, 0.2); }

#topnav ul li .en { color: #ddd; font-size: 5px; font-size: 0.5rem !important; font-weight: 200; letter-spacing: 0.1em; margin-bottom: 0; }

#navcontent_hidden button:focus { outline: 0; }

#topnav_hidden ul { margin: 0; padding: 0; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: left; justify-content: left; -webkit-align-items: flex-start; align-items: flex-start; -webkit-justify-content: left; justify-content: left; }

#topnav_hidden ul li { padding: 0; margin: 3px 0px; padding-top: 3px; padding-bottom: 3px; width: 100%; }

#topnav_hidden ul li:hover { border-left: solid 5px #555; }

#topnav_hidden ul li a { font-size: 9px; font-size: 0.9rem; letter-spacing: 0.1em; color: #666; display: block; width: 100%; height: 100%; line-height: 1.3; text-align: left; padding-left: 20px; text-decoration: none; }

#topnav_hidden ul li .en { color: #ccc; font-size: 5px; font-size: 0.5rem !important; font-weight: 200; letter-spacing: 0.1em; margin-bottom: 0; }

/*lg〜xlまで( < 1200 )の場合*/
@media screen and (max-width: 1199px) { #topnav ul li a { padding: 5px 12px; } }

/*md〜lgまで( < 992 )の場合*/
@media screen and (max-width: 991px) { #topnav ul li a { padding: 5px 6px; font-size: 85%; } }

/*( < 850 )の場合*/
@media screen and (max-width: 849px) { /*スマホ・タブレットサイズ以上のヘッダ表示切り替え*/
		#navcontent { display: block; }
		#navcontent_hidden { display: none; } }

/*md以上( 768 < )の場合*/
@media screen and (min-width: 768px) { /*スマホ・タブレットサイズ以上のヘッダ表示切り替え*/
		#navcontent { display: block; }
		#navcontent_hidden { display: none; } }

/*sm〜mdまで( < 768 )の場合*/
@media screen and (max-width: 767px) { /*スマホ・タブレットサイズ以下のヘッダ表示切り替え*/
		#navcontent { display: none; }
		#navcontent_hidden { display: block; }
		/* スマホタブレットサイズの場合のヘッダーの調整 */
		#headarea_title { min-height: 90px; padding-bottom: 15px; }
		#headarea_title #firstrow a:not(:last-child) { margin-right: 20px; }
		#headarea_title .inner_right #secondrow { display: none; }
		#headarea_title .inner_right #thirdrow { display: none; } }

/************************************************************************************************************************
footer：共通
*************************************************************************************************************************/
/*=============== footer共通の部分 ===============*/
#footer { position: relative; height: auto; width: 100%; padding-top: 40px; padding-bottom: 10px; background: #065b20; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; }

.footercontent { background: #065b20; width: 100%; }

#footer .inner_right { display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; -webkit-justify-content: center; justify-content: center; }

#totop { position: fixed; bottom: 10px; right: 20px; cursor: pointer; display: hidden; z-index: 8; }

#totop .btn { display: inline-block; border: solid 1px #fff; background: #065b20; width: 35px; height: 35px; box-sizing: border-box; position: relative; border-radius: 0; }

#totop .btn::after { content: ""; border-top: solid 8px transparent; border-bottom: solid 8px #fff; border-left: solid 6px transparent; border-right: solid 6px transparent; position: absolute; left: 50%; top: 50%; margin-top: -12px; margin-left: -6px; }

/*=============== footer部分（コピーライト） ===============*/
.footerlogo { position: relative; margin: 0px auto 10px; text-align: center; }

.footerlogo a { color: #fff; font-family: serif; font-size: 20px; }

.address { border-top: solid 1px #eee; padding-top: 10px; text-align: center; line-height: 1.8; font-size: 9px; font-size: 0.9rem; color: #eee; font-weight: 500; }

.copy { position: relative; margin-top: 20px; text-align: center; }

.copy p { line-height: 1.3; font-size: 8px; font-size: 0.8rem; font-weight: 500; color: #eee; margin: 0px; }

/*md( > 768 )の場合*/
@media screen and (max-width: 767px) { .address { font-size: 7px; font-size: 0.7rem; font-weight: 400; }
		.copy p { font-size: 6px; font-size: 0.6rem; font-weight: 400; } }

.wp-pagenavi { display: -webkit-box; display: -ms-flexbox; display: flex; padding-left: 0; list-style: none; border-radius: .25rem; }

.wp-pagenavi .pages { background: #065b20; color: #fff; }

.wp-pagenavi span, .wp-pagenavi a { padding: .25rem .5rem; font-size: .875rem; line-height: 1.5; border: 1px solid #dee2e6; margin-left: -1px; position: relative; display: block; background: #fff; }

.wp-pagenavi span.current, .wp-pagenavi a.current { background: #065b20; color: #fff; }

.wp-pagenavi span:first-child, .wp-pagenavi a:first-child { border-top-left-radius: .2rem; border-bottom-left-radius: .2rem; }

.wp-pagenavi span:last-child, .wp-pagenavi a:last-child { border-top-right-radius: .2rem; border-bottom-right-radius: .2rem; }

.wp-pagenavi a:hover { color: #0056b3; text-decoration: none; background-color: #e9ecef; border-color: #dee2e6; }

#navcontent_hidden .navbar, #navcontent_hidden .dropdown { position: inherit; }

#navcontent_hidden .dropdown-menu { left: 20px; right: 20px; }

#navcontent_hidden .dropdown-menu li { border-bottom: 1px solid rgba(0, 0, 0, 0.15); }

#navcontent_hidden .dropdown-menu li a { padding-bottom: 8px; }

#navcontent_hidden .dropdown-menu li:last-child { border-bottom: none; }

#navcontent_hidden .dropdown-menu li:last-child a { padding-bottom: 0; }

.bx-wrapper { margin: 0; }

.bx-wrapper .bx-viewport { -moz-box-shadow: none; -webkit-box-shadow: none; box-shadow: none; border: none; left: 0; background: transparent; }

.bx-wrapper .bx-controls-direction a { z-index: 1; }
