@charset "utf-8";

/*
Copyright (c) 2010, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.com/yui/license.html
version: 2.8.1
*//*
body{font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}select,input,button,textarea,button{font:99% arial,helvetica,clean,sans-serif;}table{font-size:inherit;font:100%;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}
*/
/* ===================================================================
 style info : コンテンツエリア関係 他

fonts
 10px = 77%     11px = 85%     12px = 93%     13px = 100%
 14px = 108%    15px = 116%    16px = 123.1%  17px = 131%
 18px = 138.5%  19px = 146.5%  20px = 153.9%  21px = 161.6%
 22px = 167%    23px = 174%    24px = 182%    25px = 189%
 26px = 197%
=================================================================== */

/*----------------------------------------------------
	webフォント読み込み
----------------------------------------------------*/
/* NotoSerifJP 明朝 */
/* Android 4.3 までのバージョンにも対応する場合 *//*
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/NotoSerifJP/NotoSerifJP-Regular.woff') format('woff'),
    url('fonts/NotoSerifJP/NotoSerifJP-Black.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/NotoSerifJP/NotoSerifJP-Bold.woff') format('woff'),
    url('fonts/NotoSerifJP/NotoSerifJP-Black.ttf') format('truetype');
  font-display: swap;
} */

/* NotoSansJP ゴシック */
/* Android 4.3 までのバージョンにも対応する場合 *//*
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/NotoSansJP/NotoSansJP-Regular.woff') format('woff'),
    url('fonts/NotoSansJP/NotoSansJP-Black.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/NotoSansJP/NotoSansJP-Medium.woff') format('woff'),
    url('fonts/NotoSansJP/NotoSansJP-Medium.ttf') format('truetype');
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/NotoSansJP/NotoSansJP-Bold.woff') format('woff'),
    url('fonts/NotoSansJP/NotoSansJP-Black.ttf') format('truetype');
}*/

/* GenEiGothicP-Gothic ゴシック */
/* Android 4.3 までのバージョンにも対応する場合 */
@font-face {
  font-family: "GenEiGothicP-Normal"; /* 任意の名前を設定 */
  font-style: "normal"; /* フォントスタイルの設定 */
  font-weight: 300; /* フォントウェイトの設定 */
  src: url("../fonts/GenEiGothicP-Light/GenEiGothicP-Light.woff") format("woff"),
    url("../fonts/GenEiGothicP-Light/GenEiGothicP-Light.otf") format("opentype"); /* フォントファイルの指定 */
}
@font-face {
  font-family: "GenEiGothicP-Normal"; /* 任意の名前を設定 */
  font-style: "normal"; /* フォントスタイルの設定 */
  font-weight: 400; /* フォントウェイトの設定 */
  src: url("../fonts/GenEiGothicP-Regular/GenEiGothicP-Regular.woff") format("woff"),
    url("../fonts/GenEiGothicP-Regular/GenEiGothicP-Regular.otf") format("opentype"); /* フォントファイルの指定 */
}
@font-face {
  font-family: "GenEiGothicP-Normal"; /* 任意の名前を設定 */
  font-style: "normal"; /* フォントスタイルの設定 */
  font-weight: 500; /* フォントウェイトの設定 */
  src: url("../fonts/GenEiGothicP-SemiBold/GenEiGothicP-SemiBold.woff") format("woff"),
    url("../fonts/GenEiGothicP-SemiBold/GenEiGothicP-SemiBold.otf") format("opentype"); /* フォントファイルの指定 */
}
@font-face {
  font-family: "GenEiGothicP-Normal"; /* 任意の名前を設定 */
  font-style: "normal"; /* フォントスタイルの設定 */
  font-weight: 700; /* フォントウェイトの設定 */
  src: url("../fonts/GenEiGothicP-Bold/GenEiGothicP-Bold.woff") format("woff"),
    url("../fonts/GenEiGothicP-Bold/GenEiGothicP-Bold.otf") format("opentype"); /* フォントファイルの指定 */
}
@font-face {
  font-family: "GenEiGothicP-Normal"; /* 任意の名前を設定 */
  font-style: "normal"; /* フォントスタイルの設定 */
  font-weight: 800; /* フォントウェイトの設定 */
  src: url("../fonts/GenEiGothicP-Heavy/GenEiGothicP-Heavy.woff") format("woff"),
    url("../fonts/GenEiGothicP-Heavy/GenEiGothicP-Heavy.otf") format("opentype"); /* フォントファイルの指定 */
}


/* 読み込み　参考 */
/*
.NotoSerifJP {
  font-family: 'Noto Serif Japanese', serif;
}

.NotoSansJP {
	font-family: 'Noto Sans Japanese', sans-serif;
}
*/
/*----------------------------------------------------
	共通
----------------------------------------------------*/
/* スクロールバーの有無によるズレ対策 */
html {
	overflow-y: scroll;
	font-size: 62.5%; /* sets the base font to 10px for easier math */
}
body {
	font-size: 16px;
  font-size: 1.6rem;
	/* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; */
  font-family:"GenEiGothicP-Normal", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  font-weight: 300;
}

input, textarea {
	font-size: 16px;
  font-size: 1.6rem;
	/* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; */
  font-family:"GenEiGothicP-Normal", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-weight: 300;
}
/*
body {
	font-size: 16px;
  font-size: 1.6rem;
	/* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; *//*
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}
*//*
input, textarea {
	font-size: 16px;
  font-size: 1.6rem;
	/* font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; *//*
	font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-weight: 500;
} */
/*
body {
	font-size: 16px;
  font-size: 1.6rem;
	font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}

input, textarea {
	font-size: 16px;
  font-size: 1.6rem;
	font-family: "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}
*/

