/* PC Style */

@import url(reset.css);
@import url(animate.css);
@import url(https://fonts.googleapis.com/earlyaccess/sawarabimincho.css);

html {

}

body {
    color:rgba(10,10,10,1);
    font-size:16px;
    font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
    text-decoration:none;
}

#wrap {
    background:url(../images/bg_doro.jpg) no-repeat top center;
    background-size: cover;
    background-attachment: fixed;
}

#wrap2 {
    background:url(../images/bg.jpg) no-repeat top center;
    background-size: cover;
    background-attachment: fixed;
}

/* Header
----------------------------------------------------------- */
#g_header {
    position: fixed;
    top:0;
    left:0;
    z-index:100;
    width:100%;
    height:65px;
    background:rgba(29,32,136,0.8);
}

#g_header #g_header_content {
    position: relative;
    width:980px;
    margin:0 auto;
}

#g_header #g_header_content #logo {
    position: absolute;
    top:0;
    left:0;
}

#g_header #g_header_content #logo img {
    width:110px;
    height:auto;
}

#g_header #g_header_content nav {
    position: absolute;
    top:20px;
    left:150px;
}

#g_header #g_header_content nav ul li {
    display:inline-block;
    margin-right:2em;
}

#g_header #g_header_content nav ul li a {
    color:rgba(255,255,255,1);
    font-weight: bold;
}

/* MainVisual
----------------------------------------------------------- */
#mainvisual {
    background:url(../images/bg.jpg) no-repeat top center;
    background-size: cover;
    background-attachment: fixed;
}

#mainvisual #screen {
    padding:200px 0 120px 0;
    background:rgba(29,32,136,0.2);
}

#mainvisual #mainvisual_content {
    width:980px;
    margin:0 auto;
    color:rgba(255,255,255,1);
    font-family: "Sawarabi Mincho";
    text-align:center;
    text-shadow:0 1px 3px rgba(10,10,10,0.8);
}

#mainvisual h1 {
    margin-bottom:50px;
    font-size:60px;

}

#mainvisual h2 {
    margin-bottom:50px;
    font-size:40px;

}

#mainvisual p {
    margin-bottom:1.65em;
    line-height:1.7em;
    font-size:18px;
}

/* Main
----------------------------------------------------------- */
#business,
#photo {
    margin-bottom:200px;
    padding:100px 50px 60px 50px;
    background:rgba(255,255,255,0.9);
}

#company,#recruit {
    margin-bottom:200px;
    padding:100px 50px 50px 50px;
    background:rgba(27,20,100,0.8);
}

#recruit {
    margin-bottom:0;
}

#form {
    padding:100px 50px 50px 50px;
    background:rgba(27,20,100,0.2);
}

#business article,
#photo article,
#company article,
#recruit article,
#form article {
    width:980px;
    margin:0 auto;
}

#business article h1,
#photo article h1,
#company article h1,
#recruit h1,
#form h1 {
    margin-bottom:50px;
    color:rgba(199,0,11,1);
    font-size:38px;
    font-weight: bold;
    text-align: center;
}

#recruit h1,
#form h1 {
    text-shadow:0 1px 3px rgba(27,20,100,0.6);
}

#company article h1,
#recruit article h1,
#form article h1 {
    color:rgba(255,255,255,1);
}

#business article ul {
    position: relative;
    overflow:hidden;
    height:150px;
    margin-bottom:15px;
}

#business article .biz01 {
    background:rgba(217,78,143,1);
}

#business article .biz02 {
    background:rgba(27,154,211,1);
}

#business article .biz03 {
    background:rgba(160,191,83,1);
}

#business article .biz04 {
    background:rgba(237,168,63,1);
}

#business article ul li {
    float:left;
}

#business article ul li:nth-child(1) {
    position: absolute;
    top:20px;
    left:25px;
    border-radius:60px;
    border:4px solid rgba(255,255,255,1);
    width:110px;
    height:110px;
    line-height:110px;
    color:rgba(255,255,255,1);
    font-size:20px;
    font-weight:bold;
    text-align: center;
}

