@charset "utf-8";

/* ===============================================================
	基本レイアウト
================================================================== */

/* 全体フォントサイズの指定
-------------------------------------------------------------------------*/
html {
	font-size: 62.5%;
}

/* body
-------------------------------------------------------------------------*/
body {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 50px;
	padding: 0;
	font-family: 'Sawarabi Gothic', sans-serif;
	/*font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro" , "メイリオ" , Meiryo ,"ＭＳ Ｐゴシック", Osaka, sans-serif;*/
	color: #101010;
	background: repeat-x #F2F2F2;
	font-size: 1.6rem;
}

body * {
	box-sizing: border-box;
}

/* よく使うクラス
-------------------------------------------------------------------------*/
.mt0 {
	margin-top: 0px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt30 {
	margin-top: 30px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mt50 {
	margin-top: 50px !important;
}

.mt60 {
	margin-top: 60px !important;
}

.mb0 {
	margin-bottom: 0px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.txtaC {
	text-align: center !important;
}

.txtaR {
	text-align: right !important;
}

.txtaL {
	text-align: left !important;
}

.fwb {
	font-weight: bold !important;
}

.fcBlue {
	color: #3773bb !important;
}

.fcRed {
	color: #ff0000 !important;
}

.floatL {
	float: left !important;
}

.floatR {
	float: right !important;
}

/* スマホ用改行タグ
-------------------------------------------------------------------------*/
.br_sp {
	display: none;
}

.br_pc {
	display: inline;
}

@media screen and (max-width:767px) {

	.br_sp {
		display: inline;
	}

	.br_pc {
		display: none;
	}

}

/* リンクスタイル
-------------------------------------------------------------------------*/
a {
	text-decoration: none;
	color: #119DBB;
}

a:hover {
	transition: all .2s ease-in;
	opacity: 0.6;
}

/* リストスタイル
-------------------------------------------------------------------------*/
ul, ol {
	list-style-type: none;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 0;
}


.navigation {
	height: 76px;
	width: 566px;
	list-style: none;
}

/* navigation */

.box_860 {
	width: 100%;
	max-width: 860px;
	/*padding : 20px 0px 20px 20px;*/
	padding: 20px;
	margin: 0 auto 30px;
	background-color: #fff;
}

.box_860_test {
	background-color: #fff;
	width: 100%;
	max-width: 860px;
	/* padding: 20px 0px 20px 20px; */
	padding: 20px;
	margin: 0 auto 30px;
}

.box_wh {
	background-color: #ffffff;
	width: 100%;
	max-width: 860px;
	padding: 20px;
	/*padding : 20px 0px 20px 20px;*/
	margin-bottom: 30px;
	display: block;
}

.box_wh_tab {
	background-color: #ffffff;
	padding: 10px 20px 20px 20px;
	margin-bottom: 30px;
}



/* マージンボトムは、今回このリストは1段だけなのでOK　リスト複数行の場合は使えない */
ul .footer {
	list-style-type: none;
	background-image: url("../img/arrow_footer.gif");
	background-repeat: no-repeat;
	background-position: 0 8px;
	margin-bottom: -20px;
	padding-left: 15px;
}

ul li .footer {}

#footer a:link {
	font-size: 12px;
	line-height: 220%;
	text-decoration: none;
	color: #119DBB;
	border-bottom: 1px #F2F2F2 dotted;
}

#footer a:visited {
	font-size: 12px;
	line-height: 220%;
	text-decoration: none;
	color: #119DBB;
	border-bottom: 1px #F2F2F2 dotted;
}

#footer a:hover {
	font-size: 12px;
	line-height: 220%;
	text-decoration: none;
	color: #119DBB;
	border-bottom: 1px #119DBB dotted;
}

ul .hang {
	list-style-type: none;
	background-image: url("../img/icon_hang.gif");
	background-repeat: no-repeat;
	background-position: 10px;
	margin-bottom: -7px;
	padding-left: 25px;
}

ul li .hang {}

#hang a:link {
	font-size: 12px;
	line-height: 220%;
	text-decoration: none;
	color: #119DBB;
	border-bottom: 1px #F2F2F2 dotted;
}

#hang a:visited {
	font-size: 12px;
	line-height: 220%;
	text-decoration: none;
	color: #119DBB;
	border-bottom: 1px #F2F2F2 dotted;
}

#hang a:hover {
	font-size: 12px;
	line-height: 220%;
	text-decoration: none;
	color: #119DBB;
	border-bottom: 1px #119DBB dotted;
	font-weight: 900;
}


/* --------------------------------------------------------- */
a.tx:link {
	color: #119DBB;
	text-decoration: none;
	border-bottom: 1px #fff dotted;
}

a.tx:visited {
	color: #119DBB;
	text-decoration: none;
	border-bottom: 1px #fff dotted;
}

a.tx:hover {
	color: #119DBB;
	text-decoration: none;
	border-bottom: 1px #119DBB dotted;
}


/* ページ内リンク */
.box_pagelink {
	margin: 10px 0px 10px 20px;
}

.idt_5 {
	padding-left: 5px;
}

.idt_10 {
	padding-left: 10px;
}

.idt_12 {
	padding-left: 12px;
}

.idt_14 {
	padding-left: 14px;
}

.idt_20 {
	padding-left: 20px;
}

.idt_24 {
	padding-left: 24px;
}