/* for IE6 */
* html body {
	font-family: "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}
* html input, * html textarea {
	font-family: "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

/* リンク
----------------------------------------------------*/
a {
	font-size: 16px;
  font-size: 1.6rem;
	color: rgba(61,125,204,1);
	text-decoration: none;
	vertical-align: top;
}

a:link { text-decoration: underline; none; color: rgba(61,125,204,1); }

a:visited { text-decoration: underline; none; color: rgba(49,64,138,1); }

a:hover { text-decoration: underline; color: rgba(255,165,0,1); }

a:active { text-decoration: underline; none; color: rgba(131,94,191,1); }

a[href^="tel:"] { cursor: default; }

/* よく使いそうなCSS3
----------------------------------------------------*/
#selectors {
/* 角丸 */
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;

/* 角丸個別 */
	-webkit-border-top-right-radius: 15px;
	-moz-border-radius-topright: 15px;
	border-top-right-radius: 15px;

/* ボックスに影 */
	-webkit-box-shadow: 1px 1px 3px #999;
	-moz-box-shadow: 1px 1px 3px #999;
	box-shadow: 1px 1px 3px #999;

/* テキストに影 */
	text-shadow: 1px 1px 0px #999;
}

/* 汎用
----------------------------------------------------*/
/* Text Align
 * --------------------------------------------- */
.textAlignCenter { text-align: center; }
.textAlignLeft { text-align: left !important; }
.textAlignRight { text-align: right !important; }

/* Float
 * --------------------------------------------- */
/* LEFT */ .floLeft { float:left; }
/* RIGHT */ .floRight { float:right; }
/* CLEAR */ .floClear { clear:both; float: none; }

/* Clearfix
 * --------------------------------------------- */
/* for modern browser */
.clearfix:after { font-size: 0; line-height: 0; height: 0; visibility: hidden; content:"."; display: block; clear: both; }
/* for IE5.5-7 */
.clearfix { zoom: 1; display: inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height: 1% }
.clearfix { display: block; }
.clearboth { clear: both; }

/* Global Style
---------------------------------------------------------------- */
.align_right { float: right; }
.align_left { float: left; }

/* Global Font Style
---------------------------------------------------------------- *//*
.fontSize10 { font-size:77%; }
.fontSize11 { font-size:85%; }
.fontSize12 { font-size:93%; }
.fontSize13 { font-size:100%; }
.fontSize14 { font-size:108%; }
.fontSize15 { font-size:116%; }
.fontSize16 { font-size:123.1%; }
.fontSize17 { font-size:131%; }
.fontSize18 { font-size:138.5%; }
.fontSize19 { font-size:146.5%; }
.fontSize20 { font-size:153.9%; }
.fontSize21 { font-size:161.6%; }
.fontSize22 { font-size:167%; }
.fontSize23 { font-size:174%; }
.fontSize24 { font-size:182%; }
.fontSize25 { font-size:189%; }
.fontSize26 { font-size:197%; }
.fontWeightNormal { font-weight:normal; }
.fontWeightBold { font-weight:bold; }
.fontColorRed { color:#C90000; }
.fontColorGray { color:#686868; }
.fontColorBlack { color:#4e4e4e; }
.fontColorBrown { color:#804e21; }
.fontColorOrange { color:#ff6600; }
.fontColorKurenai { color:#c30d23; }
*/
/* clerfix */
#contents:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

.clerfix:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

p,
a,
dt,
dd,
li,
input,
textarea {
	font-size: 16px;
  font-size: 1.6rem;
	line-height: 160%;
	color: rgba(77,77,77,1);
}

p.textIndent_1em {
	padding-left: 1em;
	text-indent: -1em;
}

p.textpadding_1em {
	padding-left: 1em;
}

p.textpadding_2em {
	padding-left: 2em;
}

p.caps {
	font-size: 14px;
	font-size:1.4rem;
	line-height: 120%;
}

span.caps {
	font-size: 14px;
	font-size:1.4rem;
	line-height: 120%;
}

img.verticalAlignBottom {
vertical-align: bottom;
}

.imgR {
	float: right;
	margin: 0 0 10px 10px;
}

.imgL {
	float: left;
	margin: 0 10px 10px 0;
}

.tC,
.btn {
	text-align: center;
}

.tR,
.sign {
	text-align: right;
}

sup {
	font-size: 12px;
	font-size: 1.2rem;
}

.emp {
	font-weight: bold;
}

.basicLine {
  border-bottom: 1px solid rgba(207,207,207,1);
}

.basicLine_dot {
  border-bottom: 1px dotted rgba(207,207,207,1);
}

/*----------------------------------------------------
画像
----------------------------------------------------*/
/*フルードイメージ*/
img,
iframe,
object {
    max-width: 100%;
    height: auto;
    width /****/:auto;  /*IE8のみ適用*/
    vertical-align: bottom;
}

/* --------------------------------------------------------
margin
-------------------------------------------------------- *//*
.mgn_b0 { margin-bottom: 0 !important;}
.mgn_b05 { margin-bottom: 5px !important;}
.mgn_b10 { margin-bottom: 10px !important;}
.mgn_b15 { margin-bottom: 15px !important;}
.mgn_b20 { margin-bottom: 20px !important;}
.mgn_b25 { margin-bottom: 25px !important;}
.mgn_b30 { margin-bottom: 30px !important;}
.mgn_b35 { margin-bottom: 35px !important;}
.mgn_b40 { margin-bottom: 40px !important;}
.mgn_b45 { margin-bottom: 45px !important;}
.mgn_b50 { margin-bottom: 50px !important;}
.mgn_b60 { margin-bottom: 60px !important;}
.mgn_b70 { margin-bottom: 70px !important;}
.mgn_b80 { margin-bottom: 80px !important;}

.mgn_t0 { margin-top: 0 !important;}
.mgn_t05 { margin-top: 5px !important;}
.mgn_t10 { margin-top: 10px !important;}
.mgn_t15 { margin-top: 15px !important;}
.mgn_t20 { margin-top: 20px !important;}
.mgn_t25 { margin-top: 25px !important;}
.mgn_t30 { margin-top: 30px !important;}
.mgn_t35 { margin-top: 35px !important;}
.mgn_t40 { margin-top: 40px !important;}
.mgn_t45 { margin-top: 45px !important;}
.mgn_t50 { margin-top: 50px !important;}
.mgn_t60 { margin-top: 60px !important;}
.mgn_t70 { margin-top: 70px !important;}
.mgn_t80 { margin-top: 80px !important;}
*/

/* --------------------------------------------------------
 Common Style
-------------------------------------------------------- */

/*	EXAMPLE STYLES */

body {
  display: none;
	color: rgba(72,72,72,1);
}
/*
.wrapper {
	width: 100%;
}
*/
.wideContents{
	margin: 0 auto;
	width: 100%;
}

/*	Mobile STYLES */

.mbimg_off{
	display:block;
}
.mbimg_on{
	display:none;
}

.mbcont_off{
	display:block;
}
.mbcont_on{
	display:none;
}


/*	Loading */

/* ローディング画面 *//*
#loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #fff;

 *//* 以下のコードを追加 *//*
   position: fixed;
   top: 0;
   left: 0;
   z-index: 9999;
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out;
}
.loader {
  color: rgba(207,207,207,1);
  font-size: 10px;
  margin: 80px auto;
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:before,
.loader:after {
  content: '';
  position: absolute;
  top: 0;
}
.loader:before {
  left: -3.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader:after {
  left: 3.5em;
}
@-webkit-keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}

.loaded {
  opacity: 0;
  visibility: hidden;
}
*/
/*	Back to top */

#pageTop {
  position: fixed;
  bottom: 30px;
  right: 30px;
}

#pageTop a {
  display: block;
  z-index: 999;
  padding: 11px 0 0 0;
  width: 45px;
  height: 45px;
	opacity: 0.8;
}

#pageTop a img {
	width: 45px;
  height: 45px;
}

#pageTop a:hover {
  filter:alpha(opacity=50);
	-moz-opacity: 0.5;
  opacity: 0.5;
  transition: 0.5s;
  }


/* --------------------------------------------------------
 wideImage
-------------------------------------------------------- */

#header.wideImage {
  height: 36vw;
	margin: 0 auto 100px;
	background-position: center top;
	background-repeat: no-repeat;
  background-size:auto 36vw;
  background-color: rgba(0,149,230,0.5);
}

#header.home #header_banner_area.wideImage,
#header.home #header_banner.swiper-container,
#header.home #header_banner div.swiper-wrapper ,
#header.home #header_banner div.swiper-wrapper div.swiper-slide {
  height: 57vw;
	margin: 0 auto 30px;
	background-position: center 50%;
	background-repeat: no-repeat;
  background-size:auto 57vw;
  background-color: rgba(0,149,230,0.5);
  position: relative;
}

#header.home {
  margin: 0 auto 100px;
}

#footer.wideImage {
  height: auto;
	margin: 0 auto 0;
  background-position: center top;
	background-repeat: no-repeat;
  background-size:1280px auto;
  background-color: rgba(0,149,230,1);
}


/* --------------------------------------------------------
 wide_container
-------------------------------------------------------- */

.wide_container {
	max-width: 1400px;
	margin: 0 auto;
  padding: 4rem;
}


/* --------------------------------------------------------
 header
-------------------------------------------------------- */

header {

}

header div#hGroup {
	margin: auto;
	width: auto;
}

header div#hGroup a {
  text-decoration: none;
}

header div#hGroup h1 {
  color: rgba(255,255,255,1);
	font-size: 30px;
	font-size: 3rem;
  font-weight: 500;
  line-height: 100%;
  text-decoration: none;
}
/*
div.home header div#hGroup {
  padding: 25px auto 30px;
}
*/
header div#hGroup {
	width: 100%;
}

div.home header div#hGroup h1,
div.home header div#hGroup p.read {
  color: rgba(255,255,255,1);
	text-align: center;
}

div.home header div#hGroup h1 {
  font-size: 48px;
	font-size: 4.8rem;
  line-height: 160%;
  font-weight: 700;
}

div.home header div#hGroup h1 span {
  display: block;
  text-align: center;
  font-size: 24px;
	font-size: 2.4rem;
  line-height: 160%;
}

div.home header div#hGroup p.read {
  margin-bottom: 2.5rem;
  font-size: 20px;
	font-size: 2rem;
  font-weight: 300;
  line-height: 160%;
}


/*	Primary Navigation */

