@charset "UTF-8";
/* -------------------------------------------------
    R E S E T
--------------------------------------------------- */
html,body,div,p,a,span,img,ol,ul,li,form,h1,h2,h3,h4,h5,h6,table,tr,th,td,address,fieldset,legend,dl,dt,dd{margin:0;padding:0;border:0; font-size:100%;font-weight: 500;text-decoration:none;font-style:normal;vertical-align:top;}ol,ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
html,body {
	margin: 0 auto;
	position: relative;
	min-width: 960px;
	width: 100%;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.6;
	color: #05293E;
	background: #fff;
	letter-spacing: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	vertical-align: baseline;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;}
a {	display: block;
	color: #05293E;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;}
p {
	text-align: justify;
	text-justify: inter-ideograph;}
.pc { display: block;}
.sp { display: none;}
*, *:before, *:after { box-sizing: border-box;}
img[src$=".svg"] { width: 100%;}
@media screen and (min-width: 641px) {
a { -webkit-transition: 0.3s all; -moz-transition: 0.3s all; -o-transition: 0.3s all; transition: 0.3s all; backface-visibility: hidden;}}
@media screen and (max-width: 640px) {
html,body { min-width: 640px; width: 100%; font-size: 20px;}
* { max-height: 999999px;}
img { max-width: 640px;}
.pc { display: none;}
.sp { display: block;}}

/* -------------------------------------------------
    A L L
--------------------------------------------------- */
.left { float: left;}
.right { float: right;}
.h_center { display: table-cell; vertical-align: middle;}
.w960 { margin: 0 auto; width: 960px;}
.w720 { margin: 0 auto; width: 720px;}
.w640 {  margin: 0 auto; width: 640px;}
.w320 { width: 320px;}
.w360 { width: 360px;}
.w560 { width: 560px;}
.w460 { width: 460px;}
.pdb80 { padding-bottom: 80px;}
a.under {
	margin: 0 auto;
	height: 60px;
	width: 400px;
	color: #7E7C24;
	text-align: center;
	font-size: 114%;
	line-height: 60px;
	border-bottom: 1px solid #7E7C24;
	background: #fff;}
.daiya {
	margin-top: 80px;
	position: relative;
	text-align: center;
	height: 30px;
	border-bottom: 1px solid #05293e;}
.daiya span {
	position: absolute;
	top: 15px; left: 50%;
	margin-left: -100px;
	display: inline-block;
	width: 200px; height: 30px;
	line-height: 30px;
	background: #05293e;
	color: #fff;}
.daiya span::after, .daiya span::before {
	position: absolute;
	left: -10px;
	top: 0;
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 10px 15px 0;
	border-color: transparent #05293e transparent transparent;}
.daiya span::before {
	left: auto;
	right: -10px;
	border-width: 15px 0 15px 10px;
	border-color: transparent transparent transparent #05293e;}
h2.title {
	padding-top: 80px;
	line-height: 1.2;
	text-align: center;}
h2.title span {
	display: block;
	font-family: 'EB Garamond', serif;
	font-size: 257%;}
.contop h2 {
	padding: 60px 0 20px;
	font-size: 200%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
.contop h2.line::after {
	content: "";
	margin: 10px auto 0;
	display: block;
	width: 50px;
	border-bottom: 2px solid #7e7c24;}
@media screen and (min-width: 641px) {
a.under:hover { border-bottom: 60px solid #7E7C24; color: #fff;}}
@media screen and (max-width: 640px) {
.w960 { width: 640px;}
.w720 { width: 640px;}
.contop { width: 560px;}
.contop h2 { font-size: 140%;}
.left, .right { float: none;}
.w320, .w640,.w460,.w360,.w560 { width: 560px; margin: 0 auto;}}

/* -------------------------------------------------
    H E A D E R
--------------------------------------------------- */
#hd_main {
	display: table;
	border: 20px solid #fff;
	width: 100%;
	min-height: 700px;
	height: 100vh;
	background: url(images/main-img00.jpg) no-repeat center center;
	background-size: cover;}
#hd_main h1 {
	padding: 40px 0;
	color: #fff;
	font-size: 128%;
	font-weight: 900;
	letter-spacing: 0.2em;
	text-align: center;
	background: url(images/logo2.png)  no-repeat center top;
	background-size: 32px auto;}
#hd_main h2 {
	padding: 0 0 60px 50px;
	color: #fff;
	font-size: 385%;
	text-align: center;}
#nav {
	min-width: 960px;
	padding: 0 0 0 20px;
	height: 41px;
	overflow: hidden;
	border-bottom: 1px solid #fff;}
#nav h1 {
	-webkit-transition: 0.3s all; -moz-transition: 0.3s all; -o-transition: 0.3s all; transition: 0.3s all;
	float: left;
	padding-left: 50px;
	height: 40px;
	color: #711519;
	font-size: 134%;
	font-weight: 900;
	letter-spacing: 0.2em;
	line-height: 40px;
	background: url(images/logo.png)  no-repeat left top;
	background-size: 40px auto;}
#nav h1 a {
	font-weight: 900;
	color: #711519;}
#nav ul { float: right; height: 40px;}
#nav ul li { padding: 0 10px; display: inline;}
#nav ul li.sp { display: none;}
#nav ul li a {
	display: inline;
	line-height: 40px;
	border-bottom: 1px solid #fff;}
#header.nakapage { padding-top:20px;}
.nakapage #nav { height: 60px;}
#hd_obi {
	height: 240px;
	background: url(images/nakaobi.jpg) no-repeat center center;
	background-size: cover;
	line-height: 58px;}
#hd_obi .white {
	padding: 0 20px;
	height: 60px;
	border-bottom: 1px solid #fff;
	background: rgba(255,255,255,0.6);
	overflow: hidden;}
#hd_obi .title h2 { float: left;}
#hd_obi .title h2 span {
	padding-right: 10px;
	font-size: 257%;
	font-family: 'EB Garamond', serif;
	vertical-align: baseline;}
#hd_obi ol {
	float: right;
	font-size: 90%;}
#hd_obi ol li {
	position: relative;
	padding-left: 10px;
	display: inline;}
#hd_obi ol li:nth-child(n+2):after {
	position: absolute;
	left: 0;
	content: ">";
	color: #666666;}
#hd_obi ol li a {
	display: inline;
	color: #666666;}
@media screen and (min-width: 641px) {
#nav.fixed {
	padding: 0 20px;
	position: fixed;
	top: 0; left: 0;
	width: 100%;
	height: 41px;
	background: #fff;
	border-bottom: 1px solid #f2f2f2;
	z-index: 9999;}
#nav.fixed h1 {
	padding-left: 30px;
	background: url(images/logo.png)  no-repeat left center;
	background-size: 20px auto;}
