@charset "utf-8";

/********************************************************
	
	flex-grid:| sm  | md  | lg  |  xl  |
	min-width:| 576 | 768 | 992 | 1200 |
	max-width:| 575 | 767 | 991 | 1199 |

********************************************************/

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

	technology 共通

====================================================== */
.center{
	text-align:center !important;
}

.sp{
	display:none;
}

.pc{
	display:block;
}

.clearfix:after{
	content: ".";
	font-size: 0.1em;
	line-height: 0;
	display: block;
	height: 0;
	visibility: hidden;
	clear: both;
}

.clearfix{
    min-height: 1%;
    _height: 1%;
}

.c_both{
	clear:both;
}

.container{
	max-width:1000px;
	margin:0 auto;
	position:relative;
}

@media screen and (max-width: 767px) {
	.container{
		width:96%;
	}

	.sp{
		display:block;
	}

	.pc{
		display:none;
	}

}

/* ======================================================
	space
====================================================== */
.pb10{
	padding-bottom:10px;
}

.pb20{
	padding-bottom:20px;
}

.pb30{
	padding-bottom:30px;
}

.pb40{
	padding-bottom:40px;
}

.pb50{
	padding-bottom:50px;
}

.pb60{
	padding-bottom:60px;
}

.pb70{
	padding-bottom:70px;
}

.pb80{
	padding-bottom:80px;
}

.pb90{
	padding-bottom:90px;
}

.pb100{
	padding-bottom:100px;
}

.pt10{
	padding-top:10px;
}

.pt20{
	padding-top:20px;
}

.pt30{
	padding-top:30px;
}

.pt40{
	padding-top:40px;
}

.pt50{
	padding-top:50px;
}

.pt60{
	padding-top:60px;
}

.pt70{
	padding-top:70px;
}

.pt80{
	padding-top:80px;
}

.pt90{
	padding-top:90px;
}

.pt100{
	padding-top:100px;
}

.mt10{
	margin-top:10px;
}

.mt20{
	margin-top:20px;
}

.mt30{
	margin-top:30px;
}

.mt40{
	margin-top:40px;
}

.mt50{
	margin-top:50px;
}

.mt60{
	margin-top:60px;
}

.mt70{
	margin-top:70px;
}

.mt80{
	margin-top:80px;
}

.mt90{
	margin-top:90px;
}

.mt100{
	margin-top:100px;
}

.mb10{
	margin-bottom:10px;
}

.mb20{
	margin-bottom:20px;
}

.mb30{
	margin-bottom:30px;
}

.mb40{
	margin-bottom:40px;
}

.mb50{
	margin-bottom:50px;
}

.mb60{
	margin-bottom:60px;
}

.mb70{
	margin-bottom:70px;
}

.mb80{
	margin-bottom:80px;
}

.mb90{
	margin-bottom:90px;
}

.mb100{
	margin-bottom:100px;
}

@media screen and (max-width: 767px) {
	.mt100{
		margin-top:55px;
	}

	.pb100{
		padding-bottom:50px;
	}

	.pt100{
		padding-top:50px;
	}

	.pt60{
		padding-top:30px;
	}

	.mt40{
		margin-top:20px;
	}

	.pt70{
		padding-top:35px;
	}
}


/* ======================================================
	font
====================================================== */
.technology{
	font-size: 1.7rem;
}

.technology a{
	color:#295ca0;
}

.font_s{
	font-size: 1.4rem;
	line-height: 24px;
}

.font_b{
	font-size: 1.8rem;
	line-height: 26px;
}

.font_b2{
	font-size: 2.2rem;
}

.section_title{
	font-family: serif;
	clear:both;
	max-width:1000px;
	margin:0 auto;
	font-weight:bold;
	font-size: 4.8rem;
	line-height:70px;
	text-align:center;
}

.lead{
	text-align:center;
}

@media screen and (max-width: 767px){
	.technology{
		font-size: 1.4rem;
	}

	.section_title{
		font-size: 7vw;
		line-height: 8vw;
	}

	.lead{
		width:96%;
		margin:0 auto;
		text-align:left !important;
		padding-bottom:10%;
	}

}

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

	mainvisual

