@charset "UTF-8";
/* ===================================================================

	Setting

=================================================================== */
html {
	color: #333;
	background: #FFF;
	line-height: 1.6;
	text-align: left;
	font-size: 65.5%;
}
body {
	font-size: 1.5rem;
	font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro';
	overflow-x: hidden;
	margin:0
}
main { padding-top:160px; }
img {
	max-width: 100%;
	height: auto;
}
.containar {
	width: 1400px;
	margin: 0px auto;
}
.containar:after {
	content: "";
	display: block;
	clear: both;
}
.sp {
	display: none;
}
.pc {
	display: block;
}
.main_wrapper {
	overflow: hidden;
}
　　/* link set
	------------------------------------------------------------------- */
 a {
	color: #5B463F;
	text-decoration: none;
	transition: 0.3s ease-in-out;
}
a img {
	transition: 0.3s ease-in-out;
}
a:hover {
	color: #47676F;
}
/* float対策：背景色表示用
	------------------------------------------------------------------- */
.clearfix:after {
	display: block;
	clear: both;
	height: 0px;
	line-height: 0px;
	visibility: hidden;
	content: ".";
}
.clearfix {
	display: block; /* for IE8 */
}
.both {
	clear: both;
}
.hidden {
	display: none;
}
/* 	imgホバーアクション
	------------------------------------------------------------------- */
.imgWrap {
	overflow: hidden;
	width: 100%;
	　height: auto;
	cursor: pointer;
	background-color: #ffffff;
}
.imgWrap img {
	display: block;
	transition-duration: 0.3s;
	margin-top: -1px;
}
.imgWrap img:hover {
	opacity: 0.6;
	transition: all .3s;
}
/* 	背景画像＆テキスト使用時
	------------------------------------------------------------------- */
.bg {
	display: block;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: left top;
}
　　/* 	テキスト指定
	------------------------------------------------------------------- */
　　.min {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, serif, sans-serif;
}
/* ===================================================================

	Header

=================================================================== */
body > header {
	position: fixed;
	width: 100%;
	height: 160px;
	margin: 0 auto;
	background: #FFF;
	z-index: 9999;
	transition: 0.3s ease-in-out;
}
body > header * {
	transition: 0.3s ease-in-out;
}
body > header:after {
	content: "";
	display: block;
	clear: both;
}
body > header .logo {
	display: none;
}
body > header h1 {
	font-size:13px;
	font-weight:unset;
	color:#fff;
	margin:0;
	top:0;
}
body > header h1 p {
}
body > header h1 a:hover {
	top: -5px;
}
body > header p {
	position: absolute;
	left: 185px;
	top: 10px;
	font-size: 0.9rem;
	color: #999;
}