header div#pNav ul {
	width: auto;
	margin: auto;
}

header div#pNav ul li {
	display: inline-block;
	margin-left: 20px;
	height: auto;
}

header div#pNav ul li:first-child {
	margin-left: 0;
}

header div#pNav ul li a {
	display: block;
	height: auto;
}

header div#pNav ul li a:hover {
  filter:alpha(opacity=50);
	-moz-opacity: 0.5;
  opacity: 0.5;
}

header div#pNav ul li a img {
}


/*	Navi */

nav#site-navigation div.menu-gnav-container  {
	height: auto;
	/* background-color: rgba(0,0,0,1); */
}

nav#site-navigation div.menu-gnav-container ul {
  text-align: right;
}

nav#site-navigation div.menu-gnav-container ul li {
	display: inline-block;
	padding: auto;
  border-right: 1px solid rgba(255,255,255,1);
}

nav#site-navigation div.menu-gnav-container ul li:first-child {
  border-left: 1px solid rgba(255,255,255,1);
}

nav#site-navigation div.menu-gnav-container ul li a {
	display: block;
	padding: 0 1.2rem;
	width: 100%;
	color: rgba(255,255,255,1);
	font-size: 15px;
	font-size: 1.5rem;
  font-weight: 500;
	text-align: center;
	text-decoration: none;
}

nav#site-navigation div.menu-gnav-container ul li a:hover {
  filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

nav#site-navigation div.menu-gnav-container ul li span.open {
	display: block;
	padding: auto;
	width: 100%;
	color: rgba(255,255,255,1);
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
}


div.home nav#site-navigation div.menu-gnav-container ul {
  text-align: center;
}

div.home nav#site-navigation div.menu-gnav-container ul li {
  border-right: 1px solid rgba(72,72,72,1);
}

div.home nav#site-navigation div.menu-gnav-container ul li:first-child {
  border-left: 1px solid rgba(72,72,72,1);
}

div.home nav#site-navigation div.menu-gnav-container ul li a {
  color: rgba(72,72,72,1);
}



/*
header div#gNav nav#site-navigation {
	height: auto;
	*//* background-color: rgba(0,0,0,1); *//*
}

header div#gNav nav#site-navigation ul li {
	display: inline-block;
	padding: auto;
	width: 20%;
}

header div#gNav nav#site-navigation ul li a {
	display: block;
	padding: auto;
	width: 100%;
	color: rgba(72,72,72,1);
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
}

header div#gNav nav#site-navigation ul li a:hover {
	color: rgba(229,229,229,1);
	*//* filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5; *//*
}

header div#gNav nav#site-navigation ul li span.open {
	display: block;
	padding: auto;
	width: 100%;
	color: rgba(72,72,72,1);
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
}
*/


/* --------------------------------------------------------
 Contents Style
-------------------------------------------------------- */

article {
}

aside {
}

.contents {
	width: 95%;
	margin: 0 auto 0;
}


/*	Scroll Fadein */

.fadein {
 opacity: 0;
 transform : translate(0, 50px);
 transition : all 1500ms;
}

.fadein.scrollin{
 opacity: 1;
 transform: translate(0, 0);
}

/*	Local header */

div#localHeader.localHeader {
  padding: 10.5vw 1rem;
	position: relative;
}

div.home div#header_banner_area div#localHeader.localHeader {
  padding: 1.8rem 0 2rem;
  width: 100%;
	position: relative;
  background-color: rgba(0,104,183,0.7);
  /* background-blend-mode: multiply; */
  position: absolute;
  bottom: 0;
  z-index: 10;
}

div#header.home div#header_banner div.swiper-wrapper div#swiper-slide_01  {
  background-image: url('../images/home/home_slider_image_bg_01.jpg');
	background-image:-webkit-image-set(url("../images/home/home_slider_image_bg_01.jpg") 1x,url("../images/@2x/home/home_slider_image_bg_01.jpg") 2x);
  /* background-color: rgba(3,110,184,0.5);
  background-blend-mode: multiply; */
}

div#header.home div#header_banner div.swiper-wrapper div#swiper-slide_02  {
  background-image: url('../images/home/home_slider_image_bg_02.jpg');
	background-image:-webkit-image-set(url("../images/home/home_slider_image_bg_02.jpg") 1x,url("../images/@2x/home/home_slider_image_bg_02.jpg") 2x);
  /* background-color: rgba(3,110,184,0.5);
  background-blend-mode: multiply; */
}

div#header.home div#header_banner div.swiper-wrapper div#swiper-slide_03  {
  background-image: url('../images/home/home_slider_image_bg_03.jpg');
	background-image:-webkit-image-set(url("../images/home/home_slider_image_bg_03.jpg") 1x,url("../images/@2x/home/home_slider_image_bg_03.jpg") 2x);
  /* background-color: rgba(3,110,184,0.5);
  background-blend-mode: multiply; */
}

div#header.home div#header_banner div.swiper-wrapper div#swiper-slide_04  {
  background-image: url('../images/home/home_slider_image_bg_04.jpg');
	background-image:-webkit-image-set(url("../images/home/home_slider_image_bg_04.jpg") 1x,url("../images/@2x/home/home_slider_image_bg_04.jpg") 2x);
  /* background-color: rgba(3,110,184,0.5);
  background-blend-mode: multiply; */
}

div#header.home div#header_banner div.swiper-wrapper div#swiper-slide_05  {
  background-image: url('../images/home/home_slider_image_bg_05.jpg');
	background-image:-webkit-image-set(url("../images/home/home_slider_image_bg_05.jpg") 1x,url("../images/@2x/home/home_slider_image_bg_05.jpg") 2x);
  /* background-color: rgba(3,110,184,0.5);
  background-blend-mode: multiply; */
}

div#header.company {
	background-image: url('../images/company/localheader_company_image.jpg');
	background-image:-webkit-image-set(url("../images/company/localheader_company_image.jpg") 1x,url("../images/@2x/company/localheader_company_image.jpg") 2x);
}

div#header.products {
	background-image: url('../images/products/localheader_products_image.jpg');
	background-image:-webkit-image-set(url("../images/products/localheader_products_image.jpg") 1x,url("../images/@2x/products/localheader_products_image.jpg") 2x);
}

div#header.recruit {
	background-image: url('../images/recruit/localheader_recruit_image.jpg');
	background-image:-webkit-image-set(url("../images/recruit/localheader_recruit_image.jpg") 1x,url("../images/@2x/recruit/localheader_recruit_image.jpg") 2x);
}

div#header.contact {
	background-image: url('../images/contact/localheader_contact_image.jpg');
	background-image:-webkit-image-set(url("../images/contact/localheader_contact_image.jpg") 1x,url("../images/@2x/contact/localheader_contact_image.jpg") 2x);
}

div#header.group {
	background-image: url('../images/group/localheader_group_image.jpg');
	background-image:-webkit-image-set(url("../images/group/localheader_group_image.jpg") 1x,url("../images/@2x/group/localheader_group_image.jpg") 2x);
}

/*
div#localHeader div.bxslider img {
	vertical-align: bottom;
}
*/

/*	Local Navi */

div.contents div#lNav {
  margin-bottom: 60px;
	width: 100%;
	/* background-color: rgba(255,255,255,0.8); */
}

div.contents div#lNav ul {
	margin: 0 auto;
	text-align: center;
}

div.contents div#lNav ul li {
	display: inline-block;
	margin-left: 3%;
  margin-bottom: 1rem;
	width: 25vw;
}

div.contents div#lNav ul li:first-child {
  margin-left: 0;
}

div.contents div#lNav ul li a {
	display: block;
  padding: 0.5rem 3rem;
	text-align: center;
	color: rgba(255,255,255,1);
	font-size: 18px;
	font-size: 1.8rem;
  font-weight: 600;
	text-decoration: none;
  background-color: rgba(0,149,230,1);
}

div.contents div#lNav ul li a:hover {
	/* color: rgba(72,72,72,1); */
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}


/*	header */

