@charset "utf-8";


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

INFORMATION LABEL

************************/
.label {
    width: 15%;
    padding: 1px 3px;
    color: #FFF;
    font-size: 0.7rem;
    text-align: center;
    display: inline-block;
	margin:0 10px 5px 0;
}

.label.info { background: #9a9a9a;}
.label.seminar {background: #80c269;}
.label.training {background: #13b5b1;}
.label.qc {background: #eb6877;}
.label.block {background: #00b7ee;}


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

CONTENTS SETTING

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

.kv_contents_G {
	background: url("../images/common/img_maingradation.jpg")no-repeat bottom center;
	background-size: cover;
	height: 25vh;
	width: 100%;
}

.kv_contents_M {
	background: url("../images/common/img_membergradation.jpg")no-repeat bottom center;
	background-size: cover;
	height: 25vh;
	width: 100%;
}

.box_list  {
	display: flex;
	flex-wrap: wrap;
	margin: 80px auto;
}
.box_list ul {
	width:calc(90%/3);
	display:flex;/* 高さを揃えるための指定 */
	flex-direction:column;/* 高さを揃えるための指定 */
	margin-right: 5%;
	margin-bottom: 50px;
}
.box_list ul:nth-child(3n) {
	margin-right: 0;
}

.box_list li {
	margin-bottom: 30px;
}

.number_list {
	display: flex;
  flex-wrap: wrap;
  width: 90%;
	margin: 50px auto;
}

.number_list dt {
	width: 15%;
	display: flex;
  	align-items: center;
	text-align: center;
	background: rgba(32,81,142,0.10);
	color: #1f518e;
	font-size: 3.5rem;
	margin-bottom: 15px;
	padding-left: 5%;
}
.number_list dd {
	width: 75%;
	display: flex;
  	align-items: center;
	background: rgba(32,81,142,0.10);
	padding:15px 5% 15px 0;
	margin-bottom: 15px;
	align-items: center;
}

.no-margin p{
	margin-bottom: 0!important;
}

table , td, th {
	border: 1px solid #595959;
	border-collapse: collapse;
	width: 100%;
	text-align: center;
	font-size: 0.8rem;
	margin: 3em auto;
}
td, th {
	padding: 3px;
	width: 30px;
	height: 25px;
}
table tr:first-child {
	background: rgba(94,129,173,1.00);
	color: #FFF;
}
table tr td:first-child {
	background: rgba(94,129,173,0.20);
}

#singlepost .post {
	background: none;
}

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

TOP PAGE SETTING

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

.kv {
	background: url("../images/common/img_maingradation.jpg")no-repeat center center;
	background-size: cover;
	height: 95vh;
	width: 100%;
}

.kv img {
	position: absolute;
	top: 45%;
  	left: 50%;
  	transform: translate(-50%, -50%);
	max-width: 600px;
	min-width: 20%;
	z-index: 1;
}

.slide_box_topA {
	margin-bottom: 50px;
}

#info_box {
	margin-bottom: 300px;
}

.cate_list_box {
	width: 25%;
	margin-right: 5%;
	float: left;
	clear: left;
}

.info_list_box {
	width: 70%;
	float: left;
}

.info_list_box dd {
	margin-bottom: 2em;
}



.bg_gradation {
	background-size: 100% 60%;
}

.box1 {
	width: 60%;
	color: #FFF;
}
.box1 h2,
.box1 h3 {
	color: #FFF;
	text-align: left;
}

.box2 {
	width: 60%;
	float: right;
}
.box2 h2,
.box2 h3 {
	text-align: left;
}


.bg_beighslash {
	background-size: 100% 100%;
}
.bg_beighslash .inner_box {
	text-align: center;
	background: url("../images/common/img_door.png") no-repeat;
	background-size: cover;
	width: 40%;
	padding: 12% 10% 5% 10%;
	margin: 150px auto;
	color: #FFF;
}
.bg_beighslash h2 {
	color: #FFF;
}


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

ABOUT CATEGORY SETTING

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

.list_box5 {
	width: 100%;
	margin: 3em auto;
		font-size: 0.9rem;
	letter-spacing: normal;
}

.list_box5 .list_head li {
	background:rgba(32,81,142,1.00);
	text-align: center;
	color: #FFF;
}
.list_box5 li {
	float: left;
	width: 22.5%;
	display: block;
	border-bottom: dotted 1px #333;
	text-align: center;
	margin: auto;
	padding: 10px 0;
}
.list_box5 .post {
	width: 10%;
}

.list_box2 {
	width: 100%;
	margin: 3em auto;	  
}

.list_box2 .list_head li {
	background:rgba(32,81,142,1.00);
	text-align: center;
	color: #FFF;
	width: 50%;
	float: left;
}
.list_box2 li {
	width: 50%;
	border-bottom: dotted 1px #333;
	margin: auto auto;
	padding: 10px 0;
	float: left;
}


.list_box3 {
	width: 100%;
	margin: 3em auto;
}

.list_box3 .list_head li {
	background:rgba(32,81,142,1.00);
	text-align: center;
	color: #FFF;
}
.list_box3 li {
	float: left;
	width: 33%;
	display: block;
	border-bottom: dotted 1px #333;
	text-align: center;
	margin: auto;
	padding: 10px 0;
}

.category_box {
	margin: 3em auto;
}
.category_box h4 {
	background: rgba(55,98,152,0.80);
	padding: 5px;
	text-align: center;
	color: #FFF;
}
.category_box h5 {
	padding: 5px;
	text-align: center;
	margin-bottom: 30px;
	background:rgba(31,40,50,0.70);
	color: #FFF;
}
.category_box h6 {
	padding: 20px 0 0 0;
	margin: 20px auto 10px;
	border-top: 1px dotted #333;
	font-weight: 500;
}

.post_list_box {
	margin:  auto;
	border-top: 1px dotted #333;
}

.post_list_box .post {
	
	border-bottom: 1px dotted #333;
	padding: 20px 30px 20px 0px;
	background: url("../images/common/icon_blank.png") no-repeat center right;
	background-size: 15px;
}
.post_list_box .txt_post_ttl {
	margin-bottom: 0px;
	font-size: 1.1rem;
}
.post_list_box .txt_post_content {
	font-size: 0.8rem;
}

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

SINGLE SETTING

************************/
.single_footer {
	margin-top: 250px;
}

.single_footer .btn_B {
	width: 50%;
	margin:15px auto; 
}

.post h3 {
	margin:1em auto 1.5em;
	text-align: left;
}
.post img {
	margin: 0 auto 1.5rem;
}
.post p {
	margin-bottom: 1.5rem;	
}

.post .bg_lightblue {
	padding: 2% 5%;
}	
	
.video {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.video iframe {
  width: 100%;
  height: 100%;
}


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

QC PAGE SETTING

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

#qc .number_list {
	width: 100%;
}
#qc .number_list dd {
	display: inline-block;
	padding-top: 20px;
}

.col2 {
	width: 100%;
	margin: 3em auto;
}
.col2 dt {
	width: 40%;
	padding: 2.5% 5%;
	float: left;
	clear: left;
	background:rgba(204,204,204,0.70);
}
.col2 dd {
	width: 40%;
	padding: 2.5% 5%;
	float: left;
	border-bottom: 1px solid #ccc;
	background:rgba(204,204,204,0.30);
}
#qc .col2 .bg_gray {
	padding: 1.5em 0;
	background:rgba(204,204,204,0.70);
}

#qc .process_chart {
	border-bottom: 1px dotted #333;
}
#qc .process_chart dt {
	width: 20%;
	float: left;
	clear: left;
	border-top: 1px dotted #333;
	padding: 15px 5% 15px 0;

}
#qc .process_chart dd {
	width: 75%;
	border-top: 1px dotted #333;
	padding: 15px 0;
	float: left;
}

