/* CSS Document */

/* -----------------------------------------
 *
 * Table of Contents:
 *
 * 0.0 - tags
 * 1.0 - Repeatable Patterns
 * 2.0 - Basic Layout
 * 3.0 - Page setting
 ----------------------------------------- */

/* -----------------------------------------

	0.0 - tags

-----------------------------------------*/
body {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	background: #FFF;
	color: #333;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	line-height: 1.6;
	font-size: 3.2vw;
}
/* -----------------------------------------

	1.0 - common

-----------------------------------------*/
.w-base {
	width: 1024px;
	margin: auto
}
li {
	list-style-type: none;
}
img {
	vertical-align: bottom;
}
a {
	text-decoration: none;
	color: #333;
}
a:hover img {
	opacity: 0.5;
}
a img {
	transition: opacity 0.3s ease-out;
}
.cf:before, .cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
 *zoom: 1;
}
h1, h2, h3, h4, h5, th {
	text-align: left;
	font-weight: normal;
	font-size: 100%;
}
address {
	font-style: normal;
}
.w-base {
	width: auto;
	margin: auto;
}
.c-01 {
	color: #AC0B2A;
}
/* -----------------------------------------

	2.0 - Basic Layout

-----------------------------------------*/
/* -----------------*/
img {
	width: 100%;
}
.sp-only {
	display: block
}
.sp-only-inline {
	display: inline-block
}
.pc-only {
	display: none
}
.pc-only-inline {
	display: none
}
#wrapper {
	padding-top: 50px;
}
#toggle-nav {
	background-position: center center;
	background-image: url(../img/common/btn_toggle_nav.png);
	background-repeat: no-repeat;
	background-size: 44px 50px;
	float: right;
	width: 44px;
	height: 50px;
}
#gotop {
	position: fixed;
	right: 2%;
	bottom: 2%;
	width: 40px;
	height: 40px;
	z-index: 3000;
}
#header {
	border-bottom: 1px solid #999;
	margin-bottom: 0;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9000;
	background: #FFF;
}
#header #header-in {
	height: 50px;
	position: relative;
}
#header #header-in .logo {
	float: left;
	width: 162px;
}
#header #header-in #gnav {
	display: none;
	position: absolute;
	top: 50px;
	left: 0;
	width: 100%;
	border-top: 1px solid #999;
}
#header #header-in #gnav li {
	border-bottom: 1px solid #999;
	background: rgba(255,255,255,1.0);
}
#header #header-in #gnav li a {
	display: block;
	padding: 15px 10px;
}
#header #header-in #gnav li a span {
	display: block;
	background-image: url(../img/common/arrow_nav.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}

#header #header-in #topnav {
	display: none;
	position: absolute;
	top: 50px;
	left: 0;
	width: 100%;
	border-top: 1px solid #999;
}
#header #header-in #topnav li {
	border-bottom: 1px solid #999;
	background: rgba(255,255,255,1.0);
}
#header #header-in #topnav li a {
	display: block;
	padding: 15px 10px;
}
#header #header-in #topnav li a span {
	display: block;
	background-image: url(../img/common/arrow_nav.png);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}
