@charset "UTF-8";

/*
共通
　└共通 / ページトップリンク / ボタン
レイアウト
ヘッダ
グローバルナビゲーション
　└グローバルナビゲーション（PC） / グローバルナビゲーション（SP）
フッタ
トップページ
　└スライダー / スライダー部分のバナー / トップページ
下層ページ 共通
　└サイドナビゲーション（s-nav） / ページタイトル / パンくずリスト / 見出し
企業情報
 　└ごあいさつ / 会社概要 / 沿革 / アクセス
事業案内
 　└事業案内共通 ボタン / 事業案内トップ / 販売部門 / 配送部門
*/



/* 共通
-----------------------------------------------------------------*/
html{
    font-size: 62.5%;
}
body{
    font-size:1.6rem;/* 16px*/
    line-height: 1.8;
    font-family: 'Noto Sans JP', sans-serif;
}
.body-wrapper {
  overflow: hidden;
}

img {
	border:0;
	vertical-align:bottom;
	max-width:100%;
	height:auto;
}

.bg-grey {
	background: #eee;
}

.fullWrap {
	width: 100%;
}

.content-box {
	max-width: 1200px;
	margin: 0 auto;
}
@media screen and (max-width: 1200px) {
.content-box {
	padding: 0 30px;
}
}

.content-box-1col {
	max-width: 900px;
	margin: 0 auto;
}
@media screen and (max-width: 900px) {
.content-box-1col {
	padding: 0 30px;
}
}



/*
.content-box-vspacer {
	padding: 40px 0 80px;
}
*/
.pp_body {
  padding: 40px 0 80px;
}
@media screen and (max-width: 480px) {
.pp_body {
  padding: 40px 0 20px;
}
}


/* 共通 / ページトップリンク */

#pageTopLink {
    position: fixed;
		width: 60px;
    bottom: 30px;
    right: 30px;
		z-index: 100;
		cursor: pointer;
		cursor: hand;
}

/* 共通 / ボタン */

.btn-normal {
  position: relative;
  display: inline-block;
  padding: 0.5em 1em;
  background-color: transparent;
  border: 1px solid #4b7399;
  color: #4b7399;
  text-align: center;
  text-decoration: none;
  transition: all .3s;
	width: 8em;
	font-size: 2.4rem;
	letter-spacing: 0.1em;
}
.btn-normal::after {
  position: absolute;
	content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
	right: 0.5em;
  width: 15px;
  height: 15px;
  border-top: 1px solid #4b7399;
  border-right: 1px solid #4b7399;
  transform: rotate(45deg); 
	transition: all .3s;
}
.btn-normal:hover {
  background-color: #4b7399;
  color: #fff;
}
.btn-normal:hover::after {
	border-top-color: #fff;
	border-right-color: #fff;
}


.btn-reverse {
  position: relative;
  display: inline-block;
  padding: 0.5em 1em;
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  text-align: center;
  text-decoration: none;
  transition: all .3s;
	width: 8em;
	font-size: 2.4rem;
	letter-spacing: 0.1em;
}
.btn-reverse::after {
  position: absolute;
	content: "";
  margin: auto;
  top: 0;
  bottom: 0;
	right: 0.5em;
  width: 15px;
  height: 15px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg); 
	transition: all .3s;
}
.btn-reverse:hover {
  background-color: #4b7399;
  color: #fff;
	border: 1px solid #4b7399;
}
.btn-reverse:hover::after {
	border-top-color: #fff;
	border-right-color: #fff;
}




/* レイアウト
-----------------------------------------------------------------*/

/* レイアウト / 2col */

.contents {
	max-width: 1200px;
	margin: 50px auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}

.main {
	flex: 1;
	margin-right: 70px;
}

.sidebar {
	width: 230px;
}

.sponsor-item {
	width: 100%;
	margin-bottom: 10px;
}
.sponsor-item:last-child {
	margin-bottom: 0;
}


@media screen and (max-width: 1200px) {
.contents {
	padding: 0 30px;
}
}