#qc .contents_box {
	margin: 30px auto 150px;
}
#qc .img_box_half {
	margin: 3em auto;
}

#faq table td {
	text-align: left;
}

#faq table tr:first-child {
	background: rgba(94,129,173,1.00);
	color: #FFF;
	text-align: center;
}
#faq table tr td:first-child {
	background: rgba(94,129,173,0.20);
	width: 5%;
	text-align: center;
}

#faq .post {
	background: none;
	padding-right: 0;
}
#faq .post .txt_post_content {
	font-size: 0.9rem;
}

#faq .post .txt_post_ttl::before {
	content: "Q";
	font-size: 2rem;
	color: #1f518e;
	margin-right: 30px;
}


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

DB SETTING

************************/
#newsletter .box_list ul {
	width:calc(85%/4);
	display:flex;/* 高さを揃えるための指定 */
	flex-direction:column;/* 高さを揃えるための指定 */
	margin-right: 5%;
	margin-bottom: 50px;
}
#newsletter .box_list ul:nth-child(4n) {
	margin-right: 0;
}

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

INFORMATION LABEL

************************/
.label {
    width: 40%;
}
	
/************************

LAYOUT SETTING

************************/
		
.bg_gradation {
	background-size: 100% 55%;
}
	
table , td, th {
	font-size: 0.7rem;
	letter-spacing: 1px;
}
/************************

CONTENTS SETTING

************************/
	