.header_menu { padding-top:20px; }

	      /* h_r
		  ------------------------------------------------------------------- */
		  body > header .h_l { width:300px; margin:0 auto; float:left; }
		  body > header .h_l a img { margin:0; }


	      /* h_r
		  ------------------------------------------------------------------- */
		  body > header .h_r { width:900px; margin:0 auto; float:right; }
		  
		  
		  /* nav
		  ------------------------------------------------------------------- */
		  body > header nav { width: 100%; }
		  body > header nav ul.ddmenu { width:100%; height:auto; position:relative; }
		  body > header nav ul.ddmenu:after { content:""; display:block; clear:both; }
		  body > header nav ul.ddmenu li { float:left; margin: 50px 20px 30px 20px; }
		  body > header nav ul.ddmenu li:last-child { margin: 30px 0 30px 0; background: #ffcc00; padding: 20px; }
		  body > header nav ul.ddmenu li a {
	display:block;
	height:100%;
	text-align:center;
	font-size:1.1rem;
	color:#47676F;
	position:relative;
	letter-spacing:2px;
	padding-top:0;
	text-decoration:none;
	font-weight: bold;
} 
		  body > header nav ul.ddmenu li:last-child a { color:#fff; }
		  body > header nav ul.ddmenu li.ins { position:absolute; right:-60px; top:29px; }
		  body > header nav ul.ddmenu li.small_icon { margin:45px 15px; }

.header_text {	background-color:#18223D; width:100%; }
.header_contact { position:absolute; top:-5px; right:13%; width:230px; }



/* ===================================================================
	/
	/	smh_menu　トグルメニュー
	/
	=================================================================== */
	#smh_menu {
		display: none;
	}
	

/* ===================================================================
	/
	/	ボタン
	/
	=================================================================== */	
	.btn_link {
    color: #4e4c4c;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    display: inline-block;
    padding: 19px 30px;
    margin: 0;
    min-width: 300px;
    position: relative;
    /*border: 2px solid #4e4c4c;*/
	border-radius: 7px;
	background: #fff;
    background-image: url(../images/link_arow.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;
	}
	.btn_link:hover {
		color: #fff;
		background: #191919;
		background-image: url(../images/link_arow2.png);
		background-repeat: no-repeat;
		background-position: 95% 50%;
	}




	
/* ===================================================================
	/
	/	共通css
	/
	=================================================================== */

	.containar .f_box { display:flex;}
	.containar .f_box .inbox { width:46%; margin:2%; }
	.containar .f_box .inbox h3 { margin-bottom: 20px; text-align: left; color: #000;}
	.containar .f_box .inbox p { text-align: left;}
	.containar .f_box .b01 { order:1;}
	.containar .f_box .b02 { order:2;}
	.containar .f_box .btn_link {
    text-align: center;
    border: 2px solid #FFCC00;
	}
	.containar .f_box .btn_link02 {
		font-size:13px;
	}
	.containar .f_box .btn_link:hover {
		color: #fff;
		background: #FFCC00;
	}
	.containar .f_box .btn_link img {width: 30%; margin-right: 20px;}
	.click{ border-bottom:1px solid #3367dc; color:#3367dc; font-size:1.3rem;}



	#main_contents { width:970px; float:left; margin-top:50px; }
	#side_contents { width:370px; float:right; margin-top:50px; margin-bottom:100px; }

	section h2 {
	color:#333;
	font-size:14px;
	letter-spacing:2px;
	margin-bottom:30px;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-bottom-color: #666;
	padding-top: 12px;
	padding-right: 25px;
	padding-bottom: 12px;
} 
    section h2 a {
	font-size: 14px;
	color: #233158;
	text-decoration: underline;
}

	section h3 {
	color:#233158;
	font-size:22px;
	font-weight:bold;
	letter-spacing:1px;
	margin-bottom:30px;
	line-height: 40px;
	display: inline-block;
	position: relative;
	margin-top: 0;
	text-indent: 15px;
	border-left-width: 7px;
	border-left-style: solid;
	border-left-color: #ffcc00;
} 

	section p {
	color:#000;
	font-size:16px;
	line-height:40px;
	margin-bottom: 20px;
}
/*p a {
	font-weight: bold;
	color: #900;
	text-decoration: underline;
}*/

	
	/* 追加 */
	section h4 {
	color:#900;
	font-size:18px;
	font-weight:bold;
	margin-bottom:15px;
	line-height: 40px;
	margin-top: 10px;
}
	section ul { font-size: 16px; }
	section ul li { margin-bottom:10px; list-style-type:none; text-indent:0; }
	section .button {
	text-align: center;
	width: 60%;
	font-size: 16px;
	color: #000;
	padding: 15px;
	display: block;
	margin-bottom:100px;
	background-color: #900;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	margin-right: auto;
	margin-left: auto;
	margin-top: 30px;
}
	section .button a {
	color: #FFF;
}



	
	

section .img_area { margin:50px auto; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
section img {
	margin-bottom: 40px;
}

	section .img_area .box { width:30%; }
	section .img_area .box img { width:100%; margin-bottom:10px; }
	section .img_area .box .box_text { color:#000; font-size:18px; font-weight:bold; letter-spacing:1px; text-align:center; margin:0; }

	section table { width:100%; margin:50px 0; }
	section table tr td { border:1px solid #b2b2b2; padding:15px 10px; }
	section table tr td.wide { width:30%; }
	

	.containar #main_contents dl{
	  width: 100%;
    overflow: hidden;
    border: 1px solid #18223d12;
    border-top: none;
    background: #18223d12;
	}
	.containar #main_contents dt{
	  width: 30%;
	  float: left;
	  padding: 10px;
	  border-top: 1px solid #ccc;
	  box-sizing: border-box;
	}
	.containar #main_contents dd{
	  margin-left: 30%;
	  padding: 10px;
	  border-left: 1px solid #ccc;
	  border-top: 1px solid #ccc;
	  background: #fff;
	}
	.containar #main_contents dd:after{
	  display: block;
	  content: "";
	  clear: both;
	}
@media screen and (max-width: 320px) {
	.containar #main_contents dt{
	  width: 100%;
	  float: none;
	}
	.containar #main_contents dd{
	  margin-left: auto;
	  border-left: none;
	}
  }


	#map { margin-top:-165px; padding-top:165px; }

/* ===================================================================
	/
	/	メインイメージ
	/
	=================================================================== */
	.main_img { position:relative; height:280px;background-repeat:no-repeat; background-size:cover; display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; /*-webkit-box-align: center; -ms-flex-align: center; align-items: center;*/ }
	.main_img h2 { color:#233158; font-size:30px; font-weight:bold; letter-spacing:3px; position:absolute; top:30%; }

	.course .main_img { background-image:url(../images/course_mainimg.jpg); background-position: center; background-color: #18223d40;}
	.concept .main_img { background-image:url(../images/concept_mainimg.jpg); background-position: center bottom; background-color: #18223d40;}
	.voice .main_img { background-image:url(../images/voice_mainimg.jpg); background-position: center bottom; background-color: #18223d40;}
	.cnt .main_img { background-image:url(../images/contact_main.jpg); background-position: center; background-color: #18223d40;}




/* ===================================================================
	/
	/	side_contents
	/
	=================================================================== */
	#side_contents .side_info_area { margin-bottom:40px; }
	#side_contents .side_info_area img { margin-bottom:10px; }
	#side_contents .side_info_area p { font-weight:bold; margin-bottom:10px; }
	#side_contents .side_info_area p.red { color:#BF0000; }
	#side_contents .side_info_area a { text-decoration: underline; color:#000; font-weight:bold; margin:20px 0; }


	#side_contents .side_bnr_area {
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
}
	#side_contents .side_bnr_area img { margin-bottom: 20px; }
			  




/* ===================================================================
	/
	/	コンテンツスタンダード　コード
	/
	=================================================================== */

/* ================================================================
/
/	about
/
=================================================================== */
.about .containar .f_box { }
.about .containar .f_box h3 { font-size:18px; margin-bottom:0; border:none; text-indent:0; }
.about .containar .f_box img { margin-bottom:0; }
.about .containar .f_box .inbox_2_5 { width:32%; margin: 2% 1% 1% 2%; background:#ccc; }
.about .containar .f_box .inbox_3_5 { width:60%; margin: 2% 2% 1% 1%; }
.aboutbox{ margin:0 0 3%;}

/* ================================================================
/
/	voice
/
=================================================================== */

.voice .f_box .inbox img {
    margin-bottom: 0;
}


/* ================================================================
/
/	CONTACT
/
=================================================================== */
.cnt section table tr td {
     border: 1px solid #ccc;
}

/* form
------------------------------------------------------------------- */
.cnt table { width:100%; margin:0 0 60px; text-align:left; border:1px solid #DDD; font-size:1.4rem; }
.cnt table tr th,
.cnt table tr td { padding:20px 0; border-bottom:1px solid #DDD; }
.cnt table tr:nth-child(2n) { background:#FAFAFA; }
.cnt table tr th { width:30%; vertical-align:middle; padding-left:50px; }
.cnt table tr th span { background:#930; color:#FFF; font-size:1.1rem; margin-left:1em; letter-spacing:1px; padding:0.2em 1em; }
.cnt table tr td { padding:20px 50px; }
.cnt table tr td p { font-size:1.1rem; margin-top:10px; color:#888; }


/* input */
.cnt table tr td input[type="text"],
.cnt table tr td input[type="email"],
.cnt table tr td input[type="tel"] { width:100%; padding:5px 10px; border:1px solid #CCC; }
.cnt table tr td input[type="radio"] { margin:5px; }
.cnt table tr td.short input { width:50%; }
.cnt table tr td.mini input { width:15%; }
.cnt table tr td select { width:50%; padding:5px 10px; border:1px solid #CCC; }
.cnt table tr td textarea { width:100%; height:15em; padding:5px 10px; border:1px solid #CCC; }
.cnt table tr td p { line-height:normal; margin-bottom:0; }

/* submit */
.cnt input[type="submit"] { -webkit-appearance:none; display:block; width:250px; height:50px; line-height:45px; border:2px solid #FFCC00; background:#FFCC00; color:#1B2643; letter-spacing:1px; text-align:center; border-radius:3px; font-weight:bold; font-size:1.4rem; text-shadow:1px 1px 1px rgba(0,0,0,0.2); margin:0 auto; }
.cnt input[type="submit"]:hover { background:none; color:#FFCC00; text-shadow:1px 1px 1px rgba(0,0,0,0); }


/* check */
.cnt .check { text-align:center; padding:30px; border:3px solid #DDD; background:#F1F1F1; margin-bottom:30px; }

/* complete */
.cnt .complete { text-align:center; padding:30px; border:3px solid #DDD; background:#F1F1F1; margin-bottom:30px; }
.cnt .complete p { margin-bottom:40px; }
.cnt .complete a { display:block; width:250px; height:50px; line-height:45px; border:2px solid #FFCC00; background:#FFCC00; color:#1B2643; letter-spacing:1px; text-align:center; border-radius:3px; font-weight:bold; font-size:1.4rem; text-shadow:1px 1px 1px rgba(0,0,0,0.2); margin:0 auto; }
.cnt .complete a:hover { background:none; color:#FFCC00; text-shadow:1px 1px 1px rgba(0,0,0,0); }

	



/* ================================================================
/
/	実例集・イベント（WP）
/
=================================================================== */

.post main { padding-top:0; }
.post .site-content {
    width: 1400px;
    margin: 0 auto;
	padding:0;
	padding-top:160px;
}

#content-bottom-widgets { display:none; }

  /************************ news ************************/
  .f_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
	.site-content h2{
		padding: 0.3em 1em;
    font-size: 25px;
    border-bottom: 2px solid #000;
    border-top: 2px solid #000;
    margin-bottom: 5%;
	}
  .news .f-box01{
  	width: 100%;
  }
  .news .f-box02 {
  width: 30%;
  }

  .news .f-box01 .next .f-box01{
  	width: 30%;
  }
  .news .f-box01 .cnt_bk{
  	padding: 0 2em 0 0;
  }
  .news .f-box01 .cnt_bk h2{
  	font-size: 24px;
  	color: #000;
		border-bottom: none;
		border-top: none;
  }

  .news .f-box01 .cnt_bk .time{
  	font-size: 14px;
    font-weight: bold;
    padding-bottom: 5px;
  }
  .news a{
    color: #000;
  }


  /************************ news-archive ************************/
  .news{
    padding-top: 0;
  }
  .news .f-box03{
  	width: 33.33%;
  	padding-top: 30px;
  }
  .news .f-box03 img{
  	width: 100%;
  	height: auto;
  }
  .news .archive-txt{
  	height: 49px;
  	overflow: hidden;
  }
  .news .archive-img{
  	height: 220px;
  	overflow: hidden;
  }
  .news .f-box01 .cnt_bk h2.archive-h2{
		font-size: 12px;
    padding-top: 10px;
  }

	.widget {
	    border-top: 0 !important;
			margin-bottom: 5px;
	}
	.widget h2{
	    padding: 0.5em 0;
			border-bottom: 2px solid #000;
    border-top: 2px solid #000;
		text-indent: 10px;
	}
	.widget .widget-title {
    font-size: 18px;
}
.widget ul {
    margin-left: 0;
}
.widget ul li {
    margin-bottom: 10px;
		font-size: 14px;
		list-style-type: none;
		text-indent: 0;
		border-bottom: 0.5px solid #ccc;
    padding:0 10px 6px 10px;
}
.widget ul li:last-child{
    border-bottom: none;
}
.widget a {
    color: #000;
}




	
/* ===================================================================
	/
	/	footer
	/
	=================================================================== */
	 footer { padding:50px 0 0; margin-top:80px; border-top:1px solid #1A2643; }
	 footer .containar .footer_area {
		display:-webkit-box; 
		display:-ms-flexbox; 
		display:flex; 
	 }
	 footer .containar .footer_area .area01 {
		 width:56%;
		 padding-bottom:70px;
	 }
	 footer .containar .footer_area .area01 .navy {
		 font-weight:bold;
		 color:#1A2643;
		 margin-bottom:20px;
	 }
	 footer .containar .footer_area .area01 p a {
		 margin-left:20px;
		 text-decoration:none;
		 color:#0067b6;
	 }
	 /*footer .containar .footer_area .area01 p a:hover {
		 border-bottom:1px solid #FFCC00;
	 }*/
	 
	 footer .containar .footer_area .area01 .area01_flex {
		display:-webkit-box; 
		display:-ms-flexbox; 
		display:flex; 
		-ms-flex-pack: distribute;
		justify-content: space-around;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin-bottom:30px;
	 }
	 footer .containar .footer_area .area01 .f_img_area {
		display:-webkit-box; 
		display:-ms-flexbox; 
		display:flex; 
		-ms-flex-pack: distribute;
		justify-content: space-around;
		margin:30px 0;
	 }
	 footer .containar .footer_area .area02 {
		 width:40%;
		 margin-left:4%;
	 }
	 footer .containar .footer_area .area02 .tel_area {
		display:-webkit-box; 
		display:-ms-flexbox; 
		display:flex; 
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	 }
	 footer .containar .footer_area .area02 .tel_area li {
		 width:48%;
		 border: 2px solid #FFCC00;
		 text-align:center;
		 padding:10px;
	 }
	 footer .containar .footer_area .area02 .tel_area li a {
		 text-decoration:none;
		 color:#000;
	 }
	 footer .containar .footer_area .area02 .tel_area li a:hover {
		 opacity:0.5;
	 }
	 footer .containar .footer_area .area02 dl{
		 overflow:hidden;
		 margin-bottom: 0;
	 }
	 footer .containar .footer_area .area02 dl dt, footer .containar .footer_area .area02 dl dd {
		 font-size:16px;
		 letter-spacing:1px;
		 float:left;
		 margin-bottom:25px;
	 }
	 footer .containar .footer_area .area02 dl dt {
		width: 18%;
		padding-right: 20px;
	 }
	 footer .containar .footer_area .area02 dl dd {
		width: 82%;
		padding-left:20px;
	 }
	 footer .containar .footer_area .area02 .f_img_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    margin: 30px auto;
}

	.copyright { text-align:center; }
	
	#pageTop { position: fixed; bottom: 20px; right: 20px; }
	#pageTop a { display: block; z-index: 999; padding: 8px 0 0 0px; }
	#pageTop a:hover { text-decoration: none; opacity: 0.7; }