div.localHeader h2 {
  font-size: 55px;
	font-size: 5.5rem;
  font-weight: 500;
  color: rgba(255,255,255,1);
  text-align: center;
  letter-spacing: 0.2em;
  text-shadow: 0 0 2rem rgba(3,110,184,1);
}

#home h2 {
  margin-bottom: 5rem;
  font-size: 32px;
	font-size: 3.2rem;
  font-weight: 300;
  color: rgba(3,110,184,1);
  text-align: center;
  letter-spacing: 0.2em;
}

div.contact div.localHeader h2,
div.group div.localHeader h2 {
  letter-spacing: 0;
}

h3 {
  margin-bottom: 5rem;
  font-size: 32px;
	font-size: 3.2rem;
  font-weight: 300;
  color: rgba(3,110,184,1);
  text-align: center;
  letter-spacing: 0.2em;
}

div#company #about h3 {
  letter-spacing: 0;
}

h4 {
  margin-bottom: 2rem;
  font-size: 20px;
	font-size: 2rem;
  font-weight: 500;
  color: rgba(3,110,184,1);
  line-height: 180%;
  text-align: center;
}

div#company #access h4 {
  margin-bottom: 0.5rem;
  font-size: 16px;
	font-size: 1.6rem;
  font-weight: 500;
  color: rgba(72,72,72,1);
  line-height: 180%;
  text-align: left;
}

div#recruit #application_requirements h4 {
  margin-bottom: 3rem;
  padding: 0 3rem;
  font-size: 24px;
	font-size: 2.4rem;
  font-weight: 500;
  color: rgba(72,72,72,1);
  line-height: 180%;
  text-align: left;
  border-top: 1px solid rgba(3,110,184,1);
  border-bottom: 1px solid rgba(3,110,184,1);
}

div#recruit #application_requirements h4:before {
  font-family: "FontAwesome";
  content: '\f111  ';
  color: rgba(3,110,184,1);
}


/* Top page
----------------------------------------------------*/

/*	newsRelease */

#newsRelease {
}

.newsRelease {
}

#newsRelease .contents dl:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

#newsRelease .contents dl {
	margin-bottom: 5rem;
}

#newsRelease .contents dl dt {
float:left;
width:25rem;
padding-left: 13rem;
padding-top:15px;
padding-bottom:15px;
padding-right:0;
font-weight: 500;
}

#newsRelease .contents dl dd {
padding-left:25rem;
border-bottom:1px solid rgba(204,204,204,1);
padding-top:15px;
padding-bottom:15px;
}

#newsRelease .contents dl dd:nth-of-type(1) {
border-top:1px solid rgba(204,204,204,1);
}



/* --- 一覧へのリンクボタン --- *//*
div.btm_newsRelease {
	margin-bottom: 100px;
}

div.btm_newsRelease a {
	display: block;
	margin: 0 auto;
	padding: 5px 20px;
	width: 145px;
	text-align: center;
	border: 1px solid rgba(72,72,72,1);
	background-color: rgba(255,255,255,1);
	color: rgba(72,72,72,1);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-decoration: none;
}

div.btm_newsRelease a:hover {
	color: rgba(255,255,255,1);
	background-color: rgba(72,72,72,1);
}
*/

/* --- トップページのメインナビゲーション --- */

div.topNav {
	margin: 0 auto 8rem;
	width: 100%;
}

div.topNav ul li {
	display: inline-block;
	margin-left: 0.5%;
	/* width: 33%; */
  width: 24%;
}

div.topNav ul li:first-child {
	margin-left: 0;
}

div.topNav ul li a {
	display: block;
  width: 100%;
  height: 19vw;
	text-decoration: none;
  background-color: rgba(0,149,230,1);
  position: relative;
  overflow: hidden;
}

div.topNav ul li a:hover {
	/* filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5; */
}

div.topNav ul li a p {
  display: inline-block;
	margin-top: 10px;
  color: rgba(255,255,255,1);
	font-size: 28px;
	font-size: 1.8vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  position: absolute;
  right: 1.5rem;
  bottom: 1.5rem;
  z-index: 5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

div.topNav ul li a {
}

div.topNav ul li a div.topNav_bg {
  width: 100%;
  height: 19vw;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}

div.topNav ul li#topNav_company a div.topNav_bg {
	background-image: url('../images/home/home_topnavi_company_image.jpg');
	background-image:-webkit-image-set(url("../images/home/home_topnavi_company_image.jpg") 1x,url("../images/@2x/home/home_topnavi_company_image.jpg") 2x);
}

div.topNav ul li#topNav_products a div.topNav_bg {
	background-image: url('../images/home/home_topnavi_products_image.jpg');
	background-image:-webkit-image-set(url("../images/home/home_topnavi_products_image.jpg") 1x,url("../images/@2x/home/home_topnavi_products_image.jpg") 2x);
}

div.topNav ul li#topNav_recruit a div.topNav_bg {
	background-image: url('../images/home/home_topnavi_recruit_image.jpg');
	background-image:-webkit-image-set(url("../images/home/home_topnavi_recruit_image.jpg") 1x,url("../images/@2x/home/home_topnavi_recruit_image.jpg") 2x);
}

div.topNav ul li#topNav_group a div.topNav_bg {
	background-image: url('../images/home/home_topnavi_group_image.jpg');
	background-image:-webkit-image-set(url("../images/home/home_topnavi_group_image.jpg") 1x,url("../images/@2x/home/home_topnavi_group_image.jpg") 2x);
}

div.topNav ul li a:hover div.topNav_bg {
  -moz-transform: scale(1.2);
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
}

/* SNS buttom */
/*
div.sns_btm ul {
	margin: 0 auto 0;
	width: 100%;
}

div.sns_btm ul li {
	display: inline-block;
	width: 20%;
	margin-left: 50px;
}

div.sns_btm ul li:first-child {
	margin-left: 0;
}

div.sns_btm ul li a {
	display: block;
}

div.sns_btm ul li a:hover {
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}
*/


/* contents
----------------------------------------------------*/
/*
#main section {
	margin-bottom: 60px;
}

#main p {
	line-height: 180%;
}
*/
#main p.photos_before,
#main p.images_before {
	margin: 0 auto;
	text-align: center;
}

#main p.photos_after,
#main p.images_after {
	margin-top: 0;
	text-align: center;
}

.contents .chapter,
.contents.chapter {
	margin-bottom: 100px;
}

.contents .paragraph,
.contents.paragraph {
	margin-bottom: 50px;
}


/* --- リンクボタン --- */

div.btm_basic {
	margin-bottom: 5rem;
  text-align: center;
}

div.btm_basic a {
	display: inline-block;
	margin: 0 auto;
	padding: 1rem 10rem;
  font-size: 18px;
	font-size: 1.8rem;
  line-height: 160%;
  font-weight: 500;
	text-align: center;
	background-color: rgba(0,149,230,1);
	color: rgba(255,255,255,1);
	text-decoration: none;
  transition: 0.5s;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

div.btm_basic a:hover {
  /* filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5; */
  color: rgba(255,255,255,1);
  background-color: rgba(3,110,184,1);
  transition: 0.5s;
  }


/* --- flexbox --- */

.box-wrap{
 display: flex;
}

.box{
}

div#products #products_list .box-wrap{
 justify-content: center;
 align-items: center;
}

div#company #access .box-wrap{
  margin: 0;
  justify-content: space-between;
  align-items: center;
}

div#company #access .box{
  margin: 0;
  width: 49%;
}


/* contents
----------------------------------------------------*/

/* company */

div#company #about .contents div.basicList_image.box-wrap {
  display: flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content: center;
}

div#company #about .contents div.basicList_image.box-wrap div.box {
  margin-right: 3rem;
  width: 35%
}

div#company #about .contents div.basicList_image.box-wrap:first-child div.box {
  margin-right: 0;
}

div#company #company_profile .contents div.basicList_line dt {
  padding-left: 6rem;
  width: 23rem;
}

div#company #company_profile .contents div.basicList_line dd {
  padding-left: 23rem;
}

div#company #company_profile .contents div.basicList_line dl dd dl.listStylenone {
	margin-bottom: 0;
}