#main-index {
	margin: 6% 10%;
}
#main-index #main-index-in {
	overflow: hidden;
}
#main-index #main-index-in .img {
	padding: 0 2.2% 2.2% 0;
	margin-bottom: 9%;
	background-image: url(../img/index/bg_main.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
}
#main-index #main-index-in .txt {
}
#news-index {
	margin-bottom: 0px;
}
#news-index #news-index-in {
	overflow: hidden;
}
#news-index #news-index-in .tit {
	border-bottom: 1px solid #999;
	padding: 2.5% 5%;
	font-weight: bold;
}
#news-index #news-index-in .list {
}
#news-index #news-index-in .list .single {
	padding: 2.5% 5%;
	border-bottom: 1px solid #E3E3E3;
	overflow: hidden;
	display: block;
}
#news-index #news-index-in .list .single:last-child {
	border-bottom: none;
}
#news-index #news-index-in .list .single .date {
	float: left;
	width: 25%;
}
#news-index #news-index-in .list .single .txt {
	float: left;
	width: 75%;
}
#address {
	border-top: 1px solid #E3E3E3;
	background: #FBF8F4;
}
#address #address-in {
	padding: 8% 5%;
}
#address #address-in .tit {
	font-size: 110%;
	font-weight: bold;
	margin-bottom: 2%;
}
#address #address-in th {
	width: 20%;
}
#footer {
	background: #AE0B2A;
	color: #FFF;
	text-align: center;
	font-size: 85%;
	padding: 3% 2% 10%;
}
#footer #footer-in {
}
#contents-2nd-in {
	margin: 5% 3%;
}
#page-title {
	margin-bottom: 5%;
}
.sec-01 {
	margin-bottom: 9%;
}
.tit-03 {
	border-bottom: 1px solid #666;
	font-size: 110%;
	color: #AD0B2A;
	margin-bottom: 0.5em;
}
.txt-01 {
	font-size: 120%;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.txt-02 {
	margin-bottom: 0.5em;
}
.txt-03 {
	font-size: 110%;
	color: #AD0B2A;
}
.cell-01 {
	margin: 5% 0;
	background: #FBF8F4;
	padding: 2.5%;
}
.cell-02 {
	border: 1px solid #AD0B2A;
	padding: 2.5%;
}
.cell-03 {
	overflow: hidden;
}
.cell-03 .cell-03-txt {
	margin: 0 0 5%;
}
.cell-03 .cell-03-img {
	margin: 0 12%;
}
.btn-01 {
	text-align: center;
	margin: 3% 0;
}
.btn-01 a {
	display: inline-block;
	background: #AD0B2A;
	border: 1px solid #AD0B2A;
	padding: 2%;
	font-size: 110%;
	font-weight: bold;
	border-radius: 6px;
	color: #FFF;
}
.btn-01 a span {
	display: block;
	background-image: url(../img/common/arrow_btn_01.jpg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
	padding: 0 50px;
}
.btn-02 {
	text-align: center;
	margin: 3% 0;
}
.btn-02 a {
	display: inline-block;
	border: 1px solid #676767;
	padding: 2%;
	font-size: 110%;
	color: #666666;
	font-weight: bold;
	border-radius: 6px;
}
.btn-02 a span {
	display: block;
	background-image: url(../img/common/arrow_btn_02.jpg);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
	padding: 0 50px;
}
.btn-03 {
	text-align: center;
	margin: 3% 0;
}
.btn-03 a {
	display: inline-block;
	border: 1px solid #676767;
	padding: 2%;
	font-size: 110%;
	font-weight: bold;
	color: #666666;
	border-radius: 6px;
}
.btn-03 a span {
	display: block;
	background-image: url(../img/common/arrow_btn_03.jpg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
	padding: 0 50px;
}
.single-recruit {
	margin: 8% 0;
}
.single-recruit .single-recruit-head {
	margin: 3%;
}
.single-recruit .single-recruit-head .main {
	font-size: 110%;
	font-weight: bold;
}
.single-recruit .single-recruit-complete {
	margin: 10%;
	text-align: center;
}
.single-recruit .single-recruit-complete .main {
	font-size: 140%;
	font-weight: bold;
	margin-bottom: 8%;
	color: #666;
}
.tbl-01 {
	margin: 3% 0 6%;
}
.tbl-01 table {
	width: 100%;
	font-size: 85%;
}
.tbl-01 table th, .tbl-01 table td {
	border: 1px solid #666;
	padding: 1.5%;
}
.tbl-01 table th {
	background: #FBF8F4;
}
.tbl-01 table th .att {
	float: right;
}
.tbl-01 input {
	padding: 1%;
}
.tbl-01 input.w-a {
	width: 96%;
}
.tit-03b {
	padding: 5px 10px;
	margin-bottom: 3%;
	border-bottom: 1px solid #333;
	border-left: 5px solid #AE0B2A;
}
.tit-03b .txt {
	font-size: 110%;
	color: #AD0B2A;
	display: inline-block;
	font-weight: bold;
}
.tit-03b .ico {
	font-size: 80%;
	color: #FFF;
	background: #AD0B2A;
	margin: 0 5px;
	padding: 1px 8px;
}
.tit-03b .date {
	font-size: 80%;
	display: block;
	color: #666;
}
.single-news-body {
	padding: 3%;
}
.single-news-body p {
	margin-bottom: 1em;
}

@media screen and (min-width: 640px) {
body {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	background: #FFF;
	color: #333;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	line-height: 1.6;
	font-size: 100%;
}
.w-base {
	width: 1024px;
	margin: auto
}
img {
	width: auto;
}
.sp-only {
	display: none
}
.sp-only-inline {
	display: none
}
.pc-only {
	display: block
}
.pc-only-inline {
	display: inline-block
}
#wrapper {
	padding-top: 0px;
}
#toggle-nav {
	display: none;
}
#gotop {
	position: fixed;
	right: 2%;
	bottom: 2%;
}
#header {
	border-bottom: 1px solid #999;
	margin-bottom: 40px;
	position: inherit;
}
#header #header-in {
	height: auto;
}
#header #header-in .logo {
	float: left;
	width: 34%;
}
#header #header-in #gnav {
	float: right;
	width: 55%;
	display: block;
	top: 0;
	left: 0;
	border-top: none;
	position: relative;
}
	

