@charset "utf-8";


html{
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif ;
	}
	
body{
	width:100%;
	margin:0 auto;
	line-break:strict;
	letter-spacing: 0.5px;
	}
	
.clear{
	clear:both;
	}
	
.bp_head{
	width:100%;
	text-align:center;
	}
	
.social_buttons {
  width:100%;
  position: relative;
  z-index: 1;
  margin:0 0 20px 0;
  padding:0;
}
.social_buttons li {
  display: inline-block;
  float: none;
  vertical-align: top;
}

.social_buttons li .fb_iframe_widget > span{ vertical-align: baseline; margin:0 0 8px 0;}


a:link{
	color:#514E4E;
	text-decoration:none;
	}
	
a:visited{
	color:#514E4E;
	}
	
a:hover{
	color:#000000;
	}
	
a:active{
	color:#000000;
	}
	
	
.txt a:link{
	text-decoration:underline;
	}
	
.txt a:hover{
	text-decoration:underline;
	}

#ai{
	color: #3ba76a;
	border-left:3px solid #3ba76a;
}

#cloud{
	color: #5c3e8e;
	border-left:3px solid #5c3e8e;
}

#net{
	color: #c68a14;
	border-left:3px solid #c68a14;
}

	
@media print,screen and (min-width:769px) {

body img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
	
sup,
sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    _vertical-align: bottom;
    position: relative;
     
}
 
sup {
    bottom: 0.5ex;
}
 
sub {
    top: .1ex;
}

.sp{
	display:none;
}



/*------------------------------------------------------------------*/



	
#wrap{
	width:100%;
	margin:0 auto;
	background: url(bg.jpg) top center / cover fixed no-repeat;
	padding:20px 0 0 0;
	}
	
h1{
	width:100%;
	max-width:500px;
	margin:0 auto 20px;
	padding:0 auto 0 auto;
	}
	
.cont_wrap{
	width:90%;
	max-width:900px;
	margin:0 auto 0;
	padding:4% 1% 0;
	background: #fff;
	box-shadow:10px 10px 10px rgba(0,0,0,0.6);
	}
	
.type_lecture{
	width:88%;	
	color: #e96900;
	font-size: 18px;
	font-weight: bold;
	padding:0 0 0 1%;
	margin: 0 auto 10px;
	border-left:3px solid #e96900;
	}
	
h2{
	width:90%;
	max-width:800px;
	height:41px;
	font-size:24px;
	font-weight:bold;
	margin:0 auto;
	padding:7px 0 3px 10px;
	color: #fff;
	background: #e96900;
	}
	
	hr{
		width:100%;
		max-width:800px;
	}

h3{
	width:90%;
	max-width:800px;
	font-size:36px;
	font-weight:bold;
	line-height:1.3;
	padding:5px 0 15px 0;
	margin:10px auto 0;
	letter-spacing: 0;
	border-bottom:1px solid #ccc;
	}
	
	#h3mini{
		font-size:32px;
	}
	
span.mini{
		font-size: 26px;
	}		
	
.ttl_name{
	width:90%;
	max-width:800px;
	font-weight:bold;
	font-size:16px;
	padding:20px 0;
	margin:0 auto 10px;
	color: #828282;
	}
	
.name2{
	width:90%;
	max-width:800px;
	margin:0 auto;
	}
	
/* 2社----------*/

.ttl_name2{
	float:left;
	font-weight:bold;
	font-size:15px;
	padding:20px 0;
	margin:0 30px 10px 0;
	color: #828282;
	}
	
/*----------*/
	
span.uji{
	font-size:20px;
	}
	
	
.cont{
	width:90%;
	max-width:800px;
	margin:0 auto;
	padding:0 40px 30px 40px;
	}
	
.read_box{
	width: 96%;
	background-color:#f2f2f2;
	padding:2%;
	}
	
.read{
	font-weight: bold;
	width:100%;
	font-size:16px;
	line-height:1.7;
	margin:0 auto;
	}
	
	
	
h4 {
	font-size: 24px;
	color: #000;
	position: relative;
	padding:0 0 6px 14px;
	border-bottom: solid 2px #e96900;
	border-left: solid 6px #e96900;
	line-height: 1.4;
}
	