#business article ul li:nth-child(2) {
    position: absolute;
    top:30px;
    left:170px;
    width:520px;
    word-break: break-all;
    color:rgba(255,255,255,1);
    line-height:1.7em;
}

#business article ul li:nth-child(3) {
    position: absolute;
    top:0;
    right:0;
}

#business article ul li:nth-child(3) img {
    height:150px;
}


#photo .photo_content {
    margin-bottom:20px;
    text-align: center;
}

#photo .photo_content dl {
    display:inline-block;
}

#photo .photo_content dl dt {
    margin-bottom:5px;
}

#photo .photo_content dl dt img {
    width:310px;
    height:auto;
}

#photo .photo_content dl dd {
    font-size:18px;
}

#photo .photo_content dl:nth-child(2) {
    margin:0 15px;
}

#company article {
    margin-bottom:50px;
    padding-bottom:50px;
    border-bottom:1px solid rgba(255,255,255,0.3);
}

#company article:last-child {
    border:0;
    margin-bottom:0;
}

#company .col,
#recruit .col {
    overflow:hidden;
    color:rgba(255,255,255,1);
}

#company .col table th,
#recruit .col table th {
    width:130px;
    padding:5px 0;
    font-weight: bold;
    vertical-align: top;
}

#company .col table td,
#recruit .col table td {
    padding:5px;
    line-height:1.65em;
}

#company .col table td a {
    color:rgba(255,255,255,1);
}

#company .left_col,
#recruit .left_col {
    float:left;
    width:480px;
}

#company .right_col,
#recruit .right_col {
    float:right;
    width:480px;
}

#company .col .place dt {
    margin-bottom:15px;
    padding:1px 0 0 10px;
    border-left:10px solid rgba(255,255,255,0.5);
    font-size:20px;
    line-height:1;
}

#company .col .place dd {
    line-height: 1.65em;
}

#company .col .place dd ul li {
    margin-bottom: 5px;
}

#company .col .place dd ul li strong {
    display: block;
    font-weight: bold;
}

#company .col .place dd .map {
    margin-top:15px;
}

#recruit h2 {
    margin-bottom:15px;
    color:rgba(255,255,255,1);
    font-size:22px;
    text-align: center;
}

#recruit .intro {
    margin-bottom:50px;
    color:rgba(255,255,255,1);
    line-height: 1.85em;
}

#recruit #entry {
    margin-left:15px;
    padding:25px;
    border:1px solid rgba(255,255,255,0.5);
}

#recruit #entry p {
    margin-bottom:25px;
}

#recruit #entry dl {
    margin-bottom:10px;
    padding:20px 0;
    background:rgba(29,32,136,0.5);
    border:1px solid rgba(255,255,255,0.8);
    border-radius:4px;
    text-align:center;
}

#recruit #entry dl:last-child:hover {
    background:rgba(255,255,255,0.2);
}

#recruit #entry dl:last-child {
    margin:0;
}

#recruit #entry dl dt {

}

#recruit #entry dl dd {
    font-size:22px;
    font-weight: bold;
}

#recruit #entry dl dd span {
    display: block;
    font-size:14px;
    font-weight: normal;
}

#recruit #entry dl dd:focus {

}

#recruit #entry dl:last-child a {
    color:rgba(255,255,255,1);
}

/* Form
------------------------------------------*/
#form {

}

#form article {
    margin:0 auto;
    width:680px;
}

#form h1 {
    margin-bottom:1em;
    font-size:36px;
}

#form section {
    margin-bottom: 2em;
    padding:2em;
    background:rgba(255,255,255,1); 
    border-radius:4px;
    box-shadow:0 1px 4px rgba(0,0,0,0.7);
}

#form section h2 {
    margin-bottom:1em;
    font-size:24px;
}

#form section dl {
    margin-bottom: 1em;    
}

#form section dl dt {
    margin-bottom: 0.75em;
    color:rgba(100,100,100,1);  
}

