@charset "utf-8";
/*
Theme Name: YAGI TSUSHO Theme
Theme URI: http://www.yagitsu.co.jp/
Description: 八木通商専用のベーステーマ
Author: YAGI TSUSHO
Url: http://www.yagitsu.co.jp/
Version: 1.0
*/



/* -----------------------------------------
   Reset
----------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-weight:normal;
	vertical-align: baseline;
	border: 0;
	outline: 0;
	background: transparent;
}

ol, ul {
	list-style: none;
	margin-bottom:0;
}

li {
	list-style:none;
}

blockquote, q {
	quotes: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

table tr th, table tr td {
	text-align: left;
}

.clearfix {zoom:1;}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

html .flexbox {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}

html .flexbox.jcsb {
  justify-content: space-between;
}

html .flexbox.aifs {
  align-items:flex-start
}

html .flexbox.aic {
  align-items: center;
}

html .flexbox.aife {
  align-items: flex-end;
}


/* Base
-------------------------------------------------------------------------------*/
html {
	height: 100%;
	overflow-y: scroll;
}

body {
	height: 100%;
	color: #000;
	font-size:12px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	font-style: normal;
	line-height: 1;
	background-color: #ffffff;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.error404 {
	overflow: hidden;
}

a {
	color: #777777;
	text-decoration:none;
}
a:hover {
	color: #000000;
}
a:focus, *:focus {
	outline:none;
}

::-moz-selection{ background: #9d9d9d; color: #fff; text-shadow: none; }
::selection { background: #9d9d9d; color: #fff; text-shadow: none; }
a:link { -webkit-tap-highlight-color: rgba(204, 204, 204, 0.4); }

p {
	margin-bottom:10px;
	line-height:180%;
}



/* Common
-------------------------------------------------------------------------------*/
#wrapper {
	width: 980px;
	margin: 0 auto;
}
.sp #wrapper {
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#wrapper.fixed .container {
	padding-top: 164px;
}
.sp .container {

}

.current_nav,
.current-cat a {
	color:#000000 !important;
}
.current_nav:hover,
.current-cat a:hover {
	color:#666666 !important;
}

.sp .centered {
	position: relative !important;
	overflow: hidden !important;
}

.sp .centered ul {
	position: relative !important;
	left: 50% !important;
	float: left !important;
}

.sp .centered ul li {
	position: relative !important;
	left: -50% !important;
	float: left !important;
}


#content_header {
	position: relative;;
}

#content_header h2 {
	margin-bottom: 18px;
	padding-bottom: 18px;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
	border-bottom: 1px solid #cccccc;
}
.sp #content_header h2 {
	text-align: center;
}

.new {
	margin-left: 10px;
	font-weight: bold;
	color: #dc2314;
}

#page_container {
	margin-bottom: 140px;
}

#prev {
	display: block;
	font-family: "Lato", sans-serif;
  font-weight: 700;
	letter-spacing: 1px;
	text-align: left;
}

#next {
	display: block;
	font-family: "Lato", sans-serif;
  font-weight: 700;
	letter-spacing: 1px;
	text-align: right;
}

.pc .sp_only {
	display: none;
}

.sp .pc_only {
	display: none;
}


/*---
アコーディオンメニュー  ---*/
.sp .accordion {
  position: absolute;
  top: 100px;
  left: 0;
	width: 100%!important;
	height: 42px;
	margin: 0!important;
	padding: 0!important;
	background-color: #fff;
	z-index: 100;
	overflow: hidden;
	cursor: pointer;
	transition:
}
.sp  #archive_list.accordion {
  top: 142px;
	transform: translateY(-1px);
}

.sp .accordion:after {
	position: absolute;
	top: 20px;
	right: 10px;
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 3px 0 3px;
	border-color: #000000 transparent transparent transparent;
	pointer-events: none;
}

.sp .accordion.open {
	height: auto;
	overflow: visible;
	z-index: 1000;
}
.sp .accordion.open:after {
	top: 20px;
	right: 10px;
	border-width: 0 3px 5px 3px;
	border-color: transparent transparent #000000 transparent;
}

.sp .accordion li {
  height: 42px;
	margin: 0!important;
	transform: translateY(0);
  border-top: 1px dotted #cccccc;
	border-bottom: 1px dotted #cccccc;
	box-sizing: border-box;
	line-height: 42px!important;
  padding: 0!important;
}
.sp .accordion.open li {
	border-top: none!important;
  transform: translateY(0)!important;
}
.sp .accordion.open li:first-child {
  border-top: 1px dotted #cccccc!important;
}

.sp .accordion li a {
	display: block;
	pointer-events: none;
  font-size: 10px;
}

.sp .accordion.open li a {
	pointer-events: auto;
}
.sp .accordion.open li.current-cat a,
.sp .accordion.open li a.current_nav {
	pointer-events: none;
}

.sp .accordion + #right {
  margin-top: 70px;
}

.sp .container {
	margin-top: 58px;
}

.sp #content_header {
	position: absolute;
	top: 58px;
	left: 0;
	width: 100%;
	z-index: 1;
	background-color: #fff;
}

.sp #content_header h2 {
  height: 42px;
  padding: 0 15px;
  margin: 0;
  font-size: 14px;
	letter-spacing: 0.075em;
  text-align: left;
  line-height: 42px;
}

.sp #content_header h2 span {
	display: inline-block;
	margin-left: 10px;
	font-size: 9px;
}

.sp .entry_content {
	padding-top: 42px!important;
	margin: 0;
}








/* Header
-------------------------------------------------------------------------------*/
#header {
	position: relative;
	top: 0;
	width: 980px;
	margin: 0px 0 20px 0;
	padding: 37px 0 20px 0;
	background-color: #ffffff;
	border-bottom: 1px solid #cccccc;
	z-index: 9998;
}
#wrapper.fixed #header {
	position: fixed;
	top: -93px;
}
.error404 #header {
	display:none;
}
.sp #header {
	position: fixed;
	width: 100%;
	height: 58px;
	margin: 0;
	padding: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
  text-align: left;
}

#header #logo a {
	display: inline-block;
	height: 100%;
}
.sp #header #logo a {
	padding: 18px;
}

.sp .gnav_container {
	display: none;
	opacity: 1;
	position: absolute;
	background-color: #fff;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: calc(100vh - 58px);
	padding: 60px 17px;
	margin-top: 58px;
	box-sizing: border-box;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

#header .gnav {
	margin-top: 40px;
}
.sp #header .gnav {
  margin-top: 0;
}

#header .gnav li {
	float: left;
	margin-left: 38px;
}
#header .gnav li:first-child {
	margin-left: 0;
}
.sp #header .gnav li {
	float: none;
	margin-left: 0;
}

#header .gnav li a {
	font-family: "Lato", sans-serif;
  font-weight: 700;
	letter-spacing: 1px;
}
.sp #header .gnav li a {
	font-size: 9px;
}

.sp #header .gnav > li {
	display: flex;
	flex-wrap: wrap;
	padding: 15px 0;
	border-bottom: 1px solid #d9d8d7;
}
.sp #header .gnav > li > a {
	width: 35%;
	font-size: 11px;
}

#header .sub_menu {
	position: absolute;
	top: 121px;
	padding: 40px 15px 10px 15px;
	z-index: 9999;
	background-color: #ffffff;
	display: none;
}

#header .sub_menu li {
	margin-bottom: 8px;
}

#header .sub_menu li a {
	font-size: 10px;
}

#header #sub_menu1 {
	left: 0px;
}

#header #sub_menu2 {
	left: 93px;
}

#header #sub_menu3 {
	left: 214px;
}

#header #sub_menu4 {
	left: 317px;
}

#header .sub-menu {
	display: none;
	margin-top: -2px;
}

.sp #header .sub-menu li {
	margin-top: 12px;
}
.sp #header .sub-menu li:first-child {
	margin-top: 0;
}

.sp #header .sub-menu {
	display: block;
}

#lang {
	position: absolute;
	top: 10px;
	right: 0px;
	font-size: 8px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	color: #777777;
}
.sp #lang {
	right: 15px;
}

.sp #header #lang {
  right: 11px;
  top: 17px;
}


#lang .lang-en,
#lang .lang-ja {
	display: inline-block;
	padding: 2px 5px;
	color: #dddddd;
}

#lang .lang-en:after {
	content: " | ";
}

#lang .lang-en a {
	margin-right:8px;
}

#lang #ztranslate-chooser .active a {
	color: #dddddd;
}