@media screen and (max-width: 980px) {
.contents {
	margin: 30px auto 0;
	flex-direction: column;
	padding: 0;
}
.main {
	width: 100%;
	margin-right: 0;
	box-sizing: border-box;
	padding: 0 30px;
}
.sidebar {
	width: 100%;
}
}

/* レイアウト / main内 2col */

.content-wrap {
	display: flex;
	justify-content: space-between;
}

.col-greeting-01,
.col-outline-01,
.col-products-01 {
	width: 60%;
	padding-right: 50px;
}
.col-greeting-02,
.col-outline-02,
.col-products-02 {
	width: 40%;
}

.col-outline-01b {
	width: 50%;
	padding-right: 10px;
}
.col-outline-02b {
	width: 50%;
}

/* 文と写真を段落ごとに左右交互に */
.content-wrap-alternate {
	display: flex;
	justify-content: space-between;
}
.sp-column-normal {
	flex-direction: row;
}
.sp-column-reverse {
	flex-direction: row-reverse;
}
.content-alternate-main {
	width: 55%;
}
.content-alternate-side {
	width: 40%;
}


@media screen and (max-width: 768px) {
.content-wrap {
	flex-direction: column;
}
.col-greeting-01,
.col-outline-01 {
	width: 100%;
	padding-right: 0;
	margin-bottom: 20px;
}
.col-greeting-02,
.col-outline-02 {
	width: 100%;
}
.col-outline-01b {
	width: 100%;
}
.col-outline-02b {
	width: 100%;
}
.sp-column-normal {
	flex-direction: column;
}
.sp-column-reverse {
	flex-direction: column;
}
.content-alternate-main {
	width: 100%;
	margin-bottom: 20px;
}
.content-alternate-side {
	width: 100%;
}
}



/* ヘッダ
-----------------------------------------------------*/
header {
	width: 100%;
	height: 150px;
	position: relative;
}
header .inner {
	padding: 0 0 0 50px;
}
h1 {
	position: absolute;
	top: 55px;
	left: 40px;
	max-width: 350px;
}
header a {
	color: #333;
	text-decoration: none;
}

@media screen and (max-width:480px) {
header {
	height: 70px;
}
h1 {
	top: 20px;
	left: 20px;
  width: 200px;
}
header .inner {
	padding: 0 0 0 0;
}
}


/* グローバルナビゲーション（PC）
-----------------------------------------------------*/
#main-nav {
	display: flex;
	flex-wrap: wrap;
  justify-content: flex-end;
	align-items: center;
}
#g-nav ul {
	display: flex;
	align-items: center;
}
#g-nav ul li a {
	display: block;
	padding: 34px 10px 10px;
	margin: 0 20px;
	position: relative;
	transition:all 0.3s;
}
#g-nav ul li:last-child a {
	margin: 0 70px 0 30px;
}
#g-nav ul li.hover-anime a:hover {
   color: #4b7298;
}
#g-nav ul li.hover-anime a::after {
	position: absolute;
	left: 0;
	content: ''; 
	width: 100%;
	height: 2px;
	background: #4b7298;
	bottom: -1px;
	transform: scale(0, 1);
	transition: transform 0.3s;
}
#g-nav ul li.hover-anime a:hover::after {
	transform: scale(1, 1);
}

#toppage #g-nav ul li.hover-anime a#gnav01::after {
	transform: none;
}
#page-company #g-nav ul li.hover-anime a#gnav02::after {
	transform: none;
}
#page-products #g-nav ul li.hover-anime a#gnav03::after {
	transform: none;
}

.btn-x {
	width: 40px;
}

.btn-instagram {
	width: 40px;
}

@media screen and (min-width:1024px) and ( max-width:1200px) {
#g-nav ul li a{
	padding: 34px 10px 10px;
	margin: 0 5px;
}
#g-nav ul li:last-child a {
	margin: 0 20px 0 10px;
}
}

@media screen and (max-width:1023px) {
#g-nav{
	display: none;
}
}