====================================================== */
.main{
	width:100%;
	background: url(images/main_bg.jpg) repeat-x;
	height:268px;
	margin-top:100px;
}

.main_inner{
	width:100%;
	background: url(images/mainvisual.jpg) no-repeat right top;
	height:268px;
}

.main_inner h1{
	width:320px;
	margin-left:15px;
	padding-top:90px;
}

.technology .lead{
	text-align:center;
}

.technical_cont{
  justify-content: left;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:1000px;
	margin:0 auto;
}

.technical_cont .btn_technical{
	width:480px;
	margin:0 0 60px 0;
}

.technical_cont .btn_technical p{
	width:480px;
}

.technical_cont .btn_technical:nth-child(1), .technical_cont .btn_technical:nth-child(3), .technical_cont .btn_technical:nth-child(5){
	margin-right:40px;
}

.c-bcrumb a{
	color:#000;
}

@media screen and (max-width: 767px) {
	.main{
		width:100%;
		height:auto;
		background: url(images/main_bg.jpg) repeat-x;
		margin-top:50px;
	}

	.main_inner{
		width:100%;
		height:auto;
		background: url(images/mainvisual.jpg) 0 0 no-repeat;
		background-size: 100% auto;
	}

	.main_inner h1{
		width:38%;
		height:auto;
		margin-left:2%;
		padding:9% 0 9% 0;
	}

	.technical_cont img{
		width:100%;
	}

	.technical_cont{
		width:100%;
		margin:0 auto 0;
	}

	.technical_cont .btn_technical{
		width:100%;
		margin:0 0 30px 0;
	}

	.technical_cont .btn_technical p{
		width:100%;
	}

	.technical_cont .btn_technical:nth-child(1), .technical_cont .btn_technical:nth-child(3), .technical_cont .btn_technical:nth-child(5){
		margin-right:0;
	}

}


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

	session

====================================================== */
.session_name{
	position: relative;
  padding-left: 20px;
	text-align:left !important;
}

.session_inn a{
	color:#000 !important;
}

.session_name:before{
	content: '';
  display: inline-block;
  position: absolute;
  top: 35%;
  left: 0;
  width: 0;
  height: 0;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid #27a039;
}

.session_inn{
	width:480px;
}

.session_inn img, .session_inn p{
	width:100%;
	font-size: 2.4rem;
}

@media screen and (max-width: 767px) {
	.session_inn{
		width:100%;
	}
}


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

	technology / beginner

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

.session h1{
	width:340px;
	margin:0 auto;
}

.session h2{
	font-size: 3.0rem;
	font-weight:bold;
	text-align:center;
}

.session p{
	text-align:center;
}

.session .attention{
	background-color:#f4f4f4;
	padding:25px;
}

.session .attention dl {
	max-width:950px;
}

.session .attention dt {
  float:left;
  clear:left;
  width:100px;
	text-align:right;
}

.session .attention dd {
  float:left;
	max-width:850px;
}

.red{
	background-color:#dd0500;
	color:#fff;
	padding:2px 10px;
}

.navi{
  justify-content: center;
  align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	width:900px;
	margin:0 auto;
	border:1px solid #efefef;
	/*padding:20px;*/
}

.navi a{
	width:25%;
	padding:25px 25px 35px 25px;
	border-right:1px solid #efefef;
	position: relative;
  display: inline-block;
	color:#000;
}

.navi a:after{
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 1px #646464;
  border-right: solid 1px #646464;
  position: absolute;
  top: 50%;
  left: 48%;
  margin-top: 30px;
  transform: rotate(135deg);
}

.navi a:nth-child(4){
	border-right:none;
}

.navi a p:nth-child(1){
	font-size: 2.0rem;
}

.navi p{
	text-align:center;
}

.green{
	background-color:#32a53e;
	color:#fff;
	line-height:24px;
	margin-top:5px;
}