#logo_mini {
	position: absolute;;
	top: 105px;
	right: 0px;
	display:none;
}
#wrapper.fixed #logo_mini {
	display:block;
}
#logo_mini:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

#header .footer_contents {
	display: none;
}

.sp #header .footer_contents {
	display: block;
	margin-top: 35px;
}

.sp .menu-footer_ja li,
.sp .menu-footer_en li {
	display: inline-block;
	margin-left: 0;
	margin-right: 15px;
}


/* メニューボタン */
.menu {
	display: none;
	cursor: pointer;
	box-sizing: border-box;
}

.sp .menu {
	display: inline-block;
	position: absolute;
	top: 7px;
	right: 0;
	width: 44px;
	height: 44px;
	padding: 10px;
	z-index: 9999;
}

.menu .menu_bar {
	position: absolute;
	left: 13px;
	width: 18px;
	height: 1px;
	background-color: #777777;
	transition: all .4s;
}
.menu .menu_bar:nth-of-type(1) {
	top: 17px;
}
.menu .menu_bar:nth-of-type(2) {
	top: 22px;
}
.menu .menu_bar:nth-of-type(3) {
	top: 27px;
}

/* メニューアニメーション */
.menu .menu_bar:nth-of-type(1) {
	animation: menu_bar1 .35s forwards;
}
@keyframes menu_bar1 {
	  0% { transform: translateY(5px) rotate(45deg); }
	 50% { transform: translateY(5px) rotate(0); }
	100% { transform: translateY(0) rotate(0); }
}

.menu .menu_bar:nth-of-type(2) {
	transition: all .15s .15s;
	opacity: 1;
}

.menu .menu_bar:nth-of-type(3) {
	animation: menu_bar2 .35s forwards;
}

@keyframes menu_bar2 {
	  0% { transform: translateY(-5px) rotate(-45deg); }
	 50% { transform: translateY(-5px) rotate(0); }
	100% { transform: translateY(0) rotate(0); }
}

.menu.active .menu_bar:nth-of-type(1) {
	animation: active_menu_bar1 .35s forwards;
}
@keyframes active_menu_bar1 {
	  0% { transform: translateY(0) rotate(0); }
	 50% { transform: translateY(5px) rotate(0); }
	100% { transform: translateY(5px) rotate(45deg); }
}

.menu.active .menu_bar:nth-of-type(2) {
	opacity: 0;
}

.menu.active .menu_bar:nth-of-type(3) {
	animation: active_menu_bar3 .35s forwards;
}
@keyframes active_menu_bar3 {
	  0% { transform: translateY(0) rotate(0); }
	 50% { transform: translateY(-5px) rotate(0); }
	100% { transform: translateY(-5px) rotate(-45deg); }
}




/* 404 Page
-------------------------------------------------------------------------------*/
#error_page #content {
	position: fixed;
	top: 50%;
	left: 50%;
	margin: -16px 0 0 -151px;
}





/* HOME Page
-------------------------------------------------------------------------------*/
#home_page {

}

.sp #home_page.container {
  margin-top: 78px;
}

#home_page .wide-container {
	max-width: 980px;
	height: 440px;
	margin: 0 0 60px 0;
}

.sp #home_page .wide-container {
	height: 287px;
}

#slides {
	background-image: url(images/loading.gif);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: 20px 20px;
}

#slides li a img:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

.slides-pagination {
	/*bottom: -23px;*/
}

.slides-pagination a {
	border: none;
	border-radius: 50%;
	width: 6px;
	height: 6px;
	margin: 6px;
	background-color: #777777;
}

.slides-pagination a.current {
	background-color: #333333;
}

#topics {
	position: relative;
	margin: 0 0 30px 0;
}
.sp #topics {
	padding: 0 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#topics h3 {
	margin-bottom: 20px;
	padding-bottom: 20px;
	font-family: "Lato", sans-serif;
  font-weight: 700;
	letter-spacing: 1px;
	border-bottom: 1px solid #cccccc;
}

#topics #topics_more {
	position: absolute;
	top: 0px;
	right: 0px;
	font-size: 10px;
	letter-spacing: 1px;
}
.sp #topics #topics_more {
	right: 15px;
}

#topics #topics_list li {
	float: left;
	margin-left: 22px;
	width: 312px;
	line-height: 140%;
}
#topics #topics_list li:first-child {
	margin-left: 0;
}
.sp #topics #topics_list li {
	width: 50%;
	margin-left: 0px;
	padding-left: 8px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.sp #topics #topics_list li:nth-child(2n+1) {
	padding-right: 8px;
	padding-left: 0;
}

.sp #topics_list li img {
	width: 100% !important;
	height: auto !important;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#topics_list li img:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

#topics_list p {
	display: block;
	margin: 15px 0 30px 0;
	font-size: 11px;
}

#topics_list li span {
	display: block;
	margin-top: 5px;
	font-size: 10px;
	line-height:140%;
}


#newsrelease {
	margin: 0 0 60px 0;
}
.sp #newsrelease {
	padding: 0 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#newsrelease h3 {
	margin-bottom: 20px;
	padding-bottom: 20px;
	font-family: "Lato", sans-serif;
  font-weight: 700;
	letter-spacing: 1px;
	border-bottom: 1px solid #cccccc;
}

#newsrelease ul li {
	margin-bottom: 17px;
	padding-bottom: 17px;
	border-bottom: 1px dotted #cccccc;

}
#newsrelease .date {
	margin-right: 20px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}
.sp #newsrelease .date {
	margin-right: 5px;
}

#newsrelease .category {
	display: inline-block;
	width: 90px;
	margin-right: 32px;
	font-size: 10px;
	text-align: center;
	background-color: #f0f0f0;
}
#newsrelease .category:hover {
	background-color: #000000;
}

#newsrelease .category a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 4px 0px 5px 0px;
}
#newsrelease .category:hover a {
	color: #f0f0f0;
}


#newsrelease .category.type1 {
	background-color: #f29a32;
}
#newsrelease .category.type1:hover {
	background-color: #efb26a;
}

#newsrelease .category.type1 a {
	color: #FFFFFF;
}
#newsrelease .category.type1:hover a {
	color: #FFFFFF;
}


#newsrelease .category.type2 {
	background-color: #696560;
}
#newsrelease .category.type2:hover {
	background-color: #99938b;
}

#newsrelease .category.type2 a {
	color: #FFFFFF;
}
#newsrelease .category.type2:hover a {
	color: #FFFFFF;
}


.sp #newsrelease .title {
	display: block;
	margin-top: 5px;
	line-height: 140%;
}




/* TOPICS Page
-------------------------------------------------------------------------------*/
.sp #topics_page #topics_list {
	padding:0 15px;
}

#topics_page #topics_list li {
	float: left;
	margin: 0 0 30px 22px;
	width: 312px;
	line-height: 140%;
}
#topics_page #topics_list li:nth-child(3n+1) {
	margin: 0 0 30px 0;
}
.sp #topics_page #topics_list li {
	width: 50%;
	margin: 0 0 30px 0;
	padding: 0 0 0 8px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.sp #topics_page #topics_list li:nth-child(2n+1) {
	padding: 0 8px 0 0;
}





/* TOPICS Single Page
-------------------------------------------------------------------------------*/
#topics_page .entry_content {
	margin-top: 45px;
}

#topics_page #left {
	float: left;
	width: 155px;
}
.sp #topics_page #left {
	display: none;
}

#topics_page #left li {
	width: 100%;
	padding: 10px 0;
	border-bottom: 1px dotted #cccccc;
}
#topics_page #left li:first-child {
	border-top: 1px dotted #cccccc;
}

#topics_page #left li a {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#topics_page #right {
	margin-left: 245px;
}
.sp #topics_page #right {
	margin-left: 0;
	padding: 15px;
}

#topics_page #right h3 {
	margin-bottom: 15px;
	padding-bottom: 25px;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
	line-height: 150%;
	border-bottom: 1px dotted #cccccc;
}
.sp #topics_page #right h3 {
	margin-bottom: 15px;
	padding-bottom: 10px;
}

#topics_page #right h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#topics_page #right .date {
	display: block;
	margin-bottom: 30px;
}

.sp #topics_page #right img {
	width: 100%;
	height: auto;
	/* margin-bottom: -20px; */
}

.sp #topics_page #right iframe {
	/* margin-bottom: -20px; */
}





/* BRANDS Page
-------------------------------------------------------------------------------*/
#brands_page {

}

.sp #brands_page.container {
  margin-top: 165px;
}
.sp #brands_page.container.country,
.sp #brands_page.container.company {
  margin-top: 178px;
}