/* グローバルナビゲーション（SP）
-----------------------------------------------------*/
#sp-menu {
	display: none;
}

@media screen and (max-width:1023px) {
#sp-menu {
	display: block;
}
}

#g-nav-sp.panelactive {
  position: fixed;
  z-index: 999;
  top: 0;
  width: 100%;
  height: 100vh;
}

.circle-bg {
  position: fixed;
  z-index: 3;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #00afcc;
  transform: scale(0);
  right: -50px;
  top: -50px;
  transition: all .6s;
}
.circle-bg.circleactive {
  transform: scale(50);
}

#g-nav-list-sp{
  display: none;
  position: fixed;
  z-index: 999; 
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
#g-nav-sp.panelactive #g-nav-list-sp {
  display: block;
}

#g-nav-sp ul {
  opacity: 0;
  position: absolute;
  z-index: 999;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
#g-nav-sp.panelactive ul {
  opacity: 1;
}

#g-nav-sp.panelactive ul li {
  animation-name: gnaviAnime;
  animation-duration: 1s;
  animation-delay: .2s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes gnaviAnime{
0% {
  opacity: 0;
}
100% {
  opacity: 1;
}
}

#g-nav-sp li {
  text-align: center; 
  list-style: none;
}

#g-nav-sp li a {
  color: #fff;
  text-decoration: none;
  padding: 10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}



/* g-nav（SP）ボタン設定
-----------------------------------------------------*/

.openbtn {
	position: fixed;
  top: 12px;
  right: 15px;
  z-index: 9999;
  cursor: pointer;
	cursor: hand;
	width: 46px;
	height: 46px;
}

.openbtn span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
  left: 5px;
	height: 3px;
	border-radius: 2px;
	background-color: #333;
  width: 80%;
}
.openbtn span:nth-of-type(1) {
  top: 15px; 
}
.openbtn span:nth-of-type(2) {
  top: 23px;
}
.openbtn span:nth-of-type(3) {
  top: 31px;
}
.openbtn.active span:nth-of-type(1) {
  top: 18px;
  left: 11px;
  transform: translateY(6px) rotate(-45deg);
  width: 50%;
  background-color: #fff;
}
.openbtn.active span:nth-of-type(2) {
  opacity: 0;
}
.openbtn.active span:nth-of-type(3){
  top: 30px;
  left: 11px;
  transform: translateY(-6px) rotate(45deg);
  width: 50%;
  background-color: #fff;
}




/* フッタ
-----------------------------------------------------*/
footer {
  overflow: hidden;
}

.sec-footer-info {
	width: 100%;
	padding-top: 50px;
	padding-bottom: 30px;
	background: #fafafa;
}
.sec-footer-info .inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}


.f-info {
	width: 40%;
}
.f-info dl {
	margin-bottom: 10px;
}
.f-info dl dt {
	margin-bottom: 30px;
}
.f-info dl dt img {
	width: 220px;
}



.f-sitemap {
	display: flex;
	justify-content: space-between;
	width: 59%;
	padding-top: 30px;
}
.f-sitemap-item {
	width: 30%;
}
.f-sitemap-item dl dt {
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 1.3em;
	margin-bottom: 20px;
	color: #4b7298;
}
.f-sitemap-item dl dd {
	font-size: 1.4rem;
}
.f-sitemap-item dl dt a {
	color: #4b7298;
	text-decoration: none;
  display: block;
}
.f-sitemap-item dl dd a {
	color: #333;
	text-decoration: none;
}


.sec-copyright {
	width: 100%;
	background: #4b7399;
}
.sec-copyright .inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 30px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.f-nav ul {
	display: flex;
}
.f-nav ul li {
	display: inline;
	list-style-type: none;
	margin-right: 20px;
	padding-left: 0px;
	font-size: 1.4rem;
}
.f-nav ul li+li {
	position: relative;
}
.f-nav ul li+li::before {
	content: "";
	display: block;
	height: 1em;
	border-left: 1px solid #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -10px;
	margin: auto;
}
.f-nav a {
	color: #fff;
	text-decoration: none;
}