.blue{
	background-color:#00abe4;
	color:#fff;
	line-height:24px;
	margin-top:5px;
}

.caution{
	color:#df1510;
}

.pdf{
	display:table;
	text-align:left;
}

.pdf li{
	display:table-cell;
	vertical-align:middle;
}

.acrobat{
	display: flex;
	width:500px;
	margin:0 auto;
	padding:30px 0 60px;
}

.acrobat .btn_acrobat{ 
	flex: 0 0 25%; 
}

.acrobat p{ 
	flex: 0 0 75%; 
	font-size: 1.2rem;
	line-height:15px;
	text-align:left;
	padding:0 0 0 5px;
}


@media screen and (max-width: 767px) {
	.navi{
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		width:94%;
	}

	.navi a{
		width:50%;
	}

	.navi a:nth-child(2), .navi a:nth-child(4){
		border-right:none;
	}

	.navi a:nth-child(1), .navi a:nth-child(2){
		border-bottom:solid 1px #efefef;
	}

	.acrobat{
		display: block;
		width:100%;
		margin:0 auto;
		padding:30px 0 60px;
	}

	.acrobat img{
		width:100%;
	}

	.acrobat .btn_acrobat{ 
		width:40%;
		margin:0 auto;
		padding-bottom:3%;
	}

	.acrobat p{ 
		width:94%;
		margin:0 auto; 
		font-size: 1.4rem;
		line-height:20px;
		text-align:center;
		padding:0;
	}

}

.area{
	margin-top:-80px;
 	padding-top:80px;
}

.area h2{
	font-size: 2.4rem;
	font-weight:bold;
	padding:5px 0 5px 20px;
	margin-top:40px;
}

.area b{
	font-size: 1.8rem;
	font-weight:bold;
}

table{
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
	font-size: 1.4rem;
	height:100%;
}

.style1 tr{
  border-right: solid 1px #a6a6a6;
	font-weight:normal;
}

.style1 th{
	font-weight:normal;
  text-align: center;
  border-left: 1px solid #a6a6a6;
  border-top: 1px solid #a6a6a6;
  border-bottom: 1px solid #a6a6a6;
  /*width: 25%;*/
  padding: 5px 0;
	background-color:#f4f4f4;
	height:30px;
}

.style1 td{
  text-align: center;
  border-left: 1px solid #a6a6a6;
  border-bottom: 1px solid #a6a6a6;
  border-top:none;
  /*width: 25%;*/
  padding: 2px 10px;
}

.style1 td.time{
  text-align: center !important;
	vertical-align:middle !important;
}

.style1 td:first-child, .style1 td:last-child{
  text-align: left;
	vertical-align:top;
}

.style1 td:nth-child(1){
  width:500px;
}

.style1 td:nth-child(2){
  width:190px;
}

.full{
	background-color:#dd0500;
	color:#fff;
	padding:0 5px;
	float:right;
	line-height:24px;
	vertical-align:middle;
	margin-top:2px;
}

.icon{
	float:left;
	margin-left:20px;
	display:block;
}

.w30{
	width:30px;
	padding-top:5px;
}

.w50{
	width:50px;
	padding-top:5px;
}

.w60{
	width:60px;
	padding-top:5px;
}


table td p{
	float:left;
	width:250px;
}

table td a{
	text-decoration:underline;
}


.details{
	border-top:1px solid #a6a6a6;
}

.details_block{
	font-size: 1.4rem;
	line-height:20px;
  justify-content: center;
  align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	max-width:1000px;
	margin:0 auto;
	border-right:1px solid #a6a6a6;
	border-bottom:1px solid #a6a6a6;
	border-left:1px solid #a6a6a6;
	background: url(/training/beginner/images/line.png) repeat-y;
}

.details_left{
	width:420px;
	padding:5px;
}

.details_right{
	width:580px;
	padding:5px 20px;
}

.details_inner{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	max-width:420px;
	margin:0 auto;
}

.details_inner .details_time{
	width:190px;
	text-align:center;
}