#header #header-in #gnav li {
	border-bottom: none;
	background: none;
}
#header #header-in #gnav li a {
	display: block;
	padding: 0px;
}
#header #header-in #gnav li a span {
	display: block;
	background-image: none;
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}
#header #header-in #gnav .list {
	margin-top: 33px;
	border-right: 1px solid #CCC;
}
#header #header-in #gnav .list .single {
	float: left;
}
#header #header-in #gnav .list #nav-01 {
	width: 126px;
}
#header #header-in #gnav .list #nav-02 {
	width: 292px;
}
#header #header-in #gnav .list #nav-03 {
	width: 138px;
}
#header #header-in #gnav .list .single a {
	border-left: 1px solid #CCC;
	display: block;
	height: 47px;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: center center;
}
#header #header-in #gnav .list #nav-01 a {
	background-image: url(../img/common/nav_01.gif)
}
#header #header-in #gnav .list #nav-02 a {
	background-image: url(../img/common/nav_02.gif)
}
#header #header-in #gnav .list #nav-03 a {
	background-image: url(../img/common/nav_03.gif)
}
#header #header-in #gnav .list #nav-01 a.on, #header #header-in #gnav .list #nav-01 a:hover {
	background-image: url(../img/common/nav_01_on.gif)
}
#header #header-in #gnav .list #nav-02 a.on, #header #header-in #gnav .list #nav-02 a:hover {
	background-image: url(../img/common/nav_02_on.gif)
}
#header #header-in #gnav .list #nav-03 a.on, #header #header-in #gnav .list #nav-03 a:hover {
	background-image: url(../img/common/nav_03_on.gif)
}
	
#header #header-in #topnav {
	float: right;
	width: 30%;
	display: block;
	top: 0;
	left: 0;
	border-top: none;
	position: relative;
}
	