.copyright p {
	color: #fff;
	font-family: Arial, Helvetica, "sans-serif";
	font-size: 1.4rem;
	letter-spacing: 0.05em;
}

@media screen and (max-width:1200px) {
.sec-footer-info .inner {
	padding: 15px 15px;
}
.sec-copyright .inner {
	padding: 30px 30px;
}
}

@media screen and (max-width:1000px) {
.sec-footer-info .inner {
	flex-direction: column;
}
.f-info {
	width: 100%;
	text-align: center;
}
.f-info dl dt img {
	margin: 0 auto;
}
.f-sitemap {
	width: 100%;
	justify-content: center;
	padding-top: 20px;
}
.sec-copyright .inner {
	flex-direction: column;
}
}

@media screen and (max-width:768px) {
.sec-footer-info {
	padding-top: 50px;
	padding-bottom: 0;
}
.sec-footer-info .inner {
	padding: 15px 0 0;
}
.f-sitemap {
	display: block;
	width: 100%;
	padding-top: 30px;
}
.f-sitemap-item {
	width: 100%;
}
.f-sitemap-item dl dt {
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 1.3em;
	color: #4b7298;
  text-align: center;
  border-top: 1px solid #ccc;
  padding-top: 10px;
  padding-bottom: 10px;
  background: #eee;
  margin-bottom: 0;
}
.f-sitemap-item dl dd {
	font-size: 1.4rem;
  border-top: 1px solid #ccc;
  padding: 5px 0;
  text-align: center;
  display: none;
}
.f-sitemap-item a {
	color: #333;
	text-decoration: none;
}
.copyright {
  text-align: center;
}
}


/* トップページ スライダー / スライダー部分のバナー
-----------------------------------------------------------------*/
#sliderWrap {
	position: relative;
}

.banner-on-slide {
	position: absolute;
	bottom: 0px;
	right: 30px;
	width: 300px;
}
/*
@media screen and (max-width:1023px) {
.banner-on-slide {
	position: static;
	margin: 0 auto;
}
}
*/
@media screen and (max-width:768px) {
.banner-on-slide {
	position: static;
	margin: 0 auto;
}
}


/* トップページ
-----------------------------------------------------*/
.toppage-section-01 {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  padding: 50px 0;
}

.toppage-section-02 {
  width: 100%;
  text-align: center;
  padding: 80px 0;
  background: url("../img/top/section_bg_products.jpg") no-repeat center top 30%;
	background-size: cover;
}

.toppage-section-03 {
	width: 100%;
  text-align: center;
  padding: 80px 0 0;
	background: url("../img/top/section_bg_recruit.jpg") no-repeat center bottom;
	background-size: cover;
	height: 400px;
}

p.catch-company {
	font-size: 3rem;
	font-weight: 300;
	letter-spacing: 0.1em;
	line-height: 1.4em;
	color: #4b7399;
  margin-bottom: 10px;
}
p.catch-company-caption {
  font-size: 2rem;
  line-height: 1.4em;
  color: #4b7399;
  margin-bottom: 50px;
}

p.catch {
	font-size: 3rem;
	font-weight: 300;
	letter-spacing: 0.1em;
	line-height: 1.8em;
	margin-bottom: 25px;
}
p.catch-product {
	color: #fff;
}
p.catch-recruit {
	color: #4b7399;
}

@media screen and (max-width: 1200px) {
.toppage-section-01 {
  padding: 50px 30px;
}
}
@media screen and (max-width: 980px) {
.toppage-section-01 p {
  text-align: left;
  text-align:justify;
	text-justify:inter-ideograph;
}
.toppage-section-01 p.catch-company,
.toppage-section-01 p.catch-company-caption {
  text-align: center;
}
}
@media screen and (max-width: 480px) {
.toppage-section-01 {
  padding: 20px 30px 50px;
}
.toppage-section-03 {
  padding: 50px 0 0;
}
p.catch-company-caption {
  margin-bottom: 20px;
}
}


