﻿@charset "utf-8";

/* =======================================

	CommonElements

======================================= */

/*全ページ共通
--------------------------------------------------------------------------*/
html {
	scroll-behavior: smooth;
}

body {
	font-size: 100%;
	line-height: 140%;
	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
	margin: 0px;
	font-weight: bolder;
	color: #000;
}
p {
	letter-spacing: 0.1em;
	font-size: 15px;
}
a { text-decoration:none;
	color: #000;
	-webkit-transition: 0.3s;	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
	transition: 0.3s;			/*同上*/
}
a:hover {
	text-decoration: none;	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
	color:#12479B;
}

/*ボタン青囲み線のホーバー塗り
--------------------------------------------------------------------------*/
.c-btn {
  cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
 
.c-btn {
  background: #FFF;
  border: 2px solid #12479B;
  color: #12479B;
  display: block;
  font-weight: bold;
  width: 350px;
  padding: 10px 40px;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 15px;
}
.c-btn.practice01 {
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
.c-btn.practice01:hover {
  background: #12479B;
  color: #FFF;
  letter-spacing: 0.15em;
}
.button_center {
	display: flex;
	justify-content: center;
	align-items: center;
}

/*ボタン白背景のホーバー塗り
--------------------------------------------------------------------------*/
.c-btn2 {
  cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
 
.c-btn2 {
  background: #FFF;
  border: 2px solid #FFF;
  color: #12479B;
  display: block;
  font-weight: bold;
  width: 350px;
  padding: 10px 40px;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 15px;
}
.c-btn2.practice02 {
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
.c-btn2.practice02:hover {
  background: #000;
  color: #FFF;
  letter-spacing: 0.15em;
  border: 2px solid #000;
}








.clear {
	clear:both;
}

.center {
	text-align:center;
}
.left {
	float:left;
}
.right {
	float:right;
}
.clear {
	clear:both;
}
.pc {
	display:block;
}
.sp {
	display:none;
}

.s_font {
	font-size: 15px;
}
.blue {
	color:#12479B;
}
.orange {
	color:#F90;
}
.orange2 {
	color:#FFD400;
}
.yellow {
	color: #FF6;
}
.white {
	color:#FFF;
}
.radius {
	border-radius: 10px;
}
.ff {
	font-family: 'Noto Sans JP', sans-serif;
}

.w80 {
	width: 80%;
}
.w60 {
	width: 60%;
}
.w55 {
	width: 55%;
}
.w50 {
	width: 50%;
}
.w45 {
	width: 45%;
}
.w40 {
	width: 40%;
}
.space30 {
	height:30px;
}
.space50 {
	height:50px;
}




/*トップ-----------------------------------------------------------------------*/
/*メニューブロックの設定*/

.header {
	height: 170px;
	width: 80%;
	position: relative;
	margin: 0 auto;
}

.rogo {
	height: auto;
	width: 380px;
	z-index:9999;
	position: absolute;
	top:0%;
	left: 0%;
}
.kodomo3 {
	position:absolute;
	top: 0px;
	right:0%;
	width:115px;
	height:auto;
	display:block;
}


.sns {
	position:absolute;
	top: 115px;
	right: 1%;
	width:92px;
	z-index: 9999;
}

.sns img {
	width:35px;
	margin-left: 6px;
}



/*メインメニュー
---------------------------------------------------------------------------*/
/*メニューブロックの設定*/
#menubar {
	position: absolute;
	top:110px;	/*全体に対して上から0pxの場所に配置*/
	right: 3%;
	width: 65%;		/*幅。上のロゴ画像のwidth（16%）とpadding（4%）を合計した数字が100%を超えないように。*/
	z-index: 9999;
	height: 100px;
}
/*メニュー１個ごとの設定*/
#menubar li {
	float: left;
	margin-left: 4%;
	list-style-type: none;
}
#menubar li:last-child {
	margin-right: 0%;
}
#menubar li a {
	text-decoration: none;
	display: block;
	text-align: center;	/*文字をセンタリング*/
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 15px;
	letter-spacing: 0em;	/*文字間隔を少し広めにとる設定。標準がいいならこの行削除。*/
	color: #12479B;
	border-bottom: none;
	position: relative;
}
/*マウスオン時と、現在表示中(current)メニューの設定*/
#menubar li a:hover,
#menubar li.current a {
	color:#12479B;
}

/*ホバーエフェクト*/
#menubar li a::after {
  /*アンダーラインのスタイル*/
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #12479B;
  bottom: -5px;
  left: 0;
  /*横方向0で非表示にする*/
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  /*中央を基点にアニメーション*/
  -webkit-transform-origin: center top;
  transform-origin: center top;
 /*アニメーションの速度設定*/
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
#menubar li a:hover::after {
  /*横方向等倍まで拡大*/
  transform: scale(1, 1);
}


/*ページ上部のページメニュー
----------------------------------------------------------------------*/

h1 {
	font-size: 17px;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0.1em;
	text-align: center;
	color:#12479B;
	padding: 10px 0;
	margin-bottom: 30px;
	border-top: solid 3px #12479B;
	border-bottom: solid 3px #12479B;
}

/*各コンテンツメニューのタイトル
----------------------------------------------------------------------*/
.title {
	width:80%;
	margin: 0 auto;
	position: relative;
	padding: 30px 0;
}
.title img {
	position:absolute;
	top:0;
	left:0;
	height:130px;
	width: auto;
}