#nav ul li a:hover { border-bottom: 1px solid #05293E;}
body.mgt { margin-top: 40px;}}
@media screen and (max-width: 640px) {
#nav ul li.sp { display: inline;}
#hd_main { width: 640px; min-height: auto;}
#hd_main h1 {
	padding-top: 60px;
	background-size: 52px auto;}
#hd_main h2 { font-size: 240%;}
#nav {
	min-width: 640px;
	height: 40px; width: 640px;
	position: relative; overflow: auto;}
#nav ul {
	float: none;
	display: none;
	position: fixed;
	top: 0; left:0;
	width: 640px;
	height: 100vh;
	z-index: 1000;
	background: #fff;
	overflow: scroll;}
#nav ul li {
	background: #fff;
	padding: 0;
	display: block;
	float: left;
	width: 50%;}
#nav ul li:last-child {
	width: 640px;
	display: block;
	line-height: 80px;
	height: 80px;
	border-bottom: 1px solid #f2f2f2;}
#nav ul li:last-child p { text-align: center;}
#nav ul li a {
	display: block;
	text-align: center;
	line-height: 80px;
	height: 80px;
	border-bottom: 1px solid #f2f2f2;}
#nav.fixed .button-toggle { top: 10px;}
#nav .button-toggle {
	display: block;
	position: absolute;
	width: 40px; height: 40px;
	top: 0; right: 20px;
	z-index: 999;}
#nav .button-toggle span {
	display: block;
	background: #05293E;
	width: 24px; height: 4px;
	position: absolute;
	right: 0;
	transition: all 0.4s;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;}
#nav .button-toggle span:first-child { top: 10px;}
#nav .button-toggle span:nth-child(2) { margin-top: -2px; top: 50%;}
#nav .button-toggle span:last-child { bottom: 10px;}
#nav .button-toggle.active span:first-child {
    -webkit-transform: translateY(8px) rotate(45deg);
    -moz-transform: translateY(8px) rotate(45deg);
    -ms-transform: translateY(8px) rotate(45deg);
    transform: translateY(8px) rotate(45deg);}
#nav .button-toggle.active span:nth-child(2) { opacity: 0;}
#nav .button-toggle.active span:last-child {
    -webkit-transform: translateY(-8px) rotate(-45deg);
    -moz-transform: translateY(-8px) rotate(-45deg);
    -ms-transform: translateY(-8px) rotate(-45deg);
    transform: translateY(-8px) rotate(-45deg);}
#hd_obi .title h2 span { font-size: 200%;}
#hd_obi ol li { line-height: 72px;}}

/* -------------------------------------------------
    I N D E X
--------------------------------------------------- */
/* --- brand --- */
#index .brand {
	padding: 120px 0 0;
	width: 100%;
	height: 580px;
	border: 20px solid #fff;
	background: url(images/back-index-01.jpg) no-repeat center center;
	background-size: cover;}
#index .brand h2 {
	font-size: 200%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-align: center;}
#index .brand p {
	margin: 30px auto;
	width: 740px;}
/* --- main --- */
#index .main {
	padding-top: 100px;
	overflow: hidden;}
#index .l_image {
	float: left;
	width: 440px;}
#index .menu {
	float: right;
	width: 440px;}
#index h2 a {
	position: relative;
	vertical-align: middle;
	padding-left: 15px;
	height: 50px;
	font-size: 170%;
	font-family: 'EB Garamond', serif;
	line-height: 46px;
	border-bottom: 1px solid #F2F2F2;
	background: url(images/square.png) no-repeat 0 20px;
	background-size: 8px auto;}
#index h2 a span {
	padding-left: 10px;
	font-size: 14px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	vertical-align: baseline;}
#index h2 a::before{
	position: absolute;
	content: "";
	vertical-align: middle;	
	top: 22px;
	right: 3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #05293E;
	border-right: 1px solid #05293E;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}
/* --- news --- */
#index .news ul { margin: 14px 0 35px;}
#index .news li a {
	color: #666;
	height: 24px;
	line-height:24px;
	overflow: hidden;}
#index .news .day {
	float: left;
	width: 80px;
	font-family: 'EB Garamond', serif;}
#index .news h3 { float: left;}
/* --- business --- */
#index .business ul, #index .works ul {
	margin: 20px 0 30px;
	overflow: hidden;}
#index .business ul li, #index .works ul li {
	float: left;
	height: 81px;
	width: 210px;
	border-bottom: 1px solid #f2f2f2;}
#index .business ul li:nth-child(2n), #index .works ul li:nth-child(2n) { margin-left: 20px;}
#index .business ul li a, #index .business ul li a {
	position: relative;
	overflow: hidden;
	color: #666;}
#index .business ul li a::before{
	position: absolute;
	content: "";
	top: 36px;
	right: 4px;
	box-sizing: border-box;
	width: 6px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #eee;}
#index .business .image { float: left;}
#index .business .image img {
	width: 80px; height: 80px;}
#index .business h3 {
	float: left;
	padding-left: 20px;
	line-height: 80px;}
#index .works ul li {
	height: 50px;
	border-bottom: none;}
#index .works ul li a {
	height: 50px;
	line-height: 50px;
	background: #eee;
	text-align: center;
	color: #05293E;}
/* --- tile --- */
.tile {
	margin: 120px 0 80px;
	width: 100%;
	height: 40px;
	background: url(images/back-tile.jpg) repeat center center;}
#index .recruit h2 {
	margin-bottom: 40px;
	text-align: center;
	line-height: 1.2;}
#index .recruit h2 span {
	display: block;
	font-size: 257%;
	font-family: 'EB Garamond', serif;}
#index .recruit a.image {
	margin: 50px 0 20px;
	padding: 170px 0 0 605px;
	height: 240px;
	width: 720px;
	font-size: 128%;
	font-family: 'EB Garamond', serif;
	background: url(images/index-interview.jpg) no-repeat center top;}