.img_person{
	width:200px;
	float:right;
	margin:5px 0 30px 30px;
	}
	
	
.img01{
	float:right;
	width:200px;
	margin:5px 0 20px 20px;
	}
	
.img02{
	float:left;
	width:200px;
	margin:5px 20px 20px 0;
	}
	
p.txt{
	font-size:16px;
	line-height:1.7;
	text-indent:1em;
	margin:0 auto 20px;
	}
	
	
p.cap{
	font-size:13px;
	line-height:1.3;
	margin:5px auto 30px;
	padding:0;
	}
	
p.cap2{
	width:80%;
	max-width:1000px;
	font-size:13px;
	line-height:1.2;
	margin:5px auto 30px;
	padding:0;
	}
	
span.big{
	font-size:16px;
	}
	
.img_zuhan{
	width:100%;
	max-width:800px;
	margin:20px auto 40px;
	}
	
/*------基本-----------------*/


	
.ttl_kanren{
	text-align:left;
	margin:40px 0 0 0;
	padding:5px 0 5px 8px;
	color: #fff;
	background-color: #000;
	}
	
ul.kanren{
	text-align:left;
	max-width:740px;
	margin:0 auto;
	padding:20px 30px;
	background-color:#efefef;
	}
	
.kanren li{
	margin:0 0 5px 0;
	padding:0;
	font-size:15px;
	}

#g-gen{
	list-style: none;
	margin-left:-1em;
	}
	
/*------faq-----------------*/


.faq{
	max-width:800px;
	margin:30px auto 30px auto;
	text-align:center;
	} 
	
.ttl_faq{
	padding:0 0 5px 0;
	margin:0 auto 5px;
	border-bottom: 1px solid #000;
	}
	
p.company{
	font-weight:bold;
	padding:0;
	margin:10px auto 5px;
	}
	
p.linkurl{
	font-size:14px;
	margin:0 auto 0;
	padding:0;
	}
	
.p_tel{
	font-size:14px;
	margin:0 auto 0px;
	padding:0;
	}
	
.p_faq{
	font-size:14px;
	margin:0 auto 5px auto;
	padding:0;
	}

/*--pager-------------------------------*/	

ul.p_navi {
	margin: 30px 0 0 0;
	padding: 0;
	text-align: center;
}

ul.p_navi li {
	font-size:22px;
	color:#fff;
	display: inline;
	margin: 0 5px;
	padding: 0;
}

ul.p_navi li span,
ul.p_navi li a {
	font-size:22px;
	color:#fff;
	display: inline-block;
	margin-bottom: 5px;
	padding: 5px 13px;
	background: #000;
	text-decoration: none;
	vertical-align: middle;
}

ul.p_navi li span{
	text-decoration:underline;
	padding: 6px 13px 5px 13px;
	}
	
ul.p_navi li a {
	padding: 6px 13px 5px 13px;
	}

ul.p_navi li a:hover {
	color: #000;
	background: #ccc;
}



p.to_top{
	font-size:12px;
	text-align:center;
	width:100%;
	margin:20px 0 0 0;
	}
	

	
.footer{
	padding:25px 0 0 0;
	border-top:1px solid #CCCCCC;
	background-color:#FFFFFF;
	}
	
	
	

/*--sub--------------------------------------------------------*/	
	
	#sub{
		background:rgba(0,0,0,0.7);
		padding:20px 0 10px;
		margin: 50px 0 0;
	}

p.p_index{
	width:100%;
	max-width: 900px;
	text-align:center;
	margin:0 auto 20px auto;
	font-size:24px;
	font-weight:bold;
	color: #fff;
	border-bottom: 4px solid #fff;
	padding:5px 0;
	}
	
.top_box_wrap{
	width:100%;
	max-width: 900px;
	margin:0 auto;
	}

	
.top_box{
	width:100%;
	margin:1% auto 2%;
	display: flex;
	}
	
.top_box_left{
	width:49%;
	margin:0 1% 0 0;
	}
	
.top_box_right{
	width:49%;
	margin:0 0 0 1%;
	}	

.top_box img:hover{
	opacity:0.7;
	}


}
 
/*-----------------------------------------------------------------------------*/