/*横幅100%の青い線
--------------------------------*/
.sen {
	width:100%;
	height:50px;
	border-bottom: solid 3px #12479B;
	margin-bottom:40px;
}



/*コンテンツ--------------------------------*/

.contents {
	width: 100%;
	height: auto;
	padding: 50px 0;
	margin: 60px auto;
}
.contents2 {
	width: 100%;
	height: auto;
	padding: 50px 0;
	margin: 0 auto;
}

.blueback {
	background-color:#12479B;
}

h2 {
	font-size:21px;
	font-family: 'Noto Sans JP', sans-serif;
	line-height:1.9em;
}





/*-----------------フッター-----------------*/

.footer {
	width:80%;
	height:auto;
	padding: 80px 0 30px 0;
	margin:0 auto;
	position:relative;
}
.footer ol {
	display: block;
}
.footer ol li {
	float: left;
	margin-right: 5%;
	list-style-type: none;
}
.footer ol li:last-child {
	margin-right: 0%;
}
.footer ol li a {
	text-decoration: none;
	display: block;
	text-align: center;	/*文字をセンタリング*/
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 15px;
	letter-spacing: 0em;	/*文字間隔を少し広めにとる設定。標準がいいならこの行削除。*/
	color: #12479B;
	border-bottom: none;
	position: relative;
}
/*マウスオン時と、現在表示中(current)メニューの設定*/
.footer ol li a:hover,
.footer ol li.current a {
	color:#12479B;
}

/*ホバーエフェクト*/
.footer ol li a::after {
  /*アンダーラインのスタイル*/
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #12479B;
  bottom: -5px;
  left: 0;
  /*横方向0で非表示にする*/
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  /*中央を基点にアニメーション*/
  -webkit-transform-origin: center top;
  transform-origin: center top;
 /*アニメーションの速度設定*/
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.footer ol li a:hover::after {
  /*横方向等倍まで拡大*/
  transform: scale(1, 1);
}

/*---------------フッターSNSアイコン-----------------*/
.sns_footer {
	position:absolute;
	top: 90px;
	right: 20%;
	width:92px;
	z-index: 9999;
}
.sns_footer img {
	width:35px;
	margin-left: 6px;
}


/*-----------------最下部ロゴと住所など-----------------*/
.contents_bottom {
	width: 100%;
	margin:30px auto 0 auto;
	padding: 40px 0 10px 0;
	background-color:#12479B;
}






/*-----------------ページトップ-----------------*/

.page_top {
	position:absolute;
	bottom:0%;
	right:0%;
}
.page_top img {
	width:50px;
}




/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px){


.pc {
	display:none;
}
.sp {
	display:block;
}




/*ヘッダー
---------------------------------------------------------------------------*/
.header {
	height: 200px;
	width: 100%;
	position: relative;
}

.kodomo3 {
	position:absolute;
	top: 0px;
	right:0%;
	width:115px;
	height:auto;
	display: none;
}

h1 {
	font-size: 13px;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 0em;
	text-align: center;
	color:#12479B;
	padding: 10px 0;
	margin-bottom: 30px;
	border-top: solid 3px #12479B;
	border-bottom: solid 3px #12479B;
}

/*各コンテンツメニューのタイトル
----------------------------------------------------------------------*/
.title {
	width:98%;
	margin: 0 auto;
	position: relative;
	padding: 30px 0;
}
.title img {
	position:absolute;
	top:0;
	left:0;
	height:90px;
	width: auto;
}

h2 {
	font-size:19px;
	font-family: 'Noto Sans JP', sans-serif;
	line-height:1.9em;
}





/*ボタン青囲み線のホーバー塗り
--------------------------------------------------------------------------*/
.c-btn {
  cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
 
.c-btn {
  background: #FFF;
  border: 2px solid #12479B;
  color: #12479B;
  display: block;
  font-weight: bold;
  width: 250px;
  padding: 10px 30px;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 15px;
}
.c-btn.practice01 {
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
.c-btn.practice01:hover {
  background: #12479B;
  color: #FFF;
  letter-spacing: 0.15em;
}
.button_center {
	display: flex;
	justify-content: center;
	align-items: center;
}

/*ボタン白背景のホーバー塗り
--------------------------------------------------------------------------*/
.c-btn2 {
  cursor: pointer;
  transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}
 
.c-btn2 {
  background: #FFF;
  border: 2px solid #FFF;
  color: #12479B;
  display: block;
  font-weight: bold;
  width: 250px;
  padding: 10px 30px;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 15px;
}
.c-btn2.practice02 {
  transition: .4s cubic-bezier(0.37, 0, 0.63, 1);
}
.c-btn2.practice02:hover {
  background: #000;
  color: #FFF;
  letter-spacing: 0.15em;
  border: 2px solid #000;
}


/*-----------------フッター-----------------*/

.footer {
	width:96%;
	height:auto;
	padding: 80px 0 50px 0;
	margin:0 auto;
	position:relative;
}

.footer ol {
	display: none;
}

/*---------------フッターSNSアイコン-----------------*/
.sns_footer {
	position:absolute;
	top: 90px;
	left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width:120px;
	z-index: 9999;
}
.sns_footer img {
	width:45px;
	margin-left: 6px;
}





}