.sp #sort_container {
	margin-bottom: 0;
	border-bottom: 1px solid #CCC;
	padding: 18px 0;
}

#sort {
	position: absolute;
	top: 0px;
	right: 0px;
}

#sort li {
	float: left;
	margin-left: 40px;
}
#sort li:first-child {
	margin-left: 0;
}
.sp #sort li {
	margin-left: 20px;
}
.sp #sort li:first-child {
	margin-left: 0;
}

#sort a {
	padding-left: 12px;
	color: #999999;
	background-image: url(images/arrow1.png);
	background-repeat: no-repeat;
	background-position: 0px 6px;
	background-size: 5px 6px;
}
#sort a:hover {
	color: #000000;
}

.sp #brands_page .brands_list {
	padding: 0 15px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#brands_page .brands_list li {
	position: relative;
	float: left;
	margin: 0 0 22px 22px;
}
#brands_page .brands_list li:nth-child(3n+1) {
	margin: 0 0 22px 0;
}
.sp #brands_page .brands_list li {
	width: 50%;
	margin: 0 0 8px 0;
	padding-left: 4px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.sp #brands_page .brands_list li:nth-child(2n+1) {
	padding-right: 4px;
	padding-left: 0;
}

.sp #brands_page .brands_list li>a {
	pointer-events: none;
}

.sp #brands_page .brands_list li img {
	width: 100%;
	height: auto;
}

#brands_page .meta {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	color: #000000;
	text-align: center;
	display: none;
}
#brands_page.company .meta.joint {
	top: 30px;
	height: 192px;
}
.sp #brands_page .meta {
	position: static;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  width: auto;
	display: block;
}
.sp #brands_page.company .meta.joint {
	position: absolute;
	top: 30px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 192px;
	margin: auto;
}

#brands_page .meta .gray {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #efefef;
	background-color: rgba(239, 239, 239, 0.95);
}
.sp #brands_page .meta .gray {
	display: none;
}

.pc #brands_page .meta .meta_center {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.pc.ie8 #brands_page .meta .meta_center {
	margin-top: -75px;
}
.sp #brands_page .meta .meta_center {
	overflow: hidden;
}

#brands_page .meta .brands_title {
	position: relative !important;
	margin: 0 !important;
	font-size: 14px !important;
	font-family: "Lato" !important;
  font-weight: 400;
	letter-spacing: 1px;
}
.ie8 #brands_page .meta .brands_title.en {
	padding-top: 60px;
}
.sp #brands_page .meta .brands_title {
	margin: 15px 0 5px 0 !important;
	line-height: 1.25em;
}

#brands_page .meta .brands_name_jp {
	position: relative !important;
	margin: -4px 0 0 0 !important;
	font-size: 10px !important;
}

#brands_page .meta .brands_country {
	position: relative !important;
	margin: 10px 0 0 0 !important;
	font-size: 9px !important;
	font-family: "Lato" !important;
  font-weight: 400;
	letter-spacing: 1px;
}

#brands_page .meta .brands_description {
	position: relative !important;
	margin: 8px 0 0 0 !important;
	padding: 0 15px !important;
	font-size: 10px !important;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	text-align: center !important;
	line-height: 160% !important;
}
.sp #brands_page .meta .brands_description {
	padding: 0 10px 20px 10px !important;
	text-align: left !important;
}


#brands_page .meta .external {
	position: absolute;
	top: 20px;
	right: 20px;
}


#brands_page h3 {
	margin: 0 0 15px 0;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}
.sp #brands_page h3 {
	margin: 0 0 15px 15px;
	font-size: 12px;
}

#brands_page.company .brands_list,
#brands_page.country .brands_list {
	margin-bottom: 45px;
	padding-bottom: 23px;
	border-bottom:1px dotted #cccccc;
}
#brands_page.company .brands_list:last-child,
#brands_page.country .brands_list:last-child {
	border-bottom:none;
}
.sp #brands_page.company .brands_list,
.sp #brands_page.country .brands_list {
	margin-bottom: 30px;
}

#brands_page .brands_list li p {
	/*margin-top: 18px;
	font-size: 11px;*/
}
.sp #brands_page.company .brands_list li p {
	font-size: 9px;
}







/* BRANDS Single Page
-------------------------------------------------------------------------------*/
#brands_single #content {
	margin-bottom: 20px;
	padding-bottom: 45px;
	border-bottom:1px dotted #cccccc;
}

#brands_single .wide-container {
	max-width: 980px;
	height: 582px;
	margin: 0 0 70px 0;
}

#brands_single #entry_title {
	margin-bottom: 20px;
	padding-bottom: 18px;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
	border-bottom: 1px solid #cccccc;
}

#brands_single #entry_title_jp {
	display: block;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#brands_single #left {
	float: left;
	width: 245px;
}

#brands_single #left h4 {
	margin-bottom: 25px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#brands_single #left li {
	margin-bottom: 10px;
}

#brands_single #left li a {
	margin-bottom: 10px;
	padding-left: 14px;
	font-size: 12px;
	text-decoration: underline;
	background-image: url(images/arrow2.png);
	background-repeat: no-repeat;
	background-position: 3px 5px;
}

#brands_single #right {
	margin-left: 245px;
	width: 735px;
}

#brands_single #right #entry_body {
	margin-bottom: 50px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	line-height: 215%;
}

#brands_single #right h4 {
	margin-bottom: 10px;
	padding-bottom: 10px;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	border-bottom: 1px solid #cccccc;
}

#brands_single #right #entry_table {
	margin-top: 25px;
}

#brands_single #right #entry_table td {
	padding: 5px 0;
	font-size: 11px;
}
#brands_single #right #entry_table td:first-child {
	width: 60px;
	text-align: justify;
	text-justify: inter-ideograph;
}

#brands_single #close {
	position: relative;
}

#brands_single #close a {
	position: absolute;
	top: 0px;
	right: 0px;
	text-align: right;
	line-height: 160%;
}





/* CORPORATE Page
-------------------------------------------------------------------------------*/
#corporate_page .entry_content {
	margin-top: 40px;
}

#corporate_page #left {
	float: left;
	width: 155px;
}
.sp #corporate_page #left {
	float: none;
	width: auto;
	margin-bottom: 45px;
	padding: 0 15px;
	text-align: center;
}

#corporate_page #left li {
	padding: 9px 0;
	line-height: 150%;
	border-bottom: 1px dotted #cccccc;
}
#corporate_page #left li:first-child {
	border-top: 1px dotted #cccccc;
}

#corporate_page #left li a {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#corporate_page #right {
	margin-left: 245px;
}
.sp #corporate_page #right {
	margin-left: 0;
	padding: 0 15px;
}

#corporate_page #right h3 {
	margin: 18px 0 40px 0;
	padding: 18px 0;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}

#corporate_page #right h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}





/* ACCESS MAP Page
-------------------------------------------------------------------------------*/
#accessmap_page {
	width: 599px;
	margin: 0 auto;
}
.sp #accessmap_page {
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding:15px;
}

#accessmap_page #content {
	position: relative;
	text-align: center;
}

#accessmap_page .entry_content {
	margin: 50px 0 55px 0;
	text-align: left;
}
.sp #accessmap_page .entry_content {
	margin: 0 0 55px 0;
}


#accessmap_page .entry_content img {
	margin-bottom: 25px;
}
.sp #accessmap_page .entry_content img {
	width: 100%;
	height: auto;
}

#accessmap_page .entry_content h3 {
	font-size: 12px;
}

#accessmap_page .entry_content p {
	margin-top: 8px;
	font-size: 10px;
}

#accessmap_page #print {
	position: absolute;
	top: 641px;
	right: 0;
}
.sp #accessmap_page #print {
	display: none;
}

#accessmap_page #close {
	text-align: center;
}
#accessmap_page #close:hover {
	opacity: 0.4;
	-moz-opacity: 0.4;
	filter: alpha(opacity=40);
}




/* CORPORATE COMPANY Page
-------------------------------------------------------------------------------*/
#corporate_page.company #right table {
	width: 100%;
}

#corporate_page.company #right table tr.line {
	border-top: 1px dotted #cccccc;
}
#corporate_page.company #right table tr.line td:first-child {
	width: 159px;
	padding: 15px 0;
}
#corporate_page.company #right table tr.line:last-child {
	border-bottom: 1px dotted #cccccc;
}
.sp #corporate_page.company #right table tr.line td:first-child {
	width: 80px;
	font-size: 9px;
}