/* 下層ページ 共通
-----------------------------------------------------*/

/* 下層ページ 共通 / サイドナビゲーション（s-nav） / メイン */

.s-nav {
	margin-bottom: 20px;
}

@media screen and (max-width:768px) {
.s-nav {
	margin-bottom: 0;
	margin-top: 50px;
}
}

.s-nav h3 {
  font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0.3em;
	text-shadow: 1px 1px 5px #666;
  line-height: 1em;
	color: #fff;
	background: #4b7298;
  padding: 10px 15px;
}

.s-nav ul li {
  position: relative;
	list-style-type: none;
  font-size: 1.4rem;
	line-height: 1.4em;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #fff;
}
.s-nav ul li:last-child {
	border-bottom: none;
}
.s-nav ul li:first-child {
	border-top: none;
}
.s-nav ul li.have-subList {
	border-bottom: none;
}

.s-nav ul li:after {
  display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 4px;
	height: 4px;
	margin: -4px 0 0 0;
	border-top: solid 2px #00afcc;
	border-right: solid 2px #00afcc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.s-nav ul li a,
.s-nav ul li a:visited {
  display: block;
	text-decoration: none;
	color: #000;
	background: #eee;
	padding: 10px 30px 10px 20px;
	transition: all 0.5s 0s ease;
}

.s-nav ul li a:hover {
  display: block;
	text-decoration: none;
	color: #fff;
	background: #00afcc;
}

.s-nav ul li:hover:after {
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
}


/* 下層ページ 共通 / サイドナビゲーション（s-nav） / サブリスト */

.s-nav ul li.subList {
  position: relative;
	list-style-type: none;
  font-size: 1.4rem;
	line-height: 1.4em;
	border-top: 1px dotted #ccc;
	border-bottom: none;
}

.s-nav ul li.have-next-mainList {
	border-bottom: 1px solid #ccc;
}

.s-nav ul li.subList:before {
	border-radius: 50%;
	width: 3px;
	height: 3px;
	display: block;
	position: absolute;
	left: 20px;
	top: 1.2em;
	content: "";
	background: #e80078;
}

.s-nav ul li.subList:after {
  display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 4px;
	height: 4px;
	margin: -4px 0 0 0;
	border-top: solid 2px #e80078;
	border-right: solid 2px #e80078;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.s-nav ul li.subList a,
.s-nav ul li.subLista:visited {
  display: block;
	text-decoration: none;
	color: #000;
	background: #f8f8f8;
	padding: 10px 30px 10px 30px;
}

.s-nav ul li.subList a:hover {
  display: block;
	text-decoration: none;
	color: #fff;
	background: #ef4ca0;
}

.s-nav ul li.subList:hover:after {
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
}


/* 下層ページ 共通 / ページタイトル */

.pagetitle {
	width: 100%;
	height: 200px;
	position: relative;
}

.pagetitle-item {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%;);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-align: center;
}

.pagetitle h2 {
	font-size: 3.6rem;
	font-weight: 300;
	letter-spacing: 0.5em;
	line-height: 1.4em;
	color: #fff;
}

p.title-en {
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: 0.2em;
	line-height: 1.3em;
	color: #7fd7e5;
	padding-right: 2rem;
}

@media screen and (max-width:768px) {
.pagetitle h2 {
	font-size: 2.5rem;
	letter-spacing: 0.4em;
}
p.title-en {
	font-size: 1.2rem;
	letter-spacing: 0.1em;
}
}

.pagetitle-company {
	background: url("../img/pagetitle/pagetitle_bg_company.jpg") no-repeat center left;
	background-size: cover;
}
.pagetitle-products {
	background: url("../img/pagetitle/pagetitle_bg_products.jpg") no-repeat center left;
	background-size: cover;
}
.pagetitle-privacy {
	background: url("../img/pagetitle/pagetitle_bg_privacy.jpg") no-repeat center left;
	background-size: cover;
}
/*
.pagetitle-contact {
	background: url("../img/pagetitle/pagetitle_bg_contact.jpg") no-repeat center left;
	background-size: cover;
}
*/

.pagetitle::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.4);
	background-image: radial-gradient(#222 20%, transparent 0), radial-gradient(#222 20%, transparent 0);
	background-position: 0 0, 10px 10px;
	background-size: 4px 4px;
}