.details_inner .details_course{
	width:230px;
	padding:0 20px;
}


.base_schedule{
	font-size: 1.4rem;
	line-height:20px;
  justify-content: center;
  align-items: stretch;
  /*align-items: center;*/
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	max-width:1000px;
	margin:0 auto;
/*
	border-right:1px solid #a6a6a6;
	border-bottom:1px solid #a6a6a6;
	border-left:1px solid #a6a6a6;
*/
}

.mill{
	background-color:#ccefe3;
	font-weight:bold;
	font-size: 1.8rem;
	border-top:1px solid #a6a6a6;
	border-right:1px solid #a6a6a6;
	border-left:1px solid #a6a6a6;
	padding-left:20px;
}

.lathe{
	background-color:#d0daed;
	font-weight:bold;
	font-size: 1.8rem;
	border-top:1px solid #a6a6a6;
	border-right:1px solid #a6a6a6;
	border-left:1px solid #a6a6a6;
	padding-left:20px;
}

.lathe span{
	font-weight:normal;
	padding-left:20px;
}

.schedule_left{
	width:680px;
	/*padding:5px;*/
}

.schedule_right{
	font-size: 1.4rem;
	width:320px;
	/*padding:5px;*/
	border-right:1px solid #a6a6a6;
	border-bottom:1px solid #a6a6a6;
	border-top:1px solid #a6a6a6;
}

.schedule_right .title{
	font-weight:normal;
  text-align: center;
  /*border-left: 1px solid #a6a6a6;
  border-top: 1px solid #a6a6a6;*/
  border-bottom: 1px solid #a6a6a6;
  padding: 5px 0;
	background-color:#f4f4f4;
}

.schedule_right p{
	padding:5px;
}