#corporate_page.company #right table td {
	padding: 10px 0px;
	line-height: 145%;
}
.sp #corporate_page.company #right table td {
	padding: 10px 4px;
}

#corporate_page.company #right table span {
	font-size: 10px;
	color: #999999;
}

.pc #corporate_page.company #right table .exception1 {
	display: block;
	margin-left: -210px;
}

.pc #corporate_page.company #right table .exception2 {
	width:320px;
}




/* CORPORATE MESSAGE Page
-------------------------------------------------------------------------------*/
#corporate_page.message #right #copy {
	margin-bottom: 32px;
	font-size: 16px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}

#corporate_page.message #right #message_container p {
	margin-bottom: 18px;
	line-height: 170%;
}

#corporate_page.message #right #message_container {
	margin-bottom: 62px;
}

#corporate_page.message #right #message_container #message_left {
	float: left;
	width: 350px;
}
.sp #corporate_page.message #right #message_container #message_left {
	float: none;
	width: auto;
}

#corporate_page.message #right #message_container #message_right {
	margin-left: 380px;
}
.sp #corporate_page.message #right #message_container #message_right {
	margin-left: 0;
}

#corporate_page.message #right #profile_container {
	margin-bottom: 120px;
}





/* CORPORATE HISTORY Page
-------------------------------------------------------------------------------*/
#corporate_page.history #right table {
	width: 100%;
	font-size: 11px;
}

#corporate_page.history #right table tr {
	border-bottom: 1px dotted #cccccc;
}
#corporate_page.history #right table tr:first-child {
	border-top: 1px dotted #cccccc;
}

#corporate_page.history #right table td {
	padding: 8px 0 7px 0;
	line-height: 145%;
}
#corporate_page.history #right table td:first-child {
	width: 115px;
}





/* CORPORATE SACSA Page
-------------------------------------------------------------------------------*/
#corporate_page.sacsa #description {
	margin-bottom: 30px;
}

#corporate_page.sacsa #right table {
	width: 100%;
	font-size: 13px;
}

#corporate_page.sacsa #right table tr:first-child {
	border-top: 1px dotted #cccccc;
}

#corporate_page.sacsa #right table td {
	padding: 20px 0 20px 0;
	line-height: 145%;
	vertical-align: top;
	border-bottom: 1px dotted #cccccc;
}
#corporate_page.sacsa #right table td:first-child {
	width: 90px;
}
#corporate_page.sacsa #right table td:nth-child(3) {
	width: 407px;
}
#corporate_page.sacsa #right table td.no_border {
	border-bottom:none;
}
#corporate_page.sacsa #right table td.top_border {
	border-top: 1px dotted #cccccc;
	border-bottom:none;
}
.sp #corporate_page.sacsa #right table td {
	font-size:11px;
}
.sp #corporate_page.sacsa #right table td:first-child {
	width: 130px;
}

#corporate_page.sacsa #right table td img {
	width: 218px;
	height: auto;
	margin: 0 20px 0 0;
	vertical-align: top;
}
#corporate_page.sacsa #right table td img:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}
.sp #corporate_page.sacsa #right table td img {
	width: 109px;
	margin: 0 10px 0 0;
}

.sp #corporate_page.sacsa #right table td h4 {
	font-size: 11px;
}

#corporate_page.sacsa #right table td h5 {
	margin-top: 10px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#corporate_page.sacsa #right table td .sub_title {
	margin-top: 15px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	color: #999999;
}
.sp #corporate_page.sacsa #right table td .sub_title {
	margin-top: 8px;
	font-size: 10px;
}




/* CORPORATE SACSA Single Page
-------------------------------------------------------------------------------*/
#corporate_page.sacsa #right h5 {
	display: block;
	margin-bottom: 15px;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
	line-height: 160%;
}

#corporate_page.sacsa #right strong {
	display: block;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
	line-height: 160%;
}

#corporate_page.sacsa #right img {
	margin-bottom: 30px;
}
.sp #corporate_page.sacsa #right img {
	width: 100%;
	height: auto;
	margin-bottom: 15px;
}

#corporate_page.sacsa #right iframe {
	margin-bottom: 0px;
}





/* BUSINESS Page
-------------------------------------------------------------------------------*/
.sp #business_page .entry_content {
	padding: 0 15px;
}

.pc #business_page img.sp_only {
	display: none;
}

.sp #business_page img.pc_only {
	display: none;
}

#business_page table tr {
	border-bottom: 1px dotted #cccccc;
}

#business_page table td:first-child {
	width: 245px;
}
#business_page table td:nth-child(2) {
	padding: 40px 0 20px 0;
}
.sp #business_page table td:first-child {
	width: 90px;
}

#business_page table tr:first-child td:nth-child(2) {
	padding: 27px 0 20px 0;
}

#business_page table td img {
	vertical-align: top;
}
.sp #business_page table td img {
	width: 100%;
	height: auto;
}

#business_page h3 {
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}
.sp #business_page h3 {
	font-size: 10px;
}

#business_page h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}
.sp #business_page h3 span {
	font-size: 9px;
}

#business_page .heading {
	margin-bottom: 0px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}

#business_page .description {
	margin-bottom: 20px;
}




/* RECRUIT Page
-------------------------------------------------------------------------------*/
#recruit_page .entry_content {
	margin-top: 40px;
}
.sp #recruit_page .entry_content {
	padding: 0 15px;
}

#recruit_page #left {
	float: left;
	width: 155px;
}
.sp #recruit_page #left {
	width: 60px;
}
.sp #recruit_page.graduates #left,
.sp #recruit_page.career #left {
	width: 100%;
	float: none;
	margin-bottom: 45px;
	text-align: center;
}

#recruit_page #left li {
	padding: 9px 0;
	line-height: 150%;
	border-bottom: 1px dotted #cccccc;
}
#recruit_page #left li:first-child {
	border-top: 1px dotted #cccccc!important;
}

#recruit_page #left li a {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#recruit_page #left h3 {
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}
.sp #recruit_page #left h3 {
	font-size: 10px;
}

#recruit_page #left h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}
.sp #recruit_page #left h3 span {
	font-size: 9px;
}

#recruit_page #right {
	margin-left: 245px;
}
.sp #recruit_page #right {
	margin-top: 20px;
  margin-left: 0;
}
.sp #recruit_page.graduates #right,
.sp #recruit_page.career #right {
	margin-left: 0;
}

#recruit_page #right h3 {
	margin: 18px 0 40px 0;
	padding: 26px 0;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	letter-spacing: 1px;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
}
.sp #recruit_page #right h3 {
	display: none;
	font-size: 13px;
	text-align: center;
}

.sp #recruit_page.graduates #right img,
.sp #recruit_page.career #left img {
	width: 100%;
	height: auto;
}

#recruit_page #recruit_container {
	margin-top: 55px;
}

.sp #recruit_page #recruit_container img {
	width: 100%;
	height: auto;
}

#recruit_page #recruit_container h4 {
	margin: 15px 0 30px 0;
	font-size: 14px;
}
.sp #recruit_page #recruit_container h4 {
	margin: 15px 0 10px 0;
	font-size: 13px;
}

#recruit_page #recruit_container #recruit_left {
	float: left;
	width: 334px;
}
.sp #recruit_page #recruit_container #recruit_left {
	float: none;
	width: 100%;
	margin-bottom: 45px;
}

#recruit_page #recruit_container #recruit_left a:hover,
#recruit_page #recruit_container #recruit_right a:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

#recruit_page #recruit_container #recruit_right {
	margin-left: 400px;
}
.sp #recruit_page #recruit_container #recruit_right {
	margin-left: 0;
}




#recruit_page #recruit_list {
	margin: -22px 0 0 400px;
}
.sp #recruit_page #recruit_list {
	margin: 20px 0 0 0;
}


#recruit_page #recruit_list li {
	margin-bottom: 8px;
	font-size: 11px;
	line-height: 140%;
}
.sp #recruit_page #recruit_list li {
	font-size: 10px;
}

#recruit_page #recruit_list li:first-child {
	font-size: 12px;
}

#recruit_page table {
	width: 100%;
	background-color: #f5f5f5;
}

#recruit_page table tr {
	border-bottom: 1px solid #cccccc;
}

#recruit_page table tr:last-child {
	border-bottom: none;
}

#recruit_page table td:first-child {
	width: 130px;
	padding-left: 15px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}
#recruit_page table td:nth-child(2) {
	padding: 11px 25px 11px 0;
	line-height: 170%;
}
.sp #recruit_page table td:first-child {
	width: 70px;
	font-size:9px;
}