/* 下層ページ 共通 / パンくずリスト */

.breadcrumb-wrap *, .breadcrumb-wrap *:after, .breadcrumb-wrap *:before {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.breadcrumb-wrap {
	max-width: 1200px;
	margin: 20px auto;
	color: #000;
}
.breadcrumb-wrap a {
	text-decoration: none;
	color: #4b7298;
}
.breadcrumb-wrap .breadcrumbs {
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.breadcrumb-wrap li {
	display: inline-block;
	position: relative;
	font-size: 1.4rem;
	line-height: 1.6em;
	padding-right: 20px;
	margin-right: 5px;
	color: #000;
}
.breadcrumb-wrap li::before {
	content: '›';
	width: 1em;
	height: 1em;
	line-height: 1;
	text-align: center;
	font-size: 1em;
	color: inherit;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-60%);
	transform: translateY(-60%);
}
.breadcrumb-wrap li:last-child {
	margin-right: 0;
	padding-right: 0;
	color: #000;
}
.breadcrumb-wrap li:last-child::before {
	content: normal;
}

@media screen and (max-width: 1200px) {
.breadcrumb-wrap {
	padding: 0 30px;
}
}

/* 下層ページ 共通 / 見出し */

.main h3,
#basic h3 {
  border-bottom: solid 3px #cce4ff;
  position: relative;
	font-size: 2.4rem;
	font-weight: 300;
	letter-spacing: 0.5em;
	margin-bottom: 50px;
}

.main h3:after,
#basic h3:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #4b7298;
  bottom: -3px;
  width: 30%;
}

.main h4,
#basic h4 {
	font-size: 1.8rem;
	font-weight: 300;
	letter-spacing: 0.5em;
	line-height: 1.6em;
	background: #eee;
	padding: 3px 15px;
	margin-bottom: 20px;
}

.main h3 span {
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: #4b7298;
}


/* ごあいさつ
------------------------------------------------------------*/


.col-greeting-01 p {
	text-indent: 1em;
	margin-bottom: 1em;
	text-align:justify;
	text-justify: inter-ideograph;
}

.signature {
	text-align: right;
	margin-top: 50px;
	margin-bottom: 20px;
}
.signature .inner {
	display: inline-block;
	text-align: left;
}

.col-greeting-01 .signature p {
	text-indent: 0;
	margin-bottom: 0;
}

.signature-president {
	max-width: 200px;
}


/* 会社概要
------------------------------------------------------------*/

.outline-tab th {
	width: 15%;
	text-align: left;
}
.outline-tab td {
	width: 85%;
}

.outline-map-bg {
	background-image: url("../img/company/map.png");
	background-size: contain;
	background-position: center top;
	background-repeat: no-repeat;
	background-attachment: fixed;
}
.outline-map-bg-opacity {
	height: 100%;
  background: rgba(255, 255, 255, 0.7);
}


/* 沿革
------------------------------------------------------------*/

.history-tab th {
	width: 20%;
	text-align: left;
}
.history-tab td {
	width: 80%;
}


/* アクセス
------------------------------------------------------------*/

.access-item {
	margin-bottom: 50px;
}
.access-item .paragraph {
	margin-bottom: 10px;
}