div#company #company_profile .contents div.basicList_line dl dd dl.listStylenone dt {
float:left;
width:9.6rem;
padding-left: 0;
padding-top: 0;
padding-bottom:0;
padding-right: 0;
font-weight: 300;
}

div#company #company_profile .contents div.basicList_line dl dd dl.listStylenone dd {
padding-left: 9.6rem;
border-top: none;
border-bottom: none;
padding-top: 0;
padding-bottom:0 ;
}

div#company #company_history .contents div.basicList dt {
  padding: 1rem 5rem 1rem 0;
  width: 30rem;
  font-weight: 500;
  text-align: right;
}

div#company #company_history .contents div.basicList dd {
  margin-bottom: 1rem;
  padding: 1rem 2rem 1rem 30rem;
}

div#company #access div.gMap {
  border: 1px solid rgba(207,207,207,1)
}

.gMap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}

.gMap iframe,
.gMap object,
.gMap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}



/* products */

div#products #products_list .contents div.basicList_disc ul {
  margin-left: 1.8em;
}

div#products #products_list .contents div.basicList_disc ul li {
  font-size: 18px;
	font-size: 1.8rem;
  line-height: 200%;
}

div#products #products_list .contents div.basicList_image.box-wrap {
  display: flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content: space-between;
}

div#products #products_list .contents div.basicList_image.box-wrap div.box {
  margin-bottom: 5rem;
  width: 47.5%
}

div#products #equipment_introduction table.basicTable {
  margin: 0 auto 3rem;
  width: 70%
}

div#products #equipment_introduction table.basicTable th {
 padding: 1%;
 background: none;
 text-align: left;
 font-size: 18px;
 font-size: 1.8rem;
 font-weight: normal;
 border: none;
 color: rgba(72,72,72,1);
}

div#products #equipment_introduction table.basicTable td {
 padding: 1%;
 font-size: 18px;
 font-size: 1.8rem;
 border: none;
 color: rgba(72,72,72,1);
 text-align: left;
}

div#products #equipment_introduction table.basicTable th span {
  color: rgba(3,110,184,1);
}

div#products #equipment_introduction div.bxSlider {
  margin: 0 auto;
  width: 80%;
}


/* recruit */

div#recruit #application_requirements .contents div.basicList_line dl:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

div#recruit #application_requirements .contents div.basicList_line {
	margin-bottom: 50px;
}

div#recruit #application_requirements .contents div.basicList_line dt {
float:left;
width:15rem;
padding-left: 3rem;
padding-right: 3rem;
padding-top:15px;
padding-bottom:15px;
padding-right:0;
font-weight: 500;
}

div#recruit #application_requirements .contents div.basicList_line dd {
padding-left:20rem;
border-bottom:1px solid rgba(204,204,204,1);
padding-top:15px;
padding-bottom:15px;
}

div#recruit #application_requirements .contents div.basicList_line dd:nth-of-type(1) {
border-top:1px solid rgba(204,204,204,1);
}

div#recruit #application_requirements p.comment {
  margin-bottom: 30rem;
  text-align: center;
  line-height: 260%;
}

div#recruit #application_requirements p.comment span.emp {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: 500;
}


/* group */

div#group .contents dl:after {
  content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

div#group .contents dl {
  margin-bottom: 3rem;
}

div#group .contents dl dt {
  float:left;
  padding-right: 5vw;
  width:40vw;
  font-weight: 600;
  text-align: right;
}

div#group .contents dl dt span {
  display: inline-block;
}

div#group .contents dl dt span:after {
  font-family: "FontAwesome";
  content: ' \f144';
  color: rgba(3,110,184,1);
}

div#group .contents dl#kobayashi_cardboard dt span:after,
div#group .contents dl#settsucarton_vietnam dt span:after {
  font-family: "FontAwesome";
  content: '　';
  color: rgba(3,110,184,1);
}

div#group .contents dl dd {
  padding-left:40vw;
}

div#group .contents dl dt a {
  color: rgba(72,72,72,1);
}

div#group .contents dl dt a:hover {
  filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

div#group #group_company_map div.group_company_map {
  width: 100%;
}

div#group #group_company_map div.group_company_map img {
  width: 100%;
  height: auto;
}

/*	contact */

#contact .mailform dl {
	margin-bottom: 20px;
	width: 100%;
}

#contact .mailform dl:after {
  content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

#contact .mailform dl dt {
  float: left;
	padding: 0.5rem 2rem 0.5rem 0.5rem;
  width: 30vw;
  text-align: right;
}

#contact .mailform dl dd {
	padding: 0 0.5rem 0.5rem 30vw;
}

#contact .mailform dl dd {
	margin-bottom: 10px;
}

#contact .mailform dl dt span {
	color: rgba(255,0,0,1);
}

#contact .mailform dl dd input {
	padding:3px;
	width: 100% !important;
}

#contact .mailform dl dd textarea {
	padding:3px;
	width: 100% !important;
	height: 15em !important;
	border: 1px solid rgba(204,204,204,1);
}

#contact .mailform dl dd input::-webkit-input-placeholder {
    color: rgba(204,204,204,1);
    font-weight: normal;
}
#contact .mailform dl dd input:-ms-input-placeholder {
    color: rgba(204,204,204,1);
    font-weight: normal;
}
#contact .mailform dl dd input::-moz-placeholder {
    color: rgba(204,204,204,1);
    font-weight: normal;
}

#contact .mailform p {
	text-align: left;
}

#contact .mailform div.formButton {
	text-align: center;
}

#contact .mailform dl dd.range input {
  margin-top: 0.9rem;
  width: 20px !important;
}

#contact .mailform dl dd.zip_code_range input {
  width: 20% !important;
}

#contact .mailform dl dd.range input.not_range {
  width: 100% !important;
}
/*
#contact .mailform dl dd input.address_prefectures {
  width: 20% !important;
}

#contact .mailform dl dd input.address_city {
  margin-left: 1%;
  width: 78% !important;
}
*/
/* 送信確認必要な際、ボタンを押せなくするスクリプト用CSS */
/*
input[type="submit"] {
	padding:10px;
	width: 150px;
	border-style: none;
	color: rgba(255,255,255,1);
	background-color: rgba(153,153,153,1);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	cursor: pointer;
	margin-right: 20px;
}

input[type="submit"]:hover {
filter:alpha(opacity=50);
-moz-opacity: 0.5;
opacity: 0.5;
}

input[type="submit"][disabled] {
background-color: rgba(204,204,204,1);
cursor: default;
}
*/
#contact .mailform input.form_button {
  margin-right: 10px;
  padding:10px 30px;
	border-style: none;
	color: rgba(255,255,255,1);
	background-color: rgba(30,144,255,1);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
  transition: 0.5s;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#contact .mailform input.form_button:nth-of-type(2) {
	margin-right: 0;
}

#contact .mailform input.form_button:hover {
  /* filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5; */
  color: rgba(255,255,255,1);
  background-color: rgba(3,110,184,1);
  transition: 0.5s;
  }


/* 確認画面 */

/* 自由に編集下さい */
#formWrap {
	/* width:700px; */
  width:100%;
	margin:0 auto;
}
#formWrap table th,
#formWrap table td,
#formWrap p {
  font-size: 16px;
  font-size: 1.6rem;
	line-height:120%;
}
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:25%;
	font-weight:normal;
	background: rgba(30,144,255,0.3);
	text-align:left;
}
p.error_messe{
	margin:5px 0;
  color: rgba(228,0,127,1);
}

input[type="submit"], input[type="reset"], input[type="button"] {
  margin-right: 10px;
  padding:10px 30px;
	border-style: none;
	color: rgba(255,255,255,1);
	background-color: rgba(30,144,255,1);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	cursor: pointer;
  transition: 0.5s;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

input[type="submit"]:nth-of-type(2),
input[type="reset"]:nth-of-type(2),
input[type="button"]:nth-of-type(2) {
	margin-right: 0;
}

input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover {
  /* filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5; */
  color: rgba(255,255,255,1);
  background-color: rgba(3,110,184,1);
  transition: 0.5s;
  }


/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:768px) {
#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
input[type="submit"], input[type="reset"], input[type="button"] {
	display:inline-block;
	/* width:100%;
	height:40px; */
}
}