#recruit_page table strong {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}


#recruit_page #summary h4 {
	font-size: 14px;
	font-weight: bold;
}
.sp #recruit_page #summary h4 {
	font-size: 12px;
}

#recruit_page #summary p {
	margin-top: 23px;
	font-size: 12px;
}
.sp #recruit_page #summary p {
  font-size: 10px;
	line-height: 2.2;
}

.sp #recruit_page #summary p br {
	display: none;
}
.sp #recruit_page #summary p br:first-child {
	display: inline-block;
}

.sp #recruit_page #recruit_container {
  margin-top: 30px;
}

.sp #recruit_page #recruit_container h4 {
  margin: 10px 0 10px 0;
  font-size: 10px;
}

#recruit_page #newsrelease {
	margin-top: 110px;
}
.sp #recruit_page #newsrelease {
  margin-top: 65px;
}

.sp  #recruit_page #newsrelease {
  padding: 0;
}

#recruit_page #newsrelease h4 {
  margin-bottom: 20px;
  padding-bottom: 20px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
  border-bottom: 1px solid #cccccc;
}







/* RECRUIT GRADUATES Page
-------------------------------------------------------------------------------*/
#recruit_page.graduates h4 {
	margin: 90px 0 20px 0;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}

.sp #recruit_page.graduates #right {
  margin-top: 60px;
}





/* RECRUIT CAREER Page
-------------------------------------------------------------------------------*/
.sp #recruit_page.career #right {
	margin-top: 70px;
  margin-left: 0;
}

#recruit_page.career .recruit_list {
	position: relative;
	margin-top: 90px;
}

#recruit_page.career h3 + .recruit_list {
	margin-top: 50px;
}
.sp #recruit_page.career .recruit_list {
  margin-top: 50px;
}

#recruit_page.career .recruit_list .headinfo {
	position: relative;
}

#recruit_page.career .recruit_list .company {
	position: absolute;
	bottom: 0;
	right: 0;
}
.sp #recruit_page.career .recruit_list .company {
	position: static;
	display: block;
	margin: 20px 0 15px;
	font-size: 10px;
}

#recruit_page.career .recruit_list ul,
#recruit_page.career.single .recruit_list .detail {
	margin-top: 25px;
}

.sp #recruit_page.career .recruit_list ul,
.sp #recruit_page.career.single .recruit_list .detail {
  margin-top: 12px;
}

#recruit_page.career .recruit_list .detail {
	position: relative;
	margin-top: 10px;
	background-color: #f5f5f5;
}

#recruit_page.career .recruit_list .detail a {
	display: block;
	padding: 25px 135px 25px 25px;
}
#recruit_page.career .recruit_list .detail a:hover {
	opacity: 0.65;
	-moz-opacity: 0.65;
	filter: alpha(opacity=65);
}

.sp #recruit_page.career .recruit_list .detail a {
	padding: 12px 105px 14px 12px;
}


#recruit_page.career .recruit_list h5 {
	font-size: 14px;
	font-weight: bold;
	color: #000;
	line-height: 1.5;
}
.sp #recruit_page.career .recruit_list h5 {
  font-size: 10px;
}

#recruit_page.career .recruit_list .detail .location,
#recruit_page.career .recruit_list .detail .job {
	display: block;
	margin-top: 18px;
	font-size: 12px;
	line-height: 1.3;
	color: #000;
}

#recruit_page.career .recruit_list .detail .job {
	margin-top: 5px;
}

.sp #recruit_page.career .recruit_list .detail .location,
.sp #recruit_page.career .recruit_list .detail .job  {
	margin-top: 6px;
	font-size: 9px;
}

#recruit_page.career .recruit_list .more {
	position: absolute;
	top: 50%;
	right: 25px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 76px;
	height: 25px;
	font-size: 10px;
	font-weight: bold;
	line-height: 25px;
	text-align: center;
	color: #fff;
	background-color: #000;
}
.sp #recruit_page.career .recruit_list .more {
	right: 12px;
}


#recruit_page.career .recruit_list .no_recruitment {
	margin: 50px 0 200px 0;
}
.sp #recruit_page.career .recruit_list .no_recruitment {
	margin: 50px 0 100px 0;
}


/*---
中途詳細 ---*/
#recruit_page.single table tr:last-child {
  border-bottom: 1px solid #cccccc;
}

#recruit_page.single th {
  width: 170px;
  padding-left: 25px;
	box-sizing: border-box;
  font-family: "Lato", sans-serif;
  font-weight: 400;
}
.sp #recruit_page.single th {
	width: 30%;
	padding-left: 20px;
	font-size: 9px;
}

#recruit_page.single td {
  padding: 16px 25px 16px 0;
	line-height: 2.5;
}
.sp #recruit_page.single td {
	padding: 10px 20px 10px 0;
  font-size: 9px;
  line-height: 1.8;
}

#recruit_page.single h4 {
  margin: 30px 0 15px 0;
  font-size: 14px;
  font-family: "Lato", sans-serif;
  font-weight: 400;
  line-height: 190%;
}
.sp #recruit_page.single h4,
.sp #recruit_page.form h4 {
  line-height: 1.5;
  font-size: 10px;
  margin: 15px 0 15px 0;
}

#recruit_page.single .entry {
	width: 100%;
	padding: 68px 0;
	background-color: #f5f5f5;
}
.sp #recruit_page.single .entry {
  padding: 17px 17px;
  box-sizing: border-box;
}

#recruit_page.single .button {
	position: relative;
	display: block;
	margin: 0 auto;
	width: 600px;
	height: 62px;
	font-size: 14px;
	line-height: 62px;
	letter-spacing: 0.15em;
	font-weight: bold;
	text-align: center;
	background-color: #000;
	color: #fff;
}
.sp #recruit_page.single .button {
	width: 100%;
	height: 40px;
	font-size: 10px;
	line-height: 40px;
}

#recruit_page.single .button:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

#recruit_page.single .button:before {
	position: absolute;
	top: 50%;
	right: 245px;
	width: 6px;
	height: 6px;
	margin-top: -4px;
  content: '';
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.sp #recruit_page.single .button:before {
  right: 37%;
  width: 5px;
  height: 5px;
	margin-top: -3px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
}

#recruit_page.single .recruit_list {
  position: relative;
  margin-top: 55px!important;
}
.sp #recruit_page.single .recruit_list {
  margin-top: 20px!important;
}

#recruit_page.single .recruit_list li {
	margin-top: 45px;
}
.sp #recruit_page.single .recruit_list li {
  margin-top: 30px;
}
.sp #recruit_page.single .recruit_list li:first-child {
  margin-top: 0;
}

#recruit_page.single .relation {
	margin-top: 100px;
}
.sp #recruit_page.single .relation {
  margin-top: 55px;
}

#recruit_page.single .back {
	margin-top: 55px;
	padding: 22px 0;
	border-top: 1px solid #d9d8d7;
	text-align: center;
}
.sp #recruit_page.single .back {
	margin-top: 35px;
	padding: 10px 0;
}

#recruit_page.single .back a {
  display: inline-block;
  padding: 5px;
  text-align: center;
  font-size: 11px;
  letter-spacing: 0.15em;
  font-weight: bold;
}
.sp #recruit_page.single .back a {
  font-size: 9px;
}

#recruit_page.career #recruit_list {
	margin: 5px 0 40px 0;
}

#recruit_page.career h4 {
	margin: 65px 0 15px 0;
	font-size: 14px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
	line-height: 190%;
}
.sp #recruit_page.career h4 {
	margin: 65px 0 8px 0;
}

#recruit_page.career #recruit_list li:first-child {
	font-size: 11px;
}

#recruit_page.career #recruit_list li a,
#recruit_page.career #recruit_list li span {
	font-size: 13px;
	font-weight: bold;
}
#recruit_page.career #recruit_list li a {
	padding-left: 20px;
	color: #000000;
	background-image: url(images/arrow1.png);
	background-repeat: no-repeat;
	background-position: 0px 6px;
	background-size: 5px 6px;
}
#recruit_page.career #recruit_list li a:hover {
	color: #777777;
}
.sp #recruit_page.career #recruit_list li a,
.sp #recruit_page.career #recruit_list li span {
	display: inline-block;
	font-size: 11px;
}






/* ENTRY FORM
-------------------------------------------------------------------------------*/
#recruit_page.form .hidden_data {
	display: none;
}
/* error */
#recruit_page.form .mw_wp_form .error {
  line-height: 1.4;
  margin-top: 7px;
}
#recruit_page.form .mw_wp_form .error + span {
	margin-top: 0;
}