#index .recruit table {
  width: 640px; text-align: center; margin: 60px auto 0;}
@media screen and (min-width: 641px) {
#index h2 a:hover { color: #fff; border-bottom: 50px solid #05293E;}
#index .works a:hover { background: #ccc;}}
@media screen and (max-width: 640px) {
/* --- brand --- */
#index .brand { padding: 70px 0 80px; height: auto;}
#index .brand h2 { font-size: 160%;}
#index .brand p { width: 560px;}
/* --- main --- */
#index .main { padding-top: 40px;}
#index .l_image { display: none;}
#index .menu { margin: 0 auto; float: none; width: 560px;}
#index h2 a span { font-size: 20px;}
#index h2 a::before{ top: 18px; width: 10px; height: 10px;}
/* --- news --- */
#index .news ul { margin: 20px 0 80px;}
#index .news li a { margin-bottom: 20px; height: auto; line-height: 30px; overflow: auto;}
#index .news .day { float: none; width: 100%;}
#index .news h3 { float: left;}
/* --- business --- */
#index .business ul { margin: 30px 0 80px;}
#index .works ul { margin: 30px 0 40px;}
#index .business ul li { width: 280px;}
#index .works ul li { width: 560px; height: 80px; margin-bottom: 20px;}
#index .business ul li:nth-child(2n), #index .works ul li:nth-child(2n) { margin-left: 0;}
#index .business ul li a::before{
	right: 10px;
	width: 10px;
	height: 6px;
	border: 6px solid transparent;
	border-left: 6px solid #eee;}
#index .works ul li a { height: 80px; line-height: 80px;}
/* --- tile --- */
#index .recruit { margin: 0 auto; width: 560px;}
#index .recruit a.image {
	padding: 125px 0 0 450px;
	width: 560px;
  height: 200px;
	font-size: 110%;
	background-size: contain;}
#index .recruit table {
  width: 560px; text-align: center; margin: 60px auto 0;}
  #index .recruit table img{ width: 95%;}
}

/* -------------------------------------------------
    A W A R D S
--------------------------------------------------- */
#awards .aw_list ul {
	padding-top: 50px;
	border-bottom: 1px solid #f2f2f2;}
#awards .aw_list li { border-top: 1px solid #f2f2f2;}
#awards .aw_list ul a {
	overflow: hidden;
	padding: 24px 5px 0;
	position: relative;
	height: 100px;}
#awards .aw_list ul a::before {
	position: absolute;
	content: "";
	vertical-align: middle;	
	top: 48px;
	right: 13px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #05293E;
	border-right: 1px solid #05293E;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);}
#awards .aw_list h3 {
	padding-left: 16px;
	font-size: 128%;
	background: url(images/square.png) no-repeat left center;
	background-size: 8px auto;}
#awards .aw_list p {
	width: 900px;
	overflow: hidden;
	height: 24px;
	padding-left: 16px;
	color: #666;}
/* --- pagenation --- */
#awards .pagenation ol {
    width: 100%;
    padding-bottom: 80px;
	font-size: 0;
    margin: 60px auto 0;
    text-align: center;}
#awards .pagenation ol li.active {
    border: 1px solid #05293e;}
#awards .pagenation ol li {
	position: relative;
	font-size: 14px;
    display: inline-block;
    height: 40px;
	min-width: 40px;
    line-height: 38px;
	margin: 0 5px;
    border: 1px solid #f2f2f2;}
#awards .pagenation ol li a {
	padding: 0 14px;
	color: #05293e;
	width: 100%;}
/* --- main --- */
#awards .aw_main {
	padding-top: 50px;}
#awards .aw_main h2 {
	font-size: 128%;}
#awards .aw_main .day {
	padding: 4px 0 22px;
	color: #666;
    border-bottom: 1px solid #f2f2f2;}
#awards .contents {
	overflow: hidden;
	padding-top: 40px;}
#awards .contents h1 {
	padding: 20px 0 0;
	font-size: 160%;}
#awards .contents h2 {
	padding: 30px 0 0;
	font-size: 140%;}
#awards .contents h3 {
	padding: 30px 0 0;
	font-weight: bold;}
#awards .contents p {
	clear:both;
	padding: 10px 0 0;
	text-align: justify;
	text-justify: inter-ideograph;}
#awards .contents ul {
	padding: 20px 0 0 20px;
	list-style: disc;}
#awards .contents img {
	padding: 20px;
	max-width: 100%;}
#awards p.cent {
	overflow: auto;
    height: auto;
    padding-left: 0;
	width: 100%;
	margin: 40px 0;text-align: center; color: #05293E;}
#awards .aw_main .contents img {
	padding: 0;
	margin: 20px 0;}
@media screen and (min-width: 641px) {
#awards .aw_list a:hover { background: #f2f2f2;}}
@media screen and (max-width: 640px) {
#awards .aw_list ul a { padding: 32px 40px 0; height: 140px;}
#awards .aw_list ul a::before { top: 62px; right: 40px; width: 12px; height: 12px;}
#awards .aw_list h3 { overflow: hidden; height: 42px; width: 520px;}
#awards .aw_list p { width: 520px; height: 36px;}
/* --- pagenation --- */
#awards .pagenation ol { margin: 60px auto 0; width: 560px;}
#awards .pagenation ol li {
	font-size: 20px;
    height: 60px;
	min-width: 60px;
    line-height: 58px;}
/* --- main --- */
#awards .aw_main { margin: 0 auto; width: 560px;}
#awards p.cent { width: auto; height: auto;}}

/* -------------------------------------------------
    PERFORMANCE
--------------------------------------------------- */
#performance h2 { text-align: center;}
/* --- category --- */
#performance .category {
	margin-top: 60px;
	padding: 15px 0;
	height: 80px;
	background: #f2f2f2;}
#performance .category ul {
	margin: 0 auto;
	text-align: center;}
#performance .category ul li {
	margin: 0 5px;
	display: inline-block;
	width: 220px; height: 50px;}
#performance .category ul li a {
	display: inline-block;
	width: 220px; height: 50px;
	background: #fff url(images/newtab.png) no-repeat 184px 17px;
	border-radius: 25px;
	border: 2px solid #fff;
	line-height: 46px;
	font-size: 114%;}