@media screen and (max-width:768px) {
	
	
/*--ハンバーガー----------------------------------------------------------------*/


/* ハンバーガーメニューのサイズ(32x32) */
.hamburger-menu{
  vertical-align: center;
  width: 32px;
  height: 32px;
}
/* ハンバーガーメニューの位置と色 */
.menu-btn{
  position:fixed;
  top: 0;
  left: 0;
  display: flex;
  height: 32px;
  width: 32px;
  justify-content: center;
  align-items: center;
  z-index: 90;
  background-color: #e96900;
}
/* メニュー線（本体と before と after で３本表示する） */
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after{
  /* 20x3 の白線 */
  content: '';
  display: block;
  height: 3px;
  width: 20px;
  border-radius: 3px;
  background-color: #ffffff;
  position: absolute;
}
/* before を少し上にずらして描画 */
.menu-btn span:before{
  bottom: 8px;
}
/* after を少し下にずらして描画 */
.menu-btn span:after{
  top: 8px;
}

/* メニューをオープンしたら三本線を×にする */
#menu-btn-check:checked ~ .menu-btn span{
  /* メニューオープン時は三本線の真ん中の線を透明にする */
  background-color: rgba( 255, 255, 255, 0 ); 
}
#menu-btn-check:checked ~ .menu-btn span::before{
  /* メニューオープン時は三本線の上の線を 45 度傾ける */
  bottom: 0;
  transform: rotate( 45deg ); 
}
#menu-btn-check:checked ~ .menu-btn span::after{
  /* メニューオープン時は三本線の下の線を -45 度傾ける */
  top: 0;
  transform: rotate( -45deg ); 
}
/* チェックを非表示にする */
#menu-btn-check{
  display: none;
}

/* メニュー装飾 */
.menu-content{
overflow: auto;
  width: 70%;
  height: 100%;
  position: fixed;
  top: 0;
  left: -100%; 
  z-index: 80; 
  background-color: #e96900;
  transition: all 0.5s; 
}
.menu-content ul{
  padding: 10px 10px 0;
}
.menu-content ul li{
  border-bottom: solid 1px #ffffff; /* メニューアイテムの区切り線 */
  list-style: none;
	font-size: 15px;
	color: #ffffff;
	padding: 9px 15px 10px 0;
}
	
.menu-content ul li span{
	font-weight: bold;
	}

.menu-content ul li a{
  display: block;
  width: 100%;
  font-size: 15px;
  box-sizing: border-box;
  text-decoration: none;
  color: #ffffff;
  position: relative;
}

/* メニューの出し入れ */
#menu-btn-check:checked ~ .menu-content{
  left: 0;  /* チェックされたら画面内へ */
}



	
/*--▲ハンバーガー----------------------------------------------------------------*/	

body img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

	
sup,
sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    _vertical-align: bottom;
    position: relative;
     
}
 
sup {
    bottom: 0.5ex;
}
 
sub {
    top: 0.5ex;
}

.pc{
	display:none;
}


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

.wrap{
	width:100%;
	margin:0 auto;
	overflow: hidden;
	}
	
.ttl_box{
	width:90%;
	height:auto;
	margin:20px auto 0;
	border-left:6px solid #000066;
	}
	
.type_lecture{
	width:88%;	
	color: #e96900;
	font-size: 18px;
	font-weight: bold;
	padding:0 0 0 1%;
	margin: 0 auto 10px;
	border-left:3px solid #e96900;
	}
	
h2{
	width:90%;
	font-size:130%;
	font-weight:bold;
	text-align:left;
	line-height:1.3;
	padding:1% 0 1% 2%;
	margin:0 auto 0;
	color: #fff;
	letter-spacing: 0;
	background: #e96900;
	}
	
h3{
	width: 90%;
	font-size:160%;
	line-height:1.3;
	padding:1% 0 3% 0;
	margin:2% auto 0;
	border-bottom:2px dotted #000;
	}
	
.ttl_name{
	width:87%;
	font-weight:bold;
	font-size:100%;
	margin:0 auto;
	line-height:1.4;
	padding:3% 3% 5% 0;
	color: #828282;
	}
	
	