/* placeholder */
#recruit_page.form .mw_wp_form ::-webkit-input-placeholder {
  color: #bcbcbc;
}
#recruit_page.form .mw_wp_form ::-moz-placeholder {
  color: #bcbcbc; opacity: 1;
}
#recruit_page.form .mw_wp_form :-ms-input-placeholder {
  color: #bcbcbc;
}

/* select */
#recruit_page.form select {
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  -ms-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
	height: 36px;
  padding: 0 33px 0 12px;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.sp #recruit_page.form select {
	height: 29px;
  padding: 0 33px 0 10px;
  font-size: 10px;
}



#recruit_page.form .month select,
#recruit_page.form .day select {
  padding: 0 20px 0 12px;
}

#recruit_page.form .mw_wp_form select option{
  background-color: #fff;
  color: #333;
}
#recruit_page.form .mw_wp_form select::-ms-expand {
  display: none;
}
#recruit_page.form .mw_wp_form select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}

/* input */
#recruit_page.form .mw_wp_form .confirm_wrap input {
	display: block;
	margin: 0 auto;
	width: 600px;
	height: 63px;
	text-align: center;
	font-size: 14px;
	line-height: 63px;
	letter-spacing: 0.15em;
	color: #fff;
	background-color: #000;
	box-sizing: border-box;
	border: none;
}
.sp #recruit_page.form .mw_wp_form .confirm_wrap input {
	width: 100%;
	height: 40px;
	font-size: 12px;
	line-height: 40px;
}

#recruit_page.form .mw_wp_form .confirm_wrap input:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

#recruit_page.form .mw_wp_form input {
  width: 100%;
  height: 36px;
  padding: 0 15px;
  box-sizing: border-box;
	border-color: #d9d8d7;
	border-width: 1px;
	border-style: solid;
	-webkit-border-radius: 0;
	-webkit-appearance: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.sp #recruit_page.form .mw_wp_form input {
  height: 29px;
	padding: 0 10px;
}

/* textarea */
#recruit_page.form .mw_wp_form textarea {
	width: 100%;
	height: 280px;
	padding: 15px;
	box-sizing: border-box;
	border-color: #d9d8d7;
	border-width: 1px;
	border-style: solid;
	-webkit-border-radius: 0;
	-webkit-appearance: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.sp #recruit_page.form .mw_wp_form textarea {
	width: 100%;
	height: 200px;
	padding: 10px;
}

/* option */
#recruit_page.form option {
  font-weight: normal;
  display: block;
  white-space: pre;
  min-height: 1.2em;
  padding: 0px 2px 1px;
}

/* radio */
#recruit_page.form .gender {
	font-size: 0;
}

#recruit_page.form .gender_wrap .mwform-radio-field {
	display: inline-block;
	margin: 0;
}

#recruit_page.form .gender_wrap label {
  display: inline-block;
	cursor: pointer;
}

#recruit_page.form .gender_wrap input {
  display: none;
}

#recruit_page.form .gender_wrap .mwform-radio-field-text {
	display: inline-block;
  position: relative;
	width: 70px;
	height: 36px;
	margin: 0;
	background-color: #fff;
	border: 1px solid #d9d8d7;
	font-size: 12px;
	text-align: center;
	line-height: 36px;
}
.sp #recruit_page.form .gender_wrap .mwform-radio-field-text {
	width: 75px;
	height: 29px;
	line-height: 29px;
	font-size: 10px;
}


#recruit_page.form .gender_wrap .mwform-radio-field:first-child .mwform-radio-field-text {
	border-right: none;
}

#recruit_page.form .gender_wrap input:checked + .mwform-radio-field-text {
	background-color: #d9d8d7;
}



#recruit_page.form h4 {
  margin: -4px 0 25px 0;
}
.sp #recruit_page.form h4 {
  margin: -4px 0 17px 0;
}

#recruit_page.form .mw_wp_form form > div {
	position: relative;
	padding: 25px;
	box-sizing: border-box;
	background-color: #f5f5f5;
	border-bottom: 1px solid #d9d8d7;
}
#recruit_page.form .mw_wp_form div:before {
	position: absolute;
	top: 38px;
	left: 26px;
	font-size: 12px;
}

.sp #recruit_page.form .mw_wp_form form > div {
	position: static;
	padding: 18px 20px;
}

.sp #recruit_page.form .mw_wp_form h5 {
  width: 100%;
  min-height: 0;
  padding-top: 0;
  font-size: 10px;
  margin-bottom: 10px;
}

#recruit_page.form .mw_wp_form h5 {
	position: relative;
	width: 185px;
	min-height: 36px;
	padding-top: 10px;
	font-size: 12px;
	box-sizing: border-box;
}
.sp #recruit_page.form .mw_wp_form h5 {
  position: static;
  width: 185px;
  /* min-height: 36px; */
  padding-top: 10px;
  font-size: 10px;
}

#recruit_page.form .mw_wp_form h5:after {
	position: absolute;
  top: 7px;
  left: 142px;
	content: "必須";
	font-size: 10px;
	padding: 5px;
	background-color: #fff;
	border: 1px solid #d9d8d7;
}
.win #recruit_page.form .mw_wp_form h5:after {
	padding: 4px 5px 6px;
}



#recruit_page.form .mw_wp_form .career_wrap h5:after,
#recruit_page.form .mw_wp_form .license_wrap h5:after,
#recruit_page.form .mw_wp_form .file_wrap h5:after,
#recruit_page.form .mw_wp_form .message_wrap h5:after {
	display: none;
}

.sp #recruit_page.form .mw_wp_form h5:after {
	position: static;
	margin-left: 12px;
  padding: 2px 3px 2px 2px;
	font-size: 9px;
}

#recruit_page.form .mw_wp_form form .right {
	width: 500px;
}
.sp #recruit_page.form .mw_wp_form form .right {
	width: 100%;
}

#recruit_page.form .mw_wp_form div.adress_wrap,
#recruit_page.form .mw_wp_form div.education_wrap,
#recruit_page.form .mw_wp_form div.career_wrap,
#recruit_page.form .mw_wp_form div.license_wrap,
#recruit_page.form .mw_wp_form div.file_wrap,
#recruit_page.form .mw_wp_form div.message_wrap {
	border: none;
	margin-bottom: 10px;
}

#recruit_page.form .mw_wp_form div.file_wrap {
	display: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#recruit_page.form .mw_wp_form div.confirm_wrap {
	margin-top: 15px;
	padding: 25px;
	box-sizing: border-box;
	background-color: transparent;
	border-bottom: none;
}

#recruit_page.form .mw_wp_form .birth_wrap .right div  {
	margin-right: 8px;
  display: inline-block;
  position: relative;
  border-radius: 0;
  border: 1px solid #d9d8d7;
  background-color: #fff;
}
.sp #recruit_page.form .mw_wp_form .birth_wrap .right div  {
	margin-right: 2px;
}


#recruit_page.form .mw_wp_form .birth_wrap .right div:after {
  position: absolute;
	top: 16px;
	right: 10px;
  display: block;
  content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5.2px 3px 0 3px;
	border-color: #000000 transparent transparent transparent;
  pointer-events: none;
}
.safari #recruit_page.form .mw_wp_form .birth_wrap .right div:after,
.firefox #recruit_page.form .mw_wp_form .birth_wrap .right div:after,
.sp #recruit_page.form .mw_wp_form .birth_wrap .right div:after {
	top: 12px;
	right: 9px;
}

#recruit_page.form .mw_wp_form .adress_wrap .right div {
	margin-top: 11px;
}
#recruit_page.form .mw_wp_form .adress_wrap div.zip {
	margin-top: 0;
}

#recruit_page.form .mw_wp_form .adress_wrap div.adress {
	position: relative;
}

#recruit_page.form .mw_wp_form .adress_wrap div.adress:after {
	position: absolute;
  top: 7px;
  left: -43px;
	content: "必須";
	font-size: 10px;
	padding: 5px;
	background-color: #fff;
	border: 1px solid #d9d8d7;
}
#recruit_page.form .mw_wp_form_confirm .adress_wrap div.adress:after,
.sp #recruit_page.form .mw_wp_form .adress_wrap div.adress:after {
	display: none;
}

#recruit_page.form .mw_wp_form .adress_wrap div.zip input {
	width: 120px;
}