@media screen and (max-width: 767px) {
	.session h1{
		width:70%;
		margin:0 auto;	
	}

	.session h1 img{
		width:100%;
	}

	.session h2{
		font-size: 6vw;
		line-height: 8vw;
	}

/*
	.style1 td:nth-child(1){
	  width:70%;
		display:block;
	}

	.style1 td:nth-child(2){
	  width:30%;
		display:block;
	}

	.style1 td:nth-child(3){
	  width:100%;
		display:block;
	}
*/

	.details_block{
  	align-items: stretch;
	  width:100%;
		background: url(/training/beginner/images/dot.png);
	}

	.details_left{
		width:30%;
		padding:1%;
		border-right:1px solid #a6a6a6;
		box-sizing: border-box;
	}

	.details_right{
		width:70%;
		padding:1%;
	}

	.details_inner{
		display: block;
		width:100%;
	}

	.details_inner .details_time{
		display: block;
		width:100%;
		text-align:left;
	}

	.details_inner .details_course{
		display: block;
		width:100%;
		padding:0;
	}
/*
	.details_inner .sp{
		display:block;
	}

	.details_inner .pc{
		display:none;
	}
*/
	.base_schedule{
		width:100%;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.schedule_left{
		width:100%;
		/*padding:1%;
		border-right:1px solid #a6a6a6;
		box-sizing: border-box;*/
	}

	.schedule_right{
		width:100%;
		border-top:none;
		border-left:1px solid #a6a6a6;
	}

	.icon{
		float:right;
		/*margin-left:20px;
		display:block;*/
	}

	table td p{
		/*float:left;*/
		width:auto;
	}

	.full{
		clear:both;
		float:left;
	}

}


.category{
	background-color:#f4f4f4;
}

.category .details_time, .category .details_course, .category .details_right{
	text-align:center;
}


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

	technology / seminar

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

.seminar h1{
	width:580px;
	margin:0 auto;
}

.seminar p, .calendar p{
	text-align:center;
}

.seminar .tel{
	font-size: 3.0rem;
	font-weight:bold;
	text-align:center;
	color:#01a7ba;
}

.seminar_pdf{
	width:100%;
	background-color:#f4f4f4;
	padding:15px;
}

.seminar_pdf ul{
	margin:0 auto;
}

.calendar .year{
	text-align:center;
	font-size: 1.6rem;
	line-height:28px;
}

.calendar .date{
	text-align:center;
	font-size: 5.0rem;
	font-weight:bold;
	line-height:38px;
}

.calendar .calendar_img{
	border:1px solid #d4d5d5;
	width:760px;
	margin:30px auto 0;
}

@media screen and (max-width: 767px) {
	.seminar h1{
		width:100%;
		margin:0 auto;
	}

	.seminar p{
		text-align:left;
	}

	.seminar_pdf p, .calendar p{
		text-align:center;
	}

	.calendar .calendar_img{
		width:100%;
		margin:30px auto 0;
	}

}


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

	technology / forefront

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

.container_s{
	width:800px;
	margin:0 auto;
}

.container_s h2{
	text-align:center;
}

.container_s .forefront_title{
	background-color:#1943aa;
	color:#fff;
	font-weight:bold;
	padding:2px 0 2px 15px;
	font-size: 2.0rem;
}

.container_s p{
	text-align:left;
}

.forefront_cont{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:800px;
	margin:40px auto 0;
}

.forefront_cont .btn_forefront{
	width:382px;
	margin:0 0 40px 0;
}

.forefront_cont .btn_forefront p{
	width:382px;
}

.forefront_cont .btn_forefront:nth-child(1), .forefront_cont .btn_forefront:nth-child(3), .forefront_cont .btn_forefront:nth-child(5){
	margin-right:36px;
}

.waku_inner{
  justify-content: center;
	align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	width:800px;
	margin:10px auto 0;
	border:2px solid #d3d3d3;
	box-sizing: border-box;
}

.waku_inner p, .waku_inner2 p{
	padding:20px;
}

.waku_inner .w400{
  width:400px;
}

.waku_inner p:nth-child(2){
  text-align:center;
}

.waku_inner ul li{
	width:220px;
}

.waku_inner2{
  justify-content: center;
	align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:800px;
	margin:10px auto 0;
	border:2px solid #d3d3d3;
	box-sizing: border-box;
}

.waku_inner2 p{
  width:100%;
}

.waku_inner2 ul{
	padding:0 20px 20px 20px;
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	width:800px;
	margin:0 auto;
}

.waku_inner2 ul li{
	/*width:215px;*/
	margin-right:30px;
}

.waku_inner2 ul li b{
	color:#c3181f;
}

@media screen and (max-width: 767px) {
	.container_s{
		width:96%;
	}

	.forefront_cont{
	  justify-content: center;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		width:100%;
		margin:40px auto 0;
	}

	.forefront_cont .btn_forefront{
		width:100%;
		margin:0 0 40px 0;
	}

	.forefront_cont .btn_forefront p{
		width:100%;
	}

	.forefront_cont .btn_forefront:nth-child(1), .forefront_cont .btn_forefront:nth-child(3), .forefront_cont .btn_forefront:nth-child(5){
		margin-right:0;
	}

	.forefront_cont .none{
		height:0;
		margin:0;
	}

	.forefront_cont img{
		width:100%;
	}

	.waku_inner img{
		width:70%;
	}

	.waku_inner{
		width:100%;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.waku_inner .w400{
		width:100%;
	}

	.waku_inner p:nth-child(2){
	  text-align:center;
	}

	.waku_inner ul li{
		width:100%;
	}

	.waku_inner2{
		width:100%;
	}

	.waku_inner2 ul{
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		width:100%;
	}

	.waku_inner2 ul li{
		width:100%;
		margin-right:0;
		margin-top:10px;
	}

}


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

	technology / book

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

.container_s .book_title1{
	background-color:#e8af01;
	color:#000;
	font-weight:bold;
	padding:2px 0 2px 15px;
	font-size: 2.0rem;
}

.price1{
	color:#b98d0d;
}

.catch{
	font-size: 2.4rem;
	text-align:center !important;
}

.container_s .book_title2{
	background-color:#2d71bc;
	color:#fff;
	font-weight:bold;
	padding:2px 0 2px 15px;
	font-size: 2.0rem;
}

.price2{
	color:#2d71bc;
}

.confirm h4{
	text-align:center;
	font-weight:bold;
	color:#439c38;
	font-size: 2.6rem;
}

.confirm p{
	border-top:1px solid #b3b3b3;
	border-bottom:1px solid #b3b3b3;
	padding:20px 0;
}

.container_s #bnr_online{
	width:360px;
	margin:0 auto;
	padding-top:60px;
}

@media screen and (max-width: 767px) {
	.catch{
		font-size: 2.2rem;
		text-align:center !important;
	}

	.container_s #bnr_online{
		width:80%;
		margin:0 auto;
		padding-top:8%;
	}

}

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

	technology / movie

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