/* List
----------------------------------------------------*/

.contents div.basicList_line dl:after,
.contents dl.basicList_line:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

.contents div.basicList_line,
.contents dl.basicList_line {
	margin-bottom: 50px;
}

.contents div.basicList_line dt,
.contents dl.basicList_line dt {
float:left;
width:15rem;
padding-left: 3rem;
padding-top:15px;
padding-bottom:15px;
padding-right:0;
font-weight: 500;
}

.contents div.basicList_line dd,
.contents dl.basicList_line dd {
padding-left:15rem;
border-bottom:1px solid rgba(204,204,204,1);
padding-top:15px;
padding-bottom:15px;
}

.contents div.basicList_line dd:nth-of-type(1),
.contents dl.basicList_line dd:nth-of-type(1) {
border-top:1px solid rgba(204,204,204,1);
}


.contents dl.commentList:after {
content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

.contents dl.commentList {
}

.contents dl.commentList dt {
float:left;
width:1.6rem;
}

.contents dl.commentList dd {
padding-left:1.6rem;
}


.contents div.basicList dl:after,
.contents dl.basicList:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

.contents div.basicList dl dt,
.contents dl.basicList dt {
	float:left;
	width: 1.6rem;
}

.contents div.basicList dl dd,
.contents dl.basicList dd {
	padding-left: 1.6rem;
}


.contents div.basicList_disc ul:after,
.contents ul.basicList_disc:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

.contents div.basicList_disc ul,
.contents ul.basicList_disc {
  margin-left: 1.6em;
}

.contents div.basicList_disc ul li,
.contents ul.basicList_disc li {
	list-style-type: disc;
  list-style-position: outside;
}


/* table
----------------------------------------------------*/

table { border: none; }
table { margin: 0; padding: 0; }
table { font-size: inherit; font: 100%; border-collapse: collapse; border-spacing:0; }
table td { vertical-align: middle; }


table.basicTable {
 width: 100%;
 margin: 0;
 line-height: normal;
}

div.responsive-table table.basicTable {
	min-width: 640px;
}

/* basicTable */

table.basicTable caption {
 padding: 0 0 0 0;
 background: none;
 border: none;
 text-align: left;
 margin-bottom: 15px;
 color: rgba(72,72,72,1);
 font-family: 'Noto Sans JP', sans-serif;
 font-weight: 300;
 font-size: 18px;
 font-size: 1.8rem;
 line-height: 160%;
}

table.basicTable thead th {
 background: rgba(0,149,230,0.3);
 font-weight: bold;
 padding: 1.5%;
 text-align: left;
 font-weight: normal;
 border: 1px solid #d7d7d7;
 color: rgba(72,72,72,1);
}

table.basicTable th {
 padding: 1.5%;
 background: rgba(0,149,230,0.3);
 text-align: left;
 font-weight: normal;
 border: 1px solid rgba(207,207,207,1);
 color: rgba(72,72,72,1);
}

table.basicTable td {
 padding: 1.5%;
 border: 1px solid rgba(207,207,207,1);
 color: rgba(72,72,72,1);
 text-align: left;
}

table.basicTable th.centering,
table.basicTable td.centering {
 text-align: center;
 vertical-align: middle;
}

table.basicTable.centering th,
table.basicTable.centering td,
table.basicTable.centering th p,
table.basicTable.centering td p {
 text-align: center;
 vertical-align: middle;
}


/* lineTable */

table.lineTable {
 width: 100%;
 margin: 0;
 line-height: normal;
}

table.lineTable th.textAlignCenter,
table.lineTable td.textAlignCenter {
	text-align: center;
}

div.responsive-table table.lineTable {
}

table.lineTable caption {
}

table.lineTable.tableLine_right {
  border-right:  1px solid #999999;
}

table.lineTable thead th {
 background: none;
 font-weight: bold;
 padding: 15px;
 text-align: center;
 border-top: 1px solid #999999;
 border-bottom:  1px solid #999999;
 border-left: none;
 border-right: none;
 color:#484848;
}

table.lineTable th {
	background: none;
  font-weight: normal;
  padding: 15px;
  text-align: left;
  border-top: center;
  border-bottom: 1px solid #999999;
	border-left: none;
  border-right: none;
  color:#484848;
}

table.lineTable td {
	background: none;
	font-weight: normal;
  padding: 15px;
  text-align: left;
	border-top: none;
  border-bottom: 1px solid #999999;
	border-left: none;
  border-right: none;
  color:#484848;
}

table.lineTable tr th:first-child {
	border-top: 1px solid #999999;
}

col.width_10{
	width:10%;
}
col.width_18{
	width:18% !important;
}
col.width_20{
	width:20%;
}
col.width_30{
	width:30%;
}
col.width_33{
	width:33%;
}
col.width_35{
	width:35%;
}
col.width_40{
	width:40%;
}
col.width_15{
	width:45%;
}
col.width_50{
	width:50%;
}
col.width_60{
	width:60%;
}
col.width_70{
	width:70%;
}
col.width_72{
	width:72%;
}
col.width_80{
	width:80%;
}
col.width_90{
	width:90%;
}


/* --------------------------------------------------------
 Wordpress
-------------------------------------------------------- */

main #posts_area {
padding-top:160px;
}

#posts_area #posts_contents {
padding-top:160px;
margin-top:-160px;
}

/* WordPress */

.header-display-none .page.type-page header.entry-header {
  display: none;
}

#news header.page-header {
  display: none;
}

header.entry-header div.entry-meta span.posted-on a {
  font-size: 18px;
	font-size: 1.8rem;
  line-height: 160%;
  font-weight: 500;
  text-decoration: none;
}

header.entry-header h1.entry-title {
  font-size: 24px;
	font-size: 2.4rem;
  line-height: 160%;
  font-weight: 500;
  color: rgba(143,195,31,1);
}

footer.entry-footer span.edit-link a.post-edit-link {
  display: inline-block;
  margin-left: 1%;
  padding: 3px 10px;
  background-color: rgba(204,204,204,1);
  color: rgba(72,72,72,1) !important;
  text-decoration: none;
  -webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

footer.entry-footer span.edit-link a.post-edit-link:hover {
  filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

nav.navigation.post-navigation {
  margin: 0 auto;
  width: 940px;
}

nav.navigation.post-navigation div.nav-links div.nav-previous {
}
nav.navigation.post-navigation div.nav-links div.nav-previous a::before {
  content: '← '; /* ←ここにリストマーカーにしたい文字列を設定 */
}

nav.navigation.post-navigation div.nav-links div.nav-next a::after {
  content: ' →'; /* ←ここにリストマーカーにしたい文字列を設定 */
}

/* 404 */

#primary main .error-404,
#primary main .search,
#primary main .single,
#primary main .archive {
  padding-top:60px;
}


/* Contact WordPress
----------------------------------------------------*/

#contact.confirm .mw_wp_form dl dt,
#contact.confirm .mw_wp_form dl dd {
  padding: 5px;
}

#contact.confirm .mw_wp_form dl dd {
	margin-bottom: 0;
}

#contact.confirm .mw_wp_form dl:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

#contact.confirm .mw_wp_form dl {
	margin-bottom: 50px;
}

#contact.confirm .mw_wp_form dl dt {
float:left;
width:23rem;
padding-left: 3rem;
padding-top:15px;
padding-bottom:15px;
padding-right:0;
font-weight: 500;
}

#contact.confirm .mw_wp_form dl dd {
padding-left:23rem;
border-bottom:1px solid #ccc;
padding-top:15px;
padding-bottom:15px;
}

#contact.confirm .mw_wp_form dl dd:nth-of-type(1) {
border-top:1px solid #ccc;
}


/* --------------------------------------------------------
 footer
-------------------------------------------------------- */

footer {
}

footer div#fGroup {
	margin: 3rem 2rem 2rem;
	width: auto;
}