#form section dl dd span {
    display: block;
    margin:0.5em 0 1em 0;
    color:rgba(238,3,3,1);
}

#form section dl dd input {
       padding:0.5em;
       box-sizing: border-box;
       border:0;
       border-radius:4px;
       border:1px solid rgba(180,180,180,1);
}

#form section .thanks {
    margin-bottom:1em;
    line-height:1.65em;
}

#form section #support {
    margin-bottom:1em;
    padding:1.5em;
    border:1px dashed rgba(180,180,180,1);
    font-size:22px;
}

#form section #support p {
    margin-bottom:0.5em;
}

#form section #support p span {
    color:rgba(120,120,120,1);
    font-size:14px;
}

#form section #support p:last-child {
    margin-bottom:0;
}

.errcss {
    background:rgba(238,3,3,0.1);
}


#form section textarea {
       padding:0.25em;
       box-sizing: border-box;
       border:0;
       border-radius:4px;
       border:1px solid rgba(180,180,180,1);
       width:100%;
       height:10em;
}

#form .w40 {
    width:40%;
}

#form .w100 {
    width:100%;
}

#form #btn_submit {
  	font-size:18px;
	border-radius:4px;
    border:0;
	padding:12px 40px;
	text-decoration:none;
	background:-moz-linear-gradient( center top, #fe1a00 5%, #ce0100 100% );
	background:-ms-linear-gradient( top, #fe1a00 5%, #ce0100 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fe1a00', endColorstr='#ce0100');
	background:-webkit-gradient( linear, left top, left bottom, color-stop(5%, #fe1a00), color-stop(100%, #ce0100) );
	background-color:#fe1a00;
	color:#ffffff;
	display:inline-block;
}

#form #btn_submit:disabled {
  	font-size:18px;
	border-radius:4px;
	border:none;
	padding:12px 40px;
	text-decoration:none;
	background:rgba(230,230,230,1);
	color:#ffffff;
	display:inline-block;
	text-shadow:none;
 	box-shadow:none;
}

#form #btn_submit:disabled:hover {
    background:rgba(230,230,230,1);
}

#form #btn_submit:hover {
	background:-moz-linear-gradient( center top, #ce0100 5%, #fe1a00 100% );
	background:-ms-linear-gradient( top, #ce0100 5%, #fe1a00 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ce0100', endColorstr='#fe1a00');
	background:-webkit-gradient( linear, left top, left bottom, color-stop(5%, #ce0100), color-stop(100%, #fe1a00) );
	background-color:#ce0100;
}

#form #confirm {
    text-align:center;
}

#form #confirm p:first-child {
    line-height:1.4em;
}

#form #confirm p {
    margin-bottom:1em;
}

#form #confirm p a {
    text-decoration:underline;
}

#form #confirm p:last-child {
    margin-bottom: 0;
}

#form #thanks p {
    margin-bottom:25px;
    line-height:1.65em;
}

#form #thanks dl {
    padding:20px 20px 15px 20px;
    border:1px solid rgba(200,200,200,1);
    border-radius:6px;
    text-align: center;
}

#form #thanks dl dt {
    margin-bottom:5px;
    color:rgba(10,10,10,1);
}

#form #thanks dl dd {
    font-size:22px;
}

#form #thanks dl dd span {
    color:rgba(100,100,100,1);
    font-size:14px;
}

/* Footer
----------------------------------------------------------- */
#g_footer {
    padding:50px 0;
    background:rgba(10,10,10,0.9);
    text-align: center;
}

#g_footer #copy {
    clear: both;
    margin-bottom:10px;
    color:rgba(155,155,155,1);
    font-family: Arial, Helvetica, sans-serif;
}

#g_footer #copy_texts {
    color:rgba(100,100,100,1);
    font-size:12px;
}


#g_footer #logo_jp img {
    width:170px;
    height:auto;
}

#pagetop {
    position: fixed;
    bottom:10px;
    right:15px;
}