/*======================================================================
Encoding        : UTF-8
Creation Date   : 2017.9.9

Copyright © 2017 LBM Inc.

This source code or any portion thereof must not be
reproduced or used in any manner whatsoever.
======================================================================*/

/** common **/
img{
	width: 100%;
}
section{
	padding: 20px;
}

section h2{
	font-family: 'Hiragino Mincho ProN', serif;
	font-size:1rem;
	letter-spacing: 0.6rem;
	text-align: center;
	padding: 20px 0;
	color:#696969;
}
.baseWidth{
	width: 100%;
}
.bgGrey{
	background-color: #f8f8f8;
	background-image: url("../img/grid.png") ;
/*     background-size: cover; */
}

label{
	-webkit-tap-highlight-color:rgba(0,0,0,0);
/* 	cursor:pointer; */
}

/** header **/
#topBorder{
	width: 100%;
	padding: 3px 0;
	background-color: #1861ae;
}
#mainWrapper{
	width: 100%;
    background: url(../img/bodyback2.png) no-repeat;
    background-size: cover;
    height: 250px;
    position: relative;
    background-position: center;
}
header #headerTopWrapper img{
    width: 180px;
    margin: 10px;
    z-index: 2;
}
.textureOverlay {
    position: absolute;
    top: 20px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-image: url(../img/grid.png);
}
#mainWrapper h2{
	font-family: 'Hiragino Mincho ProN', serif;
    font-size: 1.4rem;
    letter-spacing: 0.6rem;
    position: absolute;
    text-align: center;
    top: 35%;
    left: 19%;
    color: #FFF;
    text-shadow: 0px 0px 85px rgba(0, 0, 0, 0.3),0px 0px 25px rgba(0, 0, 0, 0.8),0px 0px 4px rgba(0, 0, 0, 0.3)
}

/** nav **/
header nav{
    background: rgba(0,0,0,0.85);
    position: relative;
    z-index: 1;
    display: none;
}
header nav li{
    font-size: 0.85rem;
    padding: 20px;
    color: #606060;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    text-align: center;
}
nav a{
	color: #FFF;
}
nav a:hover{
	color: #1861ae!important;
}
.spMenu{
    position: absolute;
    top: 23px;
    right: 20px;
}
.menuTrigger,.menuTrigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menuTrigger {
	position:relative;
    width: 35px;
    height: 30px;
}
.menuTrigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 5px;
	background-color: #393939;
	border-radius: 4px;
	opacity: 1;
}
.gblnvBox a:hover{
	opacity: 1;
}
.mmenuTrigger span:nth-of-type(1) {
	top: 0;
}
.menuTrigger span:nth-of-type(2) {
	top: 12px;
}
.menuTrigger span:nth-of-type(3) {
	bottom: 0;
}
.menuTrigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
.menuTrigger.active span:nth-of-type(2) {
	left: 50%;
	opacity: 0;
	-webkit-animation: active-menu-bar02 .8s forwards;
	animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
	100% {
		height: 0;
	}
}
@keyframes active-menu-bar02 {
	100% {
		height: 0;
	}
}
.menuTrigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-15px) rotate(45deg);
	transform: translateY(-15px) rotate(45deg);
}
.onanimation{display: block;}
/** aboutus **/
#aboutus p{
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
	font-size:0.6rem;
	letter-spacing: 0.1rem;
    line-height: 2.4em;
	text-align: center;
	color:#636363;
	margin: 0 0 20px 0;
}
/*     creation */
#wabcreation .dummyImg,#writingcreation .dummyImg{
	display: block;
	background-color: #696969;
	height: 200px;
}
#process{
	width: 100%;
}
/**     creation **/
#wabcreation li{
	padding: 40px 20px 0 20px;
    width: 100%;
    background-color: #FFF;
    box-sizing: border-box;
    margin: 10px 0 20px 0;
}
#wabcreation h3,#writingcreation h3{
	font-size: 1rem;
	padding: 0 0 20px 0;
	text-align: center;
}
#wabcreation p,#writingcreation p{
	font-size: 0.8rem;
    padding: 20px 0;
    line-height: 170%;
}
#writingcreation li{
	padding: 20px 20px 0 20px;
    width: 100%;
    background-color: #FFF;
    box-sizing: border-box;
}
.more{
    font-size: 1rem;
    border: 1px solid #696969;
    border-radius: 5px;
    width: 80%;
    padding: 15px;
    display: block;
    text-align: center;
    margin: 20px auto 40px auto;
}
.more::after{
	content: ">";
    font-size: 60%;
    margin: 0 0 3px 10px;
    display: inline-block;
    vertical-align: bottom;
}