/* --- list --- */
#performance .list ul {
	margin: 40px auto;
	width: 961px;
	overflow: hidden;
	text-align: center;
	border-top: 1px solid #f2f2f2;
	border-left: 1px solid #f2f2f2;}
#performance .list ul li {
	float: left;
	width: 320px;
	border-right: 1px solid #f2f2f2;
	border-bottom: 1px solid #f2f2f2;}
#performance .list .text {
	height: 60px;}
#performance .list .text p { text-align: center;}
#performance .list .image {
	position: relative;}
#performance .list .image h3 {
	position: absolute;
	bottom: 0; left: 0;
	height: 32px; width: 100%;
	line-height: 32px;
	z-index: 999;
	color: #fff;}
#performance .list .image h3.c1 { background: rgba(5,41,62,0.7);}
#performance .list .image h3.c2 { background: rgba(113,21,25,0.7);}
#performance .list .image h3.c3 { background: rgba(26,130,189,0.7);}
#performance .list .text { padding-top: 10px;}
#performance .list .text h4 {
	font-size: 114%;
	height: 26px;
	overflow: hidden;}
#performance .list .text p {
	font-size: 90%;
	color: #666;
	line-height:1;}
/* --- ft_link --- */
.ft_link ul {
	padding-top: 40px;
	text-align: center;}
.ft_link ul li {
	margin: 0 5px;
	display: inline-block;
	width: 300px; height: 50px;
	line-height: 50px;}
.ft_link ul li a {
	color: #fff;
	font-size: 114%;}
.ft_link ul li:nth-child(1) a { background: #7e7c24;}
.ft_link ul li:nth-child(2) a { background: #05293e;}
@media screen and (min-width: 641px) {
#performance .category ul li a:hover { border: 2px solid #ccc;}}
@media screen and (max-width: 640px) {
/* --- category --- */
#performance .category { height: auto;}
#performance .category ul li { width: auto;}
#performance .category ul li a { width: auto; font-size: 100%; padding: 0 20px;}
/* --- list --- */
#performance .list ul { width: 560px; border: 0;}
#performance .list ul li { width: 270px; border: 0;}
#performance .list ul li:nth-child(2n) { margin-left: 20px;}
#performance .list .text { height: 140px;}
#performance .list .text p { text-align: left;}
#performance .list .text { padding-top: 10px;}
#performance .list .text h4 {
	font-size: 100%;
	height: auto;
	max-height: 74px;
	text-align: left;}
#performance .list .text p { line-height: 2;}
/* --- ft_link --- */
.ft_link ul { padding-top: 40px; text-align: center;}
.ft_link ul li {
	margin: 0 auto 20px;
	display: block;
	width: 560px; height: 80px;
	line-height: 80px;}}

/* -------------------------------------------------
    PERFORMANCE MAIN
--------------------------------------------------- */
#performancemain {
	border-top: 1px solid #f2f2f2;}
#performancemain .main {
	padding: 60px 0 120px;
	overflow: hidden;}
#performancemain .main h2 {
	font-size: 171%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#performancemain .main h3 {
	margin-bottom: 14px;
	padding-bottom: 14px;
	color: #7e7c24;
	border-bottom: 1px solid #f2f2f2;}
#imgonmouse {
	width: 560px; height: 420px;
	background-size: contain;
	background-color: #f2f2f2;
	background-position: center center;
	background-repeat: no-repeat;}
#performancemain ul.imgonmouselist {
	margin-top: 10px;
	overflow: hidden;
	width: 560px;}
#performancemain ul.imgonmouselist li {
	text-align: center;
	width: 108px; height: 81px;
	overflow: hidden;
	float: left;
	cursor: pointer;
	margin-right: 5px;
	margin-bottom: 5px;
	background: #f2f2f2;}
#performancemain ul.imgonmouselist li:nth-child(5n) { margin-right: 0;}
#performancemain ul.imgonmouselist li img {
	width: 108px; height: 81px;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	margin: 0 auto;}
@media screen and (max-width: 640px) {
#performancemain .w360 { padding-top: 40px;}}

/* -------------------------------------------------
    I N T E R V I E W
--------------------------------------------------- */
#interview {
	padding-top: 60px;
	border-top: 1px solid #f2f2f2;}
#interview h2.line {
	margin: 0 auto;
	width: 800px;
	padding-top: 34px;
	position: relative;
	top: -60px;
	text-align: center;
	background: #fff;
	height: 110px;}
#interview h2.line span {
	display: block;
	font-size: 370%;
	line-height: 1;
	font-family: 'EB Garamond', serif;}
#interview h2.line:after {
	content: "";
	margin: 20px auto 0;
	display: block;
	width: 50px;
	border-bottom: 2px solid #7e7c24;}
#interview h3 {
	font-size: 128%;
	font-weight: bold;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;}
#interview h3 span {
	font-size: 24px;
	letter-spacing: 3px;
	font-weight: bold;
	vertical-align: baseline;}
#interview .info {
	margin-bottom: 32px;
	padding-bottom: 40px;
	border-bottom: 2px solid #f2f2f2;}
#interview .info p {
	color: #666;
	letter-spacing: 1px;}
#interview h4 {
	font-size: 170%;
	line-height: 1.5;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#interview .text { padding-bottom: 60px;}
#interview .text p {
	padding: 14px 0 50px;
	line-height: 1.8;
	letter-spacing: 1px;}
#interview .text img { padding-bottom: 50px;}
.rec_box {
	padding: 60px 0;
	text-align: center;
	background: url(images/back-tile.jpg) repeat;}
.rec_box p { text-align: center;}
.rec_box h2 {
	padding-bottom: 20px;
	font-size: 370%;
	line-height: 1;
	font-family: 'EB Garamond', serif;}
@media screen and (max-width: 640px) {
#interview { padding-top: 0; border-top: 1px solid #f2f2f2;}
#interview h2.line { width: 560px; top: 0; height: 200px;}
#interview h3 span { font-size: 36px;}
#interview h4 { font-size: 160%; text-align: justify; text-justify: inter-ideograph;}
#interview .text img { width: 100%;}}

/* -------------------------------------------------
    C O M P A N Y
--------------------------------------------------- */
#company table {
	margin: 60px auto 0;
	width: 100%;
	border: 1px solid #cccccc;}
#company table th, #company table td {
	padding: 10px 20px;
	border-bottom: 1px solid #cccccc;}
#company table th {
	width: 160px;
	text-align: left;
	background: #f2f2f2;}
#company table tr.yoko td.yokor { text-align: right;}
#company .access {
	height: 400px;
	background: url(images/link-img1.jpg) no-repeat 520px 100px;}