.clear {
	clear: both;
}

.btn_pro {
	display: block;
	float: left;
	text-align: center;
	border: 2px solid #06F;
	width: 150px;
	height: 30px;
	line-height: 30px;
	text-decoration: none;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	font-size: 0.9em;
	color: #00C;
	font-weight: bold;
	margin-left: 30px;
}

.btn_pro:hover {
	background: #09F;
	color: #fff;
}

.btn_pro:active {
	background: #0CC;
	color: #fff;
}

/* --------------------------------------------------------- */
/* ------------共通項目------------------ */


/*-----------------------------190813追加
-------------------------------*/


.midashi {
	padding: .15em 0 .3em .75em;
	border-left: 6px solid #00236f;
	border-bottom: 1px solid #00236f;
	letter-spacing: 2px;
	color: #00236f;
	font-weight: bold;
	width: 65%;
}

.pb10 {
	padding-bottom: 10px !important;
}

.pt10 {
	padding-top: 10px !important;
}

.font_standard {
	font-size: 1.2rem;
	width: 806px;
}

.mibun_2 {
	width: 30%;
	font-size: 1.3rem;
	padding: 1em;
	background: #e3e3e3;
	line-height: 3em;
	text-align: center;
}


ul.program_nav {
	width: 100%;
	margin: 20px auto;
	list-style-type: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
}

ul.program_nav li {
	border-right: 1px solid #000;
}

ul.program_nav li:last-of-type {
	border-right: none;
}

ul.program_nav li a {
	display: inline-block;
	box-sizing: border-box;
	background: #2a4e98;
	color: #fff;
	text-decoration: none;
	padding: 10px 15px;
	font-size: 12px;
	font-weight: bold;
}

ul.program_nav li a::before {
	content: "▼";
	margin-right: 5px;
}

ul.program_nav li a:hover {
	background: #e6e1e5;
	color: #03236e;
}



/* ul.list_program{
	list-style-type: decimal;
	margin: 0;
} */
ul.list_program li a {
	display: inline-block;
	text-decoration: none;
	margin-bottom: 10px;
}

ul.list_program li a::after {
	content: url("../img/icon_pdf.png");
	margin-left: 10px;
}

/* 見出し
-------------------------------------------------------------------------*/
h3.h3_cas {
	border-left: 5px solid #294c94;
	border-bottom: 1px solid #294c94;
	padding: 5px 10px;
}

h3.h3_cas span {
	font-size: 2.0rem;
	letter-spacing: 2px;
	color: #294c94;
}

h4.h4_cas {
	width: 100%;
	margin: 0 auto 20px;
}

h4.h4_cas span {
	display: inline-block;
	color: #fff;
	background: #104986;
	padding: 5px 30px;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 2px;
}


/* リンクボタン
-------------------------------------------------------------------------*/
a.btn_link {
	display: inline-block;
	background: #294c94;
	color: #fff;
	border-radius: 5px;
	box-sizing: border-box;
	padding: 10px 40px;
	position: relative;
	font-size: 1.4rem;
	text-align: center;
}

a.btn_link::after {
	display: inline-block;
	content: ">";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
}

a.btn_link.outsite::after {
	font-family: "Font Awesome 5 Free";
	content: "\f2d2";
	font-weight: 900;
}

h2>img {
	width: 100%;
}

.kasou_mv>img {
	width: 100%;
}



/* ===============================================================
	スマホ表示
================================================================== */
@media (max-width: 768px) {

	/* body（スマホ）
-------------------------------------------------------------------------*/
	body {
		padding-top: 120px;
		font-size: 1.6rem;
	}

	.anc {
		margin-top: -120px;
		padding-top: 120px;
	}

	.idt_20 {
		padding-left: 0;
		width: 100%;
		margin: 0 auto;
	}

	h2 {
		width: 100%;
		overflow: hidden;
	}

	h2 img {
		display: block;
		width: 100%;
		min-width: 730px;
	}

	h3 {
		width: 100%;
		overflow: hidden;
	}

	h3 img {
		display: block;
		width: 100%;
		min-width: 730px;
	}

	.kasou_mv img {
		display: block;
		width: 100%;
	}

	.box_860 {
		width: 100%;
		padding: 20px;
		background: #fff;
	}

	.box_860 table {
		width: 100%;
	}

	.box_860 table th,
	.box_860 table td {
		display: block;
		width: 100%;
	}

	.box_860 table td img {
		width: 100%;
	}


	/* 見出し
-------------------------------------------------------------------------*/
	h3.h3_cas span {
		font-size: 1.8rem;
		letter-spacing: 2px;
		color: #294c94;
	}

	h4.h4_cas span {
		display: inline-block;
		color: #fff;
		background: #104986;
		padding: 5px 30px;
		font-size: 1.6rem;
		font-weight: bold;
		letter-spacing: 2px;
	}


}

h2.title_h2 {
	position: relative;
	padding: 0.1em 0.5em;
	background: -webkit-linear-gradient(to right, rgb(16, 28, 138), transparent);
	background: linear-gradient(to right, rgb(4, 107, 175, 1), transparent);
	color: #fbfbfb;
	font-size: 34px;
	font-weight: lighter;
}

/* top フェードイン 250829 */
#animation {
	animation: fade-in 6s ease-in-out;
}

@keyframes fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}
#contact .contact_mb20{
	margin-bottom: 20px;
}