#recruit_page.form .mw_wp_form .file_wrap .file {
  display: inline-block;
  position: relative;
	height: 43px;
	line-height: 43px;
  text-align: center;
  background-color: #d9d8d7;
}
#recruit_page.form .mw_wp_form .file_wrap .file:hover {
	background-color: #cfcfcf;
}
#recruit_page.form .mw_wp_form .file_wrap .file input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

#recruit_page.form .mw_wp_form .file_wrap .file .mwform-file-delete {
	position: absolute;
	top: 0;
	right: -18px;
	z-index: 1000;
  /* cursor: pointer;
  visibility: hidden; */
}
.sp #recruit_page.form .mw_wp_form .file_wrap .file .mwform-file-delete {
	right: -15px;
}

#recruit_page.form .mw_wp_form .file_wrap .error {
	line-height: normal;
	text-align: left;
	position: absolute;
}


#recruit_page.form .policy {
	margin-top: 27px;
	text-align: center;
}
.sp #recruit_page.form .policy {
	margin-top: 17px;
}

#recruit_page.form .policy a {
	color: #a5a5a5;
}
.sp #recruit_page.form .policy a {
	font-size: 9px;
}

#recruit_page.form .policy a:hover {
	color: #000;
}



/*---
エントリーフォーム（確認） ---*/
#recruit_page.form .mw_wp_form_confirm {

}

#recruit_page.form .mw_wp_form_confirm h5:before,
#recruit_page.form .mw_wp_form_confirm h5:after {
	display: none;
}

#recruit_page.form .mw_wp_form_confirm .right {
	font-size: 14px;
  margin-top: 5px;
	line-height: 1.85;
}

#recruit_page.form .mw_wp_form_confirm .right,
#recruit_page.form .mw_wp_form_confirm .right * {
	font-weight: bold;
}

#recruit_page.form .mw_wp_form_confirm .birth_wrap .right div {
  margin-right: 0;
  border: none;
  background-color: transparent;
}
#recruit_page.form .mw_wp_form_confirm .birth_wrap .right div:after {
	display: none;
}

#recruit_page.form .mw_wp_form_confirm .adress_wrap .right div {
  margin-top: 0;
}

#recruit_page.form .mw_wp_form_confirm .file_wrap .file {
	height: 36px;
	font-size: 0;
  text-align: left;
  background-color: transparent;
}

#recruit_page.form .mw_wp_form_confirm .mw-wp-form_file {
	position: absolute;
	top: 0;
	left: 0;
}

#recruit_page.form .mw_wp_form_confirm .mw-wp-form_file a {
	font-size: 14px;
  margin-top: 5px;
	line-height: 1.85;
	color: #000;
}

/*---
エントリーフォーム（完了） ---*/
#recruit_page.form .mw_wp_form_complete {
	padding: 100px 0;
	text-align: center;
	font-size: 14px;
  font-weight: bold;
  line-height: 1.68;
}

#recruit_page.form .mw_wp_form_complete ~ .policy {
	display: none;
}



#footer {
  margin-top: 180px;
}

.sp #footer #copyright {
	font-size: 6px;
}

.sp #footer #lang {
	top: auto;
  bottom: 35px;
}

.mwform-file-delete {
  visibility: hidden!important;
}














/* NEWS RELEASE Page
-------------------------------------------------------------------------------*/
#newsrelease_page .entry_content {
	margin-top: 45px;
}

#newsrelease_page #left {
	float: left;
	width: 245px;
	margin-top: 5px;
}
.sp #newsrelease_page #left {
	float: none;
	width: 100%;
	margin-bottom: 45px;
	text-align: center;
}

#newsrelease_page #left h3 {
	margin-bottom: 15px;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}
.sp #newsrelease_page #left h3 {
	display: none;
}

#newsrelease_page #left ul {
	margin-bottom: 40px;
}

#newsrelease_page #left ul li {
	margin-bottom: 8px;
	font-size: 11px;
}

#newsrelease_page #right {
	margin-left: 245px;
}
.sp #newsrelease_page #right {
	margin-left: 0;
	margin-top: 100px;
	padding: 0 15px;
}

#newsrelease_page .section {
	margin-bottom: 120px;
}

#newsrelease_page #right h4 {
	margin-bottom: 8px;
	padding-bottom: 12px;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	line-height: 190%;
	border-bottom: 1px solid #cccccc;
}

#newsrelease_page #right .meta {
	margin-bottom: 45px;
	font-size: 11px;
}
.sp #newsrelease_page #right .meta {
	margin-bottom: 25px;
}

#newsrelease_page #right .newsrelease_body a {
	text-decoration: underline;
}
#newsrelease_page #right .newsrelease_body a:hover {
	text-decoration: none;
}





/* COMPLIANCE PAGE
-------------------------------------------------------------------------------*/
#compliance_page .entry_content {
	margin-top: 45px;
}

#compliance_page #left {
	float: left;
	width: 245px;
}
.sp #compliance_page #left {
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 45px;
}

#compliance_page #left h3 {
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}

#compliance_page #left h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#compliance_page #right {
	margin-left: 245px;
}
.sp #compliance_page #right {
	margin-left: 0;
	padding: 0 15px;
}

#compliance_page #right strong {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}






/* POLICY PAGE
-------------------------------------------------------------------------------*/
#policy_page .entry_content {
	margin-top: 45px;
}

#policy_page #left {
	float: left;
	width: 245px;
}
.sp #policy_page #left {
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 45px;
}

#policy_page #left h3 {
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}

#policy_page #left h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	line-height: 1.5;
}

#policy_page #right {
	margin-left: 245px;
}
.sp #policy_page #right {
	margin-left: 0;
	padding: 0 15px;
}

#policy_page #right strong {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}





/* SUSTAINABILITY PAGE
-------------------------------------------------------------------------------*/
#sustainability_page #content_header .lang_button {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 11px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
	color: #000000;
}
#sustainability_page #content_header .lang_button:hover {
	color: #777777;
}
.sp #sustainability_page #content_header .lang_button {
	top: 16px;
  right: 15px;
}

#sustainability_page .entry_content {
	margin-top: 38px;
}
.sp #sustainability_page .entry_content {
	margin-top: 88px;
}

#sustainability_page #left {
	float: left;
	width: 245px;
}
.sp #sustainability_page #left {
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 33px;
}

#sustainability_page #left h3 {
	margin-top: 4px;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}

#sustainability_page #left h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	line-height: 1.5;
}

#sustainability_page #right {
	margin-left: 245px;
}
.sp #sustainability_page #right {
	margin-left: 0;
	padding: 0 25px;
}

#sustainability_page .issue {
	margin: 90px 0 60px 0;
}
.sp #sustainability_page .issue {
	margin: 100px 0 60px 0;
}

#sustainability_page .issue .issue_list {
	display: flex;
	justify-content: space-between;
}
.sp #sustainability_page .issue .issue_list {
	flex-wrap: wrap;
	margin-bottom: 60px;
}

#sustainability_page .issue .issue_list li {
	width: 225px;
	padding-bottom: 25px;
	background-color: #F8F8F8;
}
.sp #sustainability_page .issue .issue_list li {
	width: 100%;
	margin-bottom: 24px;
}
.sp #sustainability_page .issue .issue_list li:last-child {
	margin-bottom: 0;
}

#sustainability_page .issue .issue_list li img {
	margin-bottom: 12px;
	width: 100%;
	height: auto;
}
.sp #sustainability_page .issue .issue_list li img {
  height: 150px;
	object-fit: cover;
}

#sustainability_page .issue .issue_list li .title_en {
	margin-bottom: -1px;
	padding: 0 20px;
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 0.075em;
}

#sustainability_page .issue .issue_list li .title_ja {
	margin-bottom: 17px;
	padding: 0 20px;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
}

#sustainability_page .issue .issue_list li .description {
	margin-bottom: 0;
	padding: 0 20px;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
}

#sustainability_page .issue .issue_list li .description .space {
	visibility: hidden;
}
.sp #sustainability_page .issue .issue_list li .description .space {
	display: none;
}

#sustainability_page .effort {
	margin-bottom: 120px;
}
.sp #sustainability_page .effort {
	width: calc(100% + 25px);
	overflow-x: scroll;
	margin-bottom: 43px;
}

.sp #sustainability_page .effort .initial_list {
	width: 735px;
	margin-right: 25px;
}

#sustainability_page .effort .initial_list li {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
#sustainability_page .effort .initial_list > li {
	margin-bottom: 24px;
}
#sustainability_page .effort .initial_list > li:first-child {
	margin-bottom: 8px;
}