.movie_title{
	color:#439c38;
	font-size: 2.0rem;
	margin-bottom:5px;
}

.movie_block{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:1000px;
	margin:0 auto;
}

.movie_block p{
	width:228px;
	margin-right:29px;
	margin-bottom:40px;
}

.movie_block p:nth-child(4){
	margin-right:0;
}

.movie_block span{
	position: relative;
  padding-left: 20px;
}

.movie_block span:before{
	content: '';
  display: inline-block;
  position: absolute;
  top: 35%;
  left: 0;
  width: 0;
  height: 0;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 10px solid #27a039;
}


@media screen and (max-width: 767px) {
	.center{
		text-align:left !important;
	}

	.movie_block{
		width:100%;
	}

	.movie_block p{
		width:100%;
		margin-right:0;
		margin-bottom:40px;
	}

	.movie_block p img{
		width:100%;
	}

}


.movie_catch{
	width:800px;
	margin:0 auto;
	background-color:#000;
	text-align:center;
	color:#fff;
	font-weight:bold;
	font-size: 2.0rem;
}


.movie_img{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	width:800px;
	margin:60px auto 0;
	background:#eaeaea;
	padding:30px 70px;
}

.movie_img img{
  width:100%;
}

.movie_img span{
	display: block;
	/*width:340px;*/
}

.movie_img p:nth-child(1){
	margin-right:40px;
}

.movie6 p{
	margin-right:0px !important;
}


.flow_title{
	background-color:#808080;
	color:#fff;
	font-weight:bold;
	font-size: 2.0rem;
	padding-left:15px;
}

.flow{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:800px;
	margin:0 auto;
	background:#eaeaea;
	padding:30px 38px;
}

.flow span{
	display: block;
	width:234px;
}

.flow p{
	margin-right:10px;
}

.flow p:nth-child(3), .flow p:nth-child(6){
	margin-right:0px;
}

.flow p:nth-child(1), .flow p:nth-child(2), .flow p:nth-child(3){
	margin-bottom:30px;
}

.trailer_block{
	background-color:#000;
	padding:10px 0 30px;
}

.trailer_block p{
	color:#fff;
	padding-left:20px;
}

.trailer {
	width: 520px;
	margin: 0 auto;
}

.trailer .movie {
	position: relative;
	max-width: 100%;
	padding-top: 56%;
	margin: 0;
}



.trailer .movie iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

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



@media screen and (max-width: 767px) {
	.movie_img{
		padding:3% 5%;
		margin:30px auto 0;
	}

	.movie_img, .movie_img img{
		width:100%;
	}

	.movie_img span{
		width:100%;
	}

	.movie_catch{
		width:100%;
		margin:0 auto;
		background-color:#000;
		text-align:center;
		color:#fff;
		font-weight:bold;
		font-size: 2.0rem;
	}

	.flow{
	  justify-content: center;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		width:100%;
		margin:0 auto;
		background:#eaeaea;
		padding:3% 4%;
	}

	.flow img{
		width:100%;
	}

	.flow span{
		display: block;
		width:100%;
	}

	.flow p{
		width:49%;
		margin-right:2%;
	}

	.flow p:nth-child(1), .flow p:nth-child(3), .flow p:nth-child(5){
		margin-right:2%;
	}

	.flow p:nth-child(2), .flow p:nth-child(4), .flow p:nth-child(6){
		margin-right:0px;
	}

	.flow p:nth-child(1), .flow p:nth-child(2), .flow p:nth-child(3){
		margin-bottom:30px;
	}

	.trailer_block{
		background-color:#000;
		padding:2% 3% 4%;
	}

	.trailer_block p{
		color:#fff;
		padding:0;
		text-align:center;
	}

	.trailer {
		width: 100%;
		margin: 0 auto;
	}

	.trailer .movie {
		position: relative;
		max-width: 100%;
		padding-top: 56%;
		margin: 0;
	}

	.trailer .movie iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100% !important;
		height: 100% !important;
	}

}


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

	technology / beginner

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

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