.access-map-photo {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.access-map {
	width: 49%;
}
.access-photo {
	width: 49%;
	padding-top: 5px;
}

@media screen and (max-width: 768px) {
.access-map-photo {
	flex-direction: column;
}
.access-map {
	width: 100%;
}
.access-photo {
	width: 100%;
	padding-top: 10px;
}
}



/* 事業案内共通 / ボタン
-----------------------------------------------------------------*/

.btn-pdt {
	margin-top: 30px;
	text-align: right;
}

.btn-pdt a {
    background: #fff;
		border: 1px solid #4b7298;
    border-radius: 5px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 280px;
    padding: 10px 25px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 500;
		text-decoration: none;
}
.btn-pdt a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.btn-pdt a:hover {
  background: #4b7298;
  color: #FFF;
}
.btn-pdt a:hover:after {
  right: 1.4rem;
}


/* 事業案内トップ
-----------------------------------------------------------------*/

.services-index-item {
	margin-bottom: 0px;
}
.col-services-index {
	justify-content: space-between;
	width: 48%;
}
/*
.col-services-index p {
	line-height: 1.3em;
	margin-top: 10px;
}
*/

@media screen and (max-width: 768px) {
.col-services-index {
	width: 100%;
}
}


/* 事業案内 / 販売部門
-----------------------------------------------------------------*/

/* 販売部門トップ */

.products-catch {
	margin-bottom: 100px;
}

.products-catch dl dt {
	text-align: center;
	font-size: 3.4rem;
	font-weight: 300;
	letter-spacing: 0.5em;
	color: #4b7298;
	margin-bottom: 50px;
}
@media screen and (max-width: 480px) {
.products-catch {
	margin-bottom: 40px;
}
.products-catch dl dt {
	font-size: 2.4rem;
  letter-spacing: 0.;
  line-height: 1.4em;
  margin-bottom: 20px;
}
}

.col-iso-img {
	width: 30%;
	margin-right: 50px;
}
.col-iso-txt {
	width: 65%;
}
@media screen and (max-width: 768px) {
.col-iso-img {
	width: 100%;
	margin-right: 0;
	margin-bottom: 20px;
}
.col-iso-txt {
	width: 100%;
}
}

/* 製品一覧表示 */

.products-index-item {
	margin-bottom: 80px;
}

.content-wrap-products-index {
	display: flex;
	justify-content: space-around;
}

.col-products-index {
	justify-content: space-between;
	width: 30%;
}

.col-products-index p {
	line-height: 1.3em;
	margin-top: 10px;
}

@media screen and (max-width: 480px) {
.content-wrap-products-index {
	flex-direction: column;
}
.col-products-index {
	width: 100%;
  margin-bottom: 15px;
}
.products-index-item:last-child {
	margin-bottom: 0px;
}
.main .products-index-item h3 {
	font-size: 2.0rem;
	letter-spacing: 0.4em;
  line-height: 1.4em;
	/*margin-bottom: 50px;*/
}
.main .products-index-item h3 span {
	/*font-size: 1.6rem;*/
	/*letter-spacing: 0.1em;*/
}
}


/* 製品詳細表示 */

.product-detail {
	border-bottom: 3px dotted #ddd;
	padding-bottom: 50px;
	margin-bottom: 50px;
}

.product-detail h4 {
	margin-bottom: 50px;
}

.col-products-detail-img {
	width: 30%;
	margin-right: 5%;
}
.col-products-detail-txt {
	width: 65%;
}

@media screen and (max-width: 768px) {
.product-detail {
	padding-bottom: 40px;
	margin-bottom: 40px;
}
.product-detail h4 {
	margin-bottom: 30px;
}
.col-products-detail-img {
	width: 100%;
	margin-right: 0;
	margin-bottom: 20px;
}
.col-products-detail-txt {
	width: 100%;
}
}

sub {
	font-size: 70%;
	vertical-align: bottom;
	position: relative;
	bottom: -0.1em;
}


/* 配送部門
------------------------------------------------------------*/

.nintei {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-top: 20px;
}
.nintei-mark {
  width: 100px;
  margin-right: 10px;
}
.nintei-number {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.nintei-number-item {
  margin-right: 10px;
}
@media screen and (max-width: 480px) {
.nintei-number {
	flex-direction: column;
  align-items: flex-start;
}
}