/*	footer Navi */

footer div#f_address {
  margin: 0 auto 5rem;
}

footer div#f_address p {
  font-size: 17px;
	font-size: 1.7rem;
  line-height: 160%;
  color: rgba(255,255,255,1);
}

footer div#f_address p#f_address_corporate {
  margin-bottom: 2rem;
  color: rgba(255,255,255,1);
  font-size: 32px;
	font-size: 3.2rem;
  font-weight: 500;
  line-height: 120%;
}

footer div#f_address p#f_address_corporate span {
  font-size: 65%;
}

footer div#f_address dl.f_address:after {
	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
}

footer div#f_address dl.f_address dt {
	float:left;
	width: 11.9rem;
  font-size: 17px;
	font-size: 1.7rem;
  line-height: 160%;
  color: rgba(255,255,255,1);
}

footer div#f_address dl.f_address dd {
	padding-left: 11.9rem;
  font-size: 17px;
	font-size: 1.7rem;
  line-height: 160%;
  color: rgba(255,255,255,1);
}


/*	footer Navi */

footer div#fNav ul {
	margin: 0 0 2rem;
	text-align: center;
}

footer div#fNav ul li {
	display: inline-block;
	margin-bottom: 10px;
  border-right: 1px solid rgba(255,255,255,1);
}

footer div#fNav ul li:first-child {
  border-left: 1px solid rgba(255,255,255,1);
}

footer div#fNav ul li a {
  display: inline-block;
	margin: 0;
  padding: 0 2rem;
	color: rgba(255,255,255,1);
	font-size: 16px;
	font-size: 1.6rem;
  text-decoration: none;
}

footer div#fNav ul li a:hover {
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

/*	footer Navi */

footer div#copyright p {
	margin: 0 ;
  font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
  color: rgba(255,255,255,1);
}


@media all and (min-width: 1280px) {

	.wideContents {
		margin: 0 auto;
		width: 100%;
	}
/*
  #header.wideImage {
		background-size:100% auto;
	}
*/
  #header.wideImage {
    height: 470px;
  }

  #header.home #header_banner_area.wideImage,
  #header.home #header_banner.swiper-container,
  #header.home #header_banner div.swiper-wrapper ,
  #header.home #header_banner div.swiper-wrapper div.swiper-slide {
    height: 730px;
  }

  /*	#site-navigation */

  nav#site-navigation div.menu-gnav-container ul li a {
    padding: 0 1.5rem;
  	font-size: 16.5px;
  	font-size: 1.65rem;
  }

  /*	Local header */

  div#localHeader.localHeader {
    padding: 14.5rem 1rem;
  }

  /* --- topNav --- */

  div.topNav {
  	margin: 0 auto 8rem;
  	width: 1200px;
  }

  div.topNav ul li a {
    width: 100%;
    height: 250px;
  }

  div.topNav ul li a div.topNav_bg {
    width: 100%;
    height: 250px;
  }

  div.topNav ul li a p {
    font-size: 23px;
  	font-size: 2.3rem;
  }

  /* --- lNav --- */

  div.contents div#lNav ul li {
  	display: inline-block;
  	margin-left: 3%;
  	width: 30%;
  }

}

@media all and (max-width: 960px) {

  /*	header */

  header div#hGroup h1 {
    font-size: 24px;
  	font-size: 2.8vw;
  }

  div.localHeader h2 {
    font-size: 46px;
  	font-size: 5vw;
  }

  /*	#site-navigation */

  nav#site-navigation div.menu-gnav-container ul li a {
  	font-size: 13.5px;
  	font-size: 1.35vw;
  }

  /*	#company */

  div#company #about .contents div.basicList_image.box-wrap div.box {
    margin-bottom: 5vw;
  }

  /*	#products */

  div#products #products_list .contents div.basicList_image.box-wrap div.box {
    margin-bottom: 5vw;
  }

}

@media all and (min-width: 960px) {

  /*	#group */

  div#group .contents dl dt {
    width:42rem;
  }

  div#group .contents dl dd {
    padding-left:42rem;
  }

  /*	#contact */

  #contact .mailform dl dt {
    width: 30rem;
  }

  #contact .mailform dl dd {
  	padding: 0 0.5rem 0.5rem 30rem;
  }

}

@media screen and ( max-width : 768px ) {
/*
	.contents {
		width: 95%;
		margin: 0 auto 0;
	}
*/
  .wide_container {
  	max-width: 100%;
  	margin: 0 auto;
    padding: 0;
  }

  /* wideContents */

  #header.wideImage {
    height: 270px;
    background-size:auto 270px;
  }

  #header.home #header_banner_area.wideImage,
  #header.home #header_banner.swiper-container,
  #header.home #header_banner div.swiper-wrapper ,
  #header.home #header_banner div.swiper-wrapper div.swiper-slide {
    height: 75vw;
    background-size:auto 75vw;
  }

  header div#hGroup h1 {
    margin: 2.5rem;
    font-size: 22px;
  	font-size: 2.2rem;
    text-align: left;
  }


  /*	home */

  div.home header div#hGroup h1 {
    font-size: 32px;
    font-size: 6.5vw;
  }

  div.home header div#hGroup h1 span {
    font-size: 20px;
    font-size: 3vw;
  }

  div.home header div#hGroup p.read {
    font-size: 18px;
    font-size: 2.5vw;
  }

  /*	Navi */

  nav#site-navigation div.menu-gnav-container  {
  	height: 100vh;
  	/* background-color: rgba(0,0,0,1); */
  }

  nav#site-navigation div.menu-gnav-container ul,
  div.home nav#site-navigation div.menu-gnav-container ul {
    margin-top: 50px;
    text-align: left;
  }

  nav#site-navigation div.menu-gnav-container ul li,
  div.home nav#site-navigation div.menu-gnav-container ul li {
  	display: block;
  	padding: auto;
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,1);
  }

  nav#site-navigation div.menu-gnav-container ul li:first-child,
  div.home nav#site-navigation div.menu-gnav-container ul li:first-child {
    border-top: 1px solid rgba(255,255,255,1);
    border-left: none;
  }

  nav#site-navigation div.menu-gnav-container ul li a,
  div.home nav#site-navigation div.menu-gnav-container ul li a {
  	display: block;
  	padding: 2rem 1.5rem;
  	width: 100%;
  	color: rgba(255,255,255,1);
  	font-size: 16.5px;
  	font-size: 1.65rem;
    font-weight: 500;
  	text-align: left;
  }

  nav#site-navigation div.menu-gnav-container ul li a:before {
    font-family: "FontAwesome";
    content: '\f138  ';
  }

  /*	Local header */

  div#localHeader.localHeader {
    padding: 10rem 1rem;
  }

  div.localHeader h2 {
    font-size: 24px;
  	font-size: 5.5vw
  }

  div#localHeader.localHeader {
    padding: 8rem 1rem;
  }
  div.home div#header_banner_area div#localHeader.localHeader {
    padding: 1.5rem 0 0;
  }

  /*	photos images */

	#main p.photos_before,
	#main p.images_before {
		margin: 0 auto 20px;
		text-align: center;
	}

	#main p.photos_after,
	#main p.images_after {
    margin: 20px auto 0;
		text-align: center;
	}

  /* Mobile STYLES */

	.mbimg_off{
		display:none;
	}
	.mbimg_on{
		display:block;
	}

	.mbcont_off{
		display:none;
	}
	.mbcont_on{
		display:block;
	}

  /* table */

	div.dataTable table th{
		padding: 6px;
	}
	div.dataTable table td{
		padding: 6px;
	}

  /* newsRelease */

  #newsRelease .contents dl dt {
    width:15rem;
    padding-left: 3rem;
  }

  #newsRelease .contents dl dd {
  padding-left:15rem;
  }

  /* topNav */

  div.topNav ul li {
  	display: inline-block;
  	margin-left: 2%;
    margin-bottom: 0.75rem;
  	width: 49%;
  }

  div.topNav ul li:nth-child(2n+1) {
  	margin-left: 0;
  }

  div.topNav ul li a {
  	display: block;
    width: 100%;
    height: 40vw;
  }

  div.topNav ul li a div.topNav_bg {
    width: 100%;
    height: 40vw;
  }

  div.topNav ul li a p {
    font-size: 22px;
    font-size: 3.5vw;
  }

  /* --- lNav --- */

  div.contents div#lNav ul li {
  	width: 48%;
  }

  div.contents div#lNav ul li:nth-child(2n+1) {
    margin-left: 0;
  }

  /* company */

  div#company #about .contents div.basicList_image.box-wrap {
    justify-content: space-between;
  }

  div#company #about .contents div.basicList_image.box-wrap div.box {
    margin-right: 0;
    width: 47.5%;
  }

  div#company #company_profile .contents div.basicList_line dt {
    padding-left: 1rem;
    width: 35vw;
  }

  div#company #company_profile .contents div.basicList_line dd {
    padding-left: 35vw;
  }

  div#company #company_history .contents div.basicList dt {
    width: 25rem;
  }

  div#company #company_history .contents div.basicList dd {
    padding: 1rem 2rem 1rem 25rem;
  }

  div#company #access .box-wrap{
    display: block;
  }

  div#company #access .box{
    width: 100%;
  }

  div#company #access .box:first-child {
    margin-bottom: 3rem;
  }

  /* products */

  div#products #equipment_introduction div.bxSlider {
    width: 100%;
  }

  /* recruit */

  div#recruit #application_requirements .contents div.basicList_line dt {
    width:12rem;
  }

  div#recruit #application_requirements .contents div.basicList_line dd {
    padding-left:15rem;
  }

}

