/*********************
*      style.css     *
**********************/

@charset "UTF-8";

/* 共通部分   common.css
------------------------------- */
html {
	font-size: 100%;
	}

body{
	min-width: 320px;
	margin: 0 auto;
	padding: 0;
	font-family: "Hiragino Kaku Gothic ProN", "Roboto", 'Paytone One', "Philosopher", sans-serif;
	}

a { text-decoration: none;}
a:link { color: #000000; }
a:hover { color: #0000ff; }

img { max-width: 100%; }

.clfix::after {
	content: "";
	clear: both;
	display: block;
	line-height: 0;
	}

.fl_l {
	float:left;
	}

.fl_r {
	float:right;
}

.pc_none {
	display: none;
	}

.sp_none {
	display: block;
	}


/* ヘッダー（デスクトップ版））
------------------------------- */
@media screen and (min-width: 740px) {

header {
	display: flex;
	margin: 0 auto;
	max-width: 1000px;
	}

.top_area1 {
	margin-top: 20px;
	margin-bottom: 2px;
	float: right;
	width: 60%;
	}

.top_area2 {
	margin-top: 2px;
	margin-bottom: 4px;
	float: right;
	width: 42%;
	}

.top_index {
	margin: 0;
	float: right;
	padding-left: 10px;
	padding-right: 4px;
	font-size: 1.0rem;
	}

.top_area2 ul {
	width: 40%;
	list-style: none;
	}

.ja a {
	color: #006837;
	}

.en a {
	color: #0000ff;
	}

.rod {
	margin: 0 6%;
	}

.title_area {
	margin-top: 0;
	margin-bottom: 10px;
	width: 100%;
	float: left;
	vertical-align: middle;
	}

.title_area img {
	margin-left: 4%;
	width: 50%;
	}

/* headerのh1とdiv.searchをflexboxでレイアウト */

.search {
	margin-top: 10px;
	margin-right: 10px;
	float: right;
	}

/* 検索フォームのスタイル */
input[type="text"] {
	padding: 10px;
	width: 200px;
	height: 30px;
	border-top: 3px solid #dedede;
	border-right: 3px solid #dedede;
	border-bottom: 3px solid #dedede;
	border-left: 3px solid #dedede;
	font-size: 20px;
	}

input[type="submit"] {
	margin: 0;
	padding: 0 20px;
	height: 30px;
	border: none;
	font-size: 12px;
	background-color: #006837;
	color: #ffffff;
	vertical-align: bottom;
	}

}

/* ヘッダー（スマホ版）
------------------------------------------------- */
@media screen and (max-width: 740px) {
	.pc_none { display: block; }
	.sp_none { display: none; }
	
	header {
		width: 96%;
		margin: 8px auto 15px;
		position: relative;
		text-align: center;
		}
	
	.sp_top_area {
		display: flex;
		float: right;
		}
	
	.sp_top_area p {
		padding-left: 10px;
		font-size: 0.6rem;
		}
	
	.menu_btn_op {
		float: right;
		width: 24%;
		top: 2%;
		}
	
	.title_logo_area {
		margin: 0 auto;
		}
	
	.top_image {
		margin: 0 auto;
		}
	
	.top_image img{
		width: 80%;
		}
	
	}


/* ナビゲーション（デスクトップ版）
--------------------------------------------- */
@media screen and (min-width: 740px) {
	
.pc_menu {
	margin: 0 auto;
	max-width: 1000px;
	height: 30px;
	box-sizing: border-box;
	}

.pc_menu ul {
	margin: 0;
	padding: 0;
	height: 100%;
	display: flex;
	flex-flow: row;
	justify-content: space-between;
	list-style: none;
	}

.pc_menu li a {
	display: block;
	width: 158px;
	height: 100%;
	padding: 6px;
	background-color: #006837;
	color: #ffffff;
	font-size: 0.8rem;
	text-align: center;
	vertical-align: top;
	align-items: center;
	}

.pc_menu li a:hover {
	transition: 0.3s;
	background-color: #008000;
	}

}


/* ナビ（スマホ版）
-------------------------------------------- */
@media screen and (max-width: 740px) {
	.pc_none { display: block; }
	.sp_none { display: none; }
	
	.sp_menu {
		display: none;
		background: rgba(10,85,120,0.9);
		position: absolute;
		top: 0;
		right: 0;
		width: 70%;
		z-index: 1000;
		color: #fff;
		}
	
	.sp_menu a {
		color: #fff;
		}
	
	.sp_lang {
		font-size: 0.8rem;
		margin: 24px 0 20px 14%;
		list-style: none;
		}
	
	.sp_lang a {
		font-weight: bold;
		}
	
	.rod {
		margin: 0 6%;
		}
	
	.ja .sp_menu .en a {
		color: #00080c;
		}
	
	.menu_btn_cl {
		position: absolute;
		right: 6.5%;
		width: 9%;
		}
		
	.menu_title {
		width: 90%;
		font-size: 0.8rem;
		font-weight: bold;
		margin: 0 auto;
		}
	
	/* menu_area **********/
	.menu_area {
		margin-bottom: 24px;
		}
	
	.menu_area a {
		display: block;
		width: 100%;
		padding: 10px 0;
		}
	
	.menu_area p:first-child {
		border-top: 1px solid #fff;
		}
	
	.menu_area p {
		width: 95%;
		margin: 0 auto;
		font-size: 0.8rem;
		border-bottom: 1px solid #fff;
		}
	
	.click {
		padding: 10px 0;
		position: relative;
		border-bottom: 1px solid #fff;
		}
	
	.click {
		background-image: url(../images/sp/btn_aco_op.png);
		background-repeat: no-repeat;
		background-position: 95% center;
		background-size: 7%;
		}
	
	.click.active {
		background-image: url(../images/sp/btn_aco_cl.png);
		background-repeat: no-repeat;
		background-position: 95% center;
		background-size: 8%;
		}
	
	.menu_area ul {
		background: #437d98;
		display: none;
		}
	
	.menu_area li {
		width: 95%;
		margin: 0 auto;
		border-bottom: 1px solid #fff;
		}
	
	}


/********************
	page top
********************/

.pagetop{
	position: fixed;
	right: 1%;
	bottom: 0;
	margin:0 0 0 -63px;
	}
.pagetop a{
	width: 75px;
	height: 100px;
	display: block;
	}


/* トップ画像 */
.mv_area {
	margin: 0 auto;
	background-color: #dff9b5; 
	height: 313px;
	}

/* トップ画像にキャッチコピーを重ねる */
.top {
	margin: 0 auto;
	text-align: center;
	position: relative;
	}

.topimg {
	width: 100%;
	max-width: 1000px;
	}

.catch_01 {
	position: absolute;
	top: 20%;
	left: 24%;
	padding: 10px 20px;
	background-color: rgba(255,255,255,0.5);
	border-radius: 10px;
	color: #b5fb04;
	font-size: 2.0rem;
	font-family: sans-serif;
	font-weight: 600;
	text-shadow: 3px 3px 3px rgba(0,0,0,0.5);
	}

.catch_02 {
	position: absolute;
	top: 40%;
	left: 24%;
	padding: 10px;
	border-radius: 10px;
	color: #ffffff;
	font-size: 1.2rem;
	font-weight: 520;
	text-shadow: 2px 2px 1px rgba(0,0,0,0.5);
	}


/* キャッチコピー部（スマホ版）
-------------------------------------------- */
@media screen and (max-width: 420px) {
	.mv_area {
		height: 100px;
		}
	
	.catch_01 {
		left: 8%;
		font-size: 1.0rem;
		}
	
	.catch_02 {
		top: 50%;
		left: 8%;
		text-align: left;
		font-size: 0.8rem;
		}
	
	}


@media screen and (max-width: 740px) {
	.mv_area {
		height: 140px;
		}
	
	.catch_01 {
		left: 8%;
		text-align: left;
		font-size: 1.0rem;
		}
	
	.catch_02 {
		left: 8%;
		font-size: 0.8rem;
		}
	
	}


.roboto {
	font-size: 1.2rem;
	font-family: "Roboto";
	font-weight: 600;
	font-style: normal;
	color: #29ff05;
	text-shadow: 4px 4px 4px rgba(0,0,0,0.5);
	z-index: 20;
	}

.paytone {
	font-size: 1.2rem;
	font-family: "Paytone One";
	font-weight: 500;
	font-style: normal;
	color: #29ff05;
	text-shadow: 4px 4px 4px rgba(0,0,0,0.5);
	z-index: 20;
	}

.philosopher {
	font-size: 1.2rem;
	font-family: "Philosopher";
	font-weight: 700;
	color: #29ff05;
	text-shadow: 4px 4px 4px rgba(0,0,0,0.5);
	z-index: 20;
	}


/*** １カラム エリア ******

.onecolumn_area {
	position: relative;
	}

.flyer_area {
	margin: 10px auto;
	max-width: 1000px;
	text-align: left;
	background-color: #ffffff;
	}

.flyer_area a: hover { color: #008000;}

.title_01 {
	margin: 0 10px;
	display: inline-block;
	padding: 6px 10px;
	font-size: 0.6rem;
	color: #ffffff;
	background-color: #006837;
	}

.title_02 {
	margin: 0;
	display: inline-block;
	padding: 6px 10px;
	font-size: 0.6rem;
	color: #006837;
	background-color: #ffffff;
	}

  ***/



/*** ２カラム エリア ***/

.twocolumn_area {
/** background-color: #daefbd8a;  ***/
	position: relative;
	}

.twocolumns {
	margin: 0 auto;
	max-width: 1000px;
	background-color: #daefbd;
	}

.column_left {
	padding: 8px;
	font-size: 0.6rem;
	background-color: #daefbd;
	}

.column_right {
	padding: 8px;
	font-size: 0.6rem;
	background-color: #daefbd;
	}

/*** 項  目 ****/

.column_title {
	text-align: center;
	padding: 10px;
	}

.column_title p {
	font-size: 1.2rem;
	font-family: "Roboto";;
	font-weight: 600;
	color: #006837;
	}

.column_left ul {
	margin-bottom: 10px;
	padding: 0;
	list-style: none;
	}

.column_right ul {
	margin-bottom: 10px;
	padding: 0;
	list-style: none;
	}

.information_list {
	margin: 0;
	padding: 10px;
	list-style: none;
	}

.information_list a {
	text-decoration: none;
	color: #000000;
	}

.information_list a:hover,
.information_list a:focus {
	color: #0000ff;
	}

.information_date,
.information_summary {
	padding-bottom: 10px;
	}
.information_date {
	margin-left:0px;
	margin-right: 4px;	
	font-size: 0.7rem;
	line-height: 1.2;
	}

.information_summary {
	padding-left: 0px;
	text-align: left;
	font-size: .7rem;
	line-height: 1.2;
	}


/* この下にCSSを追加してください */
.information_item {
	display: flex;	/* flexコンテナーにする */
	align-items: flex-start;	/* 上揃いで配置する */
	line-height: 1.2;
	}
.information_date {
	width: 10.0em;	/* 幅を指定 */
	flex: 0 0 auto;	/* width値で固定する */
	}
	
.information_summary {
	width: calc(14em + 2px);	/* 幅を指定 */
	flex: 0 0 auto;	/* width値で固定する */
	}

.column_bnr {
	text-align: center;
	}

.bnr_title {
	display: inline-block;
	width: 220px;
	padding: 5px 20px;
	color: #ffffff;
	background-color: #006837;
	border-radius: 20px;
	}

.bnr_title a { color: #ffffff; }

.bnr_title:hover {
	background-color: #03aa5c;
	color: #0000ff; 
	}


/* タイル エリア
------------------------------- */
.tiles_area {
/** background-color: #e1eec1;  ***/
	}

.tiles {
	margin: 30px auto;
	max-width: 1000px;
/** background-color: #eaf4e5;  ***/
	}

.item img {
	margin-bottom: 0;
	box-shadow: 4px 4px 4px rgba(0,0,0,0.5);
	}

.item img:hover {
	box-shadow: 1px 1px 1px rgba(0,0,0,0.5);
	transition: 0.3s;
	transform: scale(1.1);
	}

.highlight_area {
	margin: 0 auto;
	width: 50%;
	max-width: 1000px;
/** background-color: #eaf400;  ***/
	text-align: center;
	border-bottom: 3px solid #006837;
	}

.highlight_title {
	font-size: 1.2rem;
	font-family: "Roboto";
	color: #006837;
	}

.wrapper {
	max-width: 1000px;
	margin: 0 0.5rem;
	}

.grid {
	display: grid;
	gap: 2rem 1.5rem;
	grid-template-columns: repeat(2, 1fr);
    text-align: center;
	}


/* ロゴセクション
------------------------------- */
.logo_section  {
	margin: 0;
/** background-color: #eaf4e5;  ***/
	}

.logo_main_block {
	margin: 10px auto;
	max-width: 1000px;
/** background-color: #eaf4e5;  ***/
	}

.logo_block_title {
	margin: 0;
	padding-top: 10px;
	text-align: left;
	font-family: "Quicksand";
	font-size: 1.0rem;
	font-weight: bold;
	color: #006837;
	}

.logo_edu {
	margin: 10px;
	width: 90%;
	text-align: center;
	}

.logo_grid_1 {
	display: grid;
	gap: 2.0rem 1.0rem;
	grid-template-columns: repeat(2, 1fr);
	text-align: center;
	}

.logo_grid_1 img {
	width: 90%;
	}

.logo_coop {
	margin: 10px;
	width: 90%;
	}

.logo_grid_2 {
	display: grid;
	gap: 2rem 1.5rem;
	grid-template-columns: repeat(2, 1fr);
	text-align: center;
	}

.logo_grid_2 img {
	width: 90%;
	}


/*--------------------------------
     デスクトップ版(740px以上)
--------------------------------- */

@media (min-width: 740px) {
	
	.title_01 {
		font-size: 1.0rem;
		}
	
	.title_02 {
		font-size: 1.0rem;
		}
	
	/* column_left、column_rightを横に並べる設定 */
	.twocolumns:after {
		content: "";
		display: block;
		clear: both
		}
	
	.column_left {
		font-size: 1.0rem;
		}
	
	.column_left {
		float: left;
		width: 48%;
		margin-right: 2%
		}
	
	.column_right {
		font-size: 1.0rem;
		}
	
	.column_righ {
		float: right;
		width: 48%;
		margin-right: 2%
		}
	
	.column_title p {
		font-size: 1.8rem;
		}
	
	.information_date {
		margin-left:16px;
		margin-right: 4px;
		font-size: 0.8rem;
		line-height: 1.4;
		}
	
	.information_summary {
		width: calc(26em + 2px);	/* 幅を指定 */
		}
	
	.information_summary {
		padding-left: 0px;
		font-size: 0.8rem;
		line-height: 1.4;
		}
	
	/* タイル */
	
	.wrapper {
		max-width: 1000px;
		margin: 0;
		}
	
	.grid {
		gap: 2rem 2rem;
		grid-template-columns: repeat(4, 1fr);
		}
	
	.item img {
		margin-bottom: 0;
		box-shadow: 4px 4px 4px rgba(0,0,0,0.5);
		}
	
	.item img:hover {
		box-shadow: 1px 1px 1px rgba(0,0,0,0.5);
		transition: 0.3s;
		transform: scale(1.1);
		}
	
	.highlight_title {
		font-size: 1.8rem;
		}
	
	/* ロゴセクション */
	
	.logo_block_title {
		font-size: 1.2rem;
		}
	
	.logo_edu {
		text-align: left;
		width: 60%;
		}
	
	.logo_grid_1 {
		gap: 2rem 1.0rem;
		grid-template-columns: repeat(3, 1fr);
		}
		
	.logo_grid_1 img {
		width: 80%;
		}
	
	.logo_grid_2 {
		gap: 2rem 1.0rem;
		grid-template-columns: repeat(4, 1fr);
		}
	
	.logo_grid_2 img {
		width: 60%;
		}
	
	}




/* フッター（スマホ版）
-------------------------------------- */
footer {
	clear: both;
	background-color: #006837;
	}

.footer_inner {
	margin: 0 auto;
	background-color: #006837;
	max-width: 1000px;
	text-align: left;
	padding-top: 20px;
	padding-left: 20px;
	font-size: 0.8rem;
	color: #ffffff;
	}

.footer_title {
	margin: 0 auto;
	text-align: center;
	padding-top: 20px;
	vertical-align: 75%;
	color: #ffffff;
	}

.footer_inner a {
	text-decoration: none;
	color: #ffffff;
	padding-right: 20px;
	}

.footer_inner a:hover,
.footer_inner a:focus {
	color: #0000ff;
	}

.footer_inner ul {
	display: block;
	list-style: none;
	margin-top: 10px;
	margin-bottom: 10px;
	}

.footer_inner li {
	
	}

.footer img {
	width: 20%;
	}

.copyright {
	margin: 0;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 300px;
	color: #ffffff;
	font-size: 0.7rem;
	}


/* フッター（デスクトップ版）
------------------------------------------ */
@media screen and (min-width: 740px) {
	.sp_menu {
		display: none !important;
		}
	
	.footer_inner {
		font-size: 1.0rem;
		}
	
	.footer_inner ul {
		display: flex;
		}
	
	.copyright {
		font-size: 0.8rem;
		}
		
	}