#company .access h2 { margin-bottom: 40px;}
#company .access h3 {
	font-size: 128%;
	padding: 50px 0 6px;}
#company .access p a {
	display: inline;
	color: #7e7c24;
	text-decoration: underline;}
@media screen and (max-width: 640px) {
#company.w960 { width: 560px;}
#company table { width: 560px; border: none;}
#company table th, #company table td { display: block; border: none; }
#company table th { width: 560px; padding: 10px; margin: 40px 0 20px;}
#company table td { padding: 0 10px;}
#company table tr.yoko td { display: inline-block; width: 460px;}
#company table tr.yoko td.yokor { width: 100px;}
#company .access { height: auto; padding-bottom: 360px; background: url(images/link-img1.jpg) no-repeat center bottom;}
#company .access h2 { margin-bottom: 40px;}}

/* -------------------------------------------------
    R E C R U I T
--------------------------------------------------- */
#rec2 table {
	margin: 60px auto 0;
	width: 100%;
	border: 1px solid #cccccc;}
#rec2 table th, #rec2 table td {
	padding: 10px 20px;
	border: 1px solid #cccccc;
	vertical-align: middle;}
#rec2 table th { background: #f2f2f2; width: 120px;}
#rec2 table span { display: block; font-size: 90%; color: #666;}
#rec2 h3 {
	font-size: 128%;
	padding: 50px 0 6px;}
@media screen and (max-width: 640px) {
#rec2.w960 { width: 560px;}
#rec2 table { width: 100%; }
#rec2 table th { width: 140px;}}

/* -------------------------------------------------
    P R I V A C Y
--------------------------------------------------- */
#privacy ul { margin-top: 40px;}
#privacy li {
	padding: 40px 0;
	text-align: justify;
	text-justify: inter-ideograph;
	letter-spacing: -0.5px;
	border-bottom: 1px solid #f2f2f2;}
@media screen and (max-width: 640px) {
#privacy { width: 560px; margin: 0 auto;}}

/* -------------------------------------------------
    B L A N D
--------------------------------------------------- */
#bland .message, #bland .history {
	overflow: hidden;
	padding-top: 80px;}
#bland .history { padding-bottom: 80px;}
#bland .message h2, #bland .history h2,
#business .project h2, #business .special h2 { line-height: 1.2;}
#bland .message h2 span, #bland .history h2 span,
#business .project h2 span, #business .special h2 span {
	display: block;
	font-family: 'EB Garamond', serif;
	font-size: 370%;}
#bland .history h2 { padding-bottom: 40px;}
#bland .message h2::after, #bland .history h2::after,
#business .project h2::after, #business .special h2::after {
	content: "";
	margin: 20px 0 0;
	display: block;
	width: 50px;
	border-bottom: 2px solid #7e7c24;}
#bland .message h3, #bland .history h4 {
	padding-bottom: 20px;
	font-size: 170%;
	line-height: 1.5;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#bland .message .ceo {
	margin-top: 30px;
	padding: 0;
	border: 0;
	overflow: hidden;}
#bland .message .ceo img {
	float: left;
	padding-right: 30px;}
#bland .message .ceo .name {
	padding: 5px 0 10px;
	font-weight: bold;}
#bland .message .ceo ul { overflow: hidden;}
#bland .message .ceo ul li { float: left;}
#bland .message .ceo ul li:first-child { padding-right: 30px;}
#bland .tate { padding-left: 120px;}
#bland .tate h3 {
	height: 140px;
	padding-bottom: 20px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 370%;
	line-height: 50px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	border-bottom: 2px solid #7e7c24;
	letter-spacing: 5px;}
#bland .tate p {
	height: 200px;
	padding: 20px 5px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	line-height: 20px;
	font-weight: bold;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#bland .companyphoto {
	padding: 60px 0;
	clear: both;
	overflow: hidden;}
#bland .companyphoto li {
	float: left;
	margin-right: 15px;
	width: 310px; height: 210px;
	color: #fff;
	padding: 182px 0 0 10px;}
#bland .companyphoto li:nth-child(1) { background: url(images/bland-img01.jpg) no-repeat top left;}
#bland .companyphoto li:nth-child(2) { background: url(images/bland-img02.jpg) no-repeat top left;}
#bland .companyphoto li:nth-child(3) { background: url(images/bland-img03.jpg) no-repeat top left; margin: 0;}
#bland .history table {
	margin: 50px 0;
	line-height: 32px;}
#bland .history table th {
	width: 90px;
	text-align: left;
	background: url(images/history-line.gif) no-repeat center right;}
#bland .history table td { padding-left: 20px;}
.other_link ul {
	overflow: hidden;}
.other_link ul li {
	float: left;
	width: 440px;}
.other_link ul li:nth-child(2n) { margin-left: 60px;}
.other_link ul li a {
	display: inline-block;}
.other_link h2, .other_link h3 {
	padding: 18px 0 10px;
	font-size: 128%;}
.other_link .more, #business ul.plist li .more {
	margin-top: 30px;
	display: inline-block;
	color: #7e7c24;
	border-bottom: 1px solid #7e7c24;}
#bland .aw_list ul { margin-bottom: 60px;}
@media screen and (min-width: 641px) {
.other_link a:hover { opacity: 0.6;}}
@media screen and (max-width: 640px) {
#bland .w960 { margin: 0 auto; width: 560px;}
#bland .message h3, #bland .history h4 { padding: 40px 0 20px;font-size: 160%; text-align: justify; text-justify: inter-ideograph;}
#bland .tate { padding-left: 0;}
#bland .tate h3, #bland .tate p {
	display: inline;
	line-height: 40px;
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: horizontal-tb;
	writing-mode: horizontal-tb;}
#bland .tate h3 { border-left: 4px solid #7e7c24; padding-left: 10px;}
#bland .tate h3 { line-height: 40px; font-size: 200%; border: none; border-left: 4px solid #7e7c24; padding-top: 10px;}
#bland .tate p { vertical-align: bottom;}
#bland .history img { width: 100%;}
#bland .companyphoto li {
	float: none;
	margin: 0 auto 20px;
	width: 560px;
	text-align: center;
	padding: 174px 0 0 0;}