@media screen and ( max-width : 480px ) {

  p,
  a,
  dt,
  dd,
  li,
  input,
  textarea {
  	font-size: 14px;
    font-size: 1.4rem;
    line-height: 180%;
  }

  h3,
  #home h2,
  div.localHeader h2 {
    font-size: 24px;
  	font-size: 2.4rem;
    letter-spacing: 0;
  }

  /* wideContents */

  #header.home #header_banner_area.wideImage,
  #header.home #header_banner.swiper-container,
  #header.home #header_banner div.swiper-wrapper ,
  #header.home #header_banner div.swiper-wrapper div.swiper-slide {
    height: 350px;
    background-size:auto 350px;
  }

  /*	home */

  div.home header div#hGroup h1 {
    font-size: 28px;
    font-size: 7.5vw;
  }

  div.home header div#hGroup h1 span {
    font-size: 16px;
    font-size: 4w;
  }

  div.home header div#hGroup p.read {
    font-size: 16px;
    font-size: 4vw;
  }

  /* topNav */

  div.topNav ul li {
  	display: block;
  	margin-left: 0;
    margin-bottom: 1rem;
  	width: 100%;
  }

  div.topNav ul li a {
  	display: block;
    width: 100%;
    height: 75vw;
  }

  div.topNav ul li a div.topNav_bg {
    width: 100%;
    height: 75vw;
  }

  div.topNav ul li a p {
    font-size: 42px;
    font-size: 6vw;
  }


  /* --- lNav --- */

  div.contents div#lNav ul li {
  	display: block;
  	margin-left: 0;
  	width: 100%;
  }


  /* company */

  div#company #about .contents div.basicList_image.box-wrap {
    display: block;
  }

  div#company #about .contents div.basicList_image.box-wrap div.box {
    margin-bottom: 2rem;
    width: 100%
  }

  div#company #company_profile .contents div.basicList_line dl dd dl.listStylenone dt {
    float:none;
    width:100%;
  }

  div#company #company_profile .contents div.basicList_line dl dd dl.listStylenone dd {
    padding-left: 0;
  }

  div#company #company_history .contents div.basicList dt {
    padding: 1rem 1rem 0 1rem;
    float:none;
    width:100%;
    text-align: left;
  }

  div#company #company_history .contents div.basicList dd {
    padding: 0 1rem 1rem 1rem;
  }

  /*	#products */

  div#products #products_list .contents div.basicList_image.box-wrap {
    display: block;
  }

  div#products #products_list .contents div.basicList_image.box-wrap div.box {
    margin-bottom: 2rem;
    width: 100%
  }

  div#products #products_list .contents div.basicList_disc ul li {
    font-size: 16px;
    font-size: 1.6rem;
  }

  div#products #equipment_introduction table.basicTable {
    width: 100%
  }

  div#products #equipment_introduction table.basicTable th {
    font-size: 16px;
    font-size: 1.6rem;
  }

  div#products #equipment_introduction table.basicTable td {
    font-size: 16px;
    font-size: 1.6rem;
  }

  /* recruit */

  div#recruit #application_requirements .contents div.basicList_line dt {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    width:11rem;
  }

  div#recruit #application_requirements .contents div.basicList_line dd {
    padding-left:12rem;
  }

  div#recruit #application_requirements p.comment span.emp {
    font-size: 20px;
    font-size: 2rem;
  }

  /* group */

  div#group .contents dl {
    margin: 0 auto 3rem;
    width: 80%;
  }

  div#group .contents dl dt {
    float:none;
    padding-right: 0;
    padding-bottom: 3rem;
    width:100%;
    text-align: left;
  }

  div#group .contents dl dd {
    padding-left:0;
  }


  /* contact */

  #contact .mailform dl dt {
    float: none;
  	padding: 0.5rem 2rem 0.5rem 0.5rem;
    width: 100%;
    text-align: left;
  }

  #contact .mailform dl dd {
  	padding: 0 0.5rem 0.5rem 0;
  }

  #contact .mailform dl dd {
  	margin-bottom: 20px;
  }

  #contact .mailform dl dd.zip_code_range input {
  	padding:3px;
  	width: 28%;
  }


  /* footer */

  footer div#f_address p {
    margin-bottom: 2rem;
    color: rgba(255,255,255,1);
    font-size: 24px;
  	font-size: 6.5vw;
    font-weight: 500;
    line-height: 120%;
  }

  footer div#f_address p span {
    font-size: 65%;
  }

  footer div#fNav ul li:nth-of-type(1),
  footer div#fNav ul li:nth-of-type(2),
  footer div#fNav ul li:nth-of-type(3),
  footer div#fNav ul li:nth-of-type(4),
  footer div#fNav ul li:nth-of-type(5),
  footer div#fNav ul li:nth-of-type(6) {
  	margin-bottom: 1rem;
    width: 33%;
  }
  footer div#fNav ul li:nth-of-type(4),
  footer div#fNav ul li:nth-of-type(5) {
  	margin-bottom: 1rem;
    width: 27%;
  }
  footer div#fNav ul li:nth-of-type(6) {
  	margin-bottom: 1rem;
    width: 45%;
  }
/*
  footer div#fNav ul li:nth-of-type(4),
  footer div#fNav ul li:nth-of-type(5) {
  	margin-bottom: 1rem;
    width: 49.5%;
  }
*/
  footer div#fNav ul li:nth-of-type(4) {
  	border-left: 1px solid rgba(255,255,255,1);
  }

  footer div#fNav ul li a {
    display: block;
  	margin: 0;
    padding: 0 2rem;
  	color: rgba(255,255,255,1);
  	font-size: 14px;
  	font-size: 3.5vw;
    text-align: center;
    text-decoration: none;
  }

  footer div#fNav ul li:nth-of-type(4) a,
  footer div#fNav ul li:nth-of-type(5) a,
  footer div#fNav ul li:nth-of-type(6) a {
    padding: 0;
  }

  footer div#f_address dl.f_address:after {
  	content: "."; display: block; visibility: hidden; height: 0.1px; font-size: 0.1em; line-height: 0; clear: both;
  }

  footer div#f_address dl.f_address dt {
  	float:none;
  	width: 100%;
    font-size: 16px;
  	font-size: 4.5vw;
  }

  footer div#f_address dl.f_address dd {
  	padding-left: 0;
    font-size: 16px;
  	font-size: 4.5vw;
  }

  footer div#copyright p {
    font-size: 12x;
  	font-size: 1.2rem;
  }

}

@media screen and ( max-width : 375px ) {

}