.standOutLink{
	color: #1861ae;
	font-weight: bold;
	text-decoration: underline!important;
}
/** recruitment **/
#point li{
    width: 100%;
    padding: 0;
    box-sizing: border-box;
}
#recruitment h2{
	padding: 1rem 0 2rem 0;
}
#recruitment h3{
    font-size: 1rem;
    font-weight: bold;
    padding: 40px 0 0px 0;
    text-align: center;
}
#recruitment p{
    font-size: 0.85rem;
    padding: 20px 0;
    line-height: 170%;
}
#recruitment .dummyImg{
	display: block;
	background-color: #696969;
	height: 200px;
	width: 200px;
	border-radius: 100px;
	margin: 0 auto;
}
#conditions{
    background-color: #FFF;
    border-radius: 5px;
    margin: 0 auto 2rem auto;
    padding: 2.5em 0;
}
#recruitment table{
	border:none;
	width: 80%;
	margin:0 auto;
}
#recruitment td,#recruitment th{
    display: block;
    width: 100%;
    font-size: 0.85rem;
    line-height: 170%;
    text-align: center;
}
#recruitment th{
	font-weight: bold;
	padding: 10px 0;
}
#recruitment td{
	padding: 0 0 10px 0;
}
#process li{
	background-color: #FFF;
    padding: 20px 20px 10px 20px;
    margin: 10px 0 46px 0;
    border-radius: 5px;
    line-height: 170%;
    font-size: 0.9rem;
    text-align: center;
}
#process li::after{
	content: "▼";
    display: block;
    width: 30px;
    position: relative;
    top: 40px;
    left: 44%;
}
#process li:last-child::after{
	content: "";
	padding-bottom: 10px;
}
/** news **/
#news{
	margin: 0 auto;
}
#news div{
	float: left;
}
#news dl{
	width: 100%;
	margin: 0 auto 35px auto;
    font-size: 0.9rem;
    line-height: 160%;
}
#news dt,#news dd{
	padding: 0.5em;
}
#news dd{
	padding-bottom: 20px;
}
/** newsDetail **/
#newsDetail{
	margin: 0rem auto;
}



/** company **/
#company h2{
	padding: 20px 0 40px 0;
}
#companyWrapper{
	margin: 0 auto;
}
#company table{
	border:none;
	width: 70%;
	margin:0 auto;
}
#company td,#company th{
	line-height: 160%;
    display: block;
    width: 100%;
    padding: 5px 0;
    text-align: center;
    font-size: 0.85rem;
}
#company th{
	font-weight: bold;
}
#company td{
    padding: 0 0 20px 0;
}
/** footer **/
footer{
	background-color: #393939;
	color: #FFF;
}
footer h2{
	font-family: 'Hiragino Mincho ProN', serif;
    font-size: 170%;
    letter-spacing: 0.6rem;
    color: #FFF;
}
footer #leftWrapper{
	margin: 0 auto;
    padding: 20px 0;
    width: 60%;
}
footer #rightWrapper a,footer #rightWrapper a:link,footer #rightWrapper a:visited{
	color: #FFF;
}
footer #leftWrapper p{
	color: #fff;
    font-size: 0.7rem;
    padding: 10px 0;
}
footer nav{
	width: 100%;
	text-align: center;
}
footer #leftWrapper img{
	width: 200px;
}
footer li{
    font-size: 0.9rem;
    font-weight: bold;
    padding: 15px 0;
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
footer li:first-child{
    border-top: 1px solid rgba(255,255,255,0.2);
}
footer small{
	background-color: #121212;
	width: 100%;
	display: block;
	text-align: center;
	padding: 10px 0;
	color: #FFF;
	font-size: 0.6rem;
}
/** contant **/
#contact{
	font-size: 0.8rem;
    line-height: 170%;
}
#contact input, #contact button, #contact textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#contact input[type="text"],#contact textarea{
    border: 1px solid #c0c0c0;
    font-size: 16px;
    padding: 10px 20px;
    border-radius: 5px;
    width: 100%;
}
.radioInput{
    display: none;
}
.radioLabel{
    display: block;
    padding: 1rem;
    position: relative;
}
.radioIcon{
    display: inline-block;
    padding-left: 2.5rem;
}
.selectQuestion{
    padding-bottom: 1.5rem;
    position: relative;
}
.radioInput + .radioIcon:before ,.radioInput:checked + .radioIcon:after {
    content: '';
    display: block;
    box-sizing: border-box;
    border:1px solid transparent;
    z-index: 0;
    position: absolute;
    left: 20px;
    background-color: transparent;
    border-color: #bdc3c7;
    border-radius: 50%;
}
.radioInput + .radioIcon:before {
    width: 20px;
    height: 20px;
    top: 16.5px;
}
.radioInput:checked + .radioIcon:after {
    width: 12px;
    height: 12px;
    background: #1861ae;
    border: 0;
    left: 24px;
    top: 20.5px;
}
/* #contact label {
  position: relative;
  display: block;
  padding: 3px 3px 3px 20px;
  cursor: pointer;
}
#contact label::before {
  position: absolute;
  content: '';
  top: 50%;
  left: 0;
  width: 14px;
  height: 14px;
  margin-top: -8px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 100%;
}
#contact input[type="radio"]{
  display: inherit;
}
#contact input[type="radio"]:checked + label::after {
  position: absolute;
  content: '';
  top: 50%;
  left: 4px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  background: #3498db;
  border-radius: 100%;
} */
#contact input[type="submit"]{
	font-size: 1rem;
    border: 3px solid #696969;
    border-radius: 5px;
    width: 80%;
    padding: 15px;
    display: block;
    text-align: center;
    margin: 20px auto 40px auto;
    background: #696969;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.2rem;
}