.kv_contents_G {
	background: url("../images/common/img_maingradation.jpg")no-repeat bottom center;
	background-size: cover;
	height: 25vh;
	width: 100%;
}	
.kv_contents_M {
	background: url("../images/common/img_membergradation.jpg")no-repeat bottom center;
	background-size: cover;
	height: 25vh;
	width: 100%;
}	
	
	
.box_list  {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 50px auto;
}
	
.box_list ul {
	width:calc(90%/2);
	display:flex;/* 高さを揃えるための指定 */
	flex-direction:column;/* 高さを揃えるための指定 */
	margin-right: 5%;
	margin-bottom: 50px;
}
.box_list ul:nth-child(2n) {
	margin-right: 0;
}

.box_list li {
	margin-bottom: 30px;
}
	
	
.number_list {
	display: flex;
  flex-wrap: wrap;
  width: 100%;
	margin: 50px auto;
}

.number_list dt {
	width: 10%;
	display: flex;
  	align-items: center;
	text-align: center;
	background: rgba(32,81,142,0.10);
	color: #1f518e;
	font-size: 1.5rem;
	margin-bottom: 15px;
	padding-left: 5%;
	padding-right: 5%;
}
.number_list dd {
	width: 70%;
	display: block;
  	align-items: center;
	background: rgba(32,81,142,0.10);
	padding:15px 10% 15px 0;
	margin-bottom: 15px;
	align-items: center;
}
	

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

SINGLE SETTING

************************/
.single_footer {
	margin-top: 150px;

}
.single_footer .btn_B {
	width: 80%;
	margin:auto; 
}


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

TOP PAGE SETTING

************************/
	
.kv {
	background: url("../images/common/img_maingradation.jpg") no-repeat center center;
	background-size: cover;
	height: 90vh;
	width: 100%;
	position: relative;
	top: 0;
}
.kv img {
	position: absolute;
	top: 52%;
  	left: 50%;
  	transform: translate(-50%, -50%);
	max-width: 85%;
	min-width: 60%;
}
	.kv h2 {
		margin: 0;
		padding: 0;
	}
	
.cate_list_box {
	width: 100%;
	margin-right: 0%;
	float: none;
}

.info_list_box {
	width: 100%;
	margin: 3em auto;
	float: none;
}

.cate_list_box h4 {
	margin-bottom: 0;
}
	
.cate_list_box ul {
	width: 100%;
	margin-right: 0%;
	display: flex;
	flex-wrap: wrap;
}
	
.cate_list_box li {
	width:calc(90%/3);
	display:flex;/* 高さを揃えるための指定 */
	flex-direction:column;/* 高さを揃えるための指定 */
	margin-right: 5%;
	margin-bottom: 0;
}
.cate_list_box li:nth-child(3n) { margin-right: 0;}

.cate_list_box a {
	font-size: 0.7rem;
	letter-spacing: 1px;
}
	
.bg_beighslash {
	background-size: cover;
}
.bg_beighslash .inner_box {
	text-align: left;
	background: url("../images/common/img_door.png") no-repeat left top;
	background-size: 100% 60%;
	width: 90%;
	padding: 40% 0% 10%;
	margin: 150px auto;
	color: #FFF;
}
.box1 {
	width: 100%;
	margin-bottom: 100px;
}

.box2 {
	width: 100%;
}
	
/************************

ABOUT CATEGORY SETTING

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

.list_box5 li {
	font-size: 0.7rem;
}
	
.post_list_box {
	margin: 1em auto;
}

.post_list_box .txt_post_ttl {
	margin-bottom: 0px;
	font-size: 1.0rem;
}
.post_list_box .txt_post_content {
	font-size: 0.8rem;
}

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

QC CATEGORY SETTING

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

#faq .post .txt_post_ttl {
	font-size: 0.9rem;
	padding-bottom: 15px;
	border-bottom : 1px solid #333;
	margin-bottom: 15px;
}
#faq .post .txt_post_content {
	font-size: 0.9rem;
	margin-bottom: 0;
	width: 100%;
}

#faq .post .txt_post_ttl::before {
	content: "Q";
	font-size: 2rem;
	color: #1f518e;
	margin-right: 30px;
}
/************************

DB SETTING

************************/
#newsletter .box_list ul {
	width:calc(90%/2);
	display:flex;/* 高さを揃えるための指定 */
	flex-direction:column;/* 高さを揃えるための指定 */
	margin-right: 5%;
	margin-bottom: 50px;
}
#newsletter .box_list ul:nth-child(2n) {
	margin-right: 0;
}

}