#bland .companyphoto li:nth-child(1) { background: url(images/bland-img01.jpg) no-repeat top center;}
#bland .companyphoto li:nth-child(2) { background: url(images/bland-img02.jpg) no-repeat top center;}
#bland .companyphoto li:nth-child(3) { background: url(images/bland-img03.jpg) no-repeat top center; margin: 0 auto;}
#bland .history table { margin: 50px 0 0;}
#bland .history table th { display: block; width: 106px;}
#bland .history table td { padding: 0 0 20px; display: block;}
.other_link ul li { margin: 80px auto 0; float: none; width: 560px;}
.other_link ul li:nth-child(2n) { margin-left: auto;}
.other_link ul li a { display: block;}
.other_link ul li img { margin: 0 auto; display: block;}
#awards .w960 { margin: 0 auto; width: 640px;}}

/* -------------------------------------------------
    B U S I N E S S
--------------------------------------------------- */
#business .contop { text-align: center;}
#business .blist ul {
	overflow: hidden;
	padding: 80px 0;}
#business .blist li {
	margin-bottom: 10px;
	float: left;
	width: 480px;}
#business .blist .image {
	margin-right: 20px;
	width: 120px; height: 120px;
	float: left;}
#business .blist h3 {
	padding: 14px 0 8px;
	font-size: 160%;
	font-weight: bold;}
#business .project ul { padding: 60px 0 80px;}
#business ul.plist {
	overflow: hidden;}
#business ul.plist li {
	float: left;
	width: 440px;}
#business ul.plist li:nth-child(2n) { margin-left: 80px;}
#business ul.plist h3 {
	padding-bottom: 10px;
	font-size: 160%;
	font-weight: bold;}
@media screen and (min-width: 641px) {
#business ul.plist a:hover, #business .blist a:hover { opacity: 0.6;}}
@media screen and (max-width: 640px) {
#business.w960 { margin: 0 auto; width: 560px;}
#business .blist li {
	margin-bottom: 20px; float: none;
	width: 560px; height: 140px;
	padding-bottom: 20px;
	border-bottom: 1px solid #f2f2f2;}
#business .blist h3 { padding: 0 0 8px; line-height:1.4;}
#business ul { width: 560px;}
#business ul.plist li { float: none; width: 560px;}
#business ul.plist li:nth-child(2n) { margin: 60px 0 0 0;}}

/* -------------------------------------------------
    B U S I N E S S     N A K A
--------------------------------------------------- */
#bu1 .contop h2 { text-align: center;}
#bu1 h2.daiya {
	margin-bottom: 80px;}
#bu1 .ft_link { margin-top: 60px;}
#bu1 .cut2 { overflow: hidden;}
#bu1 ul.cut2 li {
	float: left;
	width: 440px;}
#bu1 ul.cut2 li:nth-child(2n) { margin-left: 80px;}
#bu1 ul.cut2 h3, #bu1 ul.cut0 h3 {
	padding: 18px 0 10px;
	font-size: 128%;}
#bu1 ul.cut2 p, #bu1 ul.cut0 p { color: #666;}
#bu1 ul.cut0 p { padding-bottom: 30px;}
#bu1 ul.cut3 {
	margin: 30px auto;
	overflow: hidden;}
#bu1 ul.cut3 li {
	margin-right: 30px;
	float: left;
	width: 300px;}
#bu1 ul.cut3 li:nth-child(3n) { margin-right: 0;}
#bu1 table {
	margin-bottom: 10px;
	width: 100%;
	border-right: 1px solid #05293e;}
#bu1 table caption {
	padding-bottom: 30px;
	font-size: 128%;}
#bu1 table th, #bu1 table td {
	padding: 6px 10px;
	border: 1px solid #05293e;}
#bu1 table th { font-weight: bold;}
#bu1 table td { text-align: right; border-right: none;}
#bu1 table td.cen { text-align: center; width: 120px;}
#bu1 table td.tani {
	border-left: none;
	background: #f2f2f2;
	text-align: center; width: 30px;}
@media screen and (max-width: 640px) {
#bu1.w960 { width: 560px;}
#bu1 ul.cut2 { width: 560px;}
#bu1 ul.cut2 li { float: none; margin: 0 auto; width: 560px;}
#bu1 ul.cut2 li:nth-child(2n) { margin: 0 auto;}
#bu1 ul.cut2 li img { margin: 0 auto; display: block;}
#bu1 ul.cut2 li p { padding-bottom: 60px;}
#bu1 ul.cut3 { margin: 30px auto;}
#bu1 ul.cut3 li { margin: 0 auto 20px; float: none;}
#bu1 ul.cut3 li:nth-child(3n) { margin-right: auto;}
#bu1 table th, #bu1 table td {
	vertical-align: middle;
	padding: 10px 5px;
	letter-spacing: -1px;}
#bu1 table td.cen { width: auto;}
#bu1 table td.tani { text-align: center; width: 24px;}}

/* -------------------------------------------------
    R E C U R U I T
--------------------------------------------------- */
#recruit .contop h2 { text-align: center;}
#recruit .miryoku table {
	margin: 80px auto 0;}
#recruit .miryoku table th {
	padding-bottom: 60px;
	width: 320px;
	text-align: left;}
#recruit .miryoku h4 {
	font-size: 114%;
	color: #7e7c24;}
#recruit .miryoku h5 {
	font-size: 200%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#recruit .tile { margin-top: 40px;}
#recruit .interview h2 {
	margin-bottom: 40px;
	text-align: center;
	line-height: 1.2;}
#recruit .interview h2 span {
	display: block;
	font-size: 257%;
	font-family: 'EB Garamond', serif;}
#recruit .interview h3 {
	padding: 14px 0 0;
	text-align: center;
	font-size: 128%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;}
#recruit .interview h3 span {
	font-size: 24px;
	letter-spacing: 3px;
	vertical-align: baseline;}
#recruit .interview a p {
	color: #666;
	text-align: center;
	letter-spacing: 1px;}
#recruit .interview ul {
	overflow: hidden;}
#recruit .interview ul li {
	float: left;
	width: 300px;
	margin: 60px 30px 0 0;}