#contact p{
	padding: 0 0 50px 0;
	text-align: center;
}
#contact dl{
}
#contact dl:after{
	clear:both;
	content: '';
	display: block;
}
#contact dt,#contact dd{
	font-size: 1rem;
	display: block;
	width: 100%;
}
#contact .contactType dd{
	display: block;
}
#contact dt{
	font-weight: bold;
}
#contact dd {
    font-size: 16px;
    padding: 20px 0;
    border-radius: 5px;
    width: 80%;
}
.example{
	display: block;
    padding: 10px 0;
}
.example i{
	background: #636363;
    padding: 4px 4px 5px 4px;
    font-size: 0.7rem;
    font-weight: bold;
    color: #FFF;
    border-radius: 2px;
    margin-right: 10px;
}
.required{
	background: #1861ae;
    padding: 4px 10px;
    border-radius: 4px;
    color: #FFF;
    font-size: 0.7rem;
    font-weight: bold;
    margin-right: 10px;
}
/** contactCheck **/
#checkContact input[type="submit"],#checkContact input[type="button"],.comp a{
	font-size: 1rem;
    border: 3px solid #696969;
    border-radius: 5px;
    width: 90%;
    padding: 15px;
    display: block;
    text-align: center;
    margin: 20px auto 20px auto;
    background: #696969;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.2rem;
}
#checkContact  table{
	width: 100%;
    margin: 0 auto;
}
#checkContact th{
    width: 25%;
    background: #dcdcdc;
    border-radius: 5px;
}
#checkContact td{
	margin-bottom: 20px;
}
#checkContact th,#checkContact td{
    padding: 10px;
    box-sizing: border-box;
    display: block;
    width: 100%;
    text-align: center;
}
.comp p{
    padding: 20px 0 20px 0;
    text-align: center;
}

/** newsDetail **/
#newsDetail p{
    width: 80%;
    margin: 0 auto;
    text-align: center;
    line-height: 200%;
    font-size: 0.8rem;
    margin-top: 2rem;
}
#newsDetail .more{
	margin-top: 100px;
}

/* tools */
.clearfix::after{
	clear: both;
	display: block;
	content: "";
}
.spOnly{
	display: block;
}
.pcOnly{
	display: none;
}
.smallTxt{
	font-size: 80%;
}

@media (min-width: 599px) {
	#img-book{
		width: auto;
	}
}