#header #header-in #topnav li {
	border-bottom: none;
	background: none;
}
#header #header-in #topnav li a {
	display: block;
	padding: 0px;
}
#header #header-in #topnav li a span {
	display: block;
	background-image: none;
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
}
#header #header-in #topnav .list {
	margin-top: 33px;
	border-right: 1px solid #CCC;
}
#header #header-in #topnav .list .single {
	float: left;
}
#header #header-in #topnav .list #nav-01 {
	width: 126px;
}
#header #header-in #topnav .list #nav-02 {
	width: 292px;
}
#header #header-in #topnav .list #nav-03 {
	width: 138px;
}
#header #header-in #topnav .list .single a {
	border-left: 1px solid #CCC;
	display: block;
	height: 47px;
	text-indent: -9999px;
	background-repeat: no-repeat;
	background-position: center center;
}
#header #header-in #topnav .list #nav-01 a {
	background-image: url(../img/common/nav_01.gif)
}
#header #header-in #topnav .list #nav-02 a {
	background-image: url(../img/common/nav_02.gif)
}
#header #header-in #topnav .list #nav-03 a {
	background-image: url(../img/common/nav_03.gif)
}
#header #header-in #topnav .list #nav-01 a.on, #header #header-in #topnav .list #nav-01 a:hover {
	background-image: url(../img/common/nav_01_on.gif)
}
#header #header-in #topnav .list #nav-02 a.on, #header #header-in #topnav .list #nav-02 a:hover {
	background-image: url(../img/common/nav_02_on.gif)
}
#header #header-in #topnav .list #nav-03 a.on, #header #header-in #topnav .list #nav-03 a:hover {
	background-image: url(../img/common/nav_03_on.gif)
}
	
	
#main-index {
	margin: 0 0 70px;
}
#main-index #main-index-in {
	overflow: hidden;
}
#main-index #main-index-in .img {
	margin: 0;
	float: left;
	width: 47%;
	padding: 0 0 1% 0;
	background-image: url(../img/index/bg_main.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
}
#main-index #main-index-in .txt {
	float: right;
	width: 50%;
}
#news-index {
	margin-bottom: 0px;
}
#news-index #news-index-in {
	overflow: hidden;
}
#news-index #news-index-in .tit {
	border-bottom: 1px solid #999;
	padding: 15px 10%;
	font-weight: bold;
}
#news-index #news-index-in .list {
}
#news-index #news-index-in .list .single {
	padding: 15px 10%;
	border-bottom: 1px solid #E3E3E3;
	overflow: hidden;
	display: block;
}
#news-index #news-index-in .list .single:last-child {
	border-bottom: none;
}
#news-index #news-index-in .list .single .date {
	float: left;
	width: 20%;
}
#news-index #news-index-in .list .single .txt {
	float: left;
	width: 80%;
}
#address {
	border-top: 1px solid #E3E3E3;
	background: #FBF8F4;
}
#address #address-in {
	padding: 40px 10%;
}
#address #address-in .tit {
	font-size: 110%;
	font-weight: bold;
	margin-bottom: 20px;
}
#footer {
	background: #AE0B2A;
	color: #FFF;
	text-align: center;
	font-size: 85%;
	padding: 10px 0 100px;
}
#footer #footer-in {
}
#contents-2nd-in {
	margin: auto;
	width: 900px;
}
#page-title {
	margin-bottom: 25px;
}
.sec-01 {
	margin: 24px 24px 65px;
}
.sec-02 {
	margin: 24px 0 65px;
}
.tit-03 {
	border-bottom: 1px solid #666;
	font-size: 110%;
	color: #AD0B2A;
	margin-bottom: 0.5em;
}
.txt-01 {
	font-size: 120%;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.txt-02 {
	margin-bottom: 0.5em;
}
.txt-03 {
	font-size: 110%;
	color: #AD0B2A;
}
.cell-01 {
	margin: 20px 0;
	background: #FBF8F4;
	padding: 15px;
}
.cell-02 {
	border: 1px solid #AD0B2A;
	padding: 15px;
}
.cell-03 {
	overflow: hidden;
	margin: 30px 10px 10px;
}
.cell-03 .cell-03-txt {
	margin: 0;
	float: left;
	width: 45%;
}
.cell-03 .cell-03-img {
	margin: 0;
	float: right;
	width: 46%;
}
.btn-01 {
	text-align: center;
	margin: 35px 0;
}
.btn-01 a {
	display: inline-block;
	background: #AD0B2A;
	border: 1px solid #AD0B2A;
	padding: 15px;
	font-size: 110%;
	font-weight: bold;
	border-radius: 6px;
	color: #FFF;
}
.btn-01 a span {
	display: block;
	background-image: url(../img/common/arrow_btn_01.jpg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
	padding: 0 90px;
}
.btn-02 {
	text-align: center;
	margin: 35px 0;
}
.btn-02 a {
	display: inline-block;
	border: 1px solid #676767;
	padding: 15px;
	font-size: 110%;
	font-weight: bold;
	border-radius: 6px;
}
.btn-02 a span {
	display: block;
	background-image: url(../img/common/arrow_btn_02.jpg);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: contain;
	padding: 0 90px;
}
.btn-03 {
	text-align: center;
	margin: 35px 0;
}
.btn-03 a {
	display: inline-block;
	border: 1px solid #676767;
	padding: 15px;
	font-size: 110%;
	font-weight: bold;
	border-radius: 6px;
}
.btn-03 a span {
	display: block;
	background-image: url(../img/common/arrow_btn_03.jpg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
	padding: 0 90px;
}
.btn-line {
	text-align: center;
}
.btn-line p {
	margin: 0 15px;
	display: inline-block;
}
.btn-line p span {
	min-width: 4em;
}
.single-recruit {
	margin: 60px 0;
}
.single-recruit .single-recruit-head {
	margin: 25px;
}
.single-recruit .single-recruit-head .main {
	font-size: 110%;
	font-weight: bold;
}
.single-recruit .single-recruit-complete {
	margin: 10%;
	text-align: center;
}
.single-recruit .single-recruit-complete .main {
	font-size: 140%;
	font-weight: bold;
	margin-bottom: 8%;
	color: #666;
}
.tbl-01 {
	margin: 30px 0 30px;
}
.tbl-01 table {
	width: 100%;
	font-size: 90%;
}
.tbl-01 table th, .tbl-01 table td {
	border: 1px solid #666;
	padding: 15px;
}
.tbl-01 table th {
	background: #FBF8F4;
}
.tbl-01 table th {
	background: #FBF8F4;
}
.tbl-01 input {
	padding: 1%;
}
.tbl-01 input.w-a {
	width: 60%;
}
.tbl-02 {
	margin: 0;
}
.tbl-02 table {
	width: auto;
	font-size: 90%;
}
.tbl-02 table th, .tbl-02 table td {
	padding: 5px 0;
	font-size: 110%;
}
.tit-03b {
	padding: 5px 10px;
	margin-bottom: 15px;
	border-bottom: 1px solid #333;
	border-left: 5px solid #AE0B2A;
}
.tit-03b .txt {
	font-size: 110%;
	color: #AD0B2A;
	display: inline-block;
	font-weight: bold;
}
.tit-03b .ico {
	font-size: 80%;
	color: #FFF;
	background: #AD0B2A;
	margin: 0 10px;
	padding: 1px 8px;
}
.tit-03b .date {
	font-size: 80%;
	display: block;
	color: #666;
}
}















































/* -----------------------------------------

	
-----------------------------------------*/



















/* XXX */