.beginner_pdf{
	padding:15px 0 15px;
	display: flex;
	justify-content: center;
	background-color:#dfdfdf;
	width:530px;
	margin:20px auto 0;
}

.beginner_pdf p{
	margin-right:15px;
}

.beginner_pdf a{
	color:#295ca0;
}
.w530{
	width:530px;
	margin:0 auto;
}

.beginner_book{
	width:660px;
	margin:0 auto;
	border:1px solid #999999;
	padding:30px 0;
}

.beginner_book_inner{
	width:416px;
	margin:0 auto;
}

.beginner_book_inner h3{
	font-weight:bold;
	font-size: 1.9rem;
	line-height:28px;
}

.slideshow, .publisher1, .publisher2, .sell{
	text-align:center !important;
}

.publisher2{
	font-size: 1.6rem;
}


@media screen and (max-width: 767px) {
	.beginner_pdf{
		width:100%;
	}

	.w530{
		width:100%;
	}

	.beginner_book{
		width:100%;
	}

	.beginner_book_inner{
		width:80%;
		margin:0 auto;
	}

	.beginner_book_inner h3{
		font-size: 1.6rem;
	}

}


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

	technology / cases

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

#cases{
	width:100%;
}

#cases .container{
	background: url(../technology/cases/images/dot.png) repeat-x center bottom;
	
}

#cases h2{
	font-size: 3.0rem;
	font-weight:bold;
	text-align:center;
}

#cases #mainvisual{
	max-width: 1280px;
	margin: 0 auto;
}

#cases #mainvisual img{
	width:100%;
}

#cases_logo{
	text-align:center;
	padding:40px 0 20px;
}

#cases_name{
	font-size: 3.6rem;
	font-weight:bold;
	text-align:center;
}

#cases_message{
	background-color:#eff0eb;
	text-align:center;
	padding:30px 0;
	margin-top:20px;
}

.cases_block{
	background: url(../technology/cases/images/dot.png) repeat-x;
	margin-top:40px;
}

.cases_1 ul{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:1000px;
	margin:0 auto;
}

.cases_1 ul li:first-child{
  width:518px;
}

.cases_1 ul li:last-child{
  width:482px;
}

.cases_1 ul li:last-child img{
  border-bottom:1px solid #000;
	margin-bottom:15px;
}

.cases_1 p{
  padding:20px 0;
}

.cases_2 ul{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:1000px;
	margin:0 auto;
}

.cases_2 ul li{
  margin-right:12px;
}

.cases_2 ul li:last-child{
  margin-right:0;
}

.cases_3 ul{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:1000px;
	margin:0 auto;
}

.cases_3 ul li:first-child{
  width:485px;
	margin-right:30px;
	position:relative;
}

.cases_3 h3{
	font-size: 3.6rem;
	font-weight:normal;
  border-bottom:1px solid #000;
	margin-bottom:15px;
}

.cases_3 ul li:last-child{
  width:485px;
}

.cases_3 ul li:last-child p{
  padding-top:15px;
}

.cases_3 .address{
	position:relative;
	bottom: 0;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border:1px solid #918c8a;
	padding:5px 20px;
	max-width:485px;
	margin-top:20px;
}

.cases_3 ul li:first-child .address{
	position:absolute;
	bottom: 0;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border:1px solid #918c8a;
	padding:5px 10px;
	max-width:485px;
}