@media screen and (min-width: 768px) {




	#mainWrapper{
		height: 400px;
	}
	header nav{
		display: block;
    	background: rgba(0,0,0,0.6);
	}
	header nav ul{
	    margin: 95px auto;
	    width: 95%;
	}
	header nav li{
		float: left;
	    font-size: 0.7rem;
	    padding: 15px 12px;
	    border: none;
	}
	header nav li a,header nav li a:link,header nav li a:visited{
	    color: #FFF;
	    font-weight: bold;
	}
	header #headerTopWrapper{
		margin: 0 auto;
	}
	header #headerTopWrapper img{
		width: 280px;
	    position: absolute;
	    top: 20px;
	    margin: 0;
	}
	#mainWrapper h2{
		font-size:200%;
		top: 45%;
	    left: 31%;
	}
	section{
		padding: 20px 20px 50px 20px;
	}
	section h2{
		font-size:160%;
		padding: 50px 0;
		line-height: 160%;
	}
	#aboutus p{
		font-size:85%;
	    line-height: 2.4em;
		margin: 0 0 20px 0;
	}
	/*     creation */
	#wabcreation ul,#writingcreation ul,#recruitment ul{
		margin: 0 auto;
	}
	#wabcreation li,#writingcreation li{
	    float: left;
	    padding: 20px;
	    width: 30%;
	    margin: 10px;
	    box-sizing: border-box;
	}
	#wabcreation h3,#writingcreation h3{
		font-size: 0.9rem;
		padding: 0 0 20px 0;
		text-align: center;
	}
	#wabcreation p,#writingcreation p{
	    font-size: 0.8rem;
	    padding: 20px 0;
		line-height: 170%;
		min-height: 150px;
	}

	.more{
		font-size: 120%;
	    width: 400px;
	    padding: 15px;
	    margin: 50px auto 20px auto;
	}
	.more::after{
	    font-size: 60%;
	    margin: 0 0 3px 10px;
	}
	.standOutLink{
		font-weight: bold;
		text-decoration: underline!important;
	}
	/* recruitment */
	#point li{
		float: left;
	    padding: 40px 10px;
	    width: 32.5%;
	    box-sizing: border-box;
	}
	#recruitment h2{
		padding: 1rem 0 2rem 0;
	}
	#recruitment h3{
		font-size: 0.8rem;
		padding: 40px 0 0px 0;
		text-align: center;
	}
	#recruitment p{
		font-size: 85%;
		padding: 30px 0;
		line-height: 170%;
	}
	#recruitment .dummyImg{
		display: block;
		background-color: #696969;
		height: 200px;
		width: 200px;
		border-radius: 100px;
		margin: 0 auto;
	}
	#conditions{
	    border-radius: 5px;
	    margin: 0 auto 2rem auto;
	    padding: 2.5em 0;
	}
	#recruitment table{
		border:none;
		width: 80%;
		margin:0 auto;
	}
	#recruitment td,#recruitment th{
	    padding: 10px 0;
	    margin: 10px 0;
	    font-size: 0.9rem;
	}
	#process{
		width: 100%;
	}
	#process li{
    	padding: 20px 0 0 0;
	    margin: 10px 0 46px 0;
	    border-radius: 5px;
	}
	#process li::after{
	    width: 30px;
	    position: relative;
	    top: 40px;
	    left: 47%;
	}
	#process li:last-child::after{
		content: "";
		padding-bottom: 10px;
	}
	/* news */
	#news{
		margin: 0 auto;
	}
	#news div{
		float: left;
	}
	#news .date{
		width: 8rem;
	}
	#news dl{
	    width: 60%;
	    margin: 0 auto 35px auto;
	    font-size: 0.95rem;
	}
	#news dd{
	    padding-bottom: 20px;
	}

	/* company */
	#company h2{
		padding: 20px 0 40px 0;
	}
	#companyWrapper{
		margin: 0 auto;
	}
	#company table{
		border:none;
		width: 60%;
		margin:0 auto;
	}
	#company td,#company th{
	    padding: 10px 10px 10px 50px;
	    margin: 10px;
	    line-height: 160%;
	    display: table-cell;
	    font-size: 0.9rem
	}
	#company th{
		font-weight: bold;
		text-align: right;
		width: 50px;
	}
	#company td{
	width: 320px;
    text-align: left;
	}
	/* footer */
	footer h2{
		font-family: 'Hiragino Mincho ProN', serif;
	    font-size: 170%;
	    letter-spacing: 0.6rem;
	}
	footer #wrapper{
		margin: 0 auto;
	    padding: 60px;
		width: 100%;
    	box-sizing: border-box;
	}
	footer #leftWrapper,footer #rightWrapper{
		float: left;
	    box-sizing: border-box;
	}
	footer #rightWrapper{
		width: 60%;
	    padding: 20px 0px 0 40px;
	    font-size: 0.9rem;
	}
	footer #leftWrapper{
		width: 30%;
	}
	footer #leftWrapper p{
	    font-size: 0.7rem;
	    padding: 10px 0;
	}
	footer #leftWrapper img{
		width: 200px;
	}
	footer li{
		float: left;
		padding: 0 10px 15px 10px;
		border: none;
	}
	footer li:first-child{
		border:none;
	}
	footer small{
		width: 100%;
		padding: 10px 0;
		font-size: 80%;
	}
	/** contant **/
	.required{
	    padding: 10px;
	    border-radius: 4px;
	    width: 20%;
	}
	#contact dl{
	    width: 70%;
	    margin: 0 auto;
	}
	#checkContact table{
		width: 60%;
	}
	#checkContact th{
		text-align: right;
		width: 25%;
	}
	#checkContact td{
		width: 60%;
	    margin-left: 50px;
	    text-align: left;
	}
	#checkContact th,#checkContact td{
		padding:20px;
		box-sizing: border-box;
		display: inline-table;
		background: none;
	}
	#checkContact input[type="submit"],#checkContact input[type="button"],#contact a{
	    width: 40%;
	}