#sustainability_page .effort .initial_list li .cell {
	background-color: #F8F8F8;
}
#sustainability_page .effort .initial_list > li:first-child .cell {
	text-align: center;
	background-color: #F5F4F0;
}
#sustainability_page .effort .initial_list > li:first-child .cell.initial {
	background-color: #F8F8F8;
}

#sustainability_page .effort .initial_list > li:first-child .mark_list li .mark_container:after {
	content: 'SDGs';
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
}

#sustainability_page .effort .initial_list > li:first-child .mark_list li .mark_container img {
	display: none;
}

#sustainability_page .effort .initial_list li .initial {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 57px;
	margin-bottom: 0;
	font-size: 12px;
	letter-spacing: 0.05em;
	text-align: center;
}

#sustainability_page .effort .initial_list li .mark_list {
	width: 670px;
	/* width: calc(100% - 65px); */
}

#sustainability_page .effort .initial_list li .mark_list li .mark_container {
	display: flex;
	justify-content: center;
	align-items: center;
	order: 1;
	width: 176px;
	margin: 0 0 8px 8px;
}
#sustainability_page .effort .initial_list li .mark_list li:last-child .mark_container {
	margin-bottom: 0;
}

#sustainability_page .effort .initial_list li .mark_list li .mark_container img {
	width: 40px;
	height: 40px;
	margin: 0 4px;
}

#sustainability_page .effort .initial_list li .mark_list li .initiatives_list {
	order: 0;
}

#sustainability_page .effort .initial_list li .mark_list li .initiatives_list li {
	margin-bottom: 8px;
}
#sustainability_page .effort .initial_list li .mark_list li:last-child .initiatives_list li:last-child {
	margin-bottom: 0;
}

#sustainability_page .effort .initial_list li .mark_list li .initiatives_list li .kadai {
	display: flex;
	align-items: center;
	width: 204px;
	padding: 0 20px;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
}
#sustainability_page .effort .initial_list li:first-child .mark_list li .initiatives_list li .kadai {
	justify-content: center;
}
.sp #sustainability_page .effort .initial_list li .mark_list li .initiatives_list li .kadai {
	width: 184px;
}

#sustainability_page .effort .initial_list li .mark_list li .initiatives_list li .torikumi {
	width: 216px;
	margin-left: 8px;
	padding: 17px 20px;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
}

#sustainability_page .effort .initial_list li .mark_list li .initiatives_list li .torikumi.no_data {
	width: 224px;
	margin-left: 0;
}

#sustainability_page .codeofconduct {
	margin-bottom: 30px;
}

#sustainability_page .codeofconduct .heading {
	margin-bottom: 30px;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.375;
}

#sustainability_page .codeofconduct .codeofconduct_item {
	margin-bottom: 90px;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
}
.sp #sustainability_page .codeofconduct .codeofconduct_item {
	margin-bottom: 125px;
}

#sustainability_page .codeofconduct .practice {
	padding: 32px 32px 60px 20px;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.83;
	background-color: #F8F8F8;
}
.sp #sustainability_page .codeofconduct .practice {
	padding: 32px 20px 45px 20px;
}




/* PLAN PAGE
-------------------------------------------------------------------------------*/
#plan_page .entry_content {
	margin-top: 45px;
}

#plan_page #left {
	float: left;
	width: 245px;
}
.sp #plan_page #left {
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 45px;
}

#plan_page #left h3 {
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}

#plan_page #left h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
	line-height: 1.6;
}

#plan_page #right {
	margin-left: 245px;
}
.sp #plan_page #right {
	margin-left: 0;
	padding: 0 15px;
}

#plan_page #right strong {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}





/* TERMS PAGE
-------------------------------------------------------------------------------*/
#terms_page .entry_content {
	margin-top: 45px;
}

#terms_page #left {
	float: left;
	width: 245px;
}
.sp #terms_page #left {
	float: none;
	width: 100%;
	text-align: center;
	margin-bottom: 45px;
}

#terms_page #left h3 {
	font-size: 14px;
	font-family: "Lato", sans-serif;
  font-weight: 400;
	letter-spacing: 1px;
}

#terms_page #left h3 span {
	display: block;
	margin-top: 8px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}

#terms_page #right {
	margin-left: 245px;
}
.sp #terms_page #right {
	margin-left: 0;
	padding: 0 15px;
}

#terms_page #right strong {
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
}





/* SITEMAP PAGE
-------------------------------------------------------------------------------*/
.sp #sitemap_page #sitetree {
	display: block;
	padding: 0 15px;
}

#sitemap_page .entry_content {
	margin-top: 45px;
}

#sitemap_page #sitetree > li:nth-child(2) {
	margin-left: 90px;
}
.sp #sitemap_page #sitetree > li:nth-child(2) {
	margin-left: 0px;
	padding-left: 10px;
}

#sitemap_page .child_list li a {
	font-size: 11px;
}

#sitemap_page #menu-footer_ja_2,
#sitemap_page #menu-footer_en_2 {

}

#sitemap_page #menu-footer_ja_2 li,
#sitemap_page #menu-footer_en_2 li {
	float: none;
	margin: 0 0 25px 0;
}
.sp #sitemap_page #menu-footer_ja_2 li,
.sp #sitemap_page #menu-footer_en_2 li {
	float: none;
	margin: 0 0 25px 0;
	font-size: 11px;
}

#sitemap_page #topics_list li {
	margin: 0 0 25px 0;
}
.sp #sitemap_page #topics_list li {
	font-size: 11px;
}



/* Footer
-------------------------------------------------------------------------------*/
#footer {
	margin-top: 60px;
	background-color: #f0f0f0;
}
.error404 #footer {
	display:none !important;
}

#footer_container {
	position: relative;
	width: 980px;
	margin: 0 auto;
	padding: 25px 0;
}
.sp #footer_container {
	width: 100%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 25px 15px;
}

#sitetree {
	margin-bottom: 17px;
	padding-bottom: 35px;
	border-bottom: 1px solid #cccccc;
}
.sp #sitetree {
	display: none;
}

#sitetree > li {
	float: left;
	margin-left: 90px;
}
#sitetree > li:first-child {
	margin-left: 0;
}
.sp #sitetree > li {
	margin: 0 0 45px 0;
	padding-left: 10px;
	width: 50%;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.sp #sitetree > li:first-child {
	padding-left: 0;
}

#sitetree > li:nth-child(2) {
	margin-left: 20px;
}

.child_list li {
	margin-bottom: 8px;
}
.child_list li:first-child {
	margin-bottom: 30px;
	font-size: 11px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}
.sp .child_list li:first-child {
	margin-bottom: 15px;
}

#sitetree li:nth-child(5) .child_list li:first-child {
	margin-bottom: 60px;
}

.child_list li {
	font-size: 10px;
	font-family: "Lato", "Noto Sans JP";
	letter-spacing: 1px;
	color: #777777;
}
.two_column {
	width: 310px;
}

.first_column {
	float: left;
	clear: both;
	width: 180px;
}

.menu-footer_ja li,
.menu-footer_en li {
	float: left;
	margin-left: 15px;
}
.menu-footer_ja li:first-child,
.menu-footer_en li:first-child {
	margin-left: 0;
}
.sp .menu-footer_ja li {
	float: none;
	margin-left: 0;
	margin-bottom: 10px;
}

.menu-footer_ja li a,
.menu-footer_en li a {
	font-size: 10px;
}


#copyright {
	position: absolute;
	bottom: 12px;
	right: 0px;
	font-size: 9px;
	font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
}
.sp #copyright {
	position: static;
	bottom: 0;
	right: 0;
	margin-top: 30px;
}


#scrolltop {
	position:fixed;
	bottom:10px;
	right:10px;
	z-index:9999;
	cursor:pointer;
}
#scrolltop:hover {
	opacity:0.4 !important;
	-moz-opacity:0.4 !important;
	filter:alpha(opacity=40);
}
.sp #scrolltop {
	display:none !important;
}





/*  加筆
-------------------------------------------------------------------------------*/
#sitetree > li:nth-child(4) li {
	display: none;
}

#sitetree > li:nth-child(4) li:first-child,
#sitetree > li:nth-child(4) li:nth-last-child(-n+2) {
	display: block;
}


/*---
その他 ---*/
.sp #compliance_page .entry_content,
.sp #policy_page .entry_content,
.sp #plan_page .entry_content,
.sp #terms_page .entry_content,
.sp #sitemap_page .entry_content {
  margin-top: 88px;
}