.cases_3 .address dt{
  float: left;
	background-color:#666464;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	color:#fff;
	width:96px;
	text-align:center;
}

.cases_3 .address dd{
	margin:4px 0 4px 105px;
}


.column1, .column2, .column3{
	width:100%;
}

.column1 img, .column2 img, .column3 img{
	width:100%;
}

.column2 ul, .column3 ul{
  justify-content: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width:1000px;
	margin:0 auto;
}

.column2 ul li{
  width:48.5%;
	margin-right:3%;
}

.column2 ul li:last-child, .column3 ul li:last-child{
	margin-right:0;
}

.column3 ul li{
  width:32.6%;
	margin-right:1.1%;
}

#bottom_img{
	width:100%;
	position:relative;
}

#bottom_img h3{
	max-width: 1180px;
	left: 0;
  right: 0;
	margin: auto;
	position:absolute;
	z-index:100;
}

#bottom_img h3 img{
	width: auto;
}

#bottom_img p{
	max-width: 1280px;
	margin: 0 auto;
	position:relative;
}

#bottom_img img{
	width:100%;
}

@media screen and (max-width: 767px) {
	#cases h2{
		font-size: 5vw;
	}

	#cases_logo{
		width:14%;
		margin:0 auto;
		padding:4% 0 2%;
	}

	#cases_logo img{
		width:100%;
	}

	#cases_name{
		font-size: 4.8vw;
	}

	#cases_message{
		text-align:left;
		padding:3%;
		margin-top:3%;
	}

	.cases_1 ul{
		display: block;
		width:96%;
	}

	.cases_1 ul li:first-child{
	  width:100%;
	}

	.cases_1 ul li:last-child{
	  width:100%;
		padding-top:4%;
	}

	.cases_2 ul{
		display: block;
		width:96%;
	}

	.cases_2 ul li{
	  width:100%;
	  margin-right:0;
		margin-bottom:3%;
	}

	.cases_2 ul li img{
	  width:100%;
	}

	.cases_3{
		display: block;
		width:96%;
		margin:0 auto;
	}

	.cases_3 ul{
		display: block;
		width:100%;
		margin:0 auto;
	}

	.cases_3 ul li{
	  width:100% !important;
	  margin-right:0 !important;
		margin-bottom:3%;
	}

	.cases_3 ul li p img{
	  width:100%;
	}

	.cases_3 h3{
		font-size: 5vw;
	}

	.cases_3 .address{
		position:relative;
		bottom: 0;
		border-radius: 10px;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border:1px solid #918c8a;
		padding:5px 10px;
		max-width:100%;
		margin-top:3%;
	}

	.cases_3 ul li:first-child .address{
		position:relative;
		bottom: 0;
		border-radius: 10px;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border:1px solid #918c8a;
		padding:5px 10px;
		max-width:100%;
	}

	.address dl dt,	.address dl dd{
		font-size: 1.2rem !important;
	}

	.cases_3 .address dt{
		width:90px;
	}

	.cases_3 .address dd{
		margin:4px 0 4px 95px;
	}

	.column2 ul, .column3 ul{
		display: block;
		width:100%;
		margin:0 auto;
	}

	.column2 ul li, .column3 ul li{
		width:100%;
		margin-right:0;
		margin-bottom:3%;
	}

	#bottom_img h3{
		max-width: 1180px;
		left: 0;
	  right: 0;
		margin: auto;
		position:absolute;
		z-index:100;
	}

	#bottom_img p{
		max-width: 1280px;
		margin: 0 auto;
		position:relative;
	}

	#bottom_img img{
		width:100%;
	}

	.cases_block .pt100{
		padding-top:10%;
	}

	.cases_block .pb50{
		padding-bottom:5%;
	}

	.cases_block .mb100{
		margin-bottom:10%;
	}

	.cases_block .pt30{
		padding-top:3%;
	}

	#cases .pb70{
		padding-bottom:7%;
	}

	#cases .mb70{
		margin-bottom:7%;
	}

}