#recruit .interview ul li:nth-child(3n) { margin-right: 0;}
#recruit .contop a { margin: 40px auto 120px;}
@media screen and (min-width: 641px) {
#recruit .interview ul li a:hover { opacity: 0.6;}}
@media screen and (max-width: 640px) {
#recruit .w960, #recruit .w720 { width: 560px;}
#recruit .miryoku table th, #recruit .miryoku table td { display: block; padding-bottom: 10px;} 
#recruit .miryoku table th { width: 560px;}
#recruit .miryoku table td { padding-bottom: 60px; text-align: justify; text-justify: inter-ideograph;}
#recruit .interview h3 span { font-size: 28px;}
#recruit .interview ul li { width: 270px; margin: 60px 20px 0 0;}
#recruit .interview ul li:nth-child(3n) { margin-right: 20px;}
#recruit .interview ul li:nth-child(2n) { margin-right: 0;}
#recruit .interview ul li img { width: 100%;}}

/* -------------------------------------------------
    S T O R Y
--------------------------------------------------- */
#story {
	padding-top: 60px;
	border-top: 1px solid #f2f2f2;}
#story .wboox, #story .wnboox {
	margin-bottom: 60px;
	padding-bottom: 60px;
	overflow: hidden;}
#story .wboox {
	border-bottom: 1px solid #f2f2f2;}
#story h2 { line-height: 1.2;}
#story h2 span {
	display: block;
	font-family: 'EB Garamond', serif;
	font-size: 370%;}
#story h2::after {
	content: "";
	margin: 20px 0 0;
	display: block;
	width: 50px;
	border-bottom: 2px solid #7e7c24;}
#story h3 {
	padding:30px 0 20px;
	font-size: 170%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#story .nakaimg { padding: 40px 0 0;}
#story p.nam {
	padding-bottom: 40px;
	color: #7e7c24;}
#story p.nam span {
	display: block;
	line-height: 1.2;
	font-size: 170%;}
#story p.namae {
	letter-spacing: 2px;
	font-size: 170%;}
#story p.kana {
	padding-bottom:10px;
	color: #cccccc;
	letter-spacing: 1px;
	font-family: 'EB Garamond', serif;}
@media screen and (max-width: 640px) {
#story img { width: 560px;}
#story .w320 { padding-bottom: 40px;}
#story h3 { font-size: 32px;}}

/* -------------------------------------------------
    O O G A T A
--------------------------------------------------- */
#oogata .contop { text-align: center;}
#oogata .mokuji {
	margin: 60px 0 0;
	padding: 20px 0;
	line-height: 2;
	overflow: hidden;
	border-top: 1px solid #f2f2f2;
	border-bottom: 1px solid #f2f2f2;}
#oogata .mokuji .ti {
	float: left;
	width: 120px;}
#oogata .mokuji ul {
	float: left;
	overflow: hidden;
	width: 840px;}
#oogata .mokuji ul li {
	float: left;
	width: 420px;}
#oogata .olist {
	padding-top: 60px;
	overflow: hidden;}
#oogata .w560 { padding-top: 20px;}
#oogata .w360 { padding-top: 40px;}
#oogata h3 {
	padding:30px 0 20px;
	font-size: 170%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#oogata .cometi {
	margin: 30px 0 0;
	padding: 24px 0 8px;
	font-size: 114%;
	font-weight: bold;
	border-top: 1px solid #f2f2f2;}
#oogata .info {
	margin-bottom: 20px;
	padding: 20px 40px 40px;
	background: #f2f2f2;}
#oogata .info h4 {
	padding-bottom:6px;
	font-size: 114%;
	color: #7e7c24;
	border-bottom: 1px solid #7e7c24;}
#oogata .info h5 {
	padding: 10px 0;
	font-size: 120%;}
#oogata .w360 ul li { float: left;}
#oogata .w360 ul li a {
	background-size: cover;
	height: 120px;
	width: 120px;}
@media screen and (max-width: 640px) {
#oogata .mokuji { margin: 60px auto 0; width: 560px;}
#oogata .mokuji ul li { float: none; width: auto;}
#oogata .w360 ul li a { height: 112px; width: 112px;}}

/* -------------------------------------------------
    C O N T A C T
--------------------------------------------------- */
#contact .textbox {
	overflow:hidden;
	padding: 80px 0;}
#contact .textbox h2 span {
	display: block;
	line-height: 1.1;
	font-size: 370%;
	font-family: 'EB Garamond', serif;}
#contact .textbox h2::after {
	content: "";
	display: block;
	width: 50px;
	margin-top: 20px;
	border-bottom: 2px solid #7e7c24;}
#contact .textbox h3 {
	padding: 10px 0;
	font-size: 200%;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
/* --- form --- */
#contact .form {
	overflow: hidden;}
#contact .form li {
	min-height: 80px;}
#contact .form .left li:nth-child(6),
#contact .form .left li:nth-child(7) {
	float: left;
	width: 220px;}
#contact .form .left li:nth-child(7) { margin-left: 20px;}
#contact .form .left li:nth-child(8) { clear: both;}
#contact .form h4 { padding-bottom: 6px;}
#contact .form span.req { color: #bd1018;}
#contact .form h5 {
	padding: 24px 0 10px;
	font-size: 114%;
	font-weight: bold;}
#contact .form p a {
	display: inline;
	text-decoration: underline;
	color: #bd1018;}
#contact .form input[type="text"],
#contact .form input[type="tel"],
#contact .form input[type="email"] {
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	font-size: 100%;
	padding: 0 10px;
	width: 100%;
	height: 40px;
	border: none;
	background: #f2f2f2;
	border-radius: 6px;}
#contact .form input[type="button"] {
	border: 2px solid #bd1018;
	margin: 50px 0 0;
	color: #bd1018;
	height: 60px;
	width: 100%;
	font-size: 100%;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	border-radius: 6px;
	cursor: pointer;}
#contact .form input[type="radio"] { display: none;}
#contact .form .radio {
	position: relative;
	display: inline-block;
	margin: 0 20px 0 0;
	padding: 0 0 0 42px;
	line-height:40px;
	height: 40px;
	vertical-align: middle;
	cursor: pointer;}
#contact .form .radio:before {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 6px;
  left: 0;
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 15px;
  content: '';
  background: #f2f2f2;}