.name2{
	width:87%;
	margin:0 auto;
	padding:3% 3% 5% 0;
	font-weight:bold;
	font-size:100%;
	color: #828282;
	}
	
/* 2社----------*/

.ttl_name2{
	}
	
/*----------*/
	
span.uji{
	font-size:130%;
	}
	
.cont{
	width:90%;
	margin:0 auto;
	padding:2% 0 3% 0;
	background-color:#fff;
	}
	
.read{
	font-size:100%;
	width:100%;
	line-height:1.6;
	margin:0 auto;
	padding:1% 0 3%;
	}
	
h4 {
	font-size: 120%;
	position: relative;
	padding:0 0 .2em .5em;
	border-bottom: solid 2px #e96900;
	border-left: solid 6px #e96900;
	line-height: 1.4;
}
	
.img_person{
	width:30%;
	float:right;
	margin:0 0 20px 20px;
	}
	
p.txt{
	font-size:100%;
	line-height:1.6;
	text-indent:1em;
	margin:0 auto 30px;
	}
	
p.cap{
	font-size:14px;
	line-height:1.3;
	margin:5px auto 30px;
	padding:0;
	}
	
p.cap2{
	width:80%;
	font-size:13px;
	line-height:1.2;
	margin:5px auto 30px;
	padding:0;
	}
	
span.big{
	font-size:120%;
	}
	
.img_zuhan{
	width:100%;
	margin:40px auto;
	}


/*--pager-------------------------------*/	

ul.p_navi {
	width:100%;
	margin: 0 auto 30px;
	padding: 0;
	text-align: center;
}

ul.p_navi li {
	font-size:22px;
	color:#fff;
	display: inline;
	margin: 0 5px;
	padding: 0;
}

ul.p_navi li span,
ul.p_navi li a {
	font-size:22px;
	color:#fff;
	display: inline-block;
	margin-bottom: 5px;
	padding: 5px 13px;
	background: #000;
	text-decoration: none;
	vertical-align: middle;
}

ul.p_navi li span{
	text-decoration:underline;
	padding: 6px 13px 5px 13px;
	}
	
ul.p_navi li a {
	padding: 6px 13px 5px 13px;
	}

ul.p_navi li a:hover {
	color: #000;
	background: #ccc;
}
	

	

.to_top{
	font-size:14px;
	width:90%;
	margin:20px auto;
	text-align:right;
	}
	
	
	
/*------kanren-----------------*/


	
.ttl_kanren{
	width:90%;
	text-align:left;
	margin:20px 0 0 0;
	padding:2% 8% 2% 2%;
	color: #fff;
	background-color: #000;
	}
	
ul.kanren{
	text-align:left;
	width:92%;
	margin:0 auto;
	padding:3% 5% 3% 3%;
	background-color:#efefef;
	}
	
.kanren li{
	margin:0 0 2% 3%;
	padding:0;
	font-size:13px;
	}
	
#g-gen{
	list-style: none;
	margin-left:-0.5em;
	}	
/*------faq-----------------*/


.faq{
	width:100%;
	margin:30px auto 30px auto;
	text-align:center;
	} 
	
	.ttl_faq{
		margin:0 auto 3%;
		padding:2% 0 2% 0;
		border-bottom: 1px solid #000;
	}
	
p.company{
	font-weight:bold;
	padding:0;
	margin:0;
	}
	
p.linkurl{
	font-size:13px;
	margin:10px auto 10px;
	padding:0;
	}
	
#urllong{
	word-break: break-all;
	}
	
.p_tel{
	font-size:13px;
	margin:0 auto 0px;
	padding:0;
	}
	
.p_faq{
	font-size:13px;
	margin:0 auto;
	padding:0;
	}
	
	
	
	
/*--sub--------------------------------------------------------*/	

#sub{
	width:100%;
	text-align:center;
	}

p.p_index{
	width:100%;
	text-align:center;
	margin:20px auto 10px auto;
	font-size:20px;
	font-weight:bold;
	border-top:3px solid #000;
	border-bottom:3px solid #000;
	padding:5px 0;
	}
	
.top_box_wrap{
	width:100%;
	margin:10px auto 10px auto;
	}
	
.top_box{
	width:100%;
	margin:0 auto 5px;
	}
	
}
	