/** newsDetail **/
#newsDetail p{
    font-size: 1rem;
}
	/* tools */
	.clearfix::after{
		clear: both;
		display: block;
		content: "";
	}
	.spOnly{
		display: none;
	}
	.pcOnly{
		display: block;
	}


}

@media screen and (min-width: 1025px) {

	#mainWrapper{
		height: 350px;
		margin-top: 105px;
	}
	header nav{
		background:none;
	}
	header nav ul{
		float: right;
		margin: 25px 30px 5px 30px;
		width: 800px;
	}
	header nav li{
	    font-size: 80%;
	    padding: 20px 10px;
	}
	header nav li a,header nav li a:link,header nav li a:visited{
	    color: #393939;
	    font-weight: normal;
	}
	.isFixed {
	  position: fixed;
	  top: 0;
	  left: 0;
	  z-index: 2;
	  width: 100%;
	  background: rgba(255,255,255,1);
	}
	#mainWrapper h2{
		font-size:200%;
		top:40%;
		left: 39.8%;
	}
	section{
		padding: 50px;
	}
	.baseWidth{
		width: 1280px;
    	margin: 0 auto;
	}
	/*     creation */
	#wabcreation li,#writingcreation li{
	    padding: 40px 40px 20px;
	}
	#wabcreation h3,#writingcreation h3{
		font-size: 115%;
	}
	#wabcreation p,#writingcreation p{
		font-size: 85%;
		padding: 20px 0;
	    min-height: 80px;
	}
	/* recruitment */
	#point li{
	    padding: 40px 40px 20px;
	    width: 31.6%;
	    margin: 10px;
	}
	#recruitment h3{
		font-size: 115%;
	}
	#process{
		width: 1000px;
	}
	/** contant **/
	#contact{
	    font-size: 0.9rem;
	    line-height: 170%;
	}
	#contact input[type="submit"]{
	    width: 40%;
	}
	#contact p{
		padding: 0 0 50px 0;
	}
	#contact dt,#contact dd{
		font-size: 1rem;
		display: inline;
		float: left;
	}
	#contact .contactType dd{
		display: block;
	}
	#contact dt{
		width: 23%;
	}
	#contact dd {
	    padding: 0 0 20px 50px;
	    width: 60%;
	}
	.required{
	    padding: 4px 10px;
		display: inline;
	}
	/* footer */
	footer #wrapper{
	    width: 60%;
	}
	footer #rightWrapper{
		width: 60%;
	    padding: 20px 0px 0 40px;
	}

	#newsDetail,#privacy{
		margin: 5rem auto 5rem auto;
	}
	#privacy div{
	    margin: 1rem auto;
	    width: 80%;
	}
	#privacy div h3{
		font-weight: bold;
		padding: 1.5rem 0 0rem 0;
	}
	#privacy div p{
		padding: 1rem 0;
	}
	#privacy div a{
		color: #1861ae;
	}
	#privacy div li{
		padding: 0.2rem 0;
	}

}