#contact .form .radio:after {
	position: absolute;
	top: 16px;
	left: 10px;
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #05293E;
	content: '';
	opacity: 0;}
#contact .form input[type=radio]:checked + .radio:after { opacity: 1;}
#contact .form select {
	background: #f2f2f2;
	border: none;
	height: 40px;
	width: 100%;
	font-size: 100%;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;}
#contact .form textarea {
	padding: 6px 10px;
	width: 100%;
	height: 280px;
	border: none;
	background: #f2f2f2;
	border-radius: 6px;
	font-size: 100%;
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;}
@media screen and (min-width: 641px) {
#contact .form input[type="button"]:hover { background: #bd1018; color: #fff; transition: 0.5s all;}}
@media screen and (max-width: 640px) {
#contact .textbox h2 { text-align: center;}
#contact .textbox h2::after { margin: 20px auto;}
#contact .textbox h3 { font-size: 160%;}
/* --- form --- */
#contact .form li { min-height: 160px;}
#contact .form .left li:nth-child(6),
#contact .form .left li:nth-child(7) { float: none; width: 560px;}
#contact .form .left li:nth-child(7) { margin-left: 0;}
#contact .form input[type="text"],
#contact .form input[type="tel"],
#contact .form input[type="email"] { font-size: 180%; height: 80px;}
#contact .form input[type="button"] { height: 80px;}
#contact .form .radio {	margin: 20px 100px 0 0; padding: 10px 20px 10px 42px; line-height:20px; height: auto;}
#contact .form select { height: 80px; font-size: 180%;}
#contact .form textarea { height: 360px; font-size: 180%;}}

/* -------------------------------------------------
    F O O T E R
--------------------------------------------------- */
#footer { margin-top: 120px;}
#footer .ft_menu {
	padding: 50px 0;
	line-height: 25px;
	background: #f2f2f2;}
#footer .ft_menu ul {
	margin: 0 auto;
	display: table;
	width: 960px;
	table-layout: fixed;}
#footer .ft_menu ul li { display: table-cell;}
#footer .ft_menu h2 {　margin-top: 10px;}
#footer .ft_menu h2 a {
	font-weight: bold;
	color: #711519;}
#footer .ft_menu h3 a { color: #666;}
/* --- ft_info --- */
#footer .ft_info {
	padding: 50px 0;
	color: #fff;
	background: #711519;}
#footer .ft_info ul {
	margin: 0 auto;
	width: 960px;
	display: table;
	table-layout: fixed;}
#footer .ft_info ul li {
	display: table-cell;
	vertical-align: middle;}
#footer .ft_info h1 {
	padding-left: 44px;
	height: 40px;
	font-size: 120%;
	font-weight: 900;
	letter-spacing: 0.2em;
	line-height: 30px;
	background: url(images/logo2.png)  no-repeat left top;
	background-size: 30px auto;}
#footer .ft_info .title { overflow: hidden;}
#footer .ft_info h2 {
	padding-right: 6px;
	float: left;
	font-size: 114%;
	font-weight: bold;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
#footer .ft_info .title a {
	margin: 0 2px;
	float: left;
	width: 24px;}
/* --- copy --- */
#footer .copy {
	color: #711519;
	text-align: center;
	height: 60px;
	line-height:60px;
	font-size: 90%;
	letter-spacing: 2px;
	font-weight: bold;}
@media screen and (max-width: 640px) {
#footer .ft_menu ul {
	display: block;
	width: 560px;
	overflow: hidden;}
#footer .ft_menu ul li {
	float: left;
	line-height: 40px;
	width: 33%;display: block;}
#footer .ft_menu ul li:nth-child(1) { width: 100%;}
/* --- ft_info --- */
#footer .ft_info {
	padding: 50px 0;
	color: #fff;
	background: #711519;}
#footer .ft_info ul { width: 560px; display: block;}
#footer .ft_info ul li { display: block;}
#footer .ft_info .title { margin-top: 30px;}
#footer .ft_info h1 { font-size: 160%;}
#footer .ft_info h2 { padding-right: 10px; font-size: 140%;}
#footer .ft_info .title a { margin: 0 5px; width: 40px;}}


.recruitbage2025 {
	padding-top: 20px;
	margin: 40px 0 0;
	text-align: center;}
.recruitbage2025 .recbox {
	display:flex;
  align-items: center;
  gap: 20px 40px;
  margin: 20px 0 0;}
.recruitbage2025 .recbox .text {
	text-align: left;
	width: 440px;
	color: #05293E;}
.recruitbage2025 .recbox .text.no2 {
	padding-left: 10px;}
.recruitbage2025 .recbox .text a {
	font-weight: bold;
	line-height: 2;
	font-size: 16px;
	text-decoration: underline;}
.recruitbage2025 .recbox .text .ycolor a {
	text-decoration: none;
	font-size: 14px;
  line-height: 1.5;
  font-weight: normal;
	color: #7E7C24;}
.recruitbox2 { text-align: center;margin: 0 0 40px;}
.recruitbox2 hr {
	padding-top: 40px;
	margin-bottom: 40px;
	border: none;
	border-bottom: 1px solid #eee;}

@media screen and (max-width: 640px) {
  .recruitbage2025 .recbox img { max-width: 120px;}
  .recruitbage2025 .recbox .text { width: 380px;}
  .recruitbage2025 .recbox .text a { font-size: 22px;}
	.recruitbage2025 .recbox .text .ycolor a { letter-spacing: -1px;font-size: 20px;}}

@media screen and (min-width: 641px) {
  .recruitbage2025 {
    display: flex;
    gap: 10px 30px;
    flex-wrap: wrap;}
  .recruitbage2025 .recbox { width: 220px; display: block;}
  .recruitbage2025 .recbox img { height: 100px;max-width: 220px;object-fit: contain;}
  .recruitbage2025 .recbox .text { width: 100%;text-align: center; margin-top: 10px;}
  .recruitbage2025 .recbox p { text-align: center;}}



.youtube {
  margin: 0 auto;
  width: 100%;
  aspect-ratio: 16 / 9;
  max-width: 720px;
}
.youtubewaku { background: #eee; border: 4px solid #eee;border-bottom: none; margin: 40px auto 20px;}
.youtube iframe {
  width: 100%;
  height: 100